]>
git.ipfire.org Git - thirdparty/Python/cpython.git/log
Taras Sereda [Mon, 6 Dec 2021 23:12:29 +0000 (01:12 +0200)]
removal of duplicated text paragraph (#29666)
Christian Heimes [Mon, 6 Dec 2021 20:43:44 +0000 (22:43 +0200)]
bpo-45847: Fix uuid detection on macOS (GH-29946)
Christian Heimes [Mon, 6 Dec 2021 18:13:12 +0000 (20:13 +0200)]
bpo-45582: framework build: modPath must not be const (GH-29944)
Co-authored-by: Ronald Oussoren <ronaldoussoren@mac.com>
neonene [Mon, 6 Dec 2021 17:25:19 +0000 (02:25 +0900)]
bpo-45582: Fix getpath_isxfile() and test_embed on Windows (GH-29930)
Christian Heimes [Mon, 6 Dec 2021 16:13:53 +0000 (18:13 +0200)]
bpo-45950: Fix macOS framework builds of _bootstrap_python (GH-29936)
Christian Heimes [Mon, 6 Dec 2021 12:18:56 +0000 (14:18 +0200)]
bpo-44035: Check autoconf files thoroughly (GH-29935)
Check that users don't push changes with outdated or patched autoconf.
The presence of runstatedir option and aclocal 1.16.3 are good markers.
Use my container image to regenerate autoconf files. "Check for changes"
will fail later when any file is regenerated.
Use ccache in check_generated_files to speed up testing.
Mark Shannon [Mon, 6 Dec 2021 10:13:49 +0000 (10:13 +0000)]
bpo-45963: Make space for the InterpreterFrame of a generator in that generator. (GH-29891)
* Make generator, coroutine and async gen structs all the same size.
* Store interpreter frame in generator (and coroutine). Reduces the number of allocations neeeded for a generator from two to one.
Ned Deily [Mon, 6 Dec 2021 07:44:09 +0000 (02:44 -0500)]
bpo-45732: Update python.org macOS installer to use Tcl/Tk 8.6.12. (GH-29931)
Alex Waygood [Sun, 5 Dec 2021 20:49:36 +0000 (20:49 +0000)]
bpo-45840: Improve cross-references in the data model documentation (GH-29633)
Serhiy Storchaka [Sun, 5 Dec 2021 20:44:01 +0000 (22:44 +0200)]
bpo-45664: Fix resolve_bases() and new_class() for GenericAlias instance as a base (GH-29298)
Serhiy Storchaka [Sun, 5 Dec 2021 20:42:50 +0000 (22:42 +0200)]
bpo-45663: Fix is_dataclass() for dataclasses which are subclasses of types.GenericAlias (GH-29294)
Serhiy Storchaka [Sun, 5 Dec 2021 20:41:58 +0000 (22:41 +0200)]
bpo-45662: Fix the repr of InitVar with a type alias to the built-in class (GH-29291)
For example, InitVar[list[int]].
Serhiy Storchaka [Sun, 5 Dec 2021 20:26:10 +0000 (22:26 +0200)]
bpo-37295: Optimize math.comb() and math.perm() (GH-29090)
For very large numbers use divide-and-conquer algorithm for getting
benefit of Karatsuba multiplication of large numbers.
Do calculations completely in C unsigned long long instead of Python
integers if possible.
Christian Heimes [Sun, 5 Dec 2021 17:41:46 +0000 (19:41 +0200)]
bpo-45582: Fix signature of _Py_Get_Getpath_CodeObject (GH-29921)
Guido van Rossum [Sun, 5 Dec 2021 17:03:58 +0000 (09:03 -0800)]
Delete orphaned comment (#29917)
(The function this described was deleted by PR #23743, the comment was accidentally retained.)
Serhiy Storchaka [Sun, 5 Dec 2021 12:22:54 +0000 (14:22 +0200)]
bpo-27946: Fix possible crash in ElementTree.Element (GH-29915)
Getting an attribute via attrib.get() simultaneously with replacing
the attrib dict can lead to access to deallocated dict.
Serhiy Storchaka [Sat, 4 Dec 2021 18:57:20 +0000 (20:57 +0200)]
bpo-13236: Flush the output stream more often in unittest (GH-29864)
It can prevent some losses when output to buffered stream.
Vishal Pandey [Sat, 4 Dec 2021 15:38:17 +0000 (21:08 +0530)]
Fixed documentation typo in compileall.py (GH-29912)
Christian Heimes [Sat, 4 Dec 2021 14:14:48 +0000 (16:14 +0200)]
bpo-45847: Update whatsnew and add place holder entries for missing extensions (GH-29914)
Christian Heimes [Sat, 4 Dec 2021 10:21:43 +0000 (12:21 +0200)]
bpo-45847: Port _ctypes partly to PY_STDLIB_MOD (GH-29747)
Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no>
Christian Heimes [Sat, 4 Dec 2021 10:07:59 +0000 (12:07 +0200)]
bpo-45695: Test out-of-tree builds on GHA (GH-29904)
Raymond Hettinger [Sat, 4 Dec 2021 02:37:08 +0000 (20:37 -0600)]
bpo-20751: Replace method example with attribute example, matching the descriptor howto (GH-29909)
Benjamin Peterson [Fri, 3 Dec 2021 23:21:58 +0000 (15:21 -0800)]
bpo-45582 Fix prototype of _Py_Get_Getpath_CodeObject. (GH-29907)
Automerge-Triggered-By: GH:tiran
neonene [Fri, 3 Dec 2021 22:04:11 +0000 (07:04 +0900)]
bpo-45582: Add a NOT operator to the condition in getpath_isxfile (GH-29906)
Irit Katriel [Fri, 3 Dec 2021 22:01:15 +0000 (22:01 +0000)]
bpo-45607: Make it possible to enrich exception displays via setting their __note__ field (GH-29880)
Crowthebird [Fri, 3 Dec 2021 19:47:38 +0000 (03:47 +0800)]
bpo-45816: Support building with VS 2022 (v143 toolset) on Windows (GH-29577)
Irit Katriel [Fri, 3 Dec 2021 19:05:14 +0000 (19:05 +0000)]
bpo-45711: [asyncio] Normalize exceptions immediately after Fetch, before they are stored as StackItem, which should be normalized (GH-29890)
Christian Heimes [Fri, 3 Dec 2021 15:01:11 +0000 (17:01 +0200)]
bpo-45950: Introduce Bootstrap Python again (#29859)
The build system now uses a :program:`_bootstrap_python` interpreter for
freezing and deepfreezing again. To speed up build process the build tools
:program:`_bootstrap_python` and :program:`_freeze_module` are no longer
build with LTO.
Cross building depends on a build Python interpreter, which must have same
version and bytecode as target host Python.
Christian Heimes [Fri, 3 Dec 2021 13:47:06 +0000 (15:47 +0200)]
bpo-45582: Fix out-of-tree build issues with new getpath (GH-29902)
Dennis Sweeney [Fri, 3 Dec 2021 11:29:12 +0000 (04:29 -0700)]
bpo-45885: Specialize COMPARE_OP (GH-29734)
* Add COMPARE_OP_ADAPTIVE adaptive instruction.
* Add COMPARE_OP_FLOAT_JUMP, COMPARE_OP_INT_JUMP and COMPARE_OP_STR_JUMP specialized instructions.
* Introduce and use _PyUnicode_Equal
Steve Dower [Fri, 3 Dec 2021 00:08:42 +0000 (00:08 +0000)]
bpo-45582: Port getpath[p].c to Python (GH-29041)
The getpath.py file is frozen at build time and executed as code over a namespace. It is never imported, nor is it meant to be importable or reusable. However, it should be easier to read, modify, and patch than the previous code.
This commit attempts to preserve every previously tested quirk, but these may be changed in the future to better align platforms.
Zachary Ware [Thu, 2 Dec 2021 20:24:25 +0000 (14:24 -0600)]
bpo-45916: Use HTTPS link for The Perils of Floating Point (GH-29896)
Christian Heimes [Thu, 2 Dec 2021 17:42:56 +0000 (19:42 +0200)]
bpo-40280: Update what's new (GH-29893)
Alex Waygood [Thu, 2 Dec 2021 16:49:52 +0000 (16:49 +0000)]
bpo-45535: Improve output of Enum ``dir()`` (GH-29316)
Modify the ``EnumType.__dir__()`` and ``Enum.__dir__()`` to ensure
that user-defined methods and methods inherited from mixin classes always
show up in the output of `help()`. This change also makes it easier for
IDEs to provide auto-completion.
Christian Heimes [Thu, 2 Dec 2021 11:19:30 +0000 (13:19 +0200)]
bpo-40280: Optimize ints and and startup on wasm (GH-29887)
Victor Stinner [Thu, 2 Dec 2021 10:43:37 +0000 (11:43 +0100)]
bpo-45954: Rename PyConfig.no_debug_ranges to code_debug_ranges (GH-29886)
Rename PyConfig.no_debug_ranges to PyConfig.code_debug_ranges and
invert the value.
Document -X no_debug_ranges and PYTHONNODEBUGRANGES env var in
PyConfig.code_debug_ranges documentation.
Christian Heimes [Thu, 2 Dec 2021 09:17:37 +0000 (11:17 +0200)]
bpo-40280: Emscripten has no support for subprocesses (GH-29872)
Fixes ``platform`` and ``help()`` on emscripten.
Signed-off-by: Christian Heimes <christian@python.org>
Automerge-Triggered-By: GH:tiran
Christian Clauss [Thu, 2 Dec 2021 08:52:32 +0000 (09:52 +0100)]
docs: Improve example for urlparse() (GH-29816)
Christian Heimes [Wed, 1 Dec 2021 22:16:27 +0000 (00:16 +0200)]
bpo-40280: Emscripten with_ensurepip=no, second attempt (GH-29884)
Christian Heimes [Wed, 1 Dec 2021 19:43:07 +0000 (21:43 +0200)]
bpo-40280: Emscripten defaults to --with-ensurepip=no (GH-29873)
Weipeng Hong [Wed, 1 Dec 2021 19:23:46 +0000 (03:23 +0800)]
bpo-30533: Add docs for `inspect.getmembers_static` (#29874)
* Add docs for `inspect.getmembers_static`
* update
Eric Snow [Wed, 1 Dec 2021 18:20:20 +0000 (11:20 -0700)]
bpo-45952: Get the C analyzer tool working again. (gh-29882)
There wasn't much that needed to be done. Mostly it was just a few new files that got added.
https://bugs.python.org/issue45952
Rob [Wed, 1 Dec 2021 12:24:46 +0000 (07:24 -0500)]
bpo-45896: Fix docs default asyncio event loop on Windows (GH-29857)
Mark Shannon [Wed, 1 Dec 2021 12:09:36 +0000 (12:09 +0000)]
bpo-45753: Interpreter internal tweaks (GH-29575)
* Split exit paths into exceptional and non-exceptional.
* Move exit tracing code to individual bytecodes.
* Wrap all trace entry and exit events in macros to make them clearer and easier to enhance.
* Move return sequence into RETURN_VALUE, YIELD_VALUE and YIELD_FROM. Distinguish between normal trace events and dtrace events.
Raymond Hettinger [Wed, 1 Dec 2021 01:25:57 +0000 (19:25 -0600)]
bpo-45876: Have stdev() also use decimal specific square root. (GH-29869)
Raymond Hettinger [Wed, 1 Dec 2021 00:20:08 +0000 (18:20 -0600)]
bpo-45876: Correctly rounded stdev() and pstdev() for the Decimal case (GH-29828)
Irit Katriel [Tue, 30 Nov 2021 22:37:04 +0000 (22:37 +0000)]
bpo-45711: Change exc_info related APIs to derive type and traceback from the exception instance (GH-29780)
Weipeng Hong [Tue, 30 Nov 2021 18:23:13 +0000 (02:23 +0800)]
bpo-30533:Add function inspect.getmembers_static that does not call properties or dynamic properties. (#20911)
* Add function inspect.getmembers_static that does not call properties or dynamic
properties.
* update _getmembers args
* Update Misc/NEWS.d/next/Library/2020-06-16-18-00-56.bpo-30533.StL57t.rst
Co-authored-by: Itamar Ostricher <itamarost@gmail.com>
* Update Lib/inspect.py
Co-authored-by: Itamar Ostricher <itamarost@gmail.com>
* Removes the copy pasted doc string
Co-authored-by: Itamar Ostricher <itamarost@gmail.com>
Co-authored-by: Dino Viehland <dinoviehland@gmail.com>
Victor Stinner [Tue, 30 Nov 2021 14:13:55 +0000 (15:13 +0100)]
bpo-45476: Disallow using asdl_seq_GET() as l-value (GH-29866)
The following internal macros can not longer be used as l-value:
* asdl_seq_GET()
* asdl_seq_GET_UNTYPED()
* asdl_seq_LEN()
They are modified to use the _Py_RVALUE() macro.
Victor Stinner [Tue, 30 Nov 2021 11:14:45 +0000 (12:14 +0100)]
bpo-45476: Add _Py_RVALUE() macro (GH-29860)
Add a new _Py_RVALUE() macro to prevent using an expression as an
l-value.
Replace a "(void)" cast with the _Py_RVALUE() macro in the following
macros:
* PyCell_SET()
* PyList_SET_ITEM()
* PyTuple_SET_ITEM()
* _PyGCHead_SET_FINALIZED()
* _PyGCHead_SET_NEXT()
* asdl_seq_SET()
* asdl_seq_SET_UNTYPED()
Add also parentheses around macro arguments in PyCell_SET() and
PyTuple_SET_ITEM() macros.
Vishal Pandey [Tue, 30 Nov 2021 11:01:44 +0000 (16:31 +0530)]
bpo-33381: [doc] strftime's %f option may pad zeros on the left or the right (GH-29801)
Inada Naoki [Tue, 30 Nov 2021 04:16:40 +0000 (13:16 +0900)]
Fix EncodingWarning in Tools/freeze/test/freeze.py (GH-29742)
Adrian Garcia Badaracco [Tue, 30 Nov 2021 02:27:37 +0000 (18:27 -0800)]
no-issue: remove unused import from test_graphlib.py (GH-29853)
David Federman [Mon, 29 Nov 2021 22:40:34 +0000 (14:40 -0800)]
bpo-45931: Prevent Directory.Build.props/targets from leaking from directories above the repo when building on Windows (GH-29854)
Kumar Aditya [Mon, 29 Nov 2021 20:27:34 +0000 (01:57 +0530)]
bpo-45653: fix test_embed on windows (GH-29814)
Gideon [Mon, 29 Nov 2021 18:55:43 +0000 (12:55 -0600)]
bpo-45917: Add math.exp2() method - return 2 raised to the power of x (GH-29829)
Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
andrei kulakov [Mon, 29 Nov 2021 18:10:32 +0000 (13:10 -0500)]
bpo-43905: Expand dataclasses.astuple() and asdict() docs (GH-26154)
Expanded ``astuple()`` docs, warning about deepcopy being applied
and providing a workaround.
Automerge-Triggered-By: GH:ericvsmith
Vinay Sajip [Mon, 29 Nov 2021 17:26:50 +0000 (17:26 +0000)]
bpo-44391: Remove unused argument from a varargs call. (GH-29843)
Christian Heimes [Mon, 29 Nov 2021 16:23:29 +0000 (18:23 +0200)]
bpo-45881: configure --with-freeze-module --with-build-python (GH-29835)
Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no>
Co-authored-by: Ethan Smith <ethan@ethanhs.me>
Christian Heimes [Mon, 29 Nov 2021 15:34:16 +0000 (17:34 +0200)]
bpo-45847: PY_STDLIB_MOD_SIMPLE now checks py_stdlib_not_available (GH-29844)
Erlend Egeberg Aasland [Mon, 29 Nov 2021 15:22:32 +0000 (16:22 +0100)]
bpo-45828: Use unraisable exceptions within sqlite3 callbacks (FH-29591)
Christian Heimes [Mon, 29 Nov 2021 15:01:55 +0000 (17:01 +0200)]
bpo-40280: Emscripten systems use .wasm suffix by default (GH-29842)
Erlend Egeberg Aasland [Mon, 29 Nov 2021 14:41:11 +0000 (15:41 +0100)]
bpo-45723: Sort the grand AC_CHECK_HEADERS check (GH-29846)
Automerge-Triggered-By: GH:tiran
Erlend Egeberg Aasland [Mon, 29 Nov 2021 13:57:36 +0000 (14:57 +0100)]
bpo-45847: Make socket module conditional (GH-29769)
Vinay Sajip [Mon, 29 Nov 2021 13:06:52 +0000 (13:06 +0000)]
[Doc] Add info to logging cookbook about running logging socket listeners i… (GH-29838)
Mark Shannon [Mon, 29 Nov 2021 12:34:59 +0000 (12:34 +0000)]
bpo-45786: Allocate space for frame in frame object. (GH-29729)
Jakub Kulík [Mon, 29 Nov 2021 12:02:56 +0000 (13:02 +0100)]
bpo-43498: Fix dictionary iteration error in _ExecutorManagerThread (GH-24868)
Erlend Egeberg Aasland [Mon, 29 Nov 2021 11:39:14 +0000 (12:39 +0100)]
bpo-40280: Disable unusable core extension modules on emscripten (GH-29834)
Co-authored-by: Christian Heimes <christian@python.org>
Christian Heimes [Mon, 29 Nov 2021 09:36:10 +0000 (11:36 +0200)]
bpo-45847: Fix _multiprocessing on platforms without sem_open (GH-29833)
Serhiy Storchaka [Mon, 29 Nov 2021 08:19:59 +0000 (10:19 +0200)]
Remove misleading comment in the AST optimizer (#29825)
Sam Bull [Mon, 29 Nov 2021 08:12:57 +0000 (08:12 +0000)]
bpo-37658: Actually return result in race condition (GH-29202)
Christian Heimes [Sun, 28 Nov 2021 18:40:27 +0000 (20:40 +0200)]
bpo-45915: use fcntl(fd, F_GETFD) in is_valid_fd() (GH-29821)
Erlend Egeberg Aasland [Sun, 28 Nov 2021 12:00:51 +0000 (13:00 +0100)]
bpo-45847: Port _multiprocessing to PY_STDLIB_MOD (GH-29768)
180909 [Sun, 28 Nov 2021 09:24:41 +0000 (17:24 +0800)]
bpo-19460: Add test for MIMENonMultipart (GH-29817)
Irit Katriel [Sat, 27 Nov 2021 22:00:10 +0000 (22:00 +0000)]
bpo-45614: Fix traceback display for exceptions with invalid module name (GH-29726)
Pablo Galindo Salgado [Sat, 27 Nov 2021 18:04:06 +0000 (18:04 +0000)]
bpo-42268: Fail the configure step if the selected compiler doesn't support memory sanitizer (GH-29806)
Raymond Hettinger [Sat, 27 Nov 2021 05:54:50 +0000 (22:54 -0700)]
bpo-45876: Improve accuracy for stdev() and pstdev() in statistics (GH-29736)
* Inlined code from variance functions
* Added helper functions for the float square root of a fraction
* Call helper functions
* Add blurb
* Fix over-specified test
* Add a test for the _sqrt_frac() helper function
* Increase the tested range
* Add type hints to the internal function.
* Fix test for correct rounding
* Simplify ⌊√(n/m)⌋ calculation
Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
* Add comment and beef-up tests
* Test for zero denominator
* Add algorithmic references
* Add test for the _isqrt_frac_rto() helper function.
* Compute the 109 instead of hard-wiring it
* Stronger test for _isqrt_frac_rto()
* Bigger range
* Bigger range
* Replace float() call with int/int division to be parallel with the other code path.
* Factor out division. Update proof link. Remove internal type declaration
Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
Steve Dower [Sat, 27 Nov 2021 00:26:45 +0000 (00:26 +0000)]
bpo-44530: Reverts a change to the 'code.__new__' audit event (GH-29809)
Ma Lin [Sat, 27 Nov 2021 00:18:17 +0000 (08:18 +0800)]
bpo-41735: Fix thread lock in zlib.Decompress.flush() may go wrong (GH-29587)
* Fix thread lock in zlib.Decompress.flush() may go wrong
Getting `.unconsumed_tail` before acquiring the thread lock may mix up decompress state.
Steve Dower [Fri, 26 Nov 2021 23:08:20 +0000 (23:08 +0000)]
bpo-45901: Fixes argument passing when invoking .py files directly through the Store package (GH-29799)
Guido van Rossum [Fri, 26 Nov 2021 22:10:01 +0000 (14:10 -0800)]
Fix markup buglet in Doc/howto/annotations.rst (#29802)
Victor Stinner [Fri, 26 Nov 2021 21:56:25 +0000 (22:56 +0100)]
bpo-45866: Fix typo in the NEWS entry (GH-29798)
Christian Heimes [Fri, 26 Nov 2021 18:36:48 +0000 (20:36 +0200)]
bpo-40280: Move hard-coded feature checks to configure (GH-29789)
Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no>
Kumar Aditya [Fri, 26 Nov 2021 16:50:54 +0000 (22:20 +0530)]
bpo-45019: Cleanup module freezing and deepfreeze (#29772)
Christian Heimes [Fri, 26 Nov 2021 16:05:16 +0000 (18:05 +0200)]
bpo-45886: Fix OOT build when srcdir has frozen module headers (GH-29793)
The presence of frozen module headers in srcdir interfers with OOT
build. Make considers headers in srcdir up to date, but later builds do
not use VPATH to locate files. make clean now removes the headers, too.
Also remove stale ``_bootstrap_python`` from .gitignore.
Christian Heimes [Fri, 26 Nov 2021 14:16:54 +0000 (16:16 +0200)]
bpo-40280: Add configure check for socket shutdown (GH-29795)
Dong-hee Na [Fri, 26 Nov 2021 14:10:10 +0000 (23:10 +0900)]
bpo-45760: Remove PyNumber_InMatrixMultiply (GH-29751)
Christian Heimes [Fri, 26 Nov 2021 13:29:46 +0000 (15:29 +0200)]
bpo-40280: clean and ignore .wasm files (GH-29794)
Victor Stinner [Fri, 26 Nov 2021 10:50:34 +0000 (11:50 +0100)]
bpo-45866: pegen strips directory of "generated from" header (GH-29777)
"make regen-all" now produces the same output when run from a
directory other than the source tree: when building Python out of the
source tree.
Christian Heimes [Fri, 26 Nov 2021 07:26:49 +0000 (09:26 +0200)]
bpo-40280: Use Setup.stdlib static for wasm builds (GH-29784)
``Modules/Setup.stdlib`` contains ``Setup`` lines for all stdlib extension modules for which ``configure`` has detected their dependencies. The file is not used yet and still under development. To use the file, do ``ln -sfr Modules/Setup.stdlib Modules/Setup.local``.
Arthur Milchior [Fri, 26 Nov 2021 05:19:06 +0000 (06:19 +0100)]
bpo-45619: documentation of execution model: clarify and update binding summary (#29232)
This does two changes that are quite related.
0. it add that variable binding can occur in pattern matching, an update of 3.10
which seems to have been omitted from the list of bindings
1. Given how long the sentence already was, with even subcases in the middle of
the sentence, the commit breaks the sentence into an actual list.
Alex Waygood [Fri, 26 Nov 2021 04:55:15 +0000 (04:55 +0000)]
bpo-44353: Correct docstring for `NewType` (#29785)
The docstring for `typing.NewType` is no longer strictly accurate, now that `NewType` is a class, rather than a function
Simon McVittie [Thu, 25 Nov 2021 20:49:48 +0000 (20:49 +0000)]
bpo-43137: webbrowser: Replace gvfs-open and gnome-open with "gio open" (GH-29154)
* [bpo-43137](): webbrowser: Prefer gio open over gvfs-open
gvfs-open(1) was superseded by gio(1) in 2015, and removed from GNOME
releases in 2018. Debian and its derivatives like Ubuntu currently still
have a compatibility shim for gvfs-open, but we plan to remove it.
webbrowser prefers xdg-settings and xdg-open over gvfs-open, so this
will only have any practical effect on systems where the xdg-utils
package is not installed.
Note that we don't check for GNOME_DESKTOP_SESSION_ID before using gio.
gio does the right thing on any desktop environment that follows
freedesktop.org specifications, similar to xdg-settings, so it's
unnecessary to guard in this way. GNOME_DESKTOP_SESSION_ID was deprecated
in 2008 and removed from upstream gnome-session in 2018 (it's still
present in Debian/Ubuntu for backward compatibility, but probably
shouldn't be). The replacement way to detect a desktop environment is
the XDG_CURRENT_DESKTOP environment variable, which is a colon-separated
sequence where the first item is the current desktop environment and the
second and subsequent items (if present) are other desktop environments
that it resembles or is based on.
Resolves:
* [bpo-43137](): webbrowser: Never invoke gnome-open
gnome-open was part of GNOME 2, which was superseded in around 2010 and
is unmaintained. The replacement was gvfs-open, which was subsequently
replaced by gio(1) (as used in the previous commit).
* [bpo-43137](): webbrowser: Don't run gvfs-open on GNOME
gvfs-open was deprecated in 2015 and removed in 2018. The replacement
is gio(1) (as used in a previous commit).
GNOME_DESKTOP_SESSION_ID was deprecated in 2008 and removed in 2018.
The replacement is XDG_CURRENT_DESKTOP (as mentioned in a previous
commit).
---
To test this on a typical modern Linux system, it is necessary to disable the `xdg-settings` and `xdg-open` code paths, for example with this hack:
<details><summary>Hack to disable use of xdg-settings and xdg-open</summary>
```diff
diff --git a/Lib/webbrowser.py b/Lib/webbrowser.py
index
3244f206aa ..
8f6c09d1d2 100755
--- a/Lib/webbrowser.py
+++ b/Lib/webbrowser.py
@@ -459,7 +459,7 @@ def open(self, url, new=0, autoraise=True):
def register_X_browsers():
# use xdg-open if around
- if shutil.which("xdg-open"):
+ if 0 and shutil.which("xdg-open"):
register("xdg-open", None, BackgroundBrowser("xdg-open"))
# Opens an appropriate browser for the URL scheme according to
@@ -549,7 +549,7 @@ def register_standard_browsers():
# Prefer X browsers if present
if os.environ.get("DISPLAY") or os.environ.get("WAYLAND_DISPLAY"):
try:
- cmd = "xdg-settings get default-web-browser".split()
+ cmd = "false xdg-settings get default-web-browser".split()
raw_result = subprocess.check_output(cmd, stderr=subprocess.DEVNULL)
result = raw_result.decode().strip()
except (FileNotFoundError, subprocess.CalledProcessError, PermissionError, NotADirectoryError) :
```
</details>
I haven't attempted to assess which of the specific web browsers such as Galeon are still extant, and which ones disappeared years ago. They could almost certainly be cleaned up, but that's beyond the scope of this PR.
Christian Heimes [Thu, 25 Nov 2021 20:24:40 +0000 (22:24 +0200)]
bpo-40280: Add wasm cross build targets (GH-29771)
Christian Heimes [Thu, 25 Nov 2021 19:55:29 +0000 (21:55 +0200)]
bpo-33393: Update config.guess and config.sub (GH-29781)
Sergey Kolesnikov [Thu, 25 Nov 2021 17:15:24 +0000 (20:15 +0300)]
Add missing 'await writer.drain()' call to example (GH-29162)
Automerge-Triggered-By: GH:asvetlov
Zbigniew Siciarz [Thu, 25 Nov 2021 12:30:48 +0000 (13:30 +0100)]
bpo-45568: Actually use @asynccontextmanager in usage example (GH-29151)
Automerge-Triggered-By: GH:asvetlov
Christian Heimes [Thu, 25 Nov 2021 11:28:41 +0000 (13:28 +0200)]
bpo-41498: Fix build on platforms without sigset_t (GH-29770)
Irit Katriel [Thu, 25 Nov 2021 09:41:28 +0000 (09:41 +0000)]
bpo-45711: use exc_value instead of exc_type to determine if exc_info is valid. Add more assertions. (GH-29627)
Pablo Galindo Salgado [Wed, 24 Nov 2021 22:21:23 +0000 (22:21 +0000)]
bpo-45727: Only trigger the 'did you forgot a comma' error suggestion if inside parentheses (GH-29757)