Replace .lock().unwrap() with .expect() for better mutex poisoning diagnostics #297
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.
The codebase had 70+ occurrences of
.lock().unwrap()which panic without context on mutex poisoning, making debugging difficult.Changes
.lock().unwrap()and.read()/.write().unwrap()in production code with.expect("descriptive message")"<field_name> mutex poisoned"(e.g.,"environments mutex poisoned")unwrap()is acceptable thereFiles Updated (16)
pet-conda,pet-python-utils,pet-poetry,pet-linux-global-python,pet-reporter,pet-pyenv,pet-windows-store,pet-uv,pet-windows-registry,pet-core,petExample
This follows the issue's Option 1 recommendation as the minimal improvement to provide better debugging context if a thread holding a lock panics.
Original prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.