Skip to content
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

Remove lots of unwraps #983

Merged
merged 10 commits into from
Aug 22, 2024
Merged

Remove lots of unwraps #983

merged 10 commits into from
Aug 22, 2024

Conversation

insipx
Copy link
Contributor

@insipx insipx commented Aug 21, 2024

  • adds directive to disallow unwraps in code that is not test/benchmarks

This PR removes a bunch of unwraps found with clippy. An unwrap would panic libxmtp and crash the client, so we should never use it unless we are 100% sure it will not panic. Unwrapping in this context may also cause errors to go completely unreported in logs (if a task or something crashes or the logs are not picked up by a logger)

Added a warn lint for unwrap that clippy will pick up if ran without test,test-utils, or bench feature, i.e cargo clippy --no-deps -- -Dwarnings

there are a few unwraps here that could definitely been causing issues/causing crashes in probably less-common circumstances (like the one in insert_or_replace_group and permissions)

@insipx insipx requested a review from a team as a code owner August 21, 2024 22:23
@@ -1074,7 +1076,11 @@ pub fn build_extensions_for_permissions_update(
PermissionUpdateType::UpdateMetadata => {
let mut metadata_policy = existing_policy_set.update_metadata_policy.clone();
metadata_policy.insert(
update_permissions_intent.metadata_field_name.unwrap(),
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this one seems like we could make a default, like unwrap_or("DEFAULT METADATA FIELD NAME") instead of an error

Copy link
Contributor

@nplasterer nplasterer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔥 🔥 🔥

@insipx insipx merged commit c4d3a6d into main Aug 22, 2024
9 checks passed
@insipx insipx deleted the insipx/remove-all-unwraps branch August 22, 2024 14:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants