Hello.
I need to repoquery rawhide and rawhide-source for dependency on python3-toml.
Unfortunately, due to pyproject-rpm-macros, 413 packages BuildRequire:
(python3dist(toml) if python3-devel < 3.11)
I am not interested in this dependency because python3-devel on rawhide is 3.11+.
When I run a naïve repoquery on my Fedora 35 machine (with python3-devel 3.10),
like this:
$ repoquery --repo=rawhide{,-source} --whatrequires python3-toml
I get all the 413 packages in the results. I kinda expected that.
I've tried:
$ repoquery --installroot ~/tmp/non-existent ... --whatrequires python3-toml
No dice, returns the same list as the first repoquery.
Then I've tried to podman into a rawhide container and run a repoquery there.
When I have no pytohn3-devel installed or when I have python3-devel 3.11+
installed in the container, I still get all the packages that BR
(python3dist(toml) if python3-devel < 3.11) only.
How do I filter them out?
I came up with this monstrosity:
for pkg in $(repoquery --repo=rawhide{,-source} --whatrequires python3-toml)
do repoquery -q --repo=rawhide{,-source} --requires $pkg | \
grep -Fv '(python3dist(toml) if python3-devel < 3.11)' | \
grep -Eq '\btoml\b' && echo $pkg
done | tee toml-requires
But it is very slow and might contain false finds.
Do you know a better trick?
--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue