Python 3.15 Enters Alpha 3 with Game-Changing Profiler and UTF-8 Default

From Michili, the free encyclopedia of technology

Python 3.15.0a3 Released: Third Alpha Brings Statistical Profiler and UTF-8 Default

The Python Software Foundation today released Python 3.15.0 alpha 3, the third of seven planned alpha previews for the upcoming 3.15 series. This early developer snapshot introduces a high-frequency statistical sampling profiler, makes UTF-8 the default encoding, and adds a new C API for creating bytes objects.

Python 3.15 Enters Alpha 3 with Game-Changing Profiler and UTF-8 Default

“Alpha releases are intended to make it easier to test the current state of new features and bug fixes,” said Hugo van Kemenade, a member of the Python release team. “They also help us validate the release process itself.” The alpha 3 build is available for download at python.org.

Key New Features

Among the major additions in Python 3.15 so far:

  • PEP 799 – Statistical Sampling Profiler: A new low-overhead, high-frequency profiler that samples running programs to identify performance bottlenecks without significant slowdown. It comes bundled with a dedicated profiling package for advanced analysis.
  • PEP 686 – UTF-8 as Default Encoding: Python now uses UTF-8 as the default encoding for text files, aligning with modern standards and simplifying cross-platform development. This change applies to open() and related functions.
  • PEP 782 – PyBytesWriter C API: A new C-level interface for efficiently constructing Python bytes objects, reducing overhead when working with binary data in extensions.
  • Improved Error Messages: Several error messages have been refined to provide clearer context and troubleshooting guidance, particularly for common mistakes.

“We encourage developers to test these early builds and report any issues,” added Van Kemenade. “Your feedback is crucial before the beta phase begins.”

Background

Python 3.15 is still under active development. The alpha phase, running until May 5, 2026, allows the core team to add, modify, or even remove features as needed. After that, the beta phase starts, and only critical bug fixes will be permitted starting July 28, 2026 (release candidate phase).

This is a preview release and not recommended for production environments. The release team emphasized that using alpha builds in mission-critical systems may lead to instability or incomplete behavior.

What This Means

For developers, the statistical profiler offers a powerful new tool to optimize Python applications with minimal performance impact. The UTF-8 default encoding eliminates many encoding-related surprises, especially on Windows, where UTF-8 was not the default.

The PyBytesWriter API will benefit C extension authors working with byte manipulation, making it easier and faster to create bytes objects. Combined with clearer error messages, Python 3.15 aims to improve both developer experience and runtime efficiency.

The next pre-release, Python 3.15.0 alpha 4, is scheduled for January 13, 2026. The release team urges the community to test the alpha, report bugs via GitHub Issues, and consider supporting the Python Software Foundation through donations or GitHub Sponsors.