<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/python-3-15-0-candidate-1-is-here--fuskzufeb" -->

---
title: Python 3.15.0 candidate 1 is here! | daily.dev
description: Python 3.15.0 release candidate 1 is now available, marking the first of two planned RCs before the final release. Key features in 3.15 include PEP 810...
canonical: https://daily.dev/posts/python-3-15-0-candidate-1-is-here--fuskzufeb
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Python 3.15.0 candidate 1 is here! | daily.dev
og:description: Python 3.15.0 release candidate 1 is now available, marking the first of two planned RCs before the final release. Key features in 3.15 include PEP 810...
og:url: https://daily.dev/posts/python-3-15-0-candidate-1-is-here--fuskzufeb
og:image: https://api.daily.dev/og/posts/fUsKZUfEb.png
og:image:alt: Python 3.15.0 candidate 1 is here!
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Python 3.15.0 candidate 1 is here!

**[Python Insider](https://daily.dev/sources/python)** · 4 min read · 29 upvotes · 4 comments

## Summary

Python 3.15.0 release candidate 1 is now available, marking the first of two planned RCs before the final release. Key features in 3.15 include PEP 810 explicit lazy imports for faster startup, a new frozendict built-in type, a sentinel built-in, a dedicated profiling package with the Tachyon statistical sampling profiler, frame pointers enabled by default, unpacking in comprehensions, UTF-8 as the default encoding, TypedDict with typed extra items, TypeForm annotations, and a significantly upgraded JIT compiler showing 8-9% performance gains on x86-64 Linux and 12-13% on AArch64 macOS. The stable ABI for free-threaded builds is also included. No ABI changes will occur from this point forward. Third-party maintainers are encouraged to test against this RC and publish Python 3.15 wheels on PyPI. The final release follows RC2 scheduled for 2026-09-01.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://blog.python.org/2026/08/python-3150-rc1>

## Questions this post answers

### What new features are included in Python 3.15?

Python 3.15 introduces PEP 810 explicit lazy imports for faster startup, a new frozendict built-in type (PEP 814), a sentinel built-in type (PEP 661), a dedicated profiling package with the Tachyon sampling profiler (PEP 799), unpacking in comprehensions (PEP 798), and UTF-8 as the default encoding (PEP 686). The JIT compiler also received a significant upgrade.

_Track major language releases like this on daily.dev before planning a Python upgrade._

### How much faster is the JIT compiler in Python 3.15?

The upgraded JIT compiler in Python 3.15 delivers an 8-9% geometric mean performance improvement on x86-64 Linux compared to the standard interpreter, and a 12-13% speedup on AArch64 macOS compared to the tail-calling interpreter. Windows 64-bit binaries now also use the tail-calling interpreter, and macOS binaries install free-threading support by default.

_Developers benchmarking runtime upgrades can follow performance changes like these on daily.dev._

### When is Python 3.15.0rc2 scheduled to be released?

Python 3.15.0rc2 is scheduled for release on 2026-09-01, the second of two planned release candidates before the final 3.15.0 release. Only reviewed bug fixes are allowed between rc1 and the final release, and there will be no further ABI changes in the 3.15 series from rc1 onward.

_Maintainers preparing wheels for a new Python release can track the timeline on daily.dev._

## Community discussion

Top comments from developers on daily.dev.

**@asmundur** · 2 upvotes

> “PEP 810 explicit lazy imports for faster startup,”
>
>
> Fantastic!

**@taiwofrancis** · 1 upvotes

> These Python 3.15 updates are actually impressive.

**@agustinbarrientos** · 0 upvotes

> Tachyon would be my first 3.15 experiment. I want to inspect an async service without rebuilding it around a profiler.

## Similar posts on daily.dev

- [Python 3.15.0 beta 4 is here\!](https://daily.dev/posts/python-3-15-0-beta-4-is-here--tlgvqqsmi) · Python Insider · 9 upvotes · 0 comments
- [Python 3.15.0 alpha 7](https://daily.dev/posts/python-3-15-0-alpha-7-mdms5ltls) · Python Insider · 5 upvotes · 0 comments

---

Tags: [#python](https://daily.dev/tags/python), [#cpython](https://daily.dev/tags/cpython)

[View this post on daily.dev](https://daily.dev/posts/python-3-15-0-candidate-1-is-here--fuskzufeb)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Python 3.15.0 candidate 1 is here!","url":"https://daily.dev/posts/python-3-15-0-candidate-1-is-here--fuskzufeb","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/python-3-15-0-candidate-1-is-here--fuskzufeb"},"datePublished":"2026-08-04T14:35:46.048Z","dateModified":"2026-09-14T06:17:03.120Z","description":"Python 3.15.0 release candidate 1 is now available, marking the first of two planned RCs before the final release. Key features in 3.15 include PEP 810...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/4e964b8b732643d6d8dd25acd8be7949?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/4e964b8b732643d6d8dd25acd8be7949?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Python Insider","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Python Insider","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/124b62e20f2f41c49bc701276f871a11","url":"https://daily.dev/sources/python"},"commentCount":4,"discussionUrl":"https://daily.dev/posts/python-3-15-0-candidate-1-is-here--fuskzufeb","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":29},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":4}],"keywords":"python,cpython","timeRequired":"PT4M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Python Insider","item":"https://daily.dev/sources/python"},{"@type":"ListItem","position":3,"name":"Python 3.15.0 candidate 1 is here!"}]}
{"@context":"https://schema.org","@type":"WebPage","@id":"https://daily.dev/posts/python-3-15-0-candidate-1-is-here--fuskzufeb","comment":[{"@type":"Comment","text":"“PEP 810 explicit lazy imports for faster startup,”\nFantastic!","datePublished":"2026-08-06T12:28:43.195Z","url":"https://daily.dev/posts/fUsKZUfEb#c-vHVuVhH9M","author":{"@type":"Person","name":"Asmundur Gudjonsson","url":"https://daily.dev/asmundur","image":"https://media.daily.dev/image/upload/s--OvFUoEga--/f_auto/v1716570572/avatars/avatar_PeX2HvjmT1erIepSKluaw"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":2}},{"@type":"Comment","text":"These Python 3.15 updates are actually impressive.","datePublished":"2026-08-07T20:40:04.535Z","url":"https://daily.dev/posts/fUsKZUfEb#c-1Ul6Gvz25","author":{"@type":"Person","name":"Taiwo Francis Oguntade","url":"https://daily.dev/taiwofrancis","image":"https://media.daily.dev/image/upload/s--px3_Pvo4--/f_auto/v1785515368/avatars/avatar_FStpm3ZejUD3qGlEeoOUS?_a=BAMAMicg0"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":1}},{"@type":"Comment","text":"Tachyon would be my first 3.15 experiment. I want to inspect an async service without rebuilding it around a profiler.","datePublished":"2026-08-07T19:00:45.316Z","url":"https://daily.dev/posts/fUsKZUfEb#c-X3F2cMejG","author":{"@type":"Person","name":"Agustin Barrientos","url":"https://daily.dev/agustinbarrientos","image":"https://media.daily.dev/image/upload/s--5ayxQnqn--/f_auto/v1788281802/avatars/avatar_wQYYVe5Tbj0NJ7C7qPoa8?_a=BAMAMicg0"}}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/python-3-15-0-candidate-1-is-here--fuskzufeb#faq","mainEntity":[{"@type":"Question","name":"What new features are included in Python 3.15?","acceptedAnswer":{"@type":"Answer","text":"Python 3.15 introduces PEP 810 explicit lazy imports for faster startup, a new frozendict built-in type (PEP 814), a sentinel built-in type (PEP 661), a dedicated profiling package with the Tachyon sampling profiler (PEP 799), unpacking in comprehensions (PEP 798), and UTF-8 as the default encoding (PEP 686). The JIT compiler also received a significant upgrade. Track major language releases like this on daily.dev before planning a Python upgrade."}},{"@type":"Question","name":"How much faster is the JIT compiler in Python 3.15?","acceptedAnswer":{"@type":"Answer","text":"The upgraded JIT compiler in Python 3.15 delivers an 8-9% geometric mean performance improvement on x86-64 Linux compared to the standard interpreter, and a 12-13% speedup on AArch64 macOS compared to the tail-calling interpreter. Windows 64-bit binaries now also use the tail-calling interpreter, and macOS binaries install free-threading support by default. Developers benchmarking runtime upgrades can follow performance changes like these on daily.dev."}},{"@type":"Question","name":"When is Python 3.15.0rc2 scheduled to be released?","acceptedAnswer":{"@type":"Answer","text":"Python 3.15.0rc2 is scheduled for release on 2026-09-01, the second of two planned release candidates before the final 3.15.0 release. Only reviewed bug fixes are allowed between rc1 and the final release, and there will be no further ABI changes in the 3.15 series from rc1 onward. Maintainers preparing wheels for a new Python release can track the timeline on daily.dev."}}]}
```

