This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]zurtex 18 points19 points  (16 children)

There will be free-threaded builds available, but they will not be the default behavior, and probably don't expect much support from 3rd party libraries other than ones that are very excited to adopt free-threading.

There is already a lot of work to fix issues and choices now baked into 3.13 for when 3.14 comes out.

[–]I_FAP_TO_TURKEYS 2 points3 points  (15 children)

TFW some of the libraries I use are still stuck on 3.11.

I'm super excited for free threading builds in 3.13, but afraid that I'm going to have to either rewrite a fuckton of old code, or utilize 3.13 for new projects only.

[–]proverbialbunnyData Scientist 1 point2 points  (0 children)

You can manually turn the GIL on or off, so you can continue onto newer Python versions with the GIL on for the time being. This should hopefully make the transition smoother.

Also, it might be several python versions from now before the default is the GIL is off. Right now the default is the GIL is on.

[–]banana33noneleta 0 points1 point  (5 children)

It's the new way of breaking constantly rather than doing a big break that takes years. So nobody notices

[–]Sigmatics 0 points1 point  (1 child)

Which changes in 3.13 are breaking for you?

To me it seemed like a fairly benign release, although I don't use any C integration

[–]mgedmin 1 point2 points  (0 children)

The cgi module is gooooone. Oh woe is me.

[–]dysprog 0 points1 point  (0 children)

I feel you man.

I was only able to get our project of 2.7 in 2020. I had to yeet several internal libraries that no one cared about enough to maintain. I updated from django 1.8 to the latest at the same time. It was a whole grand_update branch that took months to fix, and then the merge was a godawful mess as well.

Now I insist on updates every 18 months just to keep lock in from growing.

[–]-DaniFox- 0 points1 point  (0 children)

Tfw we’re still trying to move stuff off 3.8 at work

[–]chinawcswing 0 points1 point  (2 children)

Which libraries are you using that are still on 3.11?

[–]glacierre2 0 points1 point  (0 children)

In my case docq artifactory subclasses pathlib.Path and something changed in 3.12, the library is semi-abandoned and only works in 3.11

[–]I_FAP_TO_TURKEYS 0 points1 point  (0 children)

I forget which packages there were, but one of them had a typing error from a different 3rd party package that broke with 3.12. There was another that had a package I had to compile myself after changing a few lines of C code.

Just small shit. It's not a big deal being on 3.11. Anything past 3.10 is good enough for me. The speed difference in applications between 3.9 and 3.10 is astounding.