利用可能な最新バージョンのパッケージでリポケアを強制的に解決するには?

利用可能な最新バージョンのパッケージでリポケアを強制的に解決するには?

repoqueryRPM依存関係を使用してダウンロードしようとしましたが、yumdownloader結果が一貫していませんでした。repoqueryリポジトリで利用可能な最新の互換性パッケージが常に返されるようにするにはどうすればよいですか?

呼び出し方法によっては、一貫性のない結果が表示されますrepoquery

$ repoquery --whatprovides systemd-python
systemd-python-0:208-20.el7_1.6.x86_64
systemd-python-0:208-20.el7.x86_64
systemd-python-0:208-20.el7_1.3.x86_64
systemd-python-0:208-20.el7_1.2.x86_64
systemd-python-0:208-20.el7_1.5.x86_64
$ repoquery --resolve systemd-python
systemd-python-0:208-20.el7_1.6.x86_64
$ repoquery --requires salt
...
systemd-python
...
$ repoquery --requires --resolve salt
...
systemd-python-0:208-20.el7_1.5.x86_64
...

20.el7_1.6自己照会はリリースとして検証されますが、依存関係であると確認された場合20.el7_1.5はリリースとして検証されます。

systemd-pythonリリースするシステムを更新した20.el7_1.6後、repoquery最も古いバージョンの依存関係を解決し始めたとき、状況はさらに混乱しました。

$ repoquery --requires --resolve salt
...
systemd-python-0:208-20.el7.x86_64
...

このように一貫性のない結果が出るのはなぜですか?repoqueryローカルシステムにインストールされているエントリに関係なく、リポジトリの最新のパッケージバージョンを強制的に解決する方法は?

答え1

あなたの質問に対する古いyum repoqueryの場合、おそらくそれを行うことはできません。

新しいプラグイン(DNFプラグイン)の場合は、次のことができます。dnf repoquery --latest-limit 1

関連情報