chore(l2): trying to implement no_panic crate #1389
Merged
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.
Motivation
As explained by issue #1369, implementing the
no_panic
crate would help prevent some hidden panics.Description
I've tried to implement it for the non-async functions, facing the following problems:
For functions interacting with
TcpStream
and theDatabase
it throws a "panic compilation error".The
keccak
function used andc-kzg
throws the "panic compilation error".no_panic
seems to be a crate that aims to avoid panics in low level lib crates.Found a potential panic in
fake_exponential
, it's solved by thefake_exponential_checked
implementation.Some extra changes regarding usability were added.
Remove
pub
keyword if not needed.See if we can close the issue #1369