About Python 3.10
Python is a programming language that lets you work more quickly and integrate your systems more effectively.
Python is a programming language that lets you work more quickly and integrate your systems more effectively.
Python is a programming language that lets you work more quickly and integrate your systems more effectively.
Security
- gh-101727: Updated the OpenSSL version used in Windows and macOS binary release builds to 1.1.1t to address CVE-2023-0286, CVE-2022-4303, and CVE-2022-4303 per the OpenSSL 2023-02-07 security advisory.
- gh-101283: subprocess.Popen now uses a safer approach to find cmd.exe when launching with shell=True. Patch by Eryk Sun, based on a patch by Oleg Iarygin.
Core and Builtins
- gh-102416: Do not memoize incorrectly automatically generated loop rules in the parser. Patch by Pablo Galindo.
- gh-102356: Fix a bug that caused a crash when deallocating deeply nested filter objects. Patch by Marta Gómez Macías.
- gh-102397: Fix segfault from race condition in signal handling during garbage collection. Patch by Kumar Aditya.
- gh-102126: Fix deadlock at shutdown when clearing thread states if any finalizer tries to acquire the runtime head lock. Patch by Kumar Aditya.
- gh-102027: Fix SSE2 and SSE3 detection in _blake2 internal module. Patch by Max Bachmann.
- gh-101967: Fix possible segfault in positional_only_passed_as_keyword function, when new list created.
- gh-101765: Fix SystemError / segmentation fault in iter reduce when internal access of builtins.dict keys mutates the iter object.
Library
- gh-102947: Improve traceback when dataclasses.fields() is called on a non-dataclass. Patch by Alex Waygood
- gh-101979: Fix a bug where parentheses in the metavar argument to argparse.ArgumentParser.add_argument() were dropped. Patch by Yeojin Kim.
- gh-102179: Fix os.dup2() error message for negative fds.
- gh-101961: For the binary mode, fileinput.hookcompressed() doesn’t set the encoding value even if the value is None. Patch by Gihwan Kim.
- gh-101936: The default value of fp becomes io.BytesIO if HTTPError is initialized without a designated fp parameter. Patch by Long Vo.
- gh-101566: In zipfile, apply fix for extractall on the underlying zipfile after being wrapped in Path.
- gh-101997: Upgrade pip wheel bundled with ensurepip (pip 23.0.1)
- gh-101892: Callable iterators no longer raise SystemError when the callable object exhausts the iterator but forgets to either return a sentinel value or raise StopIteration.
- gh-97786: Fix potential undefined behaviour in corner cases of floating-point-to-time conversions.
- gh-101517: Fixed bug where bdb looks up the source line with linecache with a lineno=None, which causes it to fail with an unhandled exception.
- gh-101673: Fix a pdb bug where ll clears the changes to local variables. …
| Publisher | Python Software Foundation |
|---|---|
| Version | 3.10.11 |
| Release date | 2023-04-04 |
| License | PSF-2.0 |
| Installer type | burn |
| Architecture | x86, x64 |
| Package ID | Python.Python.3.10 |
| Install scope | Current user |
winget install --id=Python.Python.3.10 -ewinget upgrade --id=Python.Python.3.10 -ewinget uninstall --id=Python.Python.3.10 -e"python-3.10.11-amd64.exe" /quiet /norestart InstallAllUsers=0 PrependPath=1"python-3.10.11-amd64.exe" DefaultJustForMeTargetDir=D:\Apps\Python 3.10msiexec /x {a10fbb63-03ff-4b8c-a176-f5fd355f715b} /quietPython 3.10 adds these commands to the command line: py, python, pythonw, pyw.
Python 3.10 can open or be associated with 7 file types:
Security
- gh-97616: Fix multiplying a list by an integer (list *= int): detect the integer overflow when the new allocated length is close to the maximum size. Issue reported by Jordan Limor. Patch by Victor Stinner.
- gh-97612: Fix a shell code injection vulnerability in the get-remote-certificate.py example script. The script no longer uses a shell to run openssl commands. Issue reported and initial fix by Caleb Shortt. Patch by Victor Stinner.
- gh-68966: The deprecated mailcap module now refuses to inject unsafe text (filenames, MIME types, parameters) into shell commands. Instead of using such text, it will warn and act as if a match was not found (or for test commands, as if the test failed).
Core and Builtins
- gh-96078: os.sched_yield() now release the GIL while calling sched_yield(2). Patch by Dong-hee Na.
- gh-97943: Bugfix: PyFunction_GetAnnotations() should return a borrowed reference. It was returning a new reference.
- gh-97591: Fixed a missing incref/decref pair in Exception.setstate(). Patch by Ofey Chan.
- gh-96848: Fix command line parsing: reject -X int_max_str_digits option with no value (invalid) when the
PYTHONINTMAXSTRDIGITS environment variable is set to a valid limit. Patch by Victor Stinner.
Python 3.10 is psf-2.0 software from Python Software Foundation. Check the publisher's license terms for pricing and usage rights.
The latest version is 3.10.11, released on Apr 4, 2023.
The download button links to the official installer published on python.org, the same file Windows Package Manager installs. You can verify the downloaded file by comparing its SHA-256 checksum with d8dede5005564b408ba50317108b765ed9c3c510342a598f9fd42681cbe0648b.
Python 3.10 runs on Windows and is available for 32-bit (x86), 64-bit (x64) systems.
Run the offline installer with "python-3.10.11-amd64.exe" /quiet /norestart InstallAllUsers=0 PrependPath=1, or install it with Windows Package Manager: winget install --id=Python.Python.3.10 -e --silent.
Open Settings › Apps › Installed apps, find Python 3.10 and select Uninstall. From the command line, run winget uninstall --id=Python.Python.3.10 -e.
Python 3.10 supports 7 file types, including .py, .pyc, .pyd, .pyo, .pyw, .pyz, .pyzw.