Was the Python 2 to 3 transition THAT bad or was it overblown by a loud minority?
>>108895880There are a gorillion projects that have never been updated to 3 and now they're just abandoned.
>>108895893Devs got filtered.
>>108895880Far worse than even the loud outrage about it would lead you to believe a posteriori.As >>108895893 many projects never got upgraded at all, people moved to different languages over this (and rightfully so). Several piece of software is still mid-migration TODAY and rely on docker to let people use the python 2.7 version instead.The 2to3 tool was the most hilariously retarded shit I've ever seen in my life. Python 3 is/was 30% slower than 2.7 by the way. Brings in no real advantages, just massive pain to upgrade extant codebases.If only python 3+ was backward compatible, but no fuck that shit every subpoint version moves or outright removes functions between stdlib components (that was another reason people were holding off on migrating, we were hoping that 3.x would stabilize more, but that never happened).
Unironically all those old scripts could probably be updated to 3.0 by claude now
>>108895880i am still migrating code at work.theres no reason to do some of the changes. they needlessly broke a lot of the interface but didnt fix the actual retarded parts.fuck unicode.
>>108896248These are the woes of using a language that isn't internationally standardized. Nobody gives a single shit if you target your C program to use C99, just set the compiler flag and you're good.
>>108896310to be fair full support for c99 is a recent thing.
>>108895880It was bad (albeit probably overblown nevertheless), but it was worth it.You hear all sorts of screeching in other languages for keeping unnecessary backwards compatibility (e.g. Sepples), hence I was pleased for Python to ditch it for a change in order to actually improve the language.
>>108896310By this logic, you can simply run a Python 2.7 interpreter to execute old Python code.
>>108895880it was that bad for some people, Armin “mitsuhiko” Ronacher the most because I think he was using some kind of CGI replacement that got bitten really hard by the bytes/string split>>108896255not even opus, probably
>>108898125That's wrong, because GCC is still being developed, while Python 2.7 is dead since 2020. Any new vulnerabilities and bugs that get discovered in the 2.7 interpretor will never get fixed.
>>108895880only thing I remember about the change was print becoming a function.
>>108895880No, everything relevant moved pretty fast. The only reason it is considered to have taken a decade is because some faggots couldn't accept abandoned projects were in fact abandoned and move on
>>108895880my 2nd job out of uni was porting a backend from python 2 to python 3/flask it was pretty comfy
>>108895880About as poorly as the PHP5 -> 7.2 migration
>>108900642>still being developedThat's besides the point.
>>108895880I'm still getting griefed by a build pipeline script which requires Python 2.
>>108895880it was fine and the projects that died weren't worth a thought just like their lazy devs
>>108895880>[is] ... Python ... THAT bad?yes
>>108903485t. never worked a day in software
>>108895880keep your guard ,even an amateur would knock you out.
>>108895880It really was that bad. I can't stand when people refer to Python2 as Python. They are literally different languages.
>>108903556>never worked a day in software12 years by now, I know what I'm talking about thank you very much.python 2 to 3 is trivial to do by hand in the first place, and if you *really* have such a huge python codebase (hugely debatable, it was not even close as popular at the time as it is now), then there's still a fuckton of options to fully automatically convert it.tools that have also existed for a decade now, I'm not talking about any AI bs.either you're a dumb larp/nocoder of the contrarian sort.but let's assume you're actually a software engineer (doubtful), then you're one of those devs:- who argued that 64 bits was too hard 15 years ago, and- has been arguing that ARM is too hard for the past 5, and- tomorrow will continue arguing about whatever comes next in computing being too hard.lazy fucks like you are a deep rot.there's a lot of you everywhere.you fucking suck, your software sucks, and your decades long temper tantrums accomplish nothing.so go sit alone in the corner, keep moaning about the world changing under your feet, and await the sweet release of death patiently while in a catatonic state
>>108895880It was not great.
>>108895880It's fine.
>>108905270go back to r*ddit you faggot
every well-known runtime is in a state of decline. almost every decision "they" make these days is retarded.
>>108895893I find this hilarious because it's really not difficult to port from 2 to 3 at all. Unless your codebase is retarded, but this is why you don't make retarded code.
>35 year old language>still major breaking changes so it's not backwards compatibleIs this shit made by Indians?
>>108906210> The most complained-about change was the str (text) vs bytes separation — i.e., Unicode becoming the default string type in Python 3 and bytes becoming a distinct type. It caused widespread breakage in I/O, network code, web frameworks, and libraries because code that implicitly mixed text and binary data under Python 2 suddenly raised TypeError in Python 3, requiring explicit encoding/decoding and API adjustments.>>108906249if romes papa says kissing african feet is good, would you justify its easy to kiss? its easy to wash mounth afterwards, right?
>>108906309the 2-to-3 change was a decade+ ago
>>108895880nothing that anyone writes in python should have a lifespan of more than a week or two anywayso it doesnt really matterits a scripting language for mucking around simplifying one off tasks not serious development
>>108906430>https://docs.python.org/3.14/whatsnew/changelog.html>search "remov">943 results>mfw
>>108905270What a clueless tard.12 years means you were a little baby when python 2 was deprecated and have no clue at all what sort of software may have been written for it. Other guy is correct, you are afflicted with terminal reddit and will never become self-aware or good at programming.
>>108895880It was not a minority. Fucking pyhon fags were whining about it for a decade non stop. And as always I advise them to uninstall all the versions of that shitware and forget it ever existed. That solved the python version problem and python existence problem as well. And it clearly is a real problem.
You can literally just install different versions>>108895880You can literally just install different versions>>108906309You can literally just install different versionsEvery single language lets you install different versions
there are so many versions of python on my machine lolbut it looks like ruby is doing the same thing
>>108906641my company migrated to python 3 in 2022. even that fucking late, we had to port individual third party libraries that didn't have a python 3 compatible build. it was a complete clusterfuck and took us months.>>108905270larp or retard
>>108900642>Any new vulnerabilities and bugs that get discovered in the 2.7 interpretor will never get fixed.I thought the point of OPEN SORES was that you could fix them yourselves rather than relying on some Creator-God with the sole powers to change things?
>>108906847Open Source is about working for free
>>108907088I thought it was about opening PRs that add your jeet name to the readme
>>1089064303.10 programs aren't compatible with 3.12 and vice versa. The language removes, moves, and changes core functions every sub-point version. It's not as massive between subsequent subpoint versions as 2 to 3 was, but every 5 subpoint version is about the same scale. It's really really fucked up.
>>108908094trannies. not even once.
>>108908094Works on my machine. Dunno what your problem is.
>>108908224No, it literally doesn't.
>>108906641>12 years means you were a little baby when python 2 was deprecatedI was in uni, retard. The migration was the main reason why I never bothered to learn kikethon past what was required and never wrote anything in it afterwards. There's also their peak retardation of forcing formatting and their "zen" bullshit, both throwing a gazillion warnings for the latter and silently fucking up control flow for the former.>just use a proprietary ide broFor a fucking scripting language? GTFOOH
>>108908232Explain what doesn’t work
>>108908256oh, a leaf. of course. no wonder that youre so butthurt.
>>108908333You'd know if you had ever used it. You are free to lookup the changelogs yourself.
>>108908344>leafit's 9AM, retard
>>108908424what does that mean? time to sit on a baguette?
>>108908380>you can’t describe what your problem isTypical. Meanwhile I have production code at work that was developed in py3.10 but runs just fine in py3.12. The only way you get things ‘suddenly breaking’ is when you do stupid shit like disregard deprecation warnings. So again, not a problem if your code base isn’t retarded.
>>108908504>haha my c code works perfectly when compiled with rustc without any change heh you can't prove otherwise it's in production hehYou are so clueless it's almost cute.
>>108895880https://desuarchive.org/g/thread/106862696
>>108908537lolhttps://docs.python.org/3/library/sys.html#sys.remote_exec
>>108906501>nothing that anyone writes in python should have a lifespan of more than a week or two anyway>ShouldThat's not how the real world works, though. Rarely is a script made to be used only once, but it might seldom be used.In corporate this means someone writes it, they probably leave, eventually someone else takes over, infra is updated, now they have to figure out which version the original niche-but-important scripts used.In OSS, this means some well-meaning retard will add python as a dependency to do something niche that they only know how to do in py, and now the whole project won't build unless a disproportionate amount of time is spent wrangling python dependency hell.Or more often than not someone writes a whole backend with django because python is all they know.Thus, python should not be used and especially taught at all.
>>108906309Worse. It's made by Europeans.
>>108909447What language do you suggest instead?
>>108895880Just use Common Lisp if you value language stability.
>>108901499Except that's literally my point.
>>108908523Still waiting for you so show an example of things that broke.>you won’t
>>108909716Europeans are great programmers, cope.
>>108908256>Itf are you replying as if you were other people for?and why tf did you make it into a judgment of python as a language. it's shit but that's miles besides the point.>>108908344>a leafnah, leaf is diff anon, I'm French>>108906722>migrated to python 3 in 2022. even that fucking late, we had to port individual third party libraries that didn't have a python 3 compatible buildoh fuck off that is such a LARP unless said libraries were homegrown internal (or contracted) shitpython 3 was already ubiquitous by 2022 this is so fucking dishonest lmao>>108906641>you were a little baby when python 2 was deprecated and have no clue at all what sort of software may have been written for itand yet you lots were STILL complaining loudly that it was insurmountable so much later after the initial announcements. you don't realize that this sentence makes you look even more retarded and that is kinda beautiful.either way, by the time I started seriously working full time there were still a lot of you whiny lazy pieces of shit throwing tamper tantrums about it, and yet six (https://pypi.org/project/six/) was released in 2010. twenty-fucking-ten. sixteen years ago.it didn't fix everything magically, but it sure made it a big ass lie that porting was oh-so-hard as you shit programmers liked (and still like) to claimjust stop lying. you didn't like change, and you still don't like change. that's all. but don't pretend that is was either:a) particularly difficult porting from 2 to 3, unless you are really just THAT shit of a programmer to be filtered by minor syntax changes that could almost entirely be regex-replace'd away, andb) that there wasn't a fuckton of aides and tools to do it even faster by 2016 or sowas it unnecessary from the python foundation? maybewas it impossible/hard? fuck no. there's no excuse other than "waa waa I dunlike it waa waaaaaaaaa"
>>108910758t. never ported anythingThanks for playing, professional fizzbuzz programmer.
>>108910823t. complained about having to port something for 20 years, but never did, and just assumes everyone is larping about getting over it to protect their shit programmer's egoThanks for playing gramps, but now it's time to change your nappies
>>108910758très basé mon ami les gens sont des feignasses.fuck lazies
>>108895880I worked on a large project whose entire infrastructure was written in Python, across multiple repositories.It took over a decade to complete the transition. The main difficulty was having code that was Python 2 and 3 compatible. As another anon mentioned, the tool provided by the Python foundation, 2to3 was almost completely useless. It was fine for small one-off scripts but not for large libraries.I think the part that pissed me off the most is that Python 3 is not even stable. There are APIs that have been deprecated since Python 3.6, for instance. Python is also a fucking nightmare to test so we were landing a change and just praying that nothing would break. I advocated for abandoning all of the Python code and rewriting the infrastructure in a sensical language with real typing and testing infrastructure but that went nowhere. At least, we did start enforcing type hints so that's something.
>>108895880Yes, it was that bad and still is.There are libraries that I extensively used that weren't updated to python 3 until the last couple years. At least one I haven't found a good replacement for at all.The changes in string encoding handling continue to be a pain in the ass to this day, and it had a huge performance penalty. To make matters worse, python 3 has incompatibilities within itself between versions. Stuff might just randomly break on update, meanwhile py2 just worked and even got some of the improvements backported during the support window when both coexisted.
>>108911899Nothing ‘randomly breaks’. It’s all well documented and broadcasted ahead of time. What a stupid trope.
>>108912259Retarded underageb& nocoder detected
>>108912604Please provide an example
>Python thread>Filled with nonsensical larp and obvious samefaggingOut of all the language autists this one's the dumbest. I guess it fits since it's Python
>>108912698This. One can tell a lot about a language and the worth of its ecosystem by observing these interactions though. Rust is another one that's fucked up, but it's fucked up in a totally different way than python threads are. Otherwise it's C threads, but those have a clearer pattern (heavy overrepresentation of beginners).
>>108895880Python's 2->3 transition was nothing short but a shitshow. Most languages, even popular ones, would have died in usage over such a change. But for quite a while people only used 2.x and outright ignored 3.x.
>>108895880it was never bad. there was even a free conversion utility. but some devs were lazy and so their projects kinda died.
>>108908537>>108908537>>108908537>>108908537lolhttps://docs.python.org/3/library/sys.html#sys.remote_exec
>random encodes and decodes everywhere not knowing whether your strings were unencoded or encoded as if you were a C dev wrangling buffer overflows>old style classes unless you explicitly inherit from objectyeah nostalgia glasses off I say good riddance
>>108895880Python 2 to 3 was only a problem because pythonistas are stupid and because python is a poorly designed language and because the python tooling is inadequate. If all of those things were fixed python 2 to 3 would have been a breeze. If all of those things were fixed pythonistas would be excited about what a 3 to 4 transition could bring.
>>108914053Have you tried it? Of course not. The tool was a simple sed script in the form of a python script that didn't touch 90% of syntax changes and broke scripts in a way that they didn't work in either 2 or 3 because it created invalid syntax everywhere, you had to manually fix everything and never use the tool instead.
>>108914252>https://docs.python.org/3/library/sys.html#sys.remote_execFuck you, it's usefulThough I do agree that it should've been opt-in, not opt-out
>>108909716Why do amerisharts larp as white, yet hate Europe which would then have been their old homeland?
>>108906249I wonder how much python 2 stuff never migrated because of dependencies.
>>108915816they push templates as standard way to buffer overflow"sys.remote_exec" is for overload sensibility of community
>>108916012holy esl
>>108915854when the vikings left sweden etc, they settled in england which had good farming land etc, they left behind all the thrall slaves who were too cowardly to win their freedom and instead chose a live of toil and servitude. the same is true of europe as a whole.
>>108916253for ((overload sensibility) of community)stop using the shitty "language"
>>108896248Moved 100k LOC to 3.6 in a few weeksStarted with the 2to3 script and gradually fixed the remaining pieces by handWe had a few minor bugs in prod because of it, but they were trivial to fix3.x breaking backward compatibility in every minor version was much more painful. Fucking glad I moved away from it.
>>108910728Europeans are great at inventing solutions looking for problems. Pic related.
>>108900945I’ve been out of the PHP game for 15 years. What was the issue here?
>>108911574Speak Christian.
>>108916325Worst larp I've ever seen lmaoLiterally not even trying, wtf is even the point of this shitpost.
>>108909900And it's retarded. So what?
>>108916375>everyone had the same problems, i couldn't possibly be the retard here
print() filtered millions
>>108916349You don't get it. C was a problem so he created sepple, now C isn't so bad.Success!
>>108916392Yes, everyone legit has the same problem. Every single person who provably worked with it, that is. 100%, not 90% or 99%, literally 100%.You are a retard and a larper. It's hilarious seeing you flounder so hard.
>>108916628You forgot the /s at the end.
>>108916353Πάνυ στοιχειῶδες, ὦ φίλε· οἱ ἄνθρωποι ὀκνηροί εἰσιν.
>>108916350PHP's issues make Python look stable as a rock because PHP was such a haphazard and shoddily designed language. Changes are too many to list but included basic shit that most every dev was using. Mysql connector changes, i think to_string() changed... tons of other functions. PHP still breaks with upgrqdrs and like modern python careens forward with new versions faster than any sane dev with a life wants to deal with. 7 to 8 broke some things also, though not as much as 5 to 7.
>>108916518Honestly, I missed the print statement for longer than I expected. It was an easy trivial fix and the motivations were obvious but I really liked not needing to type parens. (Don't @me about how IDEs do it now).Either way always the main issue with breaking changes is unsupported packages. You're forced to go digging into an unfamiliar codebase with access to none of the original build workflows or upstream repository access to fix stupid irrelevant breakage.
>>108916973Wrong language.
>>108910758>was it impossible/hard? fuck no. there's no excuse other thansubmissive french men were occupied, hehehe. kiss african feet now, its easy to wash mouth afterwards >>108906319in tech its also said "justification" not an excuse. you have to have a justification for the change. if the change is placed before you, you still have to think about it, otherwise why do you run around with excuse thing? be silent submissive french man, you wont at least disgrace french or related.
>>108914252ye, retard feature.. implemented not as a module or a native code.. it means the runtime has to check for some signal regarding this particular function and it comes with a small perf price.. the IPC is completely absent.. >>108915816whats the usecase of that
>>108908537>templatesye, retard feature.. implemented not as a module or a native code.. so insertion here buffer overflow error affect maximum web services
>>108916353>>108917169Quaeso mortem conscisce, niger infrahumane et hebes.
>>108911899>python 3 has incompatibilities within itself between versions. Stuff might just randomly break on updatejust like gtk3 and later
>>108916948>>>/r/edditDon't come back
>>108917544Close but no cigar. Hint: what language did Jesus speak?
>>108917706Irrelevant, he wasn't Christian because that religion didn't exist in his lifetime yet.
>>108916350Massive breaking changes in the specificationalso unrelated but this is /g/ not /theology/ talk about stallmans on /poi/ or something
>>108917777Good points, blessed by 4 7's, which is pretty biblical. One must therefore accept that you are currently expressing yourself in Christian, which means English is the Christian language. QED.
>>108917817>which means English is the Christian languageonly for anglican and protestant heretics
>>108917372>whats the usecase of thatthat is my Q for python'tards, you can answer now
>>108895880SEND THESE FUCKERS TO WAR TO DIE!HOW MANY MILLENNIA DO WE HAVE TO DO IT BEFORE THEY'RE WIPED OFF ?
>>108917270>allegedly decades of programming>still can't speak even 5 words of english decently, worse ESL than even curryniggers>and projecting about niggers out of nowhereyour lot might be even more of a pathetic waste of oxygen than I thought, damnand finally:>waaa waaa waaaaaaaaa you don't HAVE to do changes WAAAA WAAA WAAAAAAAAAAit's time for your afternoon nap, grampa, you're obviously a little tense right now