Dne 12. 12. 19 v 16:36 Vít Ondruch napsal(a):
I am against this. The *.py files should go to -src subpackage and
should not be installed on my computer, because if I am not mistaken,
they are useless
s/useless/not used/, because somebody might admit that they are useful
to explore the code and tinker with it.
Vít
when the *.pyc files are installed.
Vít
Dne 12. 12. 19 v 15:36 Miro Hrončok napsal(a):
> Hello,
>
> we are considering to add a %pycached macro to be used in the %files
> section:
>
>
https://src.fedoraproject.org/rpms/python-rpm-macros/pull-request/37
>
> We'd like to receive feedback. We plan to add it to rawhide and
> backport it to all Fedoras + EPEL7+.
>
> Usage:
>
> %files
> ...
> %pycached %{python3_sitelib}/foo.py
>
> This will list:
>
> /usr/lib/python3.8/site-packages/foo.py
>
> /usr/lib/python3.8/site-packages/__pycache__/foo.cpython-38{,.opt-?}.pyc
>
> Assuming the Python 3 version is 3.8.
> The bytecode files are globbed, their presence is not checked.
>
> This will fail:
>
> %pycached %{python3_sitelib}/foo
>
> error: %pycached can only be used with paths explicitly ending with .py
>
> And so will any of this:
>
> %pycached %{python3_sitelib}/*
> %pycached %{python3_sitelib}/foo.*
> %pycached %{python3_sitelib}/foo.p?
> %pycached %{python3_sitelib}/foo.?y
> %pycached %{python3_sitelib}/foo.??
>
> But this will work:
>
> %pycached %{python3_sitelib}/foo*.py
>
> And it will generate the following globs:
>
> /usr/lib/python3.8/site-packages/foo*.py
>
> /usr/lib/python3.8/site-packages/__pycache__/foo*.cpython-38{,.opt-?}.pyc
>
> When used with paths that include Python 3 version, it globs with the
> version:
>
> %pycached /opt/python3.10/foo.py
>
> Generates:
>
> /opt/python3.10/foo.py
> /opt/python3.10/__pycache__/foo.cpython-310{,.opt-?}.pyc
>
> While paths without version have less strict globs:
>
> %pycached /custom/foo.py
> /custom/foo.py
> /custom/__pycache__/foo.cpython-3*{,.opt-?}.pyc
>
> This will generate a warning in RPM build:
>
> warning: File listed twice: /custom/__pycache__/foo.cpython-38.opt-1.pyc
>
> However it ensures the optimized bytecode is there.
>
_______________________________________________
packaging mailing list -- packaging(a)lists.fedoraproject.org
To unsubscribe send an email to packaging-leave(a)lists.fedoraproject.org
Fedora Code of Conduct:
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines:
https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives:
https://lists.fedoraproject.org/archives/list/packaging@lists.fedoraproje...