Files
python314/PACKAGING-NOTES
Matej Cepl 71efb9a76a - Update to 3.14.0~rc3:
- Tools/Demos
    - gh-137873: The iOS test runner has been simplified,
      resolving some issues that have been observed using
      the runner in GitHub Actions and Azure Pipelines test
      environments.
  - Security
    - gh-135661: Fix CDATA section parsing in
      html.parser.HTMLParser according to the HTML5 standard: ]
      ]> and ]] > no longer end the CDATA section. Add private
      method _set_support_cdata() which can be used to specify
      how to parse <[CDATA[ — as a CDATA section in foreign
      content (SVG or MathML) or as a bogus comment in the HTML
      namespace.
  - Library
    - gh-138998: Update bundled libexpat to 2.7.2
    - gh-118803: Add back collections.abc.ByteString and
      typing.ByteString. Both had been removed in prior alpha,
      beta and release candidates for Python 3.14, but their
      removal has now been postponed to Python 3.17.
    - gh-137226: Fix typing.get_type_hints() calls on generic
      typing.TypedDict classes defined with string annotations.
    - gh-138804: Raise TypeError instead of AttributeError when
      an argument of incorrect type is passed to shlex.quote().
      This restores the behavior of the function prior to 3.14.
    - gh-128636: Fix crash in PyREPL when os.environ is
      overwritten with an invalid value for mac
    - gh-138514: Raise ValueError when a multi-character string
      is passed to the echo_char parameter of getpass.getpass().
      Patch by Benjamin Johnson.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:Factory/python314?expand=0&rev=99
2025-09-18 16:54:41 +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.