debian-forge/tools
Achilleas Koutsou 806a1caba7 tools/osbuild-depsolve-dnf: support optional metadata
Filelist repo metadata is required when using newer versions of libdnf
with old repositories or packages that specify dependencies on files.
For example, depsolving with RHEL 9.3 repos on Fedora 40 fails to
resolve platform-python with the message

  nothing provides /usr/libexec/platform-python needed by platform-python-...

Not loading filelists is beneficial because it greatly reduces the size
of the metadata to download.  Filelists were downloaded by default for
repositories in the past, but with newer versions of dnf/libdnf (in
Fedora 40), they are downloaded on-demand (e.g. when running a query
that requires file information).  Newer package guidelines prohibit
depending on file paths, so filelists are not needed for package
depsolving with newer distro repositories.

Add an 'optional-metadata' property to the 'arguments' object of the
depsolve request, so that callers can enable any optional metadata they
need.

Further reading:
- https://libdnf.readthedocs.io/en/stable/tutorial-py/#case-for-loading-the-filelists
- https://github.com/rpm-software-management/dnf/releases/tag/4.19.0
- https://dnf.readthedocs.io/en/stable/user_faq.html#starting-with-fedora-40-i-noticed-repository-metadata-is-synchronized-much-faster-what-happened
2024-05-29 01:39:05 +02:00
..
test test: Add a depsolve test for sslverify 2024-04-27 00:29:02 +02:00
check-runners tools: add "tools" dir to LINTABLES and fix issues 2023-11-13 10:10:12 +01:00
check-snapshots check-snapshots: add log info when a download fails 2024-02-20 14:52:23 -08:00
gen-stage-test-diff tools: make gen-stage-test-diff pylint clean 2024-02-20 14:52:23 -08:00
inline-source.py tools: add inline-source.py 2021-05-12 14:26:16 +02:00
lorax-template-pkgs.py osbuild: run isort on all files 2022-09-12 13:32:51 +02:00
osbuild mpp: combine depsolve and import into mpp.py 2021-06-30 20:26:07 +01:00
osbuild-depsolve-dnf tools/osbuild-depsolve-dnf: support optional metadata 2024-05-29 01:39:05 +02:00
osbuild-depsolve-dnf5 osbuild-depsolve-dnf5: Fix sslverify setting 2024-04-27 00:29:02 +02:00
osbuild-dev lint: explicit check 2024-03-05 16:10:27 +01:00
osbuild-json-seq-progress-example-renderer tools: add example json-seq render based on tqdm 2024-03-12 16:44:12 +01:00
osbuild-mpp osbuild-mpp: Expend information in PkgInfo 2024-04-03 10:29:49 +02:00
set-env-variables.sh tools: add set-env-variables.sh 2022-04-13 14:57:27 +02:00
tree-diff tools/tree-diff: make its output stable 2023-08-08 12:41:17 +02:00