Summary: | does not optimize out self-satisfied Requires: XXX < 0 | ||
---|---|---|---|
Product: | Sisyphus | Reporter: | Ivan Zakharyaschev <imz> |
Component: | rpm-build | Assignee: | placeholder <placeholder> |
Status: | NEW --- | QA Contact: | qa-sisyphus |
Severity: | minor | ||
Priority: | P3 | CC: | arseny, glebfm, imz, ldv, placeholder, vt |
Version: | unstable | ||
Hardware: | all | ||
OS: | Linux |
Description
Ivan Zakharyaschev
2019-10-18 03:54:19 MSK
rpm-build-4.0.4-alt133 (In reply to comment #0) > I suspect that the satisfaction of a Requires: XXX < 0 by > versionless Provides is not implemented in the optimizer, because it is a > strange behavior of the real rpm, which looks a bit like a dirty hack. (It > would be even much more dirty if a versionless Provides could satisfy any > versioned Requires like = N or >= N, not only < N -- I haven't tested that > yet.) BTW, that's like this even for other Requires, not only < 0: https://lists.altlinux.org/pipermail/devel/2019-November/208919.html "unversioned provides satisfy versioned requires" (at@): Мужчины, у вас по-прежнему сабж. Я нахожу это возмутительным. Как говорил Михаил Корлеоне, это оскорбляет мой разум. $ rpm -q --provides glibc-core |grep libdl libdl.so.2()(64bit) = set:hdBjS1I4gQ8BohwImELo8Zh libdl.so.2(GLIBC_2.2.5)(64bit) libdl.so.2(GLIBC_2.3.3)(64bit) libdl.so.2(GLIBC_2.3.4)(64bit) $ grep ^Requires: foo.spec Requires: libdl.so.2(GLIBC_2.2.5)(64bit) >= set:hdBjS1I4gQ8BohwImELo8Zh $ rpm -qpR foo-1.0-alt0.x86_64.rpm libdl.so.2(GLIBC_2.2.5)(64bit) >= set:hdBjS1I4gQ8BohwImELo8Zh rpmlib(SetVersions) rpmlib(PayloadIsLzma) $ rpm -iv --test foo-1.0-alt0.x86_64.rpm Preparing packages... |