-
Notifications
You must be signed in to change notification settings - Fork 346
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
chore: Enhance Call Tracer Performance and Code Reliability #3125
base: master
Are you sure you want to change the base?
Conversation
#[serde(skip_serializing_if = "Vec::is_empty")] | ||
#[serde(default)] |
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.
#[serde(skip_serializing_if = "Vec::is_empty")] | |
#[serde(default)] | |
#[serde(default, skip_serializing_if = "Vec::is_empty")] |
#[serde(skip_serializing_if = "Option::is_none")] | ||
#[serde(default)] |
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.
#[serde(skip_serializing_if = "Option::is_none")] | |
#[serde(default)] | |
#[serde(default, skip_serializing_if = "Option::is_none")] |
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 some remarks
Hey Rodrigo, made an update, did I understand you right? @RomarQ |
What does it do?
Vec::with_capacity
What important points reviewers should know?
#[serde(default)]
attributes to improve deserialization robustnesscompare_trace_address
function simplifies the comparison logic while maintaining the same sorting behaviorIs there something left for follow-up PRs?
compare_trace_address
functionWhat alternative implementations were considered?
BTreeMap
for trace address storage but current Vec implementation proved more efficientAre there relevant PRs or issues in other repositories?
No related PRs or issues in Substrate, Polkadot, Frontier, or Cumulus repositories as these changes are specific to Moonbeam's EVM tracing implementation.
What value does it bring to the blockchain users?