forked from pool/python312
Matej Cepl
7a215a300e
- Security - gh-118486: os.mkdir() on Windows now accepts mode of 0o700 to restrict the new directory to the current user. This fixes CVE-2024-4030 affecting tempfile.mkdtemp() in scenarios where the base temporary directory is more permissive than the default. - gh-116741: Update bundled libexpat to 2.6.2 - gh-117233: Detect BLAKE2, SHA3, Shake, & truncated SHA512 support in the OpenSSL-ish libcrypto library at build time. This allows hashlib to be used with libraries that do not to support every algorithm that upstream OpenSSL does. - Core and Builtins - gh-119821: Fix execution of annotation scopes within classes when globals is set to a non-dict. Patch by Jelle Zijlstra. - gh-118263: Speed up os.path.normpath() with a direct C call. - gh-119311: Fix bug where names are unexpectedly mangled in the bases of generic classes. - gh-119395: Fix bug where names appearing after a generic class are mangled as if they are in the generic class. - gh-118507: Fix os.path.isfile() on Windows for pipes. - gh-119213: Non-builtin modules built with argument clinic were crashing if used in a subinterpreter before the main interpreter. The objects that were causing the problem by leaking between interpreters carelessly have been fixed. - gh-119011: Fixes type.__type_params__ to return an empty tuple instead of a descriptor. - gh-118997: Fix _Py_ClearImmortal() assertion: use OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:Factory/python312?expand=0&rev=47
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.
|