Python 3.8

Python Software Foundation · Python.Python.3.8

Python is a programming language that lets you work more quickly and integrate your systems more effectively.

winget install --id Python.Python.3.8 --exact --source winget

Latest 3.8.10

Release Notes

Security

  • bpo-43434: Creating a sqlite3.Connection object now also produces a sqlite3.connect auditing event. Previously this event was only produced by sqlite3.connect() calls. Patch by Erlend E. Aasland.
  • bpo-43472: Ensures interpreter-level audit hooks receive the cpython.PyInterpreterState_New event when called through the _xxsubinterpreters module.
  • bpo-43075: Fix Regular Expression Denial of Service (ReDoS) vulnerability in urllib.request.AbstractBasicAuthHandler. The ReDoS-vulnerable regex has quadratic worst-case complexity and it allows cause a denial of service when identifying crafted invalid RFCs. This ReDoS issue is on the client side and needs remote attackers to control the HTTP server. Core and Builtins
  • bpo-43105: Importlib now resolves relative paths when creating module spec objects from file locations.
  • bpo-42924: Fix bytearray repetition incorrectly copying data from the start of the buffer, even if the data is offset within the buffer (e.g. after reassigning a slice at the start of the bytearray to a shorter byte string). Library
  • bpo-43993: Update bundled pip to 21.1.1.
  • bpo-43937: Fixed the turtle module working with non-default root window.
  • bpo-43930: Update bundled pip to 21.1 and setuptools to 56.0.0
  • bpo-43920: OpenSSL 3.0.0: load_verify_locations() now returns a consistent error message when cadata contains no valid certificate.
  • bpo-43607: urllib can now convert Windows paths with \?\ prefixes into URL paths.
  • bpo-43284: platform.win32_ver derives the windows version from sys.getwindowsversion().platform_version which in turn derives the version from kernel32.dll (which can be of a different version than Windows itself). Therefore change the platform.win32_ver to determine the version using the platform module’s _syscmd_ver private function to return an accurate version.
  • bpo-42248: [Enum] ensure exceptions raised in missing_ are released
  • bpo-43799: OpenSSL 3.0.0: define OPENSSL_API_COMPAT 1.1.1 to suppress deprecation warnings. Python requires OpenSSL 1.1.1 APIs.
  • bpo-43794: Add ssl.OP_IGNORE_UNEXPECTED_EOF constants (OpenSSL 3.0.0)
  • bpo-43789: OpenSSL 3.0.0: Don’t call the password callback function a second time when first call has signaled an error condition.
  • bpo-43788: The header files for ssl error codes are now OpenSSL version-specific. Exceptions will now show correct reason and library codes. The make_ssl_data.py script has been rewritten to use OpenSSL’s text file with error codes.
  • bpo-43655: tkinter dialog windows are now recognized as dialogs by window managers on macOS and X Window.
  • bpo-43534: turtle.textinput() and turtle.numinput() create now a transient window working on behalf of the canvas window.
  • bpo-43522: Fix problem with hostname_checks_common_name. OpenSSL does not copy hostflags from struct SSL_CTX to struct SSL.
  • bpo-42967: Allow bytes separator argument in urllib.parse.parse_qs and urllib.parse.parse_qsl when parsing str query strings. Previously, this raised a TypeError.
  • bpo-43176: Fixed processing of a dataclass that inherits from a frozen dataclass with no fields. It is now correctly detected as an error.
  • bpo-34463: Fixed discrepancy between traceback and the interpreter in formatting of SyntaxError with lineno not set (traceback was changed to match interpreter).
  • bpo-41735: Fix thread locks in zlib module may go wrong in rare case. Patch by Ma Lin.
  • bpo-26053: Fixed bug where the pdb interactive run command echoed the args from the shell command line, even if those have been overridden at the pdb prompt.
  • bpo-36470: Fix dataclasses with InitVars and replace(). Patch by Claudiu Popa.
  • bpo-28577: The hosts method on 32-bit prefix length IPv4Networks and 128-bit prefix IPv6Networks now returns a list containing the single Address instead of an empty list.
  • bpo-32745: Fix a regression in the handling of ctypes’ ctypes.c_wchar_p type: embedded null characters would cause a ValueError to be raised. Patch by Zackery Spytz. Documentation
  • bpo-43959: The documentation on the PyContextVar C-API was clarified.
  • bpo-43938: Update dataclasses documentation to express that FrozenInstanceError is derived from AttributeError.
  • bpo-43739: Fixing the example code in Doc/extending/extending.rst to declare and initialize the pmodule variable to be of the right type. Tests
  • bpo-43842: Fix a race condition in the SMTP test of test_logging. Don’t close a file descriptor (socket) from a different thread while asyncore.loop() is polling the file descriptor. Patch by Victor Stinner.
  • bpo-43811: Tests multiple OpenSSL versions on GitHub Actions. Use ccache to speed up testing.
  • bpo-43791: OpenSSL 3.0.0: Disable testing of legacy protocols TLS 1.0 and 1.1. Tests are failing with TLSV1_ALERT_INTERNAL_ERROR. Windows
  • bpo-35306: Avoid raising errors from pathlib.Path.exists() when passed an invalid filename.
  • bpo-38822: Fixed os.stat() failing on inaccessible directories with a trailing slash, rather than falling back to the parent directory’s metadata. This implicitly affected os.path.exists() and os.path.isdir().
  • bpo-26227: Fixed decoding of host names in socket.gethostbyaddr() and socket.gethostbyname_ex().
  • bpo-43745: Actually updates Windows release to OpenSSL 1.1.1k. Earlier releases were mislabelled and actually included 1.1.1i again.
  • bpo-43492: Upgrade Windows installer to use SQLite 3.35.5. macOS
  • bpo-44009: Provide “python3.x-intel64” executable to allow reliably forcing macOS universal2 framework builds to run under Rosetta 2 Intel-64 emulation on Apple Silicon Macs. This can be useful for testing or when universal2 wheels are not yet available.
  • bpo-41100: As of 3.8.10, Python now supports building and running on macOS 11 (Big Sur) and on Apple Silicon Macs (based on the ARM64 architecture). A new universal build variant, universal2, is also available to natively support both ARM64 and Intel 64 in one set of executables. This backport from Python 3.9 does not include support for “weaklinking”; to support a range of macOS versions, continue to target for and build on the oldest version in the range; for 3.8.x, the universal2 variant is only useful on macOS 11 or later.
  • bpo-43492: Update macOS installer to use SQLite 3.35.4. IDLE
  • bpo-43655: IDLE dialog windows are now recognized as dialogs by window managers on macOS and X Window. C API
  • bpo-43962: _PyInterpreterState_IDIncref() now calls _PyInterpreterState_IDInitref() and always increments id_refcount. Previously, calling _xxsubinterpreters.get_current() could create an id_refcount inconsistency when a _xxsubinterpreters.InterpreterID object was deallocated. Patch by Victor Stinner.

Installer type: burn

Architecture Scope Download SHA256
x86 user Download AD07633A1F0CD795F3BF9DA33729F662281DF196B4567FA795829F3BB38A30AC
x86 machine Download AD07633A1F0CD795F3BF9DA33729F662281DF196B4567FA795829F3BB38A30AC
x64 user Download 7628244CB53408B50639D2C1287C659F4E29D3DFDB9084B11AED5870C0C6A48A
x64 machine Download 7628244CB53408B50639D2C1287C659F4E29D3DFDB9084B11AED5870C0C6A48A

Details

Homepage
https://www.python.org/
License
PSF-2.0
Publisher
Python Software Foundation
Support
https://www.python.org/about/help/
Privacy Policy
https://www.python.org/privacy/
Copyright
Copyright (c) 2001-2021 Python Software Foundation. All Rights Reserved. Copyright (c) 2000 BeOpen.com. All Rights Reserved. Copyright (c) 1995-2001 Corporation for National Research Initiatives. All Rights Reserved. Copyright (c) 1991-1995 Stichting Mathematisch Centrum, Amsterdam. All Rights Reserved.
Moniker
python3.8

Tags

languageprogrammingprogramming-languagepythonpython3script

Older versions (10)

3.8.9
Architecture Scope Download SHA256
x86 user Download 0ECECC9B234A2FF92B2AE8F0C62E9F7BEF9FA7E39FE980BB7FA7BBDC2BFD14E5
x86 machine Download 0ECECC9B234A2FF92B2AE8F0C62E9F7BEF9FA7E39FE980BB7FA7BBDC2BFD14E5
x64 user Download E15BC52914B6DAEE9630360BFE3708EE646D4E4CE34BF5368066213009AF70A6
x64 machine Download E15BC52914B6DAEE9630360BFE3708EE646D4E4CE34BF5368066213009AF70A6
3.8.8
Architecture Scope Download SHA256
x86 user Download 64667D3185C57C493760CE1CE35C8C529CA46CE7188E02FB75FAC6FCF72B9510
x86 machine Download 64667D3185C57C493760CE1CE35C8C529CA46CE7188E02FB75FAC6FCF72B9510
x64 user Download 0E4B57099657C2304132D961E6939EED0C7DA3CC4F15078008F9D5BA0A30726E
x64 machine Download 0E4B57099657C2304132D961E6939EED0C7DA3CC4F15078008F9D5BA0A30726E
3.8.7
Architecture Scope Download SHA256
x86 user Download 6DBA69E974634AD1EEBDC289C78AB48970913E93C81DEC90635963ABD6555370
x86 machine Download 6DBA69E974634AD1EEBDC289C78AB48970913E93C81DEC90635963ABD6555370
x64 user Download B8D539D67A9C97A1ACC30DC871821D140C383F160D8A1CD3B5A1A5A0D351AF68
x64 machine Download B8D539D67A9C97A1ACC30DC871821D140C383F160D8A1CD3B5A1A5A0D351AF68
3.8.6
Architecture Scope Download SHA256
x86 user Download 287D5DF01FF22FF09E6A487AE018603EE19EADE71D462EC703850C96F1D5E8A0
x86 machine Download 287D5DF01FF22FF09E6A487AE018603EE19EADE71D462EC703850C96F1D5E8A0
x64 user Download 328A257F189CB500606BB26AB0FBDD298ED0E05D8C36540A322A1744F489A0A0
x64 machine Download 328A257F189CB500606BB26AB0FBDD298ED0E05D8C36540A322A1744F489A0A0
3.8.5
Architecture Scope Download SHA256
x86 user Download F5FE57AEAA90FF4C5AFED629B51880B53E4CABD0EBCADB33F56CA56FA1654DE8
x86 machine Download F5FE57AEAA90FF4C5AFED629B51880B53E4CABD0EBCADB33F56CA56FA1654DE8
x64 user Download CD427C7B17337D7C13761CA20877D2D8BE661BD30415DDC17072A31A65A91B64
x64 machine Download CD427C7B17337D7C13761CA20877D2D8BE661BD30415DDC17072A31A65A91B64
3.8.4
Architecture Scope Download SHA256
x86 user Download CD0664574EFD4A1ED29D10EE10E1DC7A45B8922E03191344CF9FBE179FCEADA3
x86 machine Download CD0664574EFD4A1ED29D10EE10E1DC7A45B8922E03191344CF9FBE179FCEADA3
x64 user Download 24CEAD226C8B3DE579E246AA4152BD6C2FF8A613A65998EAC8B66920D9821919
x64 machine Download 24CEAD226C8B3DE579E246AA4152BD6C2FF8A613A65998EAC8B66920D9821919
3.8.3
Architecture Scope Download SHA256
x86 user Download E5EA9F5646FE3CFF2621B61A55A98EA5B3E9CA7DD7CC14C13535E55C88686872
x86 machine Download E5EA9F5646FE3CFF2621B61A55A98EA5B3E9CA7DD7CC14C13535E55C88686872
x64 user Download C74898382A5192D4B506767CBB4B41B8E80B734B8A7CE1FBB13E4ABA8FFE5BF6
x64 machine Download C74898382A5192D4B506767CBB4B41B8E80B734B8A7CE1FBB13E4ABA8FFE5BF6
3.8.2
Architecture Scope Download SHA256
x86 user Download 03AC5754A69C9C11C08D1F4D694C14625A4D27348AD4DD2D1253E2547819DB2C
x86 machine Download 03AC5754A69C9C11C08D1F4D694C14625A4D27348AD4DD2D1253E2547819DB2C
x64 user Download 8E400E3F32CDCB746E62E0DB4D3AE4CBA1F927141EBC4D0D5A4006B0DAEE8921
x64 machine Download 8E400E3F32CDCB746E62E0DB4D3AE4CBA1F927141EBC4D0D5A4006B0DAEE8921
3.8.1
Architecture Scope Download SHA256
x86 user Download 136EE5B41BB73D8DD22A0D753B04699507F7C4D5CD295BDF1B63920852929608
x86 machine Download 136EE5B41BB73D8DD22A0D753B04699507F7C4D5CD295BDF1B63920852929608
x64 user Download BEBC242C11B8D83D8671C7B8E047E64DD78F7AE9AEF29613B9EE176BF8E35367
x64 machine Download BEBC242C11B8D83D8671C7B8E047E64DD78F7AE9AEF29613B9EE176BF8E35367
3.8.0
Architecture Scope Download SHA256
x86 user Download B471908DE5E10D8FB5C3351A5AFFB1172DA7790C533E0C9FFBAEEC9C11611B15
x86 machine Download B471908DE5E10D8FB5C3351A5AFFB1172DA7790C533E0C9FFBAEEC9C11611B15
x64 user Download A9BBC6088A3E4C7112826E21BFEE6277F7B6D93259F7C57176139231BB7071E4
x64 machine Download A9BBC6088A3E4C7112826E21BFEE6277F7B6D93259F7C57176139231BB7071E4