- Tools/Demos - gh-128152: Fix a bug where Argument Clinic’s C pre-processor parser tried to parse pre-processor directives inside C comments. Patch by Erlend Aasland. - Tests - gh-128690: Temporarily do not use test_embed in PGO profile builds until the problem with test_init_pyvenv_cfg failing in some configurations is resolved. - Library - gh-128731: Fix ResourceWarning in urllib.robotparser.RobotFileParser.read(). - gh-71339: Add new assertion methods for unittest: assertHasAttr(), assertNotHasAttr(), assertIsSubclass(), assertNotIsSubclass() assertStartsWith(), assertNotStartsWith(), assertEndsWith() and assertNotEndsWith(). - gh-118761: Improve import time of pickle by 25% by removing an unnecessary regular expression. As such, re is no more implicitly available as pickle.re. Patch by Bénédikt Tran. - gh-128661: Fixes typing.evaluate_forward_ref() not showing deprecation when type_params arg is not passed. - gh-128562: Fix possible conflicts in generated tkinter widget names if the widget class name ends with a digit. - gh-128559: Improved import time of asyncio. - gh-128552: Fix cyclic garbage introduced by asyncio.loop.create_task() and asyncio.TaskGroup.create_task() holding a reference to the created task if it is eager. - gh-128340: Add internal thread safe handle to be used OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:Factory/python314?expand=0&rev=32
27 lines
1.1 KiB
Plaintext
27 lines
1.1 KiB
Plaintext
Notes for packagers of Python3
|
|
==============================
|
|
|
|
0. Faster build turnaround
|
|
--------------------------
|
|
|
|
By default, python builds with profile-guided optimization. This needs
|
|
an additional run of the test suite and it is generally slow.
|
|
PGO build takes around 50 minutes.
|
|
|
|
For development, use "--without profileopt" option to disable PGO. This
|
|
shortens the build time to ~5 minutes including test suite.
|
|
|
|
1. import_failed.map
|
|
----------------------
|
|
|
|
This is a mechanism installed as part of python3-base, that places shim modules
|
|
on python's path (through a generated zzzz-import-failed-hooks.pth file, so that
|
|
it is imported as much at the end as makes sense; and an _import_failed subdir
|
|
of /usr/lib/pythonX.Y). Then when the user tries to import a module that is part
|
|
of a subpackage, the ImportError will contain a helpful message telling them
|
|
which missing subpackage to install.
|
|
|
|
This can sometimes cause problems on non-standard configurations, if the pth
|
|
gets included too early (for instance if you are using a script to include all
|
|
pths by hand in some strange order). Just something to look out for.
|