No more automagic Python bytecompilation (phase 2)
See Changes/No_more_automagic_Python_bytecompilation. Now we are changing the default to be
%global _python_bytecompile_extra 0.
- Name: Miro Hrončok
- Name: Petr Viktorin
- Email: firstname.lastname@example.org, email@example.com
- Release notes owner:
- Targeted release: Fedora 30
- Last updated: 2018-09-07
- Tracker bug: <will be assigned by the Wrangler>
We will now set
0 by default.
All packages that ship Python 3 bytecode outside of Python 3 directories should be preferably converted to use
%py_byte_compile, but if they are not, it's fine.
We'll check all pyc/pyo files shipped by packages. We'll check if those are explicitly compiled using
%py_byte_compile. If not, we mass push
%global _python_bytecompile_extra 1 to the package specs to make them work. It's up the package maintainers to adjust the package to the new style (or keep the line forever).
Benefit to Fedora
- Proposal owners: Change the default, slightly change the guidelines, get the list of packages, push the change into them.
- Other developers: Maintainers of python3 packages are encouraged to change their packages to use explicit
%py_byte_compile(not a System Wide Change, they don't have to do anything).
- Release engineering: #7680 (a check of an impact with Release Engineering is needed)
- Policies and guidelines: will be changed as described in description
- Trademark approval: not needed
How To Test
The users of this change are packagers. The new behavior should make byte-compilation more obvious, explicit, and discoverable. Users of Fedora should not feel this (except if this change uncovers a packaging bug).
- Contingency mechanism: we'll finish the change later (not a System Wide Change)
- Contingency deadline: none (not a System Wide Change)
- Blocks release? no (not a System Wide Change)
- Blocks product? no
The guidelines will be the documentation.
This change does not deserve Release Notes, it is not user facing.