Just released! 🚀

🐍 Python 3.15 alpha 3!

https://discuss.python.org/t/python-3-15-0-alpha-3/105325?u=hugovk

🔬 PEP 799: A new high-frequency statistical sampling profiler and dedicated profiling package
💬 PEP 686: Python now uses UTF-8 as the default encoding
🌊 PEP 782: A new PyBytesWriter C API to create a Python bytes object
🎨 Colour code snippets in argparse help: https://bsky.app/profile/savannah.dev/post/3m7svdqdeqs2x
⚠️ Better error messages

#Python #Python315 #CPython #release #PEP799 #PEP686 #PEP782 #argparse

Python 3.15.0 alpha 3

This is an early developer preview of Python 3.15 Major new features of the 3.15 series, compared to 3.14 Python 3.15 is still in development. This release, 3.15.0a3, is the third of seven planned alpha releases. Alpha releases are intended to make it easier to test the current state of new features and bug fixes and to test the release process. During the alpha phase, features may be added up until the start of the beta phase (2026-05-05) and, if necessary, may be modified or deleted up un...

Discussions on Python.org

Just released! 🚀

After one sequential-only CI failure, two artifacts builds, one GitHub outage, two fixes for the Windows installer build, four Windows builds, and a NuGet outage:

🐍 Python 3.15 alpha 2!

🔬 PEP 799: A new high-frequency statistical sampling profiler
💬 PEP 686: Python now uses UTF-8 as the default encoding
🌊 PEP 782: A new PyBytesWriter C API to create a Python bytes object
⚠️ Better error messages

https://discuss.python.org/t/python-3-15-0a2/104948?u=hugovk

#Python #Python315 #CPython #release #PEP799 #PEP686

Python 3.15.0a2

This is an early developer preview of Python 3.15 Major new features of the 3.15 series, compared to 3.14 Python 3.15 is still in development. This release, 3.15.0a2, is the second of seven planned alpha releases. Alpha releases are intended to make it easier to test the current state of new features and bug fixes and to test the release process. During the alpha phase, features may be added up until the start of the beta phase (2026-05-05) and, if necessary, may be modified or deleted up u...

Discussions on Python.org

Forget* about Python 3.14, all the cool kids are trying out Python 3.15.0 alpha 1 (but not on production)! 🚀

🔬 PEP 799: A dedicated profiling package for Python profiling tools
💬 PEP 686: Python now uses UTF-8 as the default encoding
🌊 PEP 782: A new PyBytesWriter C API to create a Python bytes object
⚠️ Better error messages

https://discuss.python.org/t/python-3-15-alpha-1/104358?u=hugovk

* Please don't forget about 3.14...

#Python #Python315 #release #PEP799 #PEP686 #PEP782

Python 3.15 alpha 1

This is an early developer preview of Python 3.15 Major new features of the 3.15 series, compared to 3.14 Python 3.15 is still in development. This release, 3.15.0a1, is the first of seven planned alpha releases. Alpha releases are intended to make it easier to test the current state of new features and bug fixes and to test the release process. During the alpha phase, features may be added up until the start of the beta phase (2026-05-05) and, if necessary, may be modified or deleted up un...

Discussions on Python.org

The Steering Council has accepted Pablo's PEP 799!

Python 3.15 will get a new `profiling` module containing:

* `profiling.tracing`: deterministic function-call tracing (moved from `cProfile`, and `cProfile` kept as alias)

* `profiling.sampling`: new statistical sampling profiler

The old `profile` module will be deprecated in stages over 3.15-3.17.

https://discuss.python.org/t/pep-799-a-dedicated-profilers-package-for-organizing-python-profiling-tool/100898

#Python #profiling #PEP799 #Python315 #tachyon

PEP 799 – A dedicated profilers package for organizing Python profiling tool

Sampling profilers like this require a extremelly tight coupling with CPython internals. They depend on accessing low-level execution state with minimal overhead, supporting multi-threaded programs, free-threading, async code, and even remote attachment. All of this requires syncing the profilers AND the features, even between patch versions. Because of this deep integration, changes in CPython internals can easily break or degrade sampling profilers (this happens constantly and is very painf...

Discussions on Python.org