Open bmwiedemann opened 5 years ago
this seems to be a side effect of the hack overwriting the version number for sub packages at build time. OBS code can not detect this. IMHO this needs to be fixed in the package in first place.
please create a bugzilla for that for the maintainer and CC me ...
this seems to be a side effect of the hack overwriting the version number for sub packages at build time. OBS code can not detect this. IMHO this needs to be fixed in the package in first place.
A sub-package having a different version than the main package is no 'hack' but perfectly valid way of using rpm.
Not just so is there a distinction between %{version}
(last defined Version:) and %{VERSION}
(version: in the preamble) in the spec parser
obs does not assume that it can reset the checkin counter if there are multiple versions in the spec file.
The problem is that the ghc specfile uses some macro to create the subpackages with different versions, so the detection of this condition does not work. I don't think I can fix this on the OBS side.
Issue Description
While working on reproducible builds for openSUSE, I found that I had strange local compile errors using osc build for "stack" and other haskell software, while the official builds worked just fine. This went away after removing /var/tmp/osbuild-packagecache/ . Comparing the new cache to the old one revealed several replaced packages. Here is a diff of
rpm -qi
of one of them (reordered lines for increased readability)Expected Result
OBS should avoid publishing new binaries under old names. OBS cannot safely assume that it can reset the checkin counters just because the source version changed. So either, OBS has to stop doing that, or track it per subpackage or every user has to put better reviews in place. If it cannot be completely avoided (e.g. with package renames), we should investigate how to avoid such confusions in osc and zypper. E.g. currently,
.osc/_buildinfo-standard-x86_64.xml
contains onlywith no information on the expected content of the package. With an added digest, osc could detect staleness and refresh its cache.
How to Reproduce
Further Information
base-4.12.0.0