python314/PACKAGING-NOTES
Matej Cepl d5816cb839 - Update to the fifth development version of 3.14.0:
- Tools/Demos
    - gh-129248: The iOS test runner now strips the log prefix
      from each line output by the test suite.
    - gh-104400: Fix several bugs in extraction by switching to
      an AST parser in pygettext.
  - Tests
    - gh-129386: Add test.support.reset_code, which can be used
      to reset various bytecode-level optimizations and local
      instrumentation for a function.
    - gh-128474: Disable test_embed test cases that segfault on
      BOLT instrument binaries. The tests are only disabled when
      BOLT is enabled.
    - gh-128003: Add an option --parallel-threads=N to the
      regression test runner that runs individual tests in
      multiple threads in parallel in order to find concurrency
      bugs. Note that most of the test suite is not yet reviewed
      for thread-safety or annotated with @thread_unsafe when
      necessary.
  - Security
    - gh-105704: When using urllib.parse.urlsplit() and
      urllib.parse.urlparse() host parsing would not reject
      domain names containing square brackets ([ and ]). Square
      brackets are only valid for IPv6 and IPvFuture hosts
      according to RFC 3986 Section 3.2.2.
    - gh-126108: Fix a possible NULL pointer dereference in
      PySys_AddWarnOptionUnicode().
    - gh-80222: Fix bug in the folding of quoted strings
      when flattening an email message using a modern email
      policy. Previously when a quoted string was folded so

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:Factory/python314?expand=0&rev=38
2025-02-12 21:26:50 +00:00

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.