Description of problem: Non-modular packages apache-commons-codec and apache-commons-logging have the following provides: osgi(org.apache.commons.codec) osgi(org.apache.commons.logging) But in javapackages-tools:201901 these packages' provides changed to: osgi(org.apache.commons.commons-codec) osgi(org.apache.commons.commons-logging) I think this is due to a change in the apache parent pom and the OSGi symbolic name is no longer being set correctly. Please pass the "commons.osgi.symbolicName" system property to the build to set the correct OSGi symbolic name in the broken packages, e.g.: -Dcommons.osgi.symbolicName=org.apache.commons.codec
Patches posted for review: https://src.fedoraproject.org/fork/mbi/rpms/apache-commons-codec/c/5964547 https://src.fedoraproject.org/fork/mbi/rpms/apache-commons-logging/c/6ef61a5 Builds: https://koji.kjnet.xyz/koji/buildinfo?buildID=7344 https://koji.kjnet.xyz/koji/buildinfo?buildID=7345 OSGi provides seem correct in these builds.
(In reply to Mikolaj Izdebski from comment #1) > Patches posted for review: > https://src.fedoraproject.org/fork/mbi/rpms/apache-commons-codec/c/5964547 > https://src.fedoraproject.org/fork/mbi/rpms/apache-commons-logging/c/6ef61a5 > > Builds: > https://koji.kjnet.xyz/koji/buildinfo?buildID=7344 > https://koji.kjnet.xyz/koji/buildinfo?buildID=7345 > > OSGi provides seem correct in these builds. Thanks, these changes look good to me
Hi I decided to check all apache-commons-* packages you are building and found more occurances of incorrect OSGi metadata: [mbooth@thinkpad-p50 javapackages-tools-201901-29]$ rpm -qp --provides apache-commons-* | grep 'org\.apache\.commons\.commons' osgi(org.apache.commons.commons-beanutils) = 1.9.3 osgi(org.apache.commons.commons-codec) = 1.12.0 osgi(org.apache.commons.commons-collections) = 3.2.2 osgi(org.apache.commons.commons-exec) = 1.3.0 osgi(org.apache.commons.commons-io) = 2.6.0 osgi(org.apache.commons.commons-jxpath) = 1.3.0 osgi(org.apache.commons.commons-lang) = 2.6.0 osgi(org.apache.commons.commons-logging) = 1.2.0 osgi(org.apache.commons.commons-logging.adapters) = 1.2.0 osgi(org.apache.commons.commons-logging.api) = 1.2.0 osgi(org.apache.commons.commons-net) = 3.6.0
Thanks Mat for checking this. Marian, could you please fix all remaining cases in MBI?
All packages have been fixed in MBI: $ dnf -q --repofrompath mbi,https://koji.kjnet.xyz/kojifiles/repos/jp-build/latest/x86_64/ --repo mbi repoquery --provides | grep ^osgi | grep apache.commons osgi(org.apache.commons.beanutils) = 1.9.4 osgi(org.apache.commons.cli) = 1.4.0 osgi(org.apache.commons.codec) = 1.13.0 osgi(org.apache.commons.collections) = 3.2.2 osgi(org.apache.commons.compress) = 1.19.0 osgi(org.apache.commons.exec) = 1.3.0 osgi(org.apache.commons.io) = 2.6.0 osgi(org.apache.commons.jxpath) = 1.3.0 osgi(org.apache.commons.lang3) = 3.9.0 osgi(org.apache.commons.logging) = 1.2.0 osgi(org.apache.commons.logging.adapters) = 1.2.0 osgi(org.apache.commons.logging.api) = 1.2.0 osgi(org.apache.commons.net) = 3.6.0
According to current modules policy [1] modular packages can only exist as alternative versions. Since Javapackages exists as non-modular package in Fedora, modular Javapackages in the same version is not allowed according to the policy. [1] https://docs.fedoraproject.org/en-US/modularity/policies/