forked from pool/python312
- 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.
|