foundry
foundry copied to clipboard
feat(`forge script`): add `--gas-price-multiplier`
Component
Forge
Describe the feature you would like
When running forge script script/deploy.s.sol
and specifying the gas params, either with -g
or --gas-price
, the output of the simulation (running without --broadcast
) shows the estimated gas price of the current block, not what was specified with the cli params and can be confusing.
As per the docs, supplying -g
will multiply the estimated gas by some number.
If gas price is 65 gwei, and we want to deploy with 6 gwei, we could specify -g 10
Current avg gas price: 65 gwei
Call: forge script script/deploy.s.sol:DeployScript -g 10 --rpc-url https://cloudflare-eth.com/
However, in doing so, the output still specifies the 65 gwei. Interpretation of the output could be that we will deploy with 65 gwei gas price.
## Setting up 1 EVM.
==========================
Chain 1
Estimated gas price: 64.375837984 gwei
Estimated total gas used for script: 15627
Estimated amount required: 0.001006001220175968 ETH
We can confirm the estimated amount required is correct and uses what we specify with -g
by calling the same exec with -g 1000
.
Current avg gas price: 65 gwei
Call: forge script script/deploy.s.sol:DeployScript -g 1000 --rpc-url https://cloudflare-eth.com/
## Setting up 1 EVM.
==========================
Chain 1
Estimated gas price: 64.834925182 gwei
Estimated total gas used for script: 1562760
Estimated amount required: 0.10132142767742232 ETH
It seems to be that Estimated gas price:
is not overridden with what we specify in the args but instead of always the gas price of the current block.
Ask:
In the output, either;
- relabel
Estimated gas price:
to what we specify (in the case of-g 10
, it should readEstimated gas price: 6.4834925182 gwei
) - relabel
Estimated gas price:
to something more accurate such asBlock gas price
and then a new line item withBroadcasting with gas price:
if the user specifies a gas price with-g
or--gas-price
.
Additional context
No response