On 09. 10. 19 22:46, Ben Cotton wrote:
Enable module default streams in the buildroot repository for modular
and non-modular RPMs.
== Summary ==
This Change (colloquially referred to as "Ursa Prime") enables the
Koji build-system to include the RPM artifacts provided by module
default streams in the buildroot when building non-modular (or
I have one more technical concern.
Suppose a packager decides to package the "mycoolapp" software as a non-modular
package. "mycoolapp" is written in Python, it builds again non-modular Python,
currently 3.8, it requires "python(abi) = 3.8" on runtime.
The packager decides to use avocado in %check. Avocado comes from a module, it
requires "python(abi) = 3.8" as well, because the modular package was built with
Python 3.8. Avocado is in the bulidroot, so everything works.
The Python maintainers (that includes me) decide to update to Python 3.9 in
Fedora 33. They request a side tag to do that. They update the python3 to 3.9
and they mass rebuild all non-modular Python packages in it. "mycoolapp" cannot
resolve build dependencies because avocado requires "python(abi) = 3.8".
The Python maintainers need to detect this and figure out what happened.
Then, the Python maintainers need to either:
1. Exclude "mycoolapp" from the rebuild. That is possible until dozens of
other packages require "mycoolapp".
2. Ask the avocado maintainers to rebuild their module in the side tag and ask
releng to add the side-tag-built module into the side-tag buildroot (if it is
3. Modify the spec of "mycoolapp" to temporarily disable %check and loose the
Or is there some other way?