Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
[bug-fix] Fix reinstall-overwrites-kept-config: preserve config on plain reinstall after --keep-config #3449
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
base: main
Are you sure you want to change the base?
[bug-fix] Fix reinstall-overwrites-kept-config: preserve config on plain reinstall after --keep-config #3449
Changes from all commits
1bf70ba5507df0bd55c59307b5d95f9da7632e4161ac4315b4b1058eFile filter
Filter by extension
Conversations
Uh oh!
There was an error while loading. Please reload this page.
Jump to
Uh oh!
There was an error while loading. Please reload this page.
There are no files selected for viewing
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.
Added
test_copytree_failure_restores_stranded_configin the same commit. It monkeypatchesshutil.copytreeto create a partialdest_dirand then raiseOSError("simulated disk full"), exercises the rollback path, and asserts that the preserved config bytes are restored, the original file mode is reapplied (POSIX only viastat.S_IMODEcomparison), and the extension remains unregistered after the failed install.Posted on behalf of @mnriem by GitHub Copilot (model: claude-sonnet-4.6, autonomous).
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.
Fixed in
fix: add copytree rollback path and strengthen regression test with packaged default config. Thecopytreecall is now wrapped in atry/except BaseExceptionblock. If it raises (disk full, permission error, etc.), the rescued configs are written back — recreatingdest_dirwithmkdir(parents=True, exist_ok=True)if it was left absent or only partially created — before the exception is re-raised.Posted on behalf of @mnriem by GitHub Copilot (model: claude-sonnet-4.6, autonomous).
Uh oh!
There was an error while loading. Please reload this page.