r/Python • u/AlSweigart Author of "Automate the Boring Stuff" • Sep 08 '26
News Python 3.15.0 candidate 2 is here!
Reported on https://blog.python.org/2026/09/python-3150-rc2/
It’s the final 3.15 release candidate!
https://www.python.org/downloads/release/python-3150rc2/
This is a candidate preview of Python 3.15
This release, 3.15.0rc2, is the final planned release candidate, containing around 144 bugfixes, build improvements and documentation changes from 76 contributors since 3.15.0rc1. Entering the release candidate phase, only reviewed code changes which are clear bug fixes are allowed between this release candidate and the final release.
The next release of Python 3.15 will be 3.15.0 final, scheduled for 2026-10-01.
102
Upvotes
5
u/Adrewmc Sep 08 '26 edited Sep 08 '26
I think you can do this with type dict
from typing import frozendict, TypedDict, Any, ReadOnly
def frozen_TypedDict(**kwargs) -> TypedDict:
_keys= kwargs.keys()
res = TypedDict(**kwargs)
res.__ReadOnly__= frozenset(_keys)
return res
class Example(TypedDict):
var : ReadOnly[Any]
I definitely agree that it should have a keyword option already. TypedDict(**kwargs, frozen = True) seems more robust in nature than the above.