On 26. 04. 21 12:36, Panu Matilainen wrote:
It's spring, it's raining sleet where I live, and it's also the season for new rpm in rawhide. As per https://fedoraproject.org/wiki/Changes/RPM-4.17.
The changes to the macro subsystem internals have been quite large, and while it's supposed to be backwards compatible with changes this big it'd be foolish not to expect some amount of the unexpected. So please pay attention, and don't be shy about filing bugs.
One known issue is java-11-openjdk updates failing with a message like this:
error: lua script failed: /usr/libexec/copy_jdk_configs.lua:43: attempt to
index a nil value (global 'arg')
That is already reported against the java packages as https://bugzilla.redhat.com/show_bug.cgi?id=1892224, please don't file duplicates on that. It needs to be addressed in the java packaging.
For more details, see upstream release notes at https://rpm.org/wiki/Releases/4.17.0
We see a problem with this construct:
Source0: %{pypi_source}
It used to work:
$ rpmspec -P python-asyncpg.spec | grep Source0 Source0: https://files.pythonhosted.org/packages/source/a/asyncpg/asyncpg-0.22.0.tar....
$ rpm --define 'name foo' --define 'version 1.2.3' --eval '%{pypi_source}' https://files.pythonhosted.org/packages/source/f/foo/foo-1.2.3.tar.gz
$ rpm --showrc | grep pypi_source -A3 -13: pypi_source %{lua: local src = rpm.expand('%1') local ver = rpm.expand('%2') local ext = rpm.expand('%3')
Now we get:
error: Bad source: /builddir/build/SOURCES/%{pypi_source}: No such file or directory
when building the package.
In mock:
<mock-chroot> sh-5.1# rpmspec -P python-asyncpg.spec | grep Source0 Source0: %{pypi_source}
<mock-chroot> sh-5.1# rpm --define 'name foo' --define 'version 1.2.3' --eval '%{pypi_source}' %{pypi_source}
<mock-chroot> sh-5.1# rpm --showrc | grep pypi_source -A3 (empty)
The file is /usr/lib/rpm/macros.d/macros.python-srpm. None of the Lua macros there seem to be known to RPM, but other macros from that file work fine.
Is it possible that some Lua code there breaks all the other Lua macros from that file? I see no error, just the macros are not recognized, as if they don't exist.
python-devel@lists.fedoraproject.org