foundry icon indicating copy to clipboard operation
foundry copied to clipboard

Verbosity Level of 3 or higher makes forked tests 10-30x slower

Open Philogy opened this issue 1 year ago • 7 comments

Component

Forge

Have you ensured that all of these are up to date?

  • [X] Foundry
  • [X] Foundryup

What version of Foundry are you on?

forge 0.2.0 (293fad7 2024-01-14T00:19:24.272194000Z)

What command(s) is the bug in?

forge test

Operating System

macOS (Apple Silicon)

Describe the bug

When running a forked foundry test (--fork-url and --fork-block-number flags set) the test has a certain runtime, in my situation it's 2-3s total (using time forge ... to measure). However as soon as you set the verbosity level to 3 or higher (-vvv and up) the test takes 15x-30x longer to run, even if no trace is actually shown (because e.g. verbosity level is 3 and the tests are passing).

Philogy avatar Jan 14 '24 14:01 Philogy

Note: Adding an etherscan key seems to speed this up considerably, I assume what's happening in the background is it's trying to resolve the name of contracts in the trace and not caching all those calls making it even slower when you're using the public etherscan end-points?

Philogy avatar Jan 14 '24 16:01 Philogy

As a note the running is "only" 3-4x slower upon improving the internet connection. Could be a separate issue but --offline doesn't seem to impact the speed at which traces are constructed and rendered

Philogy avatar Jan 14 '24 17:01 Philogy

hmm, this is odd.

could you perhaps share the etherscan related settings of forge config? and the logs if you run with RUST_LOG=etherscanidentifier

mattsse avatar Jan 15 '24 13:01 mattsse

Experiencing the same issue, really slow when having -vvvv

fedealconada avatar Mar 19 '24 12:03 fedealconada

Also noticed this @Philogy @mattsse.

With RUST_LOG=etherscanidentifier, it spews out a huge amount of logs and hits etherscan rate limits.

2024-03-26T21:53:14.060910Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.060922Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.060926Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.060929Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.060932Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.060974Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.060978Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.060998Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.061002Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.061020Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.061022Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.061040Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.061043Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.061060Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.061063Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.061079Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.061081Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.061097Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.061169Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.061203Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.061215Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.061225Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.061235Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.061341Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.061965Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.061973Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.061974Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.061976Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.061977Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.061995Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.061996Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062007Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062009Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062019Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062020Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062029Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062072Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062100Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062103Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062122Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062124Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062140Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062143Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062159Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062161Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062177Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062181Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062196Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062199Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062214Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062216Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062231Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062293Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062312Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062314Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062325Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062326Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062337Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062338Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062374Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062376Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062385Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062387Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062397Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062398Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062407Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062408Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062417Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062419Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062428Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062429Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062438Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062439Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062448Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062476Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062489Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062490Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062499Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062500Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062509Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062674Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062695Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062697Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062708Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062709Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062720Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062735Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062749Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062751Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062761Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062762Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062772Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062774Z TRACE etherscanidentifier: fetching info for 0x7109709ecfa91a80626ff3989d68f67f5b1dd12d
2024-03-26T21:53:14.062783Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062792Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062802Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062812Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062868Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x7109709ecfa91a80626ff3989d68f67f5b1dd12d)
2024-03-26T21:53:14.062926Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.062927Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.062929Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.062930Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.062931Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.297823Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x0000000000000000000000000000000000000004)
2024-03-26T21:53:14.297860Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.315506Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x0000000000000000000000000000000000000004)
2024-03-26T21:53:14.315535Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.331855Z  WARN etherscanidentifier: could not get etherscan info: ContractCodeNotVerified(0x0000000000000000000000000000000000000004)
2024-03-26T21:53:14.331902Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.344993Z  WARN etherscanidentifier: rate limit exceeded on attempt
2024-03-26T21:53:14.346393Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.364384Z  WARN etherscanidentifier: rate limit exceeded on attempt
2024-03-26T21:53:14.365700Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.512320Z  WARN etherscanidentifier: rate limit exceeded on attempt
2024-03-26T21:53:14.513720Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.528642Z  WARN etherscanidentifier: rate limit exceeded on attempt
2024-03-26T21:53:14.529894Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.551399Z  WARN etherscanidentifier: rate limit exceeded on attempt
2024-03-26T21:53:14.552582Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.569005Z  WARN etherscanidentifier: rate limit exceeded on attempt
2024-03-26T21:53:14.571206Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.589155Z  WARN etherscanidentifier: rate limit exceeded on attempt
2024-03-26T21:53:14.590349Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.737062Z  WARN etherscanidentifier: rate limit exceeded on attempt
2024-03-26T21:53:14.738240Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.748508Z  WARN etherscanidentifier: rate limit exceeded on attempt
2024-03-26T21:53:14.749678Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.766899Z  WARN etherscanidentifier: rate limit exceeded on attempt
2024-03-26T21:53:14.768106Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.814421Z  WARN etherscanidentifier: rate limit exceeded on attempt
2024-03-26T21:53:14.815671Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.834284Z  WARN etherscanidentifier: rate limit exceeded on attempt
2024-03-26T21:53:14.835452Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.949882Z  WARN etherscanidentifier: rate limit exceeded on attempt
2024-03-26T21:53:14.951055Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.970087Z  WARN etherscanidentifier: rate limit exceeded on attempt
2024-03-26T21:53:14.971278Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004
2024-03-26T21:53:14.997844Z  WARN etherscanidentifier: rate limit exceeded on attempt
2024-03-26T21:53:14.999006Z TRACE etherscanidentifier: fetching info for 0x0000000000000000000000000000000000000004

--offline is a temporary workaround forge-config.txt

frontier159 avatar Mar 26 '24 21:03 frontier159

Was able to replicate this as well, extreme slowdown for tracing with a verbosity level > -vv

Temporary workaround for local tests was to use the --offline flag suggested by @frontier159 (thanks!) and limit the verbosity on fork and integration tests.

Seems to be indeed related to Etherscan rate limits or excessive calls to Etherscan.

zerosnacks avatar Apr 01 '24 18:04 zerosnacks

Update:

  • https://github.com/foundry-rs/block-explorers/pull/40 fixes a caching issue that caused the excessive refetching as reported. This has an effect on repeated tests against cached values (after initial run).

In review, should be largely fixed soon:

  • https://github.com/foundry-rs/foundry/pull/7606 selectively disables Etherscan querying for non-forking tests. This should reduce the time when running against non-cached values (initial run).

Together these two should address the reported issue.

zerosnacks avatar Apr 25 '24 12:04 zerosnacks

Given no new reports have come in since https://github.com/foundry-rs/block-explorers/pull/40 fixed the cache busting I'll close this as resolved.

It is possible to selective disable Etherscan for non-forking tests but this only has an impact on the first run that populates the cache.

zerosnacks avatar Jun 25 '24 15:06 zerosnacks