This allows to use positional argument with nargs='*' and without default
in mutually exclusive group and improves error message about required
arguments.
(cherry picked from commit 3c83f9958c)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
gh-120378: Fix crash caused by integer overflow in `curses` (GH-124555)
This is actually an upstream problem in curses, and has been reported
to them already:
https://lists.gnu.org/archive/html/bug-ncurses/2024-09/msg00101.html
This is a nice workaround in the meantime to prevent the segfault.
(cherry picked from commit c2ba931318)
Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Support the "pager" binary in _pyrepl (GH-122878)
Debian (and derivatives) provide a /usr/bin/pager binary, managed by the
alternatives system, that always points to an available pager utility.
Allow _pyrepl to use it, to follow system policy.
This is a very trivial change, from a patch that Debian has been
carrying since 2.7 era. Seems appropriate to upstream.
https://bugs.debian.org/799555
(cherry picked from commit 426569eb8c)
Co-authored-by: Stefano Rivera <stefano@rivera.za.net>
Co-authored-by: T. Wouters <thomas@python.org>
For source file "path/to/file.py" it created file with incorrect path
"/absolute/path/to/path/to/file.pyc" instead of "path/to/file.pyc".
(cherry picked from commit 60ff67d010)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Substrings of the specified string no longer considered valid values.
(cherry picked from commit f1a2417b9e)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
It now always uses setattr() instead of setting the dict item to modify
the namespace. This allows to use a class as a namespace.
(cherry picked from commit 95e92ef6c7)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
type() no longer called for SUPPRESS.
This only affects positional arguments with nargs='?'.
(cherry picked from commit 9bcadf589a)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Fix parsing positional argument with nargs equal to '?' or '*' if it is
preceded by an option and another positional argument.
(cherry picked from commit 4a5e4aade4)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* Detect source file encoding.
* Use the "replace" error handler even for UTF-8 (default) encoding.
* Remove the BOM.
* Fix detection of too long lines if they contain NUL.
* Return the head rather than the tail for truncated long lines.
(cherry picked from commit e2f710792b)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Arguments with the value identical to the default value (e.g. booleans,
small integers, empty or 1-character strings) are no longer considered
"not present".
(cherry picked from commit 3094cd17b0)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Only the first one has now been removed, all subsequent ones are now
taken literally.
(cherry picked from commit aae126748f)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
gh-122392: IDLE - Fix overlapping lines in browsers (GH-122392) (GH-124975)
Increase currently inadequate vertical spacing for the IDLE browsers (path,
module, and stack) on high-resolution monitors.
---------
(cherry picked from commit c5df1cb7bd)
Co-authored-by: Zhikang Yan <2951256653@qq.com>
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
gh-121982: ``csv``: Add a test case for invalid ``quoting`` constant. (GH-121983)
Test invalid quoting constant
(cherry picked from commit 656b7a3c83)
Co-authored-by: Tomas R <tomas.roun8@gmail.com>
Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru>
gh-122864: Fix a ``test_funcattrs.test___builtins__`` when executing directly (GH-124845)
Previously when executing ``test_functattrs.test___builtins__`` directly, it failed because the fact, that ``__builtins__`` is refers to the built-in module ``builtins`` while it's expects a ``__builtins__.__dict__``. But when this test is being run from another module, then ``__builtins__`` is refers to ``builtins.__dict__``. Now this part of the behaviour is covered.
---------
(cherry picked from commit 8fbf10d6cf)
Co-authored-by: Mark Byrne <31762852+mbyrnepr2@users.noreply.github.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
Revert the incremental GC in 3.13, since it's not clear that without further turning, the benefits outweigh the costs.
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
gh-123811: test that round() can return signed zero (GH-123829)
(cherry picked from commit d2b9b6f919)
Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
* Setting the __module__ attribute for a class now removes the
__firstlineno__ item from the type's dict.
* The _collections_abc and _pydecimal modules now completely replace the
collections.abc and decimal modules after importing them. This
allows to get the source of classes and functions defined in these
modules.
* inspect.findsource() now checks whether the first line number for a
class is out of bound.
(cherry picked from commit 69a4063ca5)
gh-123823: Fix test_posix for unsupported posix_fallocate on NetBSD (GH-123824)
Fix test_posix for unsupported posix_fallocate on NetBSD.
(cherry picked from commit df4f0cbfad)
Co-authored-by: Furkan Onder <furkanonder@protonmail.com>
gh-123881: Add additional test coverage for PEP 695 edge cases (GH-123886)
(cherry picked from commit b52de7e02d)
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
gh-77894: Fix a crash when the GC breaks a loop containing a memoryview (GH-123898)
Now a memoryview object can only be cleared if there are no buffers
that refer it.
(cherry picked from commit a1dbf2ea69)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
gh-123942: add missing test for docstring-handling code in ast_opt.c (GH-123943)
(cherry picked from commit 6e23c89fcd)
Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com>
* gh-121735: Fix module-adjacent references in zip files (GH-123037)
* gh-116608: Apply style and compatibility changes from importlib_metadata.
* gh-121735: Ensure module-adjacent resources are loadable from a zipfile.
* gh-121735: Allow all modules to be processed by the ZipReader.
* Add blurb
* Remove update-zips script, unneeded.
* Remove unnecessary references to removed static fixtures.
* Remove zipdata fixtures, unused.
(cherry picked from commit ba687d9481)
* gh-123994: Generate utf-16 file using little endian and BOM. (#123995)
Co-authored-by: Jason R. Coombs <jaraco@jaraco.com>
gh-116622: Mock the passage of time in Android logcat rate limit tests (GH-124015)
Mock the passage of time in Android logcat rate limit tests
(cherry picked from commit f554883425)
Co-authored-by: Malcolm Smith <smith@chaquo.com>
Co-authored-by: Russell Keith-Magee <russell@keith-magee.com>
gh-123836: Check zero signs in math_testcases.txt (GH-123854)
Just like cmath_testcases.txt. These tests require IEEE 754 anyway.
Correct zero sign for sqrt tests to match math.h convention.
(cherry picked from commit 28aea5d07d)
Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
gh-122145: Handle an empty AST body when reporting tracebacks (GH-122161)
(cherry picked from commit 5cd50cb6eb)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
gh-124212: Fix undefined variable in error message in venv (GH-124211)
(cherry picked from commit ea7fe1fe2e)
Co-authored-by: Jacek <jacek.duszenko@gmail.com>
gh-123797: Check for runtime availability of `ptsname_r` on macos (GH-123806)
(cherry picked from commit 3e36e5aef1)
Co-authored-by: sobolevn <mail@sobolevn.me>
gh-124248: Fix crash in struct when processing 0p fields (GH-124251)
(cherry picked from commit 63f196090f)
Co-authored-by: Brian Schubert <brianm.schubert@gmail.com>
GH-87041: Fix incorrect indentation in argparse help (GH-124230)
In case of usage a long command along with max_help_position more than
the length of the command, the command's help was incorrectly started
on the new line.
(cherry picked from commit 7ee9921734)
Co-authored-by: Savannah Ostrowski <savannahostrowski@gmail.com>
Co-authored-by: Pavel Ditenbir <pavel.ditenbir@gmail.com>
bpo-44864: Do not translate user-provided strings in ArgumentParser.add_subparsers() (GH-27667)
Call _() on literal strings only.
(cherry picked from commit d3c76dff44)
Co-authored-by: Jérémie Detrey <jdetrey@users.noreply.github.com>
gh-116622: Make test_unzip_zipfile recognize Android error message format (GH-124462)
Make test_unzip_zipfile recognize Android error message format
(cherry picked from commit 461c12b438)
Co-authored-by: Malcolm Smith <smith@chaquo.com>