Changelog¶
dev¶
Exclude dirs known to be owned by many packages from conflict checking.
If check-upgrade finds a package upgradable by its modular version, skip it.
Make it possible to run rpmdeplint as a library.
Skip modular packages when checking for conflicts.
2.0¶
Make metalinks work on CentOS Stream 9
2.0rc3¶
Repodata cache now works with metalink/mirrorlist (RHBZ#1343247).
Don’t leak directories in
/var/tmp/rpmdeplint-*
(RHBZ#1343247).Allow passing a metalink for –repo instead of baseurl (RHBZ#1454525).
Allow passing only a configured repo name for
--repo
.Modernize deprecated stuff.
Refactoring.
Unit and acceptance tests moved to
tests/
.Code from
__init__.py
moved toanalyzer.py
.
2.0rc2¶
- Easier development/maintaining:
Automatically deploy documentation to GitHub Pages
Automatically publish new releases to PyPI
Require Python >= 3.9
Ditch
setup.py
in favour of pyproject.tomlThe man page is no longer built and installed automatically. Run
'make -C docs man'
to build it (related to RHBZ#2221957).
2.0rc1¶
Added yum repository caching which performs regular cleans for files more than one week old. This expiry period can be modified with the environment variable
RPMDEPLINT_EXPIRY_SECONDS
.The
rpmdeplint.DependencyAnalyzer
class 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.Added
--quiet
option which tells rpmdeplint to only print error messages.Use libsolv directly instead of hawkey (RHBZ#1422873).
Handle “installonly” packages properly (RHBZ#1465734).
Rearrange conflict checking algorithm (RHBZ#1465736).
Download only the package header, not complete RPMs.
Include all possible problematic rules in the problem description.
1.4¶
Fixed handling of the
xml:base
attribute in repodata. Previously, if a repo usedxml:base
to 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).
1.3¶
If you are testing only
noarch
packages, you must now explicitly pass the--arch
option 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
/usr/lib/debug
(RHBZ#1400722).
A more informative exception is now raised when downloading repodata fails.
Added a
--version
option to print the installed version of rpmdeplint.
1.2¶
Added a new option
--repos-from-system
for 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-repoclosure
when the arch of the packages being tested did not match the host architecture where rpmdeplint was run (RHBZ#1378253).
1.1¶
Added
check-upgrade
command, to ensure that the given packages are not upgraded or obsoleted by an existing package in the repository.Added
check-repoclosure
command, to check whether repository dependencies can still be satisfied with the given packages.Added
check
command 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.
1.0¶
Initial release. Supports checking dependency satisfiability and undeclared file conflicts.