# Python 3.13.0 beta 3 now available

**URL:** <https://discuss.python.org/t/python-3-13-0-beta-3-now-available/56847>\
**Category:** Core Development\
**Tags:** release\
**Created:** [June 27, 2024, 7:54pm UTC](https://discuss.python.org/t/python-3-13-0-beta-3-now-available/56847 "2024-06-27T19:54:14Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![thomas](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/thomas/32/5492_2.png) [@thomas](https://discuss.python.org/u/thomas)\
**Post date:** [June 27, 2024, 7:54pm UTC](https://discuss.python.org/t/python-3-13-0-beta-3-now-available/56847/1 "2024-06-27T19:54:14Z")

</div>

The _ **next to last** _ Python 3.13 beta version, beta 3, is now released:

> **[Python Release Python 3.13.0b3](https://www.python.org/downloads/release/python-3130b3/)**
>
> The official home of the Python Programming Language

**This is a beta preview of Python 3.13**

Python 3.13 is still in development. This release, 3.13.0b3, is the third of four beta release previews of 3.13.

Beta release previews are intended to give the wider community the opportunity to test new features and bug fixes and to prepare their projects to support the new feature release.

We **strongly encourage** maintainers of third-party Python projects to **test with 3.13** during the beta phase and report issues found to [the Python bug tracker](https://github.com/python/cpython/issues) as soon as possible. While the release is planned to be feature complete entering the beta phase, it is possible that features may be modified or, in rare cases, deleted up until the start of the release candidate phase (Tuesday 2024-07-30). Our goal is to have no ABI changes after beta 4 and as few code changes as possible after 3.13.0rc1, the first release candidate. To achieve that, it will be **extremely important** to get as much exposure for 3.13 as possible during the beta phase.

Please keep in mind that this is a preview release and its use is **not** recommended for production environments.

# Major new features of the 3.13 series, compared to 3.12

Some of the new major new features and changes in Python 3.13 are:

## New features

- A [new and improved interactive interpreter](https://docs.python.org/3.13/whatsnew/3.13.html#a-better-interactive-interpreter), based on [PyPy](https://pypy.org)’s, featuring multi-line editing and color support, as well as colorized [exception tracebacks](https://docs.python.org/3.13/whatsnew/3.13.html#improved-error-messages).
- An [_experimental_ free-threaded build mode](https://docs.python.org/3.13/whatsnew/3.13.html#free-threaded-cpython), which disables the Global Interpreter Lock, allowing threads to run more concurrently. The build mode is available as an experimental feature in the Windows and macOS installers as well.
- A [preliminary, _experimental_ JIT](https://docs.python.org/3.13/whatsnew/3.13.html#experimental-jit-compiler), providing the ground work for significant performance improvements.
- The (cyclic) garbage collector is now [incremental](https://docs.python.org/3.13/whatsnew/3.13.html#incremental-garbage-collection), which should mean shorter pauses for collection in programs with a lot of objects.
- A modified version of [mimalloc](https://github.com/microsoft/mimalloc) is now included, optional but enabled by default if supported by the platform, and required for the free-threaded build mode.
- Docstrings now have [their leading indentation stripped](https://docs.python.org/3.13/whatsnew/3.13.html#other-language-changes), reducing memory use and the size of .pyc files. (Most tools handling docstrings already strip leading indentation.)
- The [dbm module](https://docs.python.org/3.13/library/dbm.html) has a new [dbm.sqlite3 backend](https://docs.python.org/3.13/whatsnew/3.13.html#dbm) that is used by default when creating new files.
- The minimum supported macOS version was changed from 10.9 to **10.13 (High Sierra)**. Older macOS versions will not be supported going forward.

## Typing

- Support for [type defaults in type parameters](https://peps.python.org/pep-0696/).
- A [new type narrowing annotation](https://peps.python.org/pep-0742/), `typing.TypeIs`.
- A new annotation for [read-only items in TypeDicts](https://peps.python.org/pep-0705/).

## Removals and new deprecations

- [PEP 594 (Removing dead batteries from the standard library)](https://peps.python.org/pep-0594/) scheduled removals of many deprecated modules: `aifc`, `audioop`, `chunk`, `cgi`, `cgitb`, `crypt`, `imghdr`, `mailcap`, `msilib`, `nis`, `nntplib`, `ossaudiodev`, `pipes`, `sndhdr`, `spwd`, `sunau`, `telnetlib`, `uu`, `xdrlib`, `lib2to3`.
- [Many other removals](https://docs.python.org/3.13/whatsnew/3.13.html#removed) of deprecated classes, functions and methods in various standard library modules.
- C API [removals](https://docs.python.org/3.13/whatsnew/3.13.html#id10) and [deprecations](https://docs.python.org/3.13/whatsnew/3.13.html#id9). (Some removals present in alpha 1 were reverted in alpha 2, as the removals were deemed too disruptive at this time.)
- [New deprecations](https://docs.python.org/3.13/whatsnew/3.13.html#deprecated), most of which are scheduled for removal from Python 3.15 or 3.16.

(Hey, **fellow core developer,** if a feature you find important is missing from this list, [let Thomas know](mailto:thomas@python.org).)

For more details on the changes to Python 3.13, see [What’s new in Python 3.13](https://docs.python.org/3.13/whatsnew/3.13.html). The next pre-release of Python 3.13 will be 3.13.0b4, currently scheduled for 2024-07-16.

# More resources

- [Online Documentation](https://docs.python.org/3.13/)
- [PEP 719](https://peps.python.org/pep-0719/), 3.13 Release Schedule
- Report bugs at [https://github.com/python/cpython/issues](https://github.com/python/cpython/issues).
- [Help fund Python directly](https://www.python.org/psf/donations/python-dev/) (or [via GitHub Sponsors](https://github.com/sponsors/python)), and support [the Python community](https://www.python.org/psf/donations/).

# Enjoy the new releases

Thanks to all of the many volunteers who help make Python Development and these releases possible! Please consider supporting our efforts by volunteering yourself or through organization contributions to the Python Software Foundation.

Regards from _scorchingly_ hot Amsterdam (hey, we get good weather too!),

Your release team,  
Thomas Wouters @thomas  
Łukasz Langa @ambv  
Ned Deily @nad  
Steve Dower @steve.dower

---

<div class="post-metadata">

**Author:** ![MRAB](https://avatars.discourse-cdn.com/v4/letter/m/e9c0ed/32.png) [@MRAB](https://discuss.python.org/u/MRAB)\
**Post date:** [June 27, 2024, 10:58pm UTC](https://discuss.python.org/t/python-3-13-0-beta-3-now-available/56847/2 "2024-06-27T22:58:12Z")

</div>

Am I correct in assuming that it’ll use Unicode 15.1 because it’ll be way too late for Unicode 16.0, which is due out in September 2024?

---

<div class="post-metadata">

**Author:** ![brettcannon](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/brettcannon/32/34895_2.png) [@brettcannon](https://discuss.python.org/u/brettcannon)\
**Post date:** [June 27, 2024, 11:08pm UTC](https://discuss.python.org/t/python-3-13-0-beta-3-now-available/56847/3 "2024-06-27T23:08:24Z")

</div>

WASI build at [Release CPython 3.13.0b3 w/ WASI SDK 21 · brettcannon/cpython-wasi-build · GitHub](https://github.com/brettcannon/cpython-wasi-build/releases/tag/v3.13.0b3) .

---

<div class="post-metadata">

**Author:** ![domdfcoding](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/domdfcoding/32/2544_2.png) [@domdfcoding](https://discuss.python.org/u/domdfcoding)\
**Post date:** [June 28, 2024, 8:17am UTC](https://discuss.python.org/t/python-3-13-0-beta-3-now-available/56847/4 "2024-06-28T08:17:09Z")

</div>

This beta is using 15.1 (you can check with `unicodedata.unidata_version` on any Python version, as as we’re past the feature freeze point now I wouldn’t expect that to change before 3.13.0 final.

---

<div class="post-metadata">

**Author:** ![thomas](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/thomas/32/5492_2.png) [@thomas](https://discuss.python.org/u/thomas)\
**Post date:** [June 28, 2024, 10:02am UTC](https://discuss.python.org/t/python-3-13-0-beta-3-now-available/56847/5 "2024-06-28T10:02:32Z")

</div>

Yes, Unicode 16 arrives about five months too late to make it into Python 2024 (3.13) I’m afraid.

---

<div class="post-metadata">

**Author:** ![hroncok](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/hroncok/32/18696_2.png) [@hroncok](https://discuss.python.org/u/hroncok)\
**Post date:** [June 29, 2024, 12:02am UTC](https://discuss.python.org/t/python-3-13-0-beta-3-now-available/56847/6 "2024-06-29T00:02:43Z")

</div>

Fedora updates are now available [Fedora Updates System](https://bodhi.fedoraproject.org/updates/?packages=python3.13)

---

<div class="post-metadata">

**Author:** ![replabrobin](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/replabrobin/32/8686_2.png) [@replabrobin](https://discuss.python.org/u/replabrobin)\
**Post date:** [July 1, 2024, 11:47am UTC](https://discuss.python.org/t/python-3-13-0-beta-3-now-available/56847/7 "2024-07-01T11:47:15Z")

</div>

I built python 3.13.0b3 on Arch linux in the same way as python 3.12.4.

I notice a change in the repl apart from the obvious colour changes.

In 3.12.4 the repl history extends back in time to previous usage of python  
so up arrow brings back statements from a previous run.

In python 3.13.0b3 the up arrow doesn’t seem to bring back statements from  
the previous python run. I checked with my previous build of python 3.13.0b2  
and it seems this is a change between 3.13.0b2 and b3.

Is there some change in the way I need to build python 3.13 or is  
there a way to recover this useful behaviour.

EDIT: I find that python 3.13.0b3 can see history of previous runs of different pythons, but seems to clear history at exit.

---

<div class="post-metadata">

**Author:** ![domdfcoding](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/domdfcoding/32/2544_2.png) [@domdfcoding](https://discuss.python.org/u/domdfcoding)\
**Post date:** [July 1, 2024, 1:08pm UTC](https://discuss.python.org/t/python-3-13-0-beta-3-now-available/56847/8 "2024-07-01T13:08:42Z")

</div>

I just tried this on Ubuntu 22.04. The first time Python 3.13 runs the history is there, but after exiting and starting it again there’s no history.

I did find [this issue](https://github.com/python/cpython/issues/120766) regarding a startup file to load the history. But I’m seeing the issue without one.

---

<div class="post-metadata">

**Author:** ![vstinner](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/vstinner/32/15130_2.png) [@vstinner](https://discuss.python.org/u/vstinner)\
**Post date:** [July 1, 2024, 1:48pm UTC](https://discuss.python.org/t/python-3-13-0-beta-3-now-available/56847/9 "2024-07-01T13:48:45Z")

</div>

> [@replabrobin](#):
>
> EDIT: I find that python 3.13.0b3 can see history of previous runs of different pythons, but seems to clear history at exit.

I suggest to open an issue for the REPL which fails to save the command history.

---

<div class="post-metadata">

**Author:** ![replabrobin](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/replabrobin/32/8686_2.png) [@replabrobin](https://discuss.python.org/u/replabrobin)\
**Post date:** [July 1, 2024, 7:07pm UTC](https://discuss.python.org/t/python-3-13-0-beta-3-now-available/56847/10 "2024-07-01T19:07:25Z")

</div>

I think this is the same issue as mentioned by domdfcoding above. As noted there it seems to be the code at site.py line 527 write\_history that fails; domdfcoding mentioned a couple of possible fixes and I tried the one that modifies site.py and as he says need to refix the frozen lib before it becomes active.

---

<div class="post-metadata">

**Author:** ![hroncok](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/hroncok/32/18696_2.png) [@hroncok](https://discuss.python.org/u/hroncok)\
**Post date:** [July 1, 2024, 9:30pm UTC](https://discuss.python.org/t/python-3-13-0-beta-3-now-available/56847/11 "2024-07-01T21:30:44Z")

</div>

I reported:

> <https://github.com/python/cpython/issues/121245>
>
> \# Bug report
> 
> \### Bug description:
> 
> As discussed in https://discuss.python.org/t…/python-3-13-0-beta-3-now-available/56847/7 and https://github.com/python/cpython/issues/120766#issuecomment-2200251720
> 
> When I updated from Python 3.13.0b2 to b3 and started the REPL for the first time, pressing arrow up showed the history.
> 
> Upon exiting and starting again, there is no more history when I press arrow up. I noticed it is also missing from my other Python REPLs. \`~/.python\_history\` is empty.
> 
> To reproduce, I did:
> 
> 1. run \`python3.13\`
> 2. press arrow up, hit enter
> 3. Ctrl+D
> 4. run \`python3.13\` again -- no history
> 
> \### CPython versions tested on:
> 
> 3.13
> 
> \### Operating systems tested on:
> 
> Linux
