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·May 3, 2021

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

ArchitectureScopeDownloadSHA256
x86userDownloadAD07633A1F0CD795F3BF9DA33729F662281DF196B4567FA795829F3BB38A30AC
x86machineDownloadAD07633A1F0CD795F3BF9DA33729F662281DF196B4567FA795829F3BB38A30AC
x64userDownload7628244CB53408B50639D2C1287C659F4E29D3DFDB9084B11AED5870C0C6A48A
x64machineDownload7628244CB53408B50639D2C1287C659F4E29D3DFDB9084B11AED5870C0C6A48A

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
ArchitectureScopeDownloadSHA256
x86userDownload0ECECC9B234A2FF92B2AE8F0C62E9F7BEF9FA7E39FE980BB7FA7BBDC2BFD14E5
x86machineDownload0ECECC9B234A2FF92B2AE8F0C62E9F7BEF9FA7E39FE980BB7FA7BBDC2BFD14E5
x64userDownloadE15BC52914B6DAEE9630360BFE3708EE646D4E4CE34BF5368066213009AF70A6
x64machineDownloadE15BC52914B6DAEE9630360BFE3708EE646D4E4CE34BF5368066213009AF70A6
3.8.8
ArchitectureScopeDownloadSHA256
x86userDownload64667D3185C57C493760CE1CE35C8C529CA46CE7188E02FB75FAC6FCF72B9510
x86machineDownload64667D3185C57C493760CE1CE35C8C529CA46CE7188E02FB75FAC6FCF72B9510
x64userDownload0E4B57099657C2304132D961E6939EED0C7DA3CC4F15078008F9D5BA0A30726E
x64machineDownload0E4B57099657C2304132D961E6939EED0C7DA3CC4F15078008F9D5BA0A30726E
3.8.7
ArchitectureScopeDownloadSHA256
x86userDownload6DBA69E974634AD1EEBDC289C78AB48970913E93C81DEC90635963ABD6555370
x86machineDownload6DBA69E974634AD1EEBDC289C78AB48970913E93C81DEC90635963ABD6555370
x64userDownloadB8D539D67A9C97A1ACC30DC871821D140C383F160D8A1CD3B5A1A5A0D351AF68
x64machineDownloadB8D539D67A9C97A1ACC30DC871821D140C383F160D8A1CD3B5A1A5A0D351AF68
3.8.6
ArchitectureScopeDownloadSHA256
x86userDownload287D5DF01FF22FF09E6A487AE018603EE19EADE71D462EC703850C96F1D5E8A0
x86machineDownload287D5DF01FF22FF09E6A487AE018603EE19EADE71D462EC703850C96F1D5E8A0
x64userDownload328A257F189CB500606BB26AB0FBDD298ED0E05D8C36540A322A1744F489A0A0
x64machineDownload328A257F189CB500606BB26AB0FBDD298ED0E05D8C36540A322A1744F489A0A0
3.8.5
ArchitectureScopeDownloadSHA256
x86userDownloadF5FE57AEAA90FF4C5AFED629B51880B53E4CABD0EBCADB33F56CA56FA1654DE8
x86machineDownloadF5FE57AEAA90FF4C5AFED629B51880B53E4CABD0EBCADB33F56CA56FA1654DE8
x64userDownloadCD427C7B17337D7C13761CA20877D2D8BE661BD30415DDC17072A31A65A91B64
x64machineDownloadCD427C7B17337D7C13761CA20877D2D8BE661BD30415DDC17072A31A65A91B64
3.8.4
ArchitectureScopeDownloadSHA256
x86userDownloadCD0664574EFD4A1ED29D10EE10E1DC7A45B8922E03191344CF9FBE179FCEADA3
x86machineDownloadCD0664574EFD4A1ED29D10EE10E1DC7A45B8922E03191344CF9FBE179FCEADA3
x64userDownload24CEAD226C8B3DE579E246AA4152BD6C2FF8A613A65998EAC8B66920D9821919
x64machineDownload24CEAD226C8B3DE579E246AA4152BD6C2FF8A613A65998EAC8B66920D9821919
3.8.3
ArchitectureScopeDownloadSHA256
x86userDownloadE5EA9F5646FE3CFF2621B61A55A98EA5B3E9CA7DD7CC14C13535E55C88686872
x86machineDownloadE5EA9F5646FE3CFF2621B61A55A98EA5B3E9CA7DD7CC14C13535E55C88686872
x64userDownloadC74898382A5192D4B506767CBB4B41B8E80B734B8A7CE1FBB13E4ABA8FFE5BF6
x64machineDownloadC74898382A5192D4B506767CBB4B41B8E80B734B8A7CE1FBB13E4ABA8FFE5BF6
3.8.2
ArchitectureScopeDownloadSHA256
x86userDownload03AC5754A69C9C11C08D1F4D694C14625A4D27348AD4DD2D1253E2547819DB2C
x86machineDownload03AC5754A69C9C11C08D1F4D694C14625A4D27348AD4DD2D1253E2547819DB2C
x64userDownload8E400E3F32CDCB746E62E0DB4D3AE4CBA1F927141EBC4D0D5A4006B0DAEE8921
x64machineDownload8E400E3F32CDCB746E62E0DB4D3AE4CBA1F927141EBC4D0D5A4006B0DAEE8921
3.8.1
ArchitectureScopeDownloadSHA256
x86userDownload136EE5B41BB73D8DD22A0D753B04699507F7C4D5CD295BDF1B63920852929608
x86machineDownload136EE5B41BB73D8DD22A0D753B04699507F7C4D5CD295BDF1B63920852929608
x64userDownloadBEBC242C11B8D83D8671C7B8E047E64DD78F7AE9AEF29613B9EE176BF8E35367
x64machineDownloadBEBC242C11B8D83D8671C7B8E047E64DD78F7AE9AEF29613B9EE176BF8E35367
3.8.0
ArchitectureScopeDownloadSHA256
x86userDownloadB471908DE5E10D8FB5C3351A5AFFB1172DA7790C533E0C9FFBAEEC9C11611B15
x86machineDownloadB471908DE5E10D8FB5C3351A5AFFB1172DA7790C533E0C9FFBAEEC9C11611B15
x64userDownloadA9BBC6088A3E4C7112826E21BFEE6277F7B6D93259F7C57176139231BB7071E4
x64machineDownloadA9BBC6088A3E4C7112826E21BFEE6277F7B6D93259F7C57176139231BB7071E4