New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Detect and handle unnecessary package reinstall (bug 915494) #1126
Detect and handle unnecessary package reinstall (bug 915494) #1126
Conversation
1dec035
to
867755a
Compare
867755a
to
c552b86
Compare
c552b86
to
10c0789
Compare
I suppose you can't come up with a test case without say, andrew's vdb? I keep thinking we should have some way of summarising/serialising the "important bits" of a vdb so users can just run a command and dump it for the purposes of reproducing bugs.. |
Well, lib/portage/tests/resolver/soname/test_skip_update.py::SonameSkipUpdateTestCase::testSonameSkipUpdate can suffice as a test case if I add a parameter to disable prune_rebuilds backtracking. I'll do that now... |
10c0789
to
fde0b4f
Compare
Now testSonameSkipUpdateNoPruneRebuilds will fail if _eliminate_rebuilds doesn't do the job that prune_rebuilds backtracking does in testSonameSkipUpdate. |
fde0b4f
to
f46ddfe
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
f46ddfe
to
b04acb3
Compare
099921c
to
addfe5a
Compare
Compare package rebuilds/reinstalls to installed packages of the same exact version, and eliminate unecessary rebuilds/reinstalls triggered solely by the @__auto_slot_operator_replace_installed__ set. This is careful to obey the user's wishes if they have explicitly requested for a package to be rebuilt or reinstalled for some reason. The SonameSkipUpdateTestCase::testSonameSkipUpdateNoPruneRebuilds test case shows that the new depgraph._eliminate_rebuilds method eliminates a backtracking run that is needed for the testSonameSkipUpdate test case to succeed via prune_rebuilds backtracking which was added for bug 439688. Bug: https://bugs.gentoo.org/915494 Signed-off-by: Zac Medico <zmedico@gentoo.org>
addfe5a
to
4978b91
Compare
Compare package rebuilds/reinstalls to installed packages of the same
exact version, and eliminate unecessary rebuilds/reinstalls triggered
solely by the
@__auto_slot_operator_replace_installed__
set. This iscareful to obey the user's wishes if they have explicitly requested
for a package to be rebuilt or reinstalled for some reason.
The SonameSkipUpdateTestCase::testSonameSkipUpdateNoPruneRebuilds
test case shows that the new depgraph._eliminate_rebuilds method
eliminates a backtracking run that is needed for the
testSonameSkipUpdate test case to succeed via prune_rebuilds
backtracking which was added for bug 439688.
Bug: https://bugs.gentoo.org/915494