frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Breaking Changes in Python-3.14

5•wef•8h ago
One of the reasons Linux is so successful is Torvald's insistence on never breaking user space.

The python people don't adhere to this principle and maybe I need to give up on it, I'm just sick of this crap.

Those of us of a certain vintage will recall the tumult of python-2 to -3. Suddenly, production code needed significant re-writing. We got an arguably better python out of it, but oh! the pain.

In 3.14, (among many other things) the python developers decided to make 'forkserver' the default instead of 'fork' for the Process() method (this is for starting a child process - https://docs.python.org/3/library/multiprocessing.html). Why on earth break our code in such a wanton way? Why not leave the default alone - there was always the option to use 'forkserver' if one wanted it. Or maybe they could have created a new entrypoint with the new behaviour Process_fastserver() or some such? Oh no! Just break it and make their customers patch furiously!

When we adopt a language, we like to think that what runs today will run tomorrow - C and bash programs that I wrote 30 years ago still run. Not with python - if you use it, buckle up and make sure your regression tests are thorough, it'll be a rough ride.

Move slow and break things, perhaps?

Comments

mattbillenstein•8h ago
Why do you consider using forkserver as the default a breaking change? This should be transparent to most users?

fork() is very hard to get right as it keeps a lot of state around from the parent process you have to cleanly discard...

perrygeo•4h ago
This is far from transparent. It's a massive change in behavior. Fork may be very hard to get right, but every python developer using multiprocessing has already paid that cost - and expects it to keep working!

With fork, you could pass objects that couldn't be pickled (lambdas, local functions, file handles, database connections). With forkserver, everything must be pickleable. That alone breaks thousands of repos of code.

You can no longer work with global module-level objects, so it fundamentally changes how scoping rules work.

It launches a server with some extra machinery at runtime - startup cost and hidden complexity just snuck its your app without you knowing.

forkserver may be technically a better choice. But that's irrelevant. Changing the default breaks existing code.

mattbillenstein•37m ago
Eh, not letting the language ever evolve is a sure way to death, ymmv.

Forkserver is probably a better default, inheriting file handles, globals, and sockets leads to a bunch of subtle bugs - I'm not sure that's even a good feature, also ymmv.

And fork() is still available, so if it breaks things, the solution would be to explicitly ask for fork() - and I'd say for most casual uses of multiprocessing, a user won't know one way or the other which is what I meant by transparent.

WillowAndrew•7h ago
If you want things to stay as they are, just pin your versions.

Private donors pledge 860M euros for CERN's Future Circular Collider

https://home.cern/news/press-release/cern/private-donors-pledge-860-million-euros-cerns-future-ci...
1•thunderbong•1m ago•0 comments

End of Year Pay Report 2025 – Levels.fyi

https://www.levels.fyi/2025/
1•philonoist•6m ago•0 comments

A High-Performance Redis Alternative Built in Go

https://github.com/wutlu/boltcache
1•spotlayn•8m ago•0 comments

A Codebase by an Agent for an Agent

https://ampcode.com/by-an-agent-for-an-agent
1•emersonmacro•9m ago•0 comments

Making Google Sans Flex

https://design.google/library/google-sans-flex-font
1•meetpateltech•13m ago•0 comments

GitHub 95

https://github95.vercel.app
4•keepamovin•14m ago•1 comments

What the hyperproduction of AI slop is doing to science

https://theconversation.com/what-the-hyperproduction-of-ai-slop-is-doing-to-science-272250
5•billybuckwheat•20m ago•1 comments

Firefox UI revamp sparks complaints, searches for alternatives (2014)

https://www.computerworld.com/article/1514198/firefox-ui-revamp-sparks-complaints-searches-for-al...
1•1gn15•21m ago•0 comments

Why and How China Will Win AI: A Systems Understanding of China's AI Playbook

https://www.zackaryia.com/blog/2025-12-11/why-and-how-china-will-win-ai/
1•Zackaryia•27m ago•0 comments

RFC1087 Ethics and the Internet (1989)

https://www.ietf.org/rfc/rfc1087.txt
3•1vuio0pswjnm7•29m ago•1 comments

Worst Technology Flops of 2025

https://www.technologyreview.com/2025/12/18/1130106/the-8-worst-technology-flops-of-2025/
4•devonnull•32m ago•0 comments

Microsoft Updates Windows 'To Stop Users from Downloading Google Chrome'

https://www.forbes.com/sites/zakdoffman/2025/12/18/microsoft-updates-windows-to-stop-users-downlo...
2•72f988bf•32m ago•3 comments

Recent discoveries on the acquisition of the highest levels of human performance

https://www.science.org/doi/10.1126/science.adt7790
1•tchalla•32m ago•1 comments

Evaluating Chain-of-Thought Monitorability

https://openai.com/index/evaluating-chain-of-thought-monitorability/
2•mfiguiere•33m ago•0 comments

Reimplementing Unix Correct: The Lost Bayesian Spelling Corrector

https://learningloom.substack.com/p/reimplementing-unix-correct-the-lost
1•atomicnature•34m ago•0 comments

Code Coverage

https://keploy.io/blog/community/understanding-code-coverage-in-software-testing
1•sophielane•38m ago•0 comments

A quantum mystery that stumped scientists for decades is solved

https://www.sciencedaily.com/releases/2025/12/251217082509.htm
2•croes•44m ago•0 comments

2026 Apple introducing more ads to increase opportunity in search results

https://ads.apple.com/app-store/help/ad-placements/0082-search-results
16•punnerud•44m ago•8 comments

Gut microbe Turicibacter prevents weight gain

https://newatlas.com/diet-nutrition/weight-gain-gut-microbe/
2•thunderbong•46m ago•0 comments

Getting bitten by Intel's poor naming scenes

https://lorendb.dev/posts/getting-bitten-by-poor-naming-schemes/
18•LorenDB•47m ago•3 comments

Caro – a local offline shell companion for when you forget commands (alpha)

https://www.caro.sh/
1•kobi_kadosh•47m ago•1 comments

Linux Foundation Annual Report 2025

https://www.linuxfoundation.org/resources/publications/linux-foundation-annual-report-2025
2•lawrencejgd•50m ago•0 comments

Brown University Shooting Suspect Found Dead in New Hampshire

https://www.vanityfair.com/news/story/person-of-interest-arrested-in-brown-shooting
1•sampo•51m ago•1 comments

Why OpenAI’s Move to Skills Matters If You’re Shipping AI Agents

https://medium.com/@ohansemmanuel/why-openais-move-to-skills-matters-if-you-re-shipping-ai-agents...
3•ohans•53m ago•1 comments

Nob – Turn any terminal AI-powered (Open Source)

https://github.com/hetpatel-11/nob
1•hkpatel•53m ago•0 comments

Building ScrapeForge in public starting tomorrow

1•Vishwas-Batra•55m ago•0 comments

Meta Is Developing a New AI Image and Video Model Code-Named 'Mango'

https://www.wsj.com/tech/ai/meta-developing-new-ai-image-and-video-model-code-named-mango-16e785c7
1•fortran77•59m ago•1 comments

Blackbox open source agentic coding tool that lives in your terminal

https://github.com/blackboxaicode/cli
1•rizkrob•1h ago•1 comments

Administration Plans to Break Up Premier Weather and Climate Research Center

https://www.nytimes.com/2025/12/17/climate/national-center-for-atmospheric-research-trump.html
1•zekrioca•1h ago•1 comments

Mistakes marred Australian telco firewall upgrade, contributing to deaths

https://www.theregister.com/2025/12/19/optus_emergency_outages_cause_report/
3•defrost•1h ago•0 comments