rpm-software-management / dnf5

Next-generation RPM package management system
Other
236 stars 75 forks source link

Unify epoch usage in DNF5 #1175

Open j-mracek opened 7 months ago

j-mracek commented 7 months ago

Epoch is not handled consistently in DNF, DNF5, RPM

RPM does not show 0 epoch for rpm -q B

RPM shows 0 epoch rpm -q B --qf "%{name}-%{evr}\n" whenEpoch: 0` in in spec.

rpmbuild does not add epoch to rpm file name.

DNF/DNF5 and command repoquery always shows 0 epoch.

DNF/DNF5 transaction table does not show 0 epoch.

DNF transaction summary does not show 0 epoch.

DNF history info does not show 0 epoch for transaction packages.

DNF5 history info shows 0 epoch for transaction packages.

DNF5 and Package.to_string() returns optional epoch as well as Python binding str(Package)

DNF5 uses full NEVRA in scriptlets: Running trigger-install scriptlet: man-db-0:2.11.2-2.fc38.x86_64

Createrepo_c always adds 0 epoch to metadata

_Originally posted by @j-mracek in https://github.com/rpm-software-management/dnf5/pull/1092#discussion_r1447308700_

Conan-Kudo commented 7 months ago

We should just always show Epoch: 0 when %EPOCH is null or zero.

kontura commented 7 months ago

I also vote for always showing the epoch.

Conan-Kudo commented 7 months ago

Note that createrepo also coerces this to zero, so we would be consistent with that.

j-mracek commented 7 months ago

Note that createrepo also coerces this to zero, so we would be consistent with that.

I forget to mention that in the issue description. Thank you.

Conan-Kudo commented 5 months ago

This really should be prioritized, it screws with API consumers too, see: https://github.com/rpm-software-management/dnf5/issues/1359 from @anaselli