foundry-rs / foundry-rs/foundry
perf: optimize trace decoding by making identity fetching non-blocking
- Dominant language
- Rust
- Stars
- 10.6k
- Forks
- 2.6k
- Avg merge
- 18h 20m
- Merged PRs (30d)
- 510
Description
### Component
Forge
### Describe the feature you would like
Ref #3006
Decoding traces for better output can make use of etherscan or sig.eth.samczsun.com
both require API requests, the tracing decoding is currently blocking, which means we have code that looks like:
https://github.com/foundry-rs/foundry/blob/903562382075b4ba24e5f4d40aeee620c53a7dde/evm/src/trace/identifier/etherscan.rs#L86
we could solve this by making everything async or use a background task with channels instead
since there's only 1 identifier for the entire suit, the latter makes sense, this way we still keep the non async test interface but can use async decoding
### Additional context
_No response_
Contributor guide
Assessment
This issue has not been assessed yet.