Opened 5 years ago
Closed 5 years ago
#4767 closed task (fixed)
python3-3.9.1
| Reported by: | Bruce Dubbs | Owned by: | lfs-book |
|---|---|---|---|
| Priority: | high | Milestone: | 10.1 |
| Component: | Book | Version: | SVN |
| Severity: | normal | Keywords: | |
| Cc: |
Description
New point version.
Change History (3)
comment:1 by , 5 years ago
comment:2 by , 5 years ago
| Priority: | normal → high |
|---|
Security
bpo-42103: Prevented potential DoS attack via CPU and RAM exhaustion when processing malformed Apple Property List files in binary format.
bpo-42051: The :mod:plistlib module no longer accepts entity declarations in XML plist files to avoid XML vulnerabilities. This should not affect users as entity declarations are not used in regular plist files.
bpo-40791: Add volatile to the accumulator variable in hmac.compare_digest, making constant-time-defeating optimizations less likely.
Marking high due to security fixes.
Note:
See TracTickets
for help on using tickets.

What's New in Python 3.9.1 final?
*Release date: 2020-12-07*
Core and Builtins
types.GenericAliaswill now raise aTypeErrorwhen attempting to initialize with a keyword argument. Previously, this would cause the interpreter to crash if the interpreter was compiled with debug symbols. This does not affect interpreters compiled for release. Patch by Ken Jin.Library
inspect.findsourcenow raises :exc:OSErrorinstead of :exc:IndexErrorwhen :attr:co_linenoof a code object is greater than the file length. This can happen, for example, when a file is edited after it was imported.inspect.getsource.~traceback.TracebackExceptionno longer holds a reference to the exception's traceback object. Consequently, instances of TracebackException for equivalent but non-equal exceptions now compare as equal.pickle.whichmodulein which importingmultiprocessingcould change the how pickle identifies which module an object belongs to, potentially breaking the unpickling of those objects.asyncio.IncompleteReadErrorwhenexpectedisNone.Tests
test_asyncio.test_call_later()race condition: don't measure asyncio performance in thecall_later()unit test. The test failed randomly on the CI.macOS
IDLE
What's New in Python 3.9.1 release candidate 1?
*Release date: 2020-11-24*
Security
plistlibmodule no longer accepts entity declarations in XML plist files to avoid XML vulnerabilities. This should not affect users as entity declarations are not used in regular plist files.volatileto the accumulator variable inhmac.compare_digest, making constant-time-defeating optimizations less likely.Core and Builtins
SIGINTevent,_PyOS_SigintEvent(), is now created even if Python is configured to not install signal handlers (if :c:member:`PyConfig.install_signal_handlers` equals to 0, orPy_InitializeEx(0)).types.GenericAliasobjects can now be the targets of weakrefs.barry_as_fluflrule. Patch by Pablo Galindo.PyFunctionObject, which resulted in operations on uninitialized memory. Patch by Yonatan Goldschmidt.primarydidn't fail immediately. This led to invalid expressions like `a {b}to throw a :exc:SyntaxError` with a wrong offset, or invalid expressions ending with a curly brace likea {to not fail immediately in the REPL.object.__eq__.sys.moduleswhen import fails.issubclassand :func:isinstancewhen getting thebasesattribute leads to infinite recursion.Library
tkinter.ttk.Style.map. The function accepts now the representation of the default state as empty sequence (as returned byStyle.map()). The structure of the result is now the same on all platform and does not depend on the value ofwantobjects.typing.Literalparameter handling (flatten, deduplicate, use type to cache key).threading.Threadclass at fork: do nothing if the thread is already stopped (ex: fork called at Python exit). Previously, an error was logged in the child process.onerrorcallback fromshutil.rmtreenow receives correct function whenos.openfails.os.sendfile()on illumos.~time.thread_timeis now implemented withgethrvtime()becauseclock_gettime(CLOCK_THREAD_CPUTIME_ID)is not always available. Patch by Jakub Kulik.reprof :mod:typingtypes containing :ref:Generic Alias Types <types-genericalias>previously did not show the parameterized types in theGenericAlias. They have now been changed to do so.xdg-settings.binhex.binhex()consisently writes macOS 9 line endings.subprocess.Popenin case an uid (gid) specified inuser(group,extra_groups) overflowsuid_t(gid_t).~plistlib.InvalidFileExceptionand :exc:RecursionErrorare now the only errors caused by loading malformed binary Plist file (previously ValueError and TypeError could be raised in some specific cases)._codecs.charmap_decodewhen called with a mapped value outside the range of valid Unicode code points.datetime.timesubclasses.ctypes.util.find_libraryto returnNonewhen triying to locate a library in an environment when gcc>=9 is available andldconfigis not.symtablemodule that was causing module-scope global variables to not be reported as both local and global.str()for thetypeattribute of thetkinter.Eventobject always returns now the numeric code returned by Tk instead of the name of the event type.tkinter.EventTypeEnum so all members are strings, and none are tuplestarfilemodule to write only basename of TAR file to GZIP compression header.ctypes.wintypesto be imported on non-Windows systems.shutil.whichnow ignores empty entries in :envvar:PATHEXTinstead of treating them as a match.--outfilefor :mod:cProfile/ :mod:profilenot writing the output file in the original directory when the program being profiled changes the working directory.Documentation
classes <class>and :term:types <type>in the standard library, and for user-defined classes and types if the classmethod :meth:__class_getitem__is provided.generic alias type <types-genericalias>and :data:types.GenericAlias. Also added an entry in glossary for :term:generic types <generic type>.PyType_FromModuleAndSpec.Tests
_testinternalcapimodule in Windows installer for test suitetest_lib2to3if the module has already imported at the time the test executes. Patch by Pablo Galindo.eval()on content received via HTTP.urllib.request.urlcleanup()to reset the globalurllib.request._opener. Patch by Victor Stinner.test_tk.test_widgets.ScaleTesthappening when executing the test with Tk 8.6.10.Build
pycore_bitutils.hinternal header on old clang version withoutbuiltin_bswap16()(ex: Xcode 4.6.3 on Mac OS X 10.7). Patch by Joshua Root and Victor Stinner.Windows
copysign(to_copysign) in headers.macOS
--enable-universalsdkand--with-universal-archsoptions for the configure script now check that the specified architectures can be used.IDLE
C API
PyMethodDef's lifetime is managed through theselfargument of aPyCFunction.