- Added yum repository caching which performs regular cleans for files more than
one week old. This expiry period can be modified with the environment
rpmdeplint.DependencyAnalyzerclass no longer needs to be “entered” as a context manager. The class still supports the context manager protocol as a no-op for backwards compatibility.
- Fixed handling of the
xml:baseattribute in repodata. Previously, if a repo used
xml:baseto refer to packages stored at a different URL, rpmdeplint would fail to download them when it performed conflict checking (RHBZ#1448768).
- If a package fails to download, a clean error message is now reported. Previously this would result in an unhandled exception, which triggered abrt handling (RHBZ#1423678).
- Fixed usage message when no subcommand is given on Python 3.3+ (RHBZ#1445990).
- If you are testing only
noarchpackages, you must now explicitly pass the
--archoption to specify the target architecture you are testing against. Previously the checks would run but produce nonsensical results (RHBZ#1392635).
- The check for undeclared file conflicts has been improved:
- File conflicts are not reported if the two conflicting packages cannot be installed together due to Requires relationships (RHBZ#1412910).
- It no longer downloads every potentially conflicting package to
check. Only the first potential conflict is checked, to avoid downloading
a very large number of packages for commonly shared paths such as
- A more informative exception is now raised when downloading repodata fails.
- Added a
--versionoption to print the installed version of rpmdeplint.
- Added a new option
--repos-from-systemfor testing against repositories from the system-wide Yum/DNF configuration.
- Conflict checking now works correctly with RPM 4.11 (as found on Red Hat Enterprise Linux 7 and derivatives). Previously it was relying on an API only present in RPM 4.12+.
- Fixed spurious errors/warnings from
check-repoclosurewhen the arch of the packages being tested did not match the host architecture where rpmdeplint was run (RHBZ#1378253).
check-upgradecommand, to ensure that the given packages are not upgraded or obsoleted by an existing package in the repository.
check-repoclosurecommand, to check whether repository dependencies can still be satisfied with the given packages.
checkcommand which performs all the different checks.
- The command-line interface now uses a specific exit status (3) to indicate that a check has failed, so that it can be distinguished from other error conditions.
- Initial release. Supports checking dependency satisfiability and undeclared file conflicts.