@ignatenkobrain designed an in-memory cache for whatprovides info in depchase that's likely applicable to fedmod as well: https://github.com/fedora-modularity/depchase/pull/17/files
See https://github.com/fedora-modularity/depchase/pull/17 for the relative speedup achieved there.
However, it depends on a new libsolv API (Pool.matchdepid), so pursuing this will need to wait until a new version is released and made available in Fedora 26.
Pool.matchdepid
Metadata Update from @ncoghlan: - Issue assigned to ncoghlan
@ignatenkobrain When trying to bring this over to fedmod, I'm getting AttributeError: 'Pool' object has no attribute 'matchdepid' for the new whatprovides helper function.
fedmod
AttributeError: 'Pool' object has no attribute 'matchdepid'
whatprovides
We also don't use print_transaction in fedmod in general - it's purely for logging purposes, and the CLI and test suite normally run without comprehensive logging enabled.
print_transaction
@ncoghlan you need to have latest libsolv... That function is reference how to analyze dependency tree (in your case to generate information what depends on what).
@ignatenkobrain Do you know if the latest libsolv is going to be submitted as an update to F26? I don't think we should drop F26 support yet, but require folks to have the latest versions of packages there would be fine.
@ncoghlan when it will be released (this month or beginning of next most likely), I don't like putting git snapshots to stable branches.
Metadata Update from @ncoghlan: - Assignee reset
@ignatenkobrain OK, cool - I've updated the issue text to note that we'll need to wait for a new libsolv release before pursuing this further.
AFAIK we have the required new libsolv in F28, so this can be implemented. Be aware of https://github.com/fedora-modularity/depchase/pull/17#issuecomment-344551451
https://pagure.io/modularity/fedmod/pull-request/80
implemented by commit 4d8917a
Metadata Update from @karsten: - Issue close_status updated to: RESOLVED - Issue status updated to: Closed (was: Open)