pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: CVS commit: pkgsrc/lang/python37
Hello Adam,
Adam Ciarcinski writes:
> [...]
> Log Message:
> python37: updated to 3.7.5
>
> Python 3.7.5 is the fifth and most recent maintenance release of Python 3.7. The Python 3.7 series contains many new features and optimizations.
> [...]
Thanks for updating it!
JFTR the complete changelog (at least several entries are probably
interesting):
Python 3.7.5 final
------------------
Library
* bpo-38368: Prevent ctypes crash when handling arrays in structs/unions.
* bpo-38449: Revert GH-15522, which introduces a regression in
mimetypes.guess_type() due to improper handling of filenames as urls.
Windows
* bpo-38344: Fix syntax in activate.bat.
Python 3.7.5 release candidate 1
--------------------------------
Security
* bpo-38243: Escape the server title of xmlrpc.server.DocXMLRPCServer when
rendering the document page as HTML. (Contributed by Dong-hee Na in
bpo-38243.)
* bpo-38174: Update vendorized expat library version to 2.2.8, which resolves
CVE-2019-15903.
* bpo-37764: Fixes email._header_value_parser.get_unstructured going into an
infinite loop for a specific case in which the email header does not have
trailing whitespace, and the case in which it contains an invalid encoded
word. Patch by Ashwin Ramaswami.
* bpo-37461: Fix an infinite loop when parsing specially crafted email
headers. Patch by Abhilash Raj.
* bpo-34155: Fix parsing of invalid email addresses with more than one @
(e.g. a@b%c.com@localhost.) to not return the part before 2nd @ as valid email
address. Patch by maxking & jpic.
Core and Builtins
* bpo-36871: Improve error handling for the assert_has_calls method of mocks.
Fixed a bug where any errors encountered while binding the expected calls
to the mock’s spec were silently swallowed, leading to misleading error
output.
* bpo-38013: Allow to call async_generator_athrow().throw(...) even for
non-started async generator helper. It fixes annoying warning at the end of
asyncio.run() call.
* bpo-38124: Fix an off-by-one error in PyState_AddModule that could cause
out-of-bounds memory access.
* bpo-36946: Fix possible signed integer overflow when handling slices. Patch
by hongweipeng.
* bpo-37409: Ensure explicit relative imports from interactive sessions and
scripts (having no parent package) always raise ImportError, rather than
treating the current module as the package. Patch by Ben Lewis.
* bpo-36311: Decoding bytes objects larger than 2GiB is faster and no longer
fails when a multibyte characters spans a chunk boundary.
* bpo-37467: Fix sys.excepthook() and PyErr_Display() if a filename is a
bytes string. For example, for a SyntaxError exception where the filename
attribute is a bytes string.
* bpo-37417: bytearray.extend() now correctly handles errors that arise
during iteration. Patch by Brandt Bucher.
* bpo-20523: pdb.Pdb supports ~/.pdbrc in Windows 7. Patch by Tim Hopper and
Dan Lidral-Porter.
Library
* bpo-38019: Correctly handle pause/resume reading of closed asyncio unix
pipe.
* bpo-38216: Allow the rare code that wants to send invalid http requests
from the http.client library a way to do so. The fixes for bpo-30458 led to
breakage for some projects that were relying on this ability to test their
own behavior in the face of bad requests.
* bpo-38191: Constructor of NamedTuple type now accepts arbitrary keyword
argument names, including “cls”, “self”, “typename” and “fields”.
* bpo-38185: Fixed case-insensitive string comparison in sqlite3.Row
indexing.
* bpo-38175: Fix a memory leak in comparison of sqlite3.Row objects.
* bpo-33936: _hashlib no longer calls obsolete OpenSSL initialization
function with OpenSSL 1.1.0+.
* bpo-34706: Preserve subclassing in inspect.Signature.from_callable.
* bpo-38059: inspect.py now uses sys.exit() instead of exit()
* bpo-38006: weakref.WeakValueDictionary defines a local remove() function
used as callback for weak references. This function was created with a
closure. Modify the implementation to avoid the closure.
* bpo-34410: Fixed a crash in the tee() iterator when re-enter it.
RuntimeError is now raised in this case.
* bpo-37965: Fix C compiler warning caused by
distutils.ccompiler.CCompiler.has_function.
* bpo-36205: Fix the rusage implementation of time.process_time() to
correctly report the sum of the system and user CPU time.
* bpo-22347: Update mimetypes.guess_type to allow proper parsing of URLs with
only a host name. Patch by Dong-hee Na.
* bpo-37950: Fix ast.dump() when call with incompletely initialized node.
* bpo-37915: Fix a segmentation fault that appeared when comparing instances
of datetime.timezone and datetime.tzinfo objects. Patch by Pablo Galindo.
* bpo-37885: venv: Don’t generate unset variable warning on deactivate.
* bpo-37868: Fix dataclasses.is_dataclass when given an instance that never
raises AttributeError in __getattr__. That is, an object that returns
something for __dataclass_fields__ even if it’s not a dataclass.
* bpo-37811: Fix socket module’s socket.connect(address) function being
unable to establish connection in case of interrupted system call. The
problem was observed on all OSes which poll(2) system call can take only
non-negative integers and -1 as a timeout value.
* bpo-21131: Fix faulthandler.register(chain=True) stack. faulthandler now
allocates a dedicated stack of SIGSTKSZ*2 bytes, instead of just SIGSTKSZ
bytes. Calling the previous signal handler in faulthandler signal handler
uses more than SIGSTKSZ bytes of stack memory on some platforms.
* bpo-34621: Fixed unpickle-ability in older Python versions (<3.7) of UUID
objects with is_safe set to SafeUUID.unknown.
* bpo-37738: Fix the implementation of curses addch(str, color_pair): pass
the color pair to setcchar(), instead of always passing 0 as the color
pair.
* bpo-37723: Fix performance regression on regular expression parsing with
huge character sets. Patch by Yann Vaginay.
* bpo-32178: Fix IndexError in email package when trying to parse invalid
address fields starting with :.
* bpo-37685: Fixed comparisons of datetime.timedelta and datetime.timezone.
* bpo-37695: Correct curses.unget_wch() error message. Patch by Anthony
Sottile.
* bpo-29553: Fixed argparse.ArgumentParser.format_usage() for mutually
exclusive groups. Patch by Andrew Nester.
* bpo-37664: Update wheels bundled with ensurepip (pip 19.2.3 and setuptools
41.2.0)
* bpo-37642: Allowed the pure Python implementation of datetime.timezone to
represent sub-minute offsets close to minimum and maximum boundaries,
specifically in the ranges (23:59, 24:00) and (-23:59, 24:00). Patch by
Ngalim Siregar
* bpo-37491: Fix IndexError when parsing email headers with unexpectedly
ending bare-quoted string value. Patch by Abhilash Raj.
* bpo-18378: Recognize “UTF-8” as a valid value for LC_CTYPE in
locale._parse_localename.
* bpo-37579: Return NotImplemented in Python implementation of __eq__ for
timedelta and time when the other object being compared is not of the same
type to match C implementation. Patch by Karthikeyan Singaravelan.
* bpo-21478: Record calls to parent when autospecced object is attached to a
mock using unittest.mock.attach_mock(). Patch by Karthikeyan Singaravelan.
* bpo-37531: “python3 -m test -jN –timeout=TIMEOUT” now kills a worker
process if it runs longer than TIMEOUT seconds.
* bpo-37482: Fix serialization of display name in originator or destination
address fields with both encoded words and special chars.
* bpo-37424: Fixes a possible hang when using a timeout on subprocess.run()
while capturing output. If the child process spawned its own children or
otherwise connected its stdout or stderr handles with another process, we
could hang after the timeout was reached and our child was killed when
attempting to read final output from the pipes.
* bpo-37421: Fix multiprocessing.util.get_temp_dir() finalizer: clear also
the ‘tempdir’ configuration of the current process, so next call to
get_temp_dir() will create a new temporary directory, rather than reusing
the removed temporary directory.
* bpo-37420: os.sched_setaffinity() now correctly handles errors that arise
during iteration over its mask argument. Patch by Brandt Bucher.
* bpo-29412: Fix IndexError in parsing a header value ending unexpectedly.
Patch by Abhilash Raj.
* bpo-37372: Fix error unpickling datetime.time objects from Python 2 with
seconds>=24. Patch by Justin Blanchard.
* bpo-27860: Fix IPv4Interface and IPv6Interface didn’t accept string mask
when the argument is tuple.
* bpo-33972: Email with single part but content-type set to multipart/*
doesn’t raise AttributeError anymore.
* bpo-21872: Fix lzma: module decompresses data incompletely. When
decompressing a FORMAT_ALONE format file, and it doesn’t have the end
marker, sometimes the last one to dozens bytes can’t be output. Patch by Ma
Lin.
* bpo-12144: Ensure cookies with expires attribute are handled in
CookieJar.make_cookies().
* bpo-37163: dataclasses.replace() now supports the field named “obj”.
* bpo-36871: Ensure method signature is used instead of constructor signature
of a class while asserting mock object against method calls. Patch by
Karthikeyan Singaravelan.
* bpo-36564: Fix infinite loop in email header folding logic that would be
triggered when an email policy’s max_line_length is not long enough to
include the required markup and any values in the message. Patch by Paul
Ganssle
* bpo-35168: shlex.shlex.punctuation_chars is now a read-only property.
* bpo-20504: Fixes a bug in cgi module when a multipart/form-data request has
no Content-Length header.
* bpo-4963: Fixed non-deterministic behavior related to mimetypes extension
mapping and module reinitialization.
Documentation
* bpo-26868: Fix example usage of PyModule_AddObject() to properly handle
errors.
* bpo-37979: Added a link to dateutil.parser.isoparse in the
datetime.fromisoformat documentation. Patch by Paul Ganssle
* bpo-37937: Mention frame.f_trace in sys.settrace() docs.
* bpo-37726: Stop recommending getopt in the tutorial for command line
argument parsing and promote argparse.
* bpo-32910: Remove implementation-specific behaviour of how venv’s
Deactivate works.
* bpo-37256: Fix wording of arguments for Request in urllib.request
* bpo-37284: Add a brief note to indicate that any new sys.implementation
required attributes must go through the PEP process.
* bpo-30088: Documented that mailbox.Maildir constructor doesn’t attempt to
verify the maildir folder layout correctness. Patch by Sviatoslav
Sydorenko.
* bpo-37487: Fix PyList_GetItem index description to include 0.
* bpo-37478: Added possible exceptions to the description of os.chdir().
* bpo-37004: In the documentation for difflib, a note was added explicitly
warning that the results of SequenceMatcher’s ratio method may depend on
the order of the input strings.
* bpo-35803: Document and test that tempfile functions may accept a path-like
object for the dir argument. Patch by Anthony Sottile.
* bpo-34293: Fix the Doc/Makefile regarding PAPER environment variable and
PDF builds
Tests
* bpo-38239: Fix test_gdb for Link Time Optimization (LTO) builds.
* bpo-38275: test_ssl now handles disabled TLS/SSL versions better. OpenSSL’s
crypto policy and run-time settings are recognized and tests for disabled
versions are skipped. Tests also accept more TLS minimum_versions for
platforms that override OpenSSL’s default with strict settings.
* bpo-38271: The private keys for test_ssl were encrypted with 3DES in
traditional PKCS#5 format. 3DES and the digest algorithm of PKCS#5 are
blocked by some strict crypto policies. Use PKCS#8 format with AES256
encryption instead.
* bpo-37123: Multiprocessing test test_mymanager() now also expects -SIGTERM,
not only exitcode 0. BaseManager._finalize_manager() sends SIGTERM to the
manager process if it takes longer than 1 second to stop, which happens on
slow buildbots.
* bpo-38212: Multiprocessing tests: increase
test_queue_feeder_donot_stop_onexc() timeout from 1 to 60 seconds.
* bpo-38117: Test with OpenSSL 1.1.1d
* bpo-37805: Add tests for json.dump(…, skipkeys=True). Patch by Dong-hee Na.
* bpo-37531: Enhance regrtest multiprocess timeout: write a message when
killing a worker process, catch popen.kill() and popen.wait() exceptions,
put a timeout on the second call to popen.communicate().
* bpo-37335: Improve locale coercion tests by using codec lookup instead of
more fragile replace().
* bpo-37411: Fix test_wsgiref.testEnviron() to no longer depend on the
environment variables (don’t fail if “X” variable is set).
* bpo-37400: Fix test_os.test_chown(): use os.getgroups() rather than
grp.getgrall() to get groups. Rename also the test to test_chown_gid().
* bpo-37359: Add –cleanup option to python3 -m test to remove test_python_*
directories of previous failed jobs. Add “make cleantest” to run python3 -m
test --cleanup.
* bpo-37362: test_gdb no longer fails if it gets an “unexpected” message on
stderr: it now ignores stderr. The purpose of test_gdb is to test that
python-gdb.py commands work as expected, not to test gdb.
* bpo-36919: Make test_source_encoding.test_issue2301 implementation
independent. The test will work now for both CPython and IronPython.
* bpo-34720: Assert m_state != NULL to mimic GC traversal functions that do
not correctly handle module creation when the module state has not been
created.
* bpo-34347: Fix test_utf8_mode.test_cmd_line for AIX. Patch by M. Felt
Build
* bpo-38301: In Solaris family, we must be sure to use -D_REENTRANT. Patch by
Jesús Cea Avión.
* bpo-36002: Locate llvm-profdata and llvm-ar binaries using AC_PATH_TOOL
rather than AC_PATH_TARGET_TOOL.
* bpo-37936: The .gitignore file no longer applies to any files that are in
fact tracked in the Git repository. Patch by Greg Price.
Windows
* bpo-38117: Update bundled OpenSSL to 1.1.1d
* bpo-36634: venv activate.bat now works when the existing variables contain
double quote characters.
* bpo-38087: Fix case sensitivity in test_pathlib and test_ntpath.
* bpo-38088: Fixes distutils not finding vcruntime140.dll with only the v142
toolset installed.
* bpo-37283: Ensure command-line and unattend.xml setting override previously
detected states in Windows installer.
* bpo-37705: Improve the implementation of winerror_to_errno().
* bpo-37549: os.dup() no longer fails for standard streams on Windows 7.
* bpo-37702: Fix memory leak on Windows in creating an SSLContext object or
running urllib.request.urlopen(‘https://…’;).
* bpo-10945: Officially drop support for creating bdist_wininst installers on
non-Windows systems.
* bpo-37445: Include the FORMAT_MESSAGE_IGNORE_INSERTS flag in FormatMessageW
() calls.
* bpo-37380: Don’t collect unfinished processes with subprocess._active on
Windows to cleanup later. Patch by Ruslan Kuprieiev.
* bpo-32587: Make winreg.REG_MULTI_SZ support zero-length strings.
macOS
* bpo-38117: Updated OpenSSL to 1.1.1d in macOS installer.
* bpo-38089: Move Azure Pipelines to latest VM versions and make macOS tests
optional
IDLE
* bpo-35379: When exiting IDLE, catch any AttributeError. One happens when
EditorWindow.close is called twice. Printing a traceback, when IDLE is run
from a terminal, is useless and annoying.
* bpo-38183: To avoid problems, test_idle ignores the user config directory.
It no longer tries to create or access .idlerc or any files within. Users
must run IDLE to discover problems with saving settings.
* bpo-38077: IDLE no longer adds ‘argv’ to the user namespace when
initializing it. This bug only affected 3.7.4 and 3.8.0b2 to 3.8.0b4.
* bpo-38041: Shell restart lines now fill the window width, always start with
‘=’, and avoid wrapping unnecessarily. The line will still wrap if the
included file name is long relative to the width.
* bpo-35771: To avoid occasional spurious test_idle failures on slower
machines, increase the hover_delay in test_tooltip.
* bpo-37824: Properly handle user input warnings in IDLE shell. Cease turning
SyntaxWarnings into SyntaxErrors.
* bpo-37929: IDLE Settings dialog now closes properly when there is no shell
window.
* bpo-37902: Add mousewheel scrolling for IDLE module, path, and stack
browsers. Patch by George Zhang.
* bpo-37849: Fixed completions list appearing too high or low when shown
above the current line.
* bpo-36419: Refactor IDLE autocomplete and improve testing.
* bpo-37748: Reorder the Run menu. Put the most common choice, Run Module, at
the top.
* bpo-37692: Improve highlight config sample with example shell interaction
and better labels for shell elements.
* bpo-37628: Settings dialog no longer expands with font size.
* bpo-37627: Initialize the Customize Run dialog with the command line
arguments most recently entered before. The user can optionally edit before
submitting them.
* bpo-33610: Fix code context not showing the correct context when first
toggled on.
* bpo-37530: Optimize code context to reduce unneeded background activity.
Font and highlight changes now occur along with text changes instead of
after a random delay.
* bpo-27452: Cleanup config.py by inlining RemoveFile and simplifying the
handling of file in CreateConfigHandlers.
* bpo-37325: Fix tab focus traversal order for help source and custom run
dialogs.
* bpo-17535: Add optional line numbers for IDLE editor windows. Windows open
without line numbers unless set otherwise in the General tab of the
configuration dialog.
* bpo-26806: To compensate for stack frames added by IDLE and avoid possible
problems with low recursion limits, add 30 to limits in the user code
execution process. Subtract 30 when reporting recursion limits to make this
addition mostly transparent.
* bpo-36390: Gather Format menu functions into format.py. Combine
paragraph.py, rstrip.py, and format methods from editor.py.
Tools/Demos
* bpo-37803: pdb’s --help and --version long options now work.
* bpo-37675: 2to3 now works when run from a zipped standard library.
Home |
Main Index |
Thread Index |
Old Index