I turned down one of those companies because I didn’t want to deal with that migration in 2021
https://gregoryszorc.com/blog/2020/01/13/mercurial's-journey...
Part of me even wonders if the transition had any role to play in why Mercurial gradually lost whatever foothold it had in the DVCS ecosystem.
I too was rather upset about the Python 2->3 shenanigans and I was working on much smaller projects.
> This ground rule meant that a mass insertion of b'' prefixes everywhere was not desirable, as that would require developers to think about whether a type was a bytes or str, a distinction they didn't have to worry about on Python 2 because we practically never used the Unicode-based string type in Mercurial.
> In addition, there were some other practical issues with doing a bulk b'' prefix insertion. One was that the added b characters would cause a lot of lines to grow beyond our length limits and we'd have to reformat code.
I wonder if their line length was arbitrarily 80chars or some silly serial terminal like limit.
> It is now 2020 and Python 2 support is now officially dead from the perspective of the Python language maintainers. Linux distributions are starting to rip out Python 2. Packages are dropping Python 2 support in new versions. The world is moving to Python 3 only. But Mercurial still officially supports Python 2
To me it doesn't matter what pain points there were between 2/3, or that it was even python.
That is just the classic way any modernization effort fails. IMHO those failures are almost completely tool agnostic and are cultural failures.