On 26.7.2018 14:23, Pavel Raiskup wrote:
On Saturday, June 16, 2018 1:38:43 AM CEST Jason L Tibbitts III
> In order to prepare for the default to change in a future release, the
> packaging guidelines have changed to require packages which install .py
> files outside of the regular python library locations to do the
> * Set %_python_bytecompile_extra to 0 to disable the automatic
> compilation of the extra python files.
> * Manually byte-compile those files which do actually need to be
> compiled. This is done with the %py_byte_compile macro, which as a
> bonus requires that you specify which python version will be used for
> the compilation.
Wouldn't it be better if users simply started "manual" byte compilation
for certain paths with %py_byte_compile, so maintainers could forgot about
semantically pretty hard-to-understand %_python_bytecompile_extra macro?
Even if we plan to have the automatic byte compilation machinery enabled
for some time -- how does the machinery collide with explicit
%py_byte_compile? Why do we have to turn it off?
I really dislike putting some temporarily macros into spec files... Or
please read mi like that: There are two kinds of packages,
- first type has maintainers who plan to fix such issues promptly, and
they would certainly appreciate if we turned
'%_python_bytecompile_extra 0' system-wide sooner
- the second type of package has slower maintainers, and they will wait
till they have to do the change ..., and in many cases, provenpackagers
will have to step in with '%_python_bytecompile_extra 1' sooner or
later, no matter when we change the default behavior
Please, either make sure that %py_byte_compile doesn't collide with the
default byte compilation machinery, or change the default right now (and
define the '%_python_bytecompile_extra 0' in batch). The former is
preferred of course.
How does it collide exactly?
Note that there was a proposal on the FPC meeting (from tibbs IIRC) that
we make `%_python_bytecompile_extra 0` the default and we push mass
update with `%_python_bytecompile_extra 1` to packages that ship pyc/pyo
files outside of Python directories. However that was not part of the
approved change and it was to late to change it. We can propose it as a
Fedora 30 change.