hardhat 2.17.1 → 2.17.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/builtin-tasks/compile.js +28 -4
  2. package/builtin-tasks/compile.js.map +1 -1
  3. package/builtin-tasks/task-names.d.ts +1 -0
  4. package/builtin-tasks/task-names.d.ts.map +1 -1
  5. package/builtin-tasks/task-names.js +3 -2
  6. package/builtin-tasks/task-names.js.map +1 -1
  7. package/internal/artifacts.d.ts +28 -0
  8. package/internal/artifacts.d.ts.map +1 -1
  9. package/internal/artifacts.js +39 -1
  10. package/internal/artifacts.js.map +1 -1
  11. package/internal/cli/project-creation.js +1 -1
  12. package/internal/core/config/config-resolution.d.ts.map +1 -1
  13. package/internal/core/config/config-resolution.js +4 -0
  14. package/internal/core/config/config-resolution.js.map +1 -1
  15. package/internal/core/errors-list.d.ts +28 -0
  16. package/internal/core/errors-list.d.ts.map +1 -1
  17. package/internal/core/errors-list.js +34 -0
  18. package/internal/core/errors-list.js.map +1 -1
  19. package/internal/core/jsonrpc/types/base-types.d.ts +1 -0
  20. package/internal/core/jsonrpc/types/base-types.d.ts.map +1 -1
  21. package/internal/core/jsonrpc/types/base-types.js +8 -1
  22. package/internal/core/jsonrpc/types/base-types.js.map +1 -1
  23. package/internal/core/jsonrpc/types/input/callRequest.d.ts +60 -0
  24. package/internal/core/jsonrpc/types/input/callRequest.d.ts.map +1 -1
  25. package/internal/core/jsonrpc/types/input/callRequest.js +13 -1
  26. package/internal/core/jsonrpc/types/input/callRequest.js.map +1 -1
  27. package/internal/core/providers/construction.d.ts.map +1 -1
  28. package/internal/core/providers/construction.js +1 -0
  29. package/internal/core/providers/construction.js.map +1 -1
  30. package/internal/hardhat-network/provider/fork/ForkBlockchain.d.ts.map +1 -1
  31. package/internal/hardhat-network/provider/fork/ForkBlockchain.js +13 -1
  32. package/internal/hardhat-network/provider/fork/ForkBlockchain.js.map +1 -1
  33. package/internal/hardhat-network/provider/modules/eth.d.ts.map +1 -1
  34. package/internal/hardhat-network/provider/modules/eth.js +3 -3
  35. package/internal/hardhat-network/provider/modules/eth.js.map +1 -1
  36. package/internal/hardhat-network/provider/node-types.d.ts +1 -0
  37. package/internal/hardhat-network/provider/node-types.d.ts.map +1 -1
  38. package/internal/hardhat-network/provider/node.d.ts +8 -1
  39. package/internal/hardhat-network/provider/node.d.ts.map +1 -1
  40. package/internal/hardhat-network/provider/node.js +65 -6
  41. package/internal/hardhat-network/provider/node.js.map +1 -1
  42. package/internal/hardhat-network/provider/provider.d.ts +1 -0
  43. package/internal/hardhat-network/provider/provider.d.ts.map +1 -1
  44. package/internal/hardhat-network/provider/provider.js +1 -0
  45. package/internal/hardhat-network/provider/provider.js.map +1 -1
  46. package/internal/hardhat-network/provider/utils/makeCommon.d.ts +1 -1
  47. package/internal/hardhat-network/provider/utils/makeCommon.d.ts.map +1 -1
  48. package/internal/hardhat-network/provider/utils/makeCommon.js +3 -1
  49. package/internal/hardhat-network/provider/utils/makeCommon.js.map +1 -1
  50. package/internal/hardhat-network/stack-traces/vm-debug-tracer.d.ts.map +1 -1
  51. package/internal/hardhat-network/stack-traces/vm-debug-tracer.js +8 -8
  52. package/internal/hardhat-network/stack-traces/vm-debug-tracer.js.map +1 -1
  53. package/internal/solidity/dependencyGraph.d.ts.map +1 -1
  54. package/internal/solidity/dependencyGraph.js +13 -3
  55. package/internal/solidity/dependencyGraph.js.map +1 -1
  56. package/internal/solidity/resolver.d.ts +2 -1
  57. package/internal/solidity/resolver.d.ts.map +1 -1
  58. package/internal/solidity/resolver.js +31 -17
  59. package/internal/solidity/resolver.js.map +1 -1
  60. package/package.json +12 -11
  61. package/src/builtin-tasks/compile.ts +33 -4
  62. package/src/builtin-tasks/task-names.ts +1 -0
  63. package/src/internal/artifacts.ts +40 -1
  64. package/src/internal/cli/project-creation.ts +1 -1
  65. package/src/internal/core/config/config-resolution.ts +5 -0
  66. package/src/internal/core/errors-list.ts +38 -0
  67. package/src/internal/core/jsonrpc/types/base-types.ts +15 -0
  68. package/src/internal/core/jsonrpc/types/input/callRequest.ts +35 -1
  69. package/src/internal/core/providers/construction.ts +2 -0
  70. package/src/internal/hardhat-network/provider/fork/ForkBlockchain.ts +24 -4
  71. package/src/internal/hardhat-network/provider/modules/eth.ts +18 -4
  72. package/src/internal/hardhat-network/provider/node-types.ts +1 -0
  73. package/src/internal/hardhat-network/provider/node.ts +110 -6
  74. package/src/internal/hardhat-network/provider/provider.ts +2 -0
  75. package/src/internal/hardhat-network/provider/utils/makeCommon.ts +9 -1
  76. package/src/internal/hardhat-network/stack-traces/vm-debug-tracer.ts +12 -10
  77. package/src/internal/solidity/dependencyGraph.ts +15 -3
  78. package/src/internal/solidity/resolver.ts +58 -16
  79. package/src/types/config.ts +2 -0
  80. package/src/utils/contract-names.ts +1 -0
  81. package/src/utils/remappings.ts +17 -0
  82. package/types/config.d.ts +2 -0
  83. package/types/config.d.ts.map +1 -1
  84. package/utils/contract-names.d.ts +1 -0
  85. package/utils/contract-names.d.ts.map +1 -1
  86. package/utils/contract-names.js +1 -0
  87. package/utils/contract-names.js.map +1 -1
  88. package/utils/remappings.d.ts +2 -0
  89. package/utils/remappings.d.ts.map +1 -0
  90. package/utils/remappings.js +15 -0
  91. package/utils/remappings.js.map +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"eth.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/modules/eth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eth.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/modules/eth.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@ interface CommonConfig {
24
24
  coinbase: string;
25
25
  chains: HardhatNetworkChainsConfig;
26
26
  allowBlocksWithSameTimestamp: boolean;
27
+ enableTransientStorage: boolean;
27
28
  }
28
29
  export type LocalNodeConfig = CommonConfig;
29
30
  export interface ForkConfig {
@@ -1 +1 @@
1
- {"version":3,"file":"node-types.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/node-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node-types.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/node-types.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEhE,OAAO,EAAE,gCAAgC,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,MAAM,MAAM,UAAU,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAE5D,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,UAAU,GACjB,MAAM,IAAI,gBAAgB,CAE5B;AAED,UAAU,YAAY;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,0BAA0B,CAAC;IACnC,4BAA4B,EAAE,OAAO,CAAC;IACtC,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC;AAE3C,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CAC1C;AAED,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;CAC1B;AAED,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE7D,MAAM,MAAM,YAAY,GAAG,OAAO,gCAAgC,CAAC,MAAM,CAAC,CAAC;AAE3E,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;CACnC;AAED,MAAM,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;AAEtD,MAAM,WAAW,UAAU;IACzB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IAGb,UAAU,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAEpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,iBAAiB,GACzB,uBAAuB,GACvB,2BAA2B,GAC3B,wBAAwB,CAAC;AAE7B,UAAU,qBAAqB;IAE7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,uBAAwB,SAAQ,qBAAqB;IACpE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,2BAA4B,SAAQ,qBAAqB;IACxE,QAAQ,EAAE,MAAM,CAAC;IAGjB,UAAU,EAAE,oBAAoB,EAAE,CAAC;CAGpC;AAED,MAAM,WAAW,wBAAyB,SAAQ,qBAAqB;IACrE,UAAU,EAAE,oBAAoB,EAAE,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,IAAI,CAAC;IACX,WAAW,EAAE,KAAK,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,4BAA4B,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,kCAAkC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvD,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,qBAAqB,CAAC;CACzC;AAED,MAAM,MAAM,qBAAqB,GAC7B,MAAM,GACN,eAAe,GACf,eAAe,EAAE,CAAC;AAEtB,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,KAAK,CAAC;IACb,WAAW,EAAE,cAAc,CAAC;IAC5B,MAAM,EAAE,kBAAkB,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,aAAc,SAAQ,kBAAkB;IACvD,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,iBAAkB,SAAQ,kBAAkB;IAC3D,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,YAAY,GAAG,SAAS,CAAC;IAChC,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,kBAAkB,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;CACrB"}
@@ -11,6 +11,7 @@ import { HardhatMetadata } from "../../core/jsonrpc/types/output/metadata";
11
11
  import { HardforkName } from "../../util/hardforks";
12
12
  import { MessageTrace } from "../stack-traces/message-trace";
13
13
  import "./ethereumjs-workarounds";
14
+ import { StateOverrideSet } from "../../core/jsonrpc/types/input/callRequest";
14
15
  import { CallParams, EstimateGasResult, FeeHistory, FilterParams, MineBlockResult, NodeConfig, RunCallResult, SendTransactionResult, TransactionParams } from "./node-types";
15
16
  import { RpcLogOutput, RpcReceiptOutput } from "./output";
16
17
  export declare class HardhatNode extends EventEmitter {
@@ -35,6 +36,7 @@ export declare class HardhatNode extends EventEmitter {
35
36
  private _forkBlockNumber?;
36
37
  private _forkBlockHash?;
37
38
  private _forkClient?;
39
+ private readonly _enableTransientStorage;
38
40
  static create(config: NodeConfig): Promise<[Common, HardhatNode]>;
39
41
  private static _validateHardforks;
40
42
  private readonly _localAccounts;
@@ -63,7 +65,7 @@ export declare class HardhatNode extends EventEmitter {
63
65
  * ones that were reserved are not included).
64
66
  */
65
67
  mineBlocks(count?: bigint, interval?: bigint): Promise<MineBlockResult[]>;
66
- runCall(call: CallParams, blockNumberOrPending: bigint | "pending"): Promise<RunCallResult>;
68
+ runCall(call: CallParams, blockNumberOrPending: bigint | "pending", stateOverrideSet?: StateOverrideSet): Promise<RunCallResult>;
67
69
  getAccountBalance(address: Address, blockNumberOrPending?: bigint | "pending"): Promise<bigint>;
68
70
  getNextConfirmedNonce(address: Address, blockNumberOrPending: bigint | "pending"): Promise<bigint>;
69
71
  getAccountNextPendingNonce(address: Address): Promise<bigint>;
@@ -161,6 +163,10 @@ export declare class HardhatNode extends EventEmitter {
161
163
  private _restoreBlockContext;
162
164
  private _correctInitialEstimation;
163
165
  private _binarySearchEstimation;
166
+ private _applyStateOverrideSet;
167
+ private _overrideBalanceAndNonce;
168
+ private _overrideCode;
169
+ private _overrideStateAndStateDiff;
164
170
  /**
165
171
  * This function runs a transaction and reverts all the modifications that it
166
172
  * makes.
@@ -185,5 +191,6 @@ export declare class HardhatNode extends EventEmitter {
185
191
  private _getEstimateGasFeePriceFields;
186
192
  private _selectHardfork;
187
193
  private _getCommonForTracing;
194
+ private _getTransientStorageSettings;
188
195
  }
189
196
  //# sourceMappingURL=node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/node.ts"],"names":[],"mappings":"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"}
@@ -83,7 +83,7 @@ const log = (0, debug_1.default)("hardhat:core:hardhat-network:node");
83
83
  /* eslint-disable @nomicfoundation/hardhat-internal-rules/only-hardhat-error */
84
84
  class HardhatNode extends events_1.default {
85
85
  static async create(config) {
86
- const { automine, genesisAccounts, blockGasLimit, tracingConfig, minGasPrice, mempoolOrder, networkId, chainId, allowBlocksWithSameTimestamp, } = config;
86
+ const { automine, genesisAccounts, blockGasLimit, tracingConfig, minGasPrice, mempoolOrder, networkId, chainId, allowBlocksWithSameTimestamp, enableTransientStorage, } = config;
87
87
  const allowUnlimitedContractSize = config.allowUnlimitedContractSize ?? false;
88
88
  let stateManager;
89
89
  let blockchain;
@@ -163,7 +163,7 @@ class HardhatNode extends events_1.default {
163
163
  blockchain,
164
164
  });
165
165
  const instanceId = (0, ethereumjs_util_1.bufferToBigInt)((0, crypto_1.randomBytes)(32));
166
- const node = new HardhatNode(vm, instanceId, stateManager, blockchain, txPool, automine, minGasPrice, initialBlockTimeOffset, mempoolOrder, config.coinbase, genesisAccounts, networkId, chainId, hardfork, hardforkActivations, mixHashGenerator, allowUnlimitedContractSize, allowBlocksWithSameTimestamp, tracingConfig, forkNetworkId, forkBlockNum, forkBlockHash, nextBlockBaseFeePerGas, forkClient);
166
+ const node = new HardhatNode(vm, instanceId, stateManager, blockchain, txPool, automine, minGasPrice, initialBlockTimeOffset, mempoolOrder, config.coinbase, genesisAccounts, networkId, chainId, hardfork, hardforkActivations, mixHashGenerator, allowUnlimitedContractSize, allowBlocksWithSameTimestamp, tracingConfig, forkNetworkId, forkBlockNum, forkBlockHash, nextBlockBaseFeePerGas, forkClient, enableTransientStorage);
167
167
  return [common, node];
168
168
  }
169
169
  static _validateHardforks(forkBlockNumber, common, remoteChainId) {
@@ -191,7 +191,7 @@ Hardhat Network's forking functionality only works with blocks from at least spu
191
191
  }
192
192
  }
193
193
  }
194
- constructor(_vm, _instanceId, _stateManager, _blockchain, _txPool, _automine, _minGasPrice, _blockTimeOffsetSeconds = 0n, _mempoolOrder, _coinbase, genesisAccounts, _configNetworkId, _configChainId, hardfork, _hardforkActivations, _mixHashGenerator, allowUnlimitedContractSize, _allowBlocksWithSameTimestamp, tracingConfig, _forkNetworkId, _forkBlockNumber, _forkBlockHash, nextBlockBaseFee, _forkClient) {
194
+ constructor(_vm, _instanceId, _stateManager, _blockchain, _txPool, _automine, _minGasPrice, _blockTimeOffsetSeconds = 0n, _mempoolOrder, _coinbase, genesisAccounts, _configNetworkId, _configChainId, hardfork, _hardforkActivations, _mixHashGenerator, allowUnlimitedContractSize, _allowBlocksWithSameTimestamp, tracingConfig, _forkNetworkId, _forkBlockNumber, _forkBlockHash, nextBlockBaseFee, _forkClient, _enableTransientStorage = false) {
195
195
  super();
196
196
  this._vm = _vm;
197
197
  this._instanceId = _instanceId;
@@ -214,6 +214,7 @@ Hardhat Network's forking functionality only works with blocks from at least spu
214
214
  this._forkBlockNumber = _forkBlockNumber;
215
215
  this._forkBlockHash = _forkBlockHash;
216
216
  this._forkClient = _forkClient;
217
+ this._enableTransientStorage = _enableTransientStorage;
217
218
  this._localAccounts = new Map(); // address => private key
218
219
  this._impersonatedAccounts = new Set(); // address
219
220
  this._nextBlockTimestamp = 0n;
@@ -381,7 +382,7 @@ Hardhat Network's forking functionality only works with blocks from at least spu
381
382
  await mineBlock();
382
383
  return mineBlockResults;
383
384
  }
384
- async runCall(call, blockNumberOrPending) {
385
+ async runCall(call, blockNumberOrPending, stateOverrideSet = {}) {
385
386
  let txParams;
386
387
  const nonce = await this._getNonce(new ethereumjs_util_1.Address(call.from), blockNumberOrPending);
387
388
  if (call.gasPrice !== undefined ||
@@ -404,7 +405,7 @@ Hardhat Network's forking functionality only works with blocks from at least spu
404
405
  };
405
406
  }
406
407
  const tx = await this._getFakeTransaction(txParams);
407
- const result = await this._runInBlockContext(blockNumberOrPending, async () => this._runTxAndRevertMutations(tx, blockNumberOrPending, true));
408
+ const result = await this._runInBlockContext(blockNumberOrPending, async () => this._runTxAndRevertMutations(tx, blockNumberOrPending, true, stateOverrideSet));
408
409
  const traces = await this._gatherTraces(result.execResult);
409
410
  return {
410
411
  ...traces,
@@ -1534,12 +1535,62 @@ Hardhat Network's forking functionality only works with blocks from at least spu
1534
1535
  }
1535
1536
  return this._binarySearchEstimation(blockNumberOrPending, txParams, newEstimation, lowestSuccessfulEstimation, roundNumber + 1);
1536
1537
  }
1538
+ async _applyStateOverrideSet(stateOverrideSet) {
1539
+ // Multiple state override set can be configured for different addresses, hence the loop
1540
+ for (const [addrToOverride, stateOverrideOptions] of Object.entries(stateOverrideSet)) {
1541
+ const address = new ethereumjs_util_1.Address((0, ethereumjs_util_1.toBuffer)(addrToOverride));
1542
+ const { balance, nonce, code, state, stateDiff } = stateOverrideOptions;
1543
+ await this._overrideBalanceAndNonce(address, balance, nonce);
1544
+ await this._overrideCode(address, code);
1545
+ await this._overrideStateAndStateDiff(address, state, stateDiff);
1546
+ }
1547
+ }
1548
+ async _overrideBalanceAndNonce(address, balance, nonce) {
1549
+ const MAX_NONCE = 2n ** 64n - 1n;
1550
+ const MAX_BALANCE = 2n ** 256n - 1n;
1551
+ if (nonce !== undefined && nonce > MAX_NONCE) {
1552
+ throw new errors_2.InvalidInputError(`The 'nonce' property should occupy a maximum of 8 bytes (nonce=${nonce}).`);
1553
+ }
1554
+ if (balance !== undefined && balance > MAX_BALANCE) {
1555
+ throw new errors_2.InvalidInputError(`The 'balance' property should occupy a maximum of 32 bytes (balance=${balance}).`);
1556
+ }
1557
+ await this._stateManager.modifyAccountFields(address, {
1558
+ balance,
1559
+ nonce,
1560
+ });
1561
+ }
1562
+ async _overrideCode(address, code) {
1563
+ if (code === undefined)
1564
+ return;
1565
+ await this._stateManager.putContractCode(address, code);
1566
+ }
1567
+ async _overrideStateAndStateDiff(address, state, stateDiff) {
1568
+ let newState;
1569
+ if (state !== undefined && stateDiff === undefined) {
1570
+ await this._stateManager.clearContractStorage(address);
1571
+ newState = state;
1572
+ }
1573
+ else if (state === undefined && stateDiff !== undefined) {
1574
+ newState = stateDiff;
1575
+ }
1576
+ else if (state === undefined && stateDiff === undefined) {
1577
+ // nothing to do
1578
+ return;
1579
+ }
1580
+ else {
1581
+ throw new errors_2.InvalidInputError("The properties 'state' and 'stateDiff' cannot be used simultaneously when configuring the state override set passed to the eth_call method.");
1582
+ }
1583
+ for (const [storageKey, value] of Object.entries(newState)) {
1584
+ await this._stateManager.putContractStorage(address, (0, ethereumjs_util_1.toBuffer)(storageKey), (0, ethereumjs_util_1.setLengthLeft)((0, ethereumjs_util_1.bigIntToBuffer)(value), 32));
1585
+ }
1586
+ }
1537
1587
  /**
1538
1588
  * This function runs a transaction and reverts all the modifications that it
1539
1589
  * makes.
1540
1590
  */
1541
- async _runTxAndRevertMutations(tx, blockNumberOrPending, forceBaseFeeZero = false) {
1591
+ async _runTxAndRevertMutations(tx, blockNumberOrPending, forceBaseFeeZero = false, stateOverrideSet = {}) {
1542
1592
  const initialStateRoot = await this._stateManager.getStateRoot();
1593
+ await this._applyStateOverrideSet(stateOverrideSet);
1543
1594
  let blockContext;
1544
1595
  let originalCommon;
1545
1596
  try {
@@ -1565,6 +1616,7 @@ Hardhat Network's forking functionality only works with blocks from at least spu
1565
1616
  networkId: this._forkNetworkId ?? this._configNetworkId,
1566
1617
  }, {
1567
1618
  hardfork: this._selectHardfork(blockContext.header.number),
1619
+ ...this._getTransientStorageSettings(),
1568
1620
  });
1569
1621
  // If this VM is running without EIP4895, but the block has withdrawals,
1570
1622
  // we remove them and the withdrawal root from the block
@@ -1789,6 +1841,7 @@ Hardhat Network's forking functionality only works with blocks from at least spu
1789
1841
  networkId,
1790
1842
  }, {
1791
1843
  hardfork: this._selectHardfork(BigInt(blockNumber)),
1844
+ ...this._getTransientStorageSettings(),
1792
1845
  });
1793
1846
  return common;
1794
1847
  }
@@ -1796,6 +1849,12 @@ Hardhat Network's forking functionality only works with blocks from at least spu
1796
1849
  throw new errors_2.InternalError(`Network id ${networkId} does not correspond to a network that Hardhat can trace`);
1797
1850
  }
1798
1851
  }
1852
+ _getTransientStorageSettings() {
1853
+ if (this._enableTransientStorage) {
1854
+ return { eips: [1153] };
1855
+ }
1856
+ return {};
1857
+ }
1799
1858
  }
1800
1859
  exports.HardhatNode = HardhatNode;
1801
1860
  //# sourceMappingURL=node.js.map