hardhat 2.20.1 → 2.21.0-dev.1
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.
- package/internal/core/jsonrpc/types/input/blockTag.d.ts +3 -3
- package/internal/core/jsonrpc/types/input/filterRequest.d.ts +6 -6
- package/internal/core/providers/construction.d.ts.map +1 -1
- package/internal/core/providers/construction.js +28 -4
- package/internal/core/providers/construction.js.map +1 -1
- package/internal/core/providers/http.d.ts +2 -0
- package/internal/core/providers/http.d.ts.map +1 -1
- package/internal/core/providers/http.js +2 -1
- package/internal/core/providers/http.js.map +1 -1
- package/internal/core/runtime-environment.d.ts.map +1 -1
- package/internal/core/runtime-environment.js.map +1 -1
- package/internal/hardhat-network/jsonrpc/client.d.ts +0 -2
- package/internal/hardhat-network/jsonrpc/client.d.ts.map +1 -1
- package/internal/hardhat-network/jsonrpc/client.js +0 -16
- package/internal/hardhat-network/jsonrpc/client.js.map +1 -1
- package/internal/hardhat-network/jsonrpc/handler.js +9 -1
- package/internal/hardhat-network/jsonrpc/handler.js.map +1 -1
- package/internal/hardhat-network/provider/BlockchainData.d.ts +5 -5
- package/internal/hardhat-network/provider/BlockchainData.d.ts.map +1 -1
- package/internal/hardhat-network/provider/BlockchainData.js +10 -10
- package/internal/hardhat-network/provider/BlockchainData.js.map +1 -1
- package/internal/hardhat-network/provider/HardhatBlockchain.d.ts +0 -7
- package/internal/hardhat-network/provider/HardhatBlockchain.d.ts.map +1 -1
- package/internal/hardhat-network/provider/HardhatBlockchain.js +2 -14
- package/internal/hardhat-network/provider/HardhatBlockchain.js.map +1 -1
- package/internal/hardhat-network/provider/TxPool.d.ts +3 -2
- package/internal/hardhat-network/provider/TxPool.d.ts.map +1 -1
- package/internal/hardhat-network/provider/TxPool.js +16 -16
- package/internal/hardhat-network/provider/TxPool.js.map +1 -1
- package/internal/hardhat-network/provider/ethereumjs-workarounds.js +1 -1
- package/internal/hardhat-network/provider/ethereumjs-workarounds.js.map +1 -1
- package/internal/hardhat-network/provider/filter.d.ts +6 -5
- package/internal/hardhat-network/provider/filter.d.ts.map +1 -1
- package/internal/hardhat-network/provider/filter.js +2 -2
- package/internal/hardhat-network/provider/filter.js.map +1 -1
- package/internal/hardhat-network/provider/fork/ForkBlockchain.d.ts +0 -7
- package/internal/hardhat-network/provider/fork/ForkBlockchain.d.ts.map +1 -1
- package/internal/hardhat-network/provider/fork/ForkBlockchain.js +4 -21
- package/internal/hardhat-network/provider/fork/ForkBlockchain.js.map +1 -1
- package/internal/hardhat-network/provider/fork/ForkStateManager.d.ts +13 -19
- package/internal/hardhat-network/provider/fork/ForkStateManager.d.ts.map +1 -1
- package/internal/hardhat-network/provider/fork/ForkStateManager.js +61 -59
- package/internal/hardhat-network/provider/fork/ForkStateManager.js.map +1 -1
- package/internal/hardhat-network/provider/fork/rpcToBlockData.d.ts.map +1 -1
- package/internal/hardhat-network/provider/fork/rpcToBlockData.js +0 -3
- package/internal/hardhat-network/provider/fork/rpcToBlockData.js.map +1 -1
- package/internal/hardhat-network/provider/fork/rpcToTxData.d.ts +2 -2
- package/internal/hardhat-network/provider/fork/rpcToTxData.d.ts.map +1 -1
- package/internal/hardhat-network/provider/fork/rpcToTxData.js +1 -1
- package/internal/hardhat-network/provider/fork/rpcToTxData.js.map +1 -1
- package/internal/hardhat-network/provider/modules/base.js +4 -4
- package/internal/hardhat-network/provider/modules/base.js.map +1 -1
- package/internal/hardhat-network/provider/modules/eth.d.ts.map +1 -1
- package/internal/hardhat-network/provider/modules/eth.js +9 -16
- package/internal/hardhat-network/provider/modules/eth.js.map +1 -1
- package/internal/hardhat-network/provider/modules/logger.d.ts +6 -84
- package/internal/hardhat-network/provider/modules/logger.d.ts.map +1 -1
- package/internal/hardhat-network/provider/modules/logger.js +3 -530
- package/internal/hardhat-network/provider/modules/logger.js.map +1 -1
- package/internal/hardhat-network/provider/node-types.d.ts +2 -65
- package/internal/hardhat-network/provider/node-types.d.ts.map +1 -1
- package/internal/hardhat-network/provider/node-types.js +0 -5
- package/internal/hardhat-network/provider/node-types.js.map +1 -1
- package/internal/hardhat-network/provider/node.d.ts +2 -6
- package/internal/hardhat-network/provider/node.d.ts.map +1 -1
- package/internal/hardhat-network/provider/node.js +79 -153
- package/internal/hardhat-network/provider/node.js.map +1 -1
- package/internal/hardhat-network/provider/output.d.ts +0 -14
- package/internal/hardhat-network/provider/output.d.ts.map +1 -1
- package/internal/hardhat-network/provider/output.js +0 -264
- package/internal/hardhat-network/provider/output.js.map +1 -1
- package/internal/hardhat-network/provider/provider.d.ts +28 -25
- package/internal/hardhat-network/provider/provider.d.ts.map +1 -1
- package/internal/hardhat-network/provider/provider.js +349 -185
- package/internal/hardhat-network/provider/provider.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/FakeSenderAccessListEIP2930Transaction.d.ts +10 -8
- package/internal/hardhat-network/provider/transactions/FakeSenderAccessListEIP2930Transaction.d.ts.map +1 -1
- package/internal/hardhat-network/provider/transactions/FakeSenderAccessListEIP2930Transaction.js +9 -9
- package/internal/hardhat-network/provider/transactions/FakeSenderAccessListEIP2930Transaction.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/FakeSenderEIP1559Transaction.d.ts +10 -8
- package/internal/hardhat-network/provider/transactions/FakeSenderEIP1559Transaction.d.ts.map +1 -1
- package/internal/hardhat-network/provider/transactions/FakeSenderEIP1559Transaction.js +9 -9
- package/internal/hardhat-network/provider/transactions/FakeSenderEIP1559Transaction.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/FakeSenderTransaction.d.ts +10 -9
- package/internal/hardhat-network/provider/transactions/FakeSenderTransaction.d.ts.map +1 -1
- package/internal/hardhat-network/provider/transactions/FakeSenderTransaction.js +7 -6
- package/internal/hardhat-network/provider/transactions/FakeSenderTransaction.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.d.ts +6 -5
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.d.ts.map +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.js +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP2930Transaction.d.ts +5 -4
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP2930Transaction.d.ts.map +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP2930Transaction.js +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP2930Transaction.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidTransaction.d.ts +8 -7
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidTransaction.d.ts.map +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidTransaction.js +2 -2
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidTransaction.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidUnknownTypeTransaction.d.ts +8 -7
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidUnknownTypeTransaction.d.ts.map +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidUnknownTypeTransaction.js +2 -2
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidUnknownTypeTransaction.js.map +1 -1
- package/internal/hardhat-network/provider/types/HardhatBlockchainInterface.d.ts +5 -4
- package/internal/hardhat-network/provider/types/HardhatBlockchainInterface.d.ts.map +1 -1
- package/internal/hardhat-network/provider/utils/convertToEdr.d.ts +14 -0
- package/internal/hardhat-network/provider/utils/convertToEdr.d.ts.map +1 -0
- package/internal/hardhat-network/provider/utils/convertToEdr.js +194 -0
- package/internal/hardhat-network/provider/utils/convertToEdr.js.map +1 -0
- package/internal/hardhat-network/provider/utils/getCurrentTimestamp.d.ts +0 -1
- package/internal/hardhat-network/provider/utils/getCurrentTimestamp.d.ts.map +1 -1
- package/internal/hardhat-network/provider/utils/getCurrentTimestamp.js +1 -5
- package/internal/hardhat-network/provider/utils/getCurrentTimestamp.js.map +1 -1
- package/internal/hardhat-network/provider/utils/makeCommon.d.ts +1 -1
- package/internal/hardhat-network/provider/utils/makeCommon.d.ts.map +1 -1
- package/internal/hardhat-network/provider/utils/makeCommon.js +1 -3
- package/internal/hardhat-network/provider/utils/makeCommon.js.map +1 -1
- package/internal/hardhat-network/provider/utils/makeFakeSignature.d.ts +2 -2
- package/internal/hardhat-network/provider/utils/makeFakeSignature.d.ts.map +1 -1
- package/internal/hardhat-network/provider/utils/makeFakeSignature.js +1 -15
- package/internal/hardhat-network/provider/utils/makeFakeSignature.js.map +1 -1
- package/internal/hardhat-network/provider/utils/makeForkClient.d.ts +10 -1
- package/internal/hardhat-network/provider/utils/makeForkClient.d.ts.map +1 -1
- package/internal/hardhat-network/provider/utils/makeForkClient.js +38 -18
- package/internal/hardhat-network/provider/utils/makeForkClient.js.map +1 -1
- package/internal/hardhat-network/provider/utils/makeStateTrie.js +2 -2
- package/internal/hardhat-network/provider/utils/makeStateTrie.js.map +1 -1
- package/internal/hardhat-network/provider/utils/putGenesisBlock.d.ts +3 -1
- package/internal/hardhat-network/provider/utils/putGenesisBlock.d.ts.map +1 -1
- package/internal/hardhat-network/provider/utils/putGenesisBlock.js +2 -6
- package/internal/hardhat-network/provider/utils/putGenesisBlock.js.map +1 -1
- package/internal/hardhat-network/provider/utils/random.d.ts +1 -0
- package/internal/hardhat-network/provider/utils/random.d.ts.map +1 -1
- package/internal/hardhat-network/provider/utils/random.js +7 -1
- package/internal/hardhat-network/provider/utils/random.js.map +1 -1
- package/internal/hardhat-network/provider/utils/reorgs-protection.d.ts +1 -1
- package/internal/hardhat-network/provider/utils/reorgs-protection.d.ts.map +1 -1
- package/internal/hardhat-network/provider/utils/reorgs-protection.js +5 -5
- package/internal/hardhat-network/provider/utils/reorgs-protection.js.map +1 -1
- package/internal/hardhat-network/provider/vm/exit.d.ts +22 -0
- package/internal/hardhat-network/provider/vm/exit.d.ts.map +1 -0
- package/internal/hardhat-network/provider/vm/exit.js +93 -0
- package/internal/hardhat-network/provider/vm/exit.js.map +1 -0
- package/internal/hardhat-network/provider/vm/minimal-vm.d.ts +29 -0
- package/internal/hardhat-network/provider/vm/minimal-vm.d.ts.map +1 -0
- package/internal/hardhat-network/provider/vm/minimal-vm.js +43 -0
- package/internal/hardhat-network/provider/vm/minimal-vm.js.map +1 -0
- package/internal/hardhat-network/provider/vm/proxy-vm.d.ts +36 -0
- package/internal/hardhat-network/provider/vm/proxy-vm.d.ts.map +1 -0
- package/internal/hardhat-network/provider/vm/proxy-vm.js +73 -0
- package/internal/hardhat-network/provider/vm/proxy-vm.js.map +1 -0
- package/internal/hardhat-network/provider/vm/types.d.ts +28 -0
- package/internal/hardhat-network/provider/vm/types.d.ts.map +1 -0
- package/internal/hardhat-network/provider/vm/types.js +3 -0
- package/internal/hardhat-network/provider/vm/types.js.map +1 -0
- package/internal/hardhat-network/stack-traces/consoleLogger.d.ts +6 -0
- package/internal/hardhat-network/stack-traces/consoleLogger.d.ts.map +1 -1
- package/internal/hardhat-network/stack-traces/consoleLogger.js +33 -16
- package/internal/hardhat-network/stack-traces/consoleLogger.js.map +1 -1
- package/internal/hardhat-network/stack-traces/contracts-identifier.d.ts +1 -2
- package/internal/hardhat-network/stack-traces/contracts-identifier.d.ts.map +1 -1
- package/internal/hardhat-network/stack-traces/contracts-identifier.js +6 -7
- package/internal/hardhat-network/stack-traces/contracts-identifier.js.map +1 -1
- package/internal/hardhat-network/stack-traces/debug.js +6 -6
- package/internal/hardhat-network/stack-traces/debug.js.map +1 -1
- package/internal/hardhat-network/stack-traces/error-inferrer.d.ts.map +1 -1
- package/internal/hardhat-network/stack-traces/error-inferrer.js +13 -7
- package/internal/hardhat-network/stack-traces/error-inferrer.js.map +1 -1
- package/internal/hardhat-network/stack-traces/message-trace.d.ts +8 -3
- package/internal/hardhat-network/stack-traces/message-trace.d.ts.map +1 -1
- package/internal/hardhat-network/stack-traces/message-trace.js +22 -1
- package/internal/hardhat-network/stack-traces/message-trace.js.map +1 -1
- package/internal/hardhat-network/stack-traces/model.d.ts +8 -0
- package/internal/hardhat-network/stack-traces/model.d.ts.map +1 -1
- package/internal/hardhat-network/stack-traces/model.js +52 -0
- package/internal/hardhat-network/stack-traces/model.js.map +1 -1
- package/internal/hardhat-network/stack-traces/opcodes.d.ts +1 -0
- package/internal/hardhat-network/stack-traces/opcodes.d.ts.map +1 -1
- package/internal/hardhat-network/stack-traces/opcodes.js +5 -1
- package/internal/hardhat-network/stack-traces/opcodes.js.map +1 -1
- package/internal/hardhat-network/stack-traces/solidity-errors.js +2 -2
- package/internal/hardhat-network/stack-traces/solidity-errors.js.map +1 -1
- package/internal/hardhat-network/stack-traces/solidityTracer.d.ts.map +1 -1
- package/internal/hardhat-network/stack-traces/solidityTracer.js +5 -5
- package/internal/hardhat-network/stack-traces/solidityTracer.js.map +1 -1
- package/internal/hardhat-network/stack-traces/vm-debug-tracer.d.ts.map +1 -1
- package/internal/hardhat-network/stack-traces/vm-debug-tracer.js +28 -34
- package/internal/hardhat-network/stack-traces/vm-debug-tracer.js.map +1 -1
- package/internal/hardhat-network/stack-traces/vm-trace-decoder.d.ts +7 -0
- package/internal/hardhat-network/stack-traces/vm-trace-decoder.d.ts.map +1 -1
- package/internal/hardhat-network/stack-traces/vm-trace-decoder.js +69 -2
- package/internal/hardhat-network/stack-traces/vm-trace-decoder.js.map +1 -1
- package/internal/hardhat-network/stack-traces/vm-tracer.d.ts +7 -12
- package/internal/hardhat-network/stack-traces/vm-tracer.d.ts.map +1 -1
- package/internal/hardhat-network/stack-traces/vm-tracer.js +46 -65
- package/internal/hardhat-network/stack-traces/vm-tracer.js.map +1 -1
- package/internal/util/date.d.ts +1 -0
- package/internal/util/date.d.ts.map +1 -1
- package/internal/util/date.js +5 -1
- package/internal/util/date.js.map +1 -1
- package/internal/util/hardforks.d.ts +2 -0
- package/internal/util/hardforks.d.ts.map +1 -1
- package/internal/util/hardforks.js +27 -1
- package/internal/util/hardforks.js.map +1 -1
- package/package.json +16 -14
- package/src/internal/core/providers/construction.ts +7 -9
- package/src/internal/core/providers/http.ts +3 -1
- package/src/internal/core/runtime-environment.ts +2 -1
- package/src/internal/hardhat-network/jsonrpc/client.ts +1 -28
- package/src/internal/hardhat-network/jsonrpc/handler.ts +9 -1
- package/src/internal/hardhat-network/provider/modules/logger.ts +6 -801
- package/src/internal/hardhat-network/provider/node-types.ts +2 -89
- package/src/internal/hardhat-network/provider/output.ts +0 -352
- package/src/internal/hardhat-network/provider/provider.ts +501 -261
- package/src/internal/hardhat-network/provider/utils/convertToEdr.ts +232 -0
- package/src/internal/hardhat-network/provider/utils/getCurrentTimestamp.ts +0 -4
- package/src/internal/hardhat-network/provider/utils/makeCommon.ts +1 -12
- package/src/internal/hardhat-network/provider/utils/makeForkClient.ts +63 -24
- package/src/internal/hardhat-network/provider/utils/random.ts +8 -1
- package/src/internal/hardhat-network/provider/utils/reorgs-protection.ts +5 -5
- package/src/internal/hardhat-network/provider/vm/exit.ts +101 -0
- package/src/internal/hardhat-network/provider/vm/minimal-vm.ts +98 -0
- package/src/internal/hardhat-network/provider/vm/types.ts +32 -0
- package/src/internal/hardhat-network/stack-traces/consoleLogger.ts +40 -21
- package/src/internal/hardhat-network/stack-traces/contracts-identifier.ts +10 -12
- package/src/internal/hardhat-network/stack-traces/debug.ts +6 -6
- package/src/internal/hardhat-network/stack-traces/error-inferrer.ts +15 -8
- package/src/internal/hardhat-network/stack-traces/message-trace.ts +40 -4
- package/src/internal/hardhat-network/stack-traces/model.ts +61 -0
- package/src/internal/hardhat-network/stack-traces/opcodes.ts +4 -0
- package/src/internal/hardhat-network/stack-traces/solidity-errors.ts +2 -2
- package/src/internal/hardhat-network/stack-traces/solidityTracer.ts +6 -5
- package/src/internal/hardhat-network/stack-traces/vm-trace-decoder.ts +113 -4
- package/src/internal/hardhat-network/stack-traces/vm-tracer.ts +67 -95
- package/src/internal/util/date.ts +4 -0
- package/src/internal/util/hardforks.ts +52 -0
- package/src/internal/hardhat-network/provider/BlockchainBase.ts +0 -185
- package/src/internal/hardhat-network/provider/BlockchainData.ts +0 -261
- package/src/internal/hardhat-network/provider/HardhatBlockchain.ts +0 -140
- package/src/internal/hardhat-network/provider/PoolState.ts +0 -48
- package/src/internal/hardhat-network/provider/TransactionQueue.ts +0 -158
- package/src/internal/hardhat-network/provider/TxPool.ts +0 -715
- package/src/internal/hardhat-network/provider/ethereumjs-workarounds.ts +0 -21
- package/src/internal/hardhat-network/provider/filter.ts +0 -142
- package/src/internal/hardhat-network/provider/fork/ForkBlockchain.ts +0 -433
- package/src/internal/hardhat-network/provider/fork/ForkStateManager.ts +0 -480
- package/src/internal/hardhat-network/provider/fork/rpcToBlockData.ts +0 -35
- package/src/internal/hardhat-network/provider/fork/rpcToTxData.ts +0 -44
- package/src/internal/hardhat-network/provider/modules/base.ts +0 -156
- package/src/internal/hardhat-network/provider/modules/debug.ts +0 -104
- package/src/internal/hardhat-network/provider/modules/eth.ts +0 -1781
- package/src/internal/hardhat-network/provider/modules/evm.ts +0 -249
- package/src/internal/hardhat-network/provider/modules/hardhat.ts +0 -481
- package/src/internal/hardhat-network/provider/modules/net.ts +0 -60
- package/src/internal/hardhat-network/provider/modules/personal.ts +0 -40
- package/src/internal/hardhat-network/provider/modules/web3.ts +0 -49
- package/src/internal/hardhat-network/provider/node.ts +0 -2999
- package/src/internal/hardhat-network/provider/transactions/FakeSenderAccessListEIP2930Transaction.ts +0 -226
- package/src/internal/hardhat-network/provider/transactions/FakeSenderEIP1559Transaction.ts +0 -224
- package/src/internal/hardhat-network/provider/transactions/FakeSenderTransaction.ts +0 -216
- package/src/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.ts +0 -143
- package/src/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP2930Transaction.ts +0 -144
- package/src/internal/hardhat-network/provider/transactions/ReadOnlyValidTransaction.ts +0 -171
- package/src/internal/hardhat-network/provider/transactions/ReadOnlyValidUnknownTypeTransaction.ts +0 -169
- package/src/internal/hardhat-network/provider/types/HardhatBlockchainInterface.ts +0 -25
- package/src/internal/hardhat-network/provider/utils/makeFakeSignature.ts +0 -60
- package/src/internal/hardhat-network/provider/utils/makeStateTrie.ts +0 -29
- package/src/internal/hardhat-network/provider/utils/putGenesisBlock.ts +0 -61
- package/src/internal/hardhat-network/provider/utils/reorganizeTransactionsLists.ts +0 -45
- package/src/internal/hardhat-network/provider/utils/txMapToArray.ts +0 -7
- package/src/internal/hardhat-network/stack-traces/vm-debug-tracer.ts +0 -630
|
@@ -9,18 +9,6 @@ class HardhatBlockchain extends BlockchainBase_1.BlockchainBase {
|
|
|
9
9
|
super(common);
|
|
10
10
|
this._length = 0n;
|
|
11
11
|
}
|
|
12
|
-
shallowCopy() {
|
|
13
|
-
return this;
|
|
14
|
-
}
|
|
15
|
-
getIteratorHead(_name) {
|
|
16
|
-
throw new Error("Method not implemented.");
|
|
17
|
-
}
|
|
18
|
-
setIteratorHead(_tag, _headHash) {
|
|
19
|
-
throw new Error("Method not implemented.");
|
|
20
|
-
}
|
|
21
|
-
getCanonicalHeadBlock() {
|
|
22
|
-
throw new Error("Method not implemented.");
|
|
23
|
-
}
|
|
24
12
|
getLatestBlockNumber() {
|
|
25
13
|
return BigInt(this._length - 1n);
|
|
26
14
|
}
|
|
@@ -69,10 +57,10 @@ class HardhatBlockchain extends BlockchainBase_1.BlockchainBase {
|
|
|
69
57
|
if (BigInt(this._length) !== blockNumber) {
|
|
70
58
|
throw new Error(`Invalid block number ${blockNumber}. Expected ${this._length}.`);
|
|
71
59
|
}
|
|
72
|
-
if ((blockNumber === 0n && !
|
|
60
|
+
if ((blockNumber === 0n && !parentHash.equals((0, ethereumjs_util_1.zeros)(32))) ||
|
|
73
61
|
(blockNumber > 0 &&
|
|
74
62
|
parent !== undefined &&
|
|
75
|
-
!
|
|
63
|
+
!parentHash.equals(parent.hash()))) {
|
|
76
64
|
throw new Error("Invalid parent hash");
|
|
77
65
|
}
|
|
78
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HardhatBlockchain.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/HardhatBlockchain.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"HardhatBlockchain.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/HardhatBlockchain.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import { Common
|
|
2
|
+
import { Common } from "@nomicfoundation/ethereumjs-common";
|
|
3
3
|
import { TypedTransaction } from "@nomicfoundation/ethereumjs-tx";
|
|
4
|
+
import { StateManager } from "@nomicfoundation/ethereumjs-statemanager";
|
|
4
5
|
import { Address } from "@nomicfoundation/ethereumjs-util";
|
|
5
6
|
import { OrderedTransaction, SerializedTransaction } from "./PoolState";
|
|
6
7
|
export declare function serializeTransaction(tx: OrderedTransaction): SerializedTransaction;
|
|
@@ -12,7 +13,7 @@ export declare class TxPool {
|
|
|
12
13
|
private _nextSnapshotId;
|
|
13
14
|
private _nextOrderId;
|
|
14
15
|
private readonly _deserializeTransaction;
|
|
15
|
-
constructor(_stateManager:
|
|
16
|
+
constructor(_stateManager: StateManager, blockGasLimit: bigint, common: Common);
|
|
16
17
|
addTransaction(tx: TypedTransaction): Promise<void>;
|
|
17
18
|
/**
|
|
18
19
|
* Remove transaction with the given hash from the mempool. Returns true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TxPool.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/TxPool.ts"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"TxPool.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/TxPool.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAEL,gBAAgB,EACjB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AACxE,OAAO,EACL,OAAO,EAGR,MAAM,kCAAkC,CAAC;AAM1C,OAAO,EAIL,kBAAkB,EAGlB,qBAAqB,EACtB,MAAM,aAAa,CAAC;AAQrB,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,kBAAkB,GACrB,qBAAqB,CAYvB;AAED,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,qBAAqB,EACzB,MAAM,EAAE,MAAM,GACb,kBAAkB,CAwCpB;AAED,qBAAa,MAAM;IAWf,OAAO,CAAC,QAAQ,CAAC,aAAa;IAVhC,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,kBAAkB,CAAiD;IAC3E,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,YAAY,CAAK;IAEzB,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAEhB;gBAGL,aAAa,EAAE,YAAY,EAC5C,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM;IAQH,cAAc,CAAC,EAAE,EAAE,gBAAgB;IAgBhD;;;OAGG;IACI,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAiD1C,QAAQ,IAAI,MAAM;IAMlB,MAAM,CAAC,UAAU,EAAE,MAAM;IAUzB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;IASlE,sBAAsB,IAAI,OAAO;IAKjC,qBAAqB,IAAI,OAAO;IAKhC,OAAO,IAAI,OAAO;IAIlB,sBAAsB,IAAI,GAAG,CAAC,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAW3D,qBAAqB,IAAI,GAAG,CAAC,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAWjE;;;OAGG;IACU,mBAAmB,CAAC,cAAc,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAanE,gBAAgB,IAAI,MAAM;IAI1B,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAQjD;;OAEG;IACU,sBAAsB;IA+DnC,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,qBAAqB;IAU7B,OAAO,CAAC,SAAS;IAkBjB,OAAO,CAAC,sBAAsB;IA0B9B,OAAO,CAAC,qBAAqB;YAsBf,oBAAoB;IAyDlC,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,qBAAqB;IAU7B,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,qBAAqB;IAU7B,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,wBAAwB;IAOhC,OAAO,CAAC,UAAU;IAelB;;;OAGG;YACW,sBAAsB;IAOpC;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAezB;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAexB,OAAO,CAAC,UAAU;IA+DlB,OAAO,CAAC,kBAAkB;CAW3B"}
|
|
@@ -36,7 +36,7 @@ const reorganizeTransactionsLists_1 = require("./utils/reorganizeTransactionsLis
|
|
|
36
36
|
const FakeSenderEIP1559Transaction_1 = require("./transactions/FakeSenderEIP1559Transaction");
|
|
37
37
|
/* eslint-disable @nomicfoundation/hardhat-internal-rules/only-hardhat-error */
|
|
38
38
|
function serializeTransaction(tx) {
|
|
39
|
-
const rlpSerialization = (0, ethereumjs_util_1.
|
|
39
|
+
const rlpSerialization = (0, ethereumjs_util_1.bufferToHex)(tx.data.serialize());
|
|
40
40
|
const isFake = tx.data instanceof FakeSenderTransaction_1.FakeSenderTransaction ||
|
|
41
41
|
tx.data instanceof FakeSenderAccessListEIP2930Transaction_1.FakeSenderAccessListEIP2930Transaction ||
|
|
42
42
|
tx.data instanceof FakeSenderEIP1559Transaction_1.FakeSenderEIP1559Transaction;
|
|
@@ -54,7 +54,7 @@ function deserializeTransaction(tx, common) {
|
|
|
54
54
|
let data;
|
|
55
55
|
if (fakeFrom !== undefined) {
|
|
56
56
|
const sender = ethereumjs_util_1.Address.fromString(fakeFrom);
|
|
57
|
-
const serialization = (0, ethereumjs_util_1.
|
|
57
|
+
const serialization = (0, ethereumjs_util_1.toBuffer)(rlpSerialization);
|
|
58
58
|
if (tx.get("txType") === 1) {
|
|
59
59
|
data =
|
|
60
60
|
FakeSenderAccessListEIP2930Transaction_1.FakeSenderAccessListEIP2930Transaction.fromSenderAndRlpSerializedTx(sender, serialization, { common });
|
|
@@ -67,9 +67,9 @@ function deserializeTransaction(tx, common) {
|
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
else {
|
|
70
|
-
data = ethereumjs_tx_1.TransactionFactory.fromSerializedData((0, ethereumjs_util_1.
|
|
70
|
+
data = ethereumjs_tx_1.TransactionFactory.fromSerializedData((0, ethereumjs_util_1.toBuffer)(rlpSerialization), {
|
|
71
71
|
common,
|
|
72
|
-
|
|
72
|
+
disableMaxInitCodeSizeCheck: true,
|
|
73
73
|
});
|
|
74
74
|
}
|
|
75
75
|
return {
|
|
@@ -152,7 +152,7 @@ class TxPool {
|
|
|
152
152
|
this._removeSnapshotsAfter(snapshotId);
|
|
153
153
|
}
|
|
154
154
|
getTransactionByHash(hash) {
|
|
155
|
-
const tx = this._getTransactionsByHash().get((0, ethereumjs_util_1.
|
|
155
|
+
const tx = this._getTransactionsByHash().get((0, ethereumjs_util_1.bufferToHex)(hash));
|
|
156
156
|
if (tx !== undefined) {
|
|
157
157
|
return this._deserializeTransaction(tx);
|
|
158
158
|
}
|
|
@@ -211,8 +211,8 @@ class TxPool {
|
|
|
211
211
|
// update pending transactions
|
|
212
212
|
for (const [address, txs] of newPending) {
|
|
213
213
|
const senderAccount = await this._stateManager.getAccount(ethereumjs_util_1.Address.fromString(address));
|
|
214
|
-
const senderNonce = senderAccount
|
|
215
|
-
const senderBalance = senderAccount
|
|
214
|
+
const senderNonce = senderAccount.nonce;
|
|
215
|
+
const senderBalance = senderAccount.balance;
|
|
216
216
|
let moveToQueued = false;
|
|
217
217
|
for (const tx of txs) {
|
|
218
218
|
const deserializedTx = this._deserializeTransaction(tx);
|
|
@@ -238,8 +238,8 @@ class TxPool {
|
|
|
238
238
|
let newQueued = this._getQueued();
|
|
239
239
|
for (const [address, txs] of newQueued) {
|
|
240
240
|
const senderAccount = await this._stateManager.getAccount(ethereumjs_util_1.Address.fromString(address));
|
|
241
|
-
const senderNonce = senderAccount
|
|
242
|
-
const senderBalance = senderAccount
|
|
241
|
+
const senderNonce = senderAccount.nonce;
|
|
242
|
+
const senderBalance = senderAccount.balance;
|
|
243
243
|
for (const tx of txs) {
|
|
244
244
|
const deserializedTx = this._deserializeTransaction(tx);
|
|
245
245
|
const txNonce = deserializedTx.data.nonce;
|
|
@@ -290,7 +290,7 @@ class TxPool {
|
|
|
290
290
|
this._setPendingForAddress(hexSenderAddress, newPending);
|
|
291
291
|
this._setQueuedForAddress(hexSenderAddress, newQueued);
|
|
292
292
|
}
|
|
293
|
-
this._setTransactionByHash((0, ethereumjs_util_1.
|
|
293
|
+
this._setTransactionByHash((0, ethereumjs_util_1.bufferToHex)(tx.hash()), serializedTx);
|
|
294
294
|
}
|
|
295
295
|
_addQueuedTransaction(tx) {
|
|
296
296
|
const orderedTx = {
|
|
@@ -304,11 +304,11 @@ class TxPool {
|
|
|
304
304
|
if (!replaced) {
|
|
305
305
|
this._setQueuedForAddress(hexSenderAddress, accountTransactions.push(serializedTx));
|
|
306
306
|
}
|
|
307
|
-
this._setTransactionByHash((0, ethereumjs_util_1.
|
|
307
|
+
this._setTransactionByHash((0, ethereumjs_util_1.bufferToHex)(tx.hash()), serializedTx);
|
|
308
308
|
}
|
|
309
309
|
async _validateTransaction(tx, senderAddress, senderNonce) {
|
|
310
310
|
if (this._knownTransaction(tx)) {
|
|
311
|
-
throw new errors_1.InvalidInputError(`Known transaction: ${(0, ethereumjs_util_1.
|
|
311
|
+
throw new errors_1.InvalidInputError(`Known transaction: ${(0, ethereumjs_util_1.bufferToHex)(tx.hash())}`);
|
|
312
312
|
}
|
|
313
313
|
const txNonce = tx.nonce;
|
|
314
314
|
// Geth returns this error if trying to create a contract and no data is provided
|
|
@@ -316,7 +316,7 @@ class TxPool {
|
|
|
316
316
|
throw new errors_1.InvalidInputError("contract creation without any data provided");
|
|
317
317
|
}
|
|
318
318
|
const senderAccount = await this._stateManager.getAccount(senderAddress);
|
|
319
|
-
const senderBalance = senderAccount
|
|
319
|
+
const senderBalance = senderAccount.balance;
|
|
320
320
|
const maxFee = "gasPrice" in tx ? tx.gasPrice : tx.maxFeePerGas;
|
|
321
321
|
const txMaxUpfrontCost = tx.gasLimit * maxFee + tx.value;
|
|
322
322
|
if (txMaxUpfrontCost > senderBalance) {
|
|
@@ -342,7 +342,7 @@ class TxPool {
|
|
|
342
342
|
this._transactionExists(tx, this._getQueuedForAddress(senderAddress)));
|
|
343
343
|
}
|
|
344
344
|
_transactionExists(tx, txList) {
|
|
345
|
-
const existingTx = txList?.find((etx) =>
|
|
345
|
+
const existingTx = txList?.find((etx) => this._deserializeTransaction(etx).data.hash().equals(tx.hash()));
|
|
346
346
|
return existingTx !== undefined;
|
|
347
347
|
}
|
|
348
348
|
_getTransactionsByHash() {
|
|
@@ -379,7 +379,7 @@ class TxPool {
|
|
|
379
379
|
this._state = this._state.set("blockGasLimit", BigIntUtils.toHex(newLimit));
|
|
380
380
|
}
|
|
381
381
|
_deleteTransactionByHash(hash) {
|
|
382
|
-
this._state = this._state.set("hashToTransaction", this._getTransactionsByHash().delete((0, ethereumjs_util_1.
|
|
382
|
+
this._state = this._state.set("hashToTransaction", this._getTransactionsByHash().delete((0, ethereumjs_util_1.bufferToHex)(hash)));
|
|
383
383
|
}
|
|
384
384
|
_isTxValid(tx, txNonce, senderNonce, senderBalance) {
|
|
385
385
|
const txGasLimit = tx.data.gasLimit;
|
|
@@ -393,7 +393,7 @@ class TxPool {
|
|
|
393
393
|
*/
|
|
394
394
|
async _getNextConfirmedNonce(accountAddress) {
|
|
395
395
|
const account = await this._stateManager.getAccount(accountAddress);
|
|
396
|
-
return account
|
|
396
|
+
return account.nonce;
|
|
397
397
|
}
|
|
398
398
|
/**
|
|
399
399
|
* Checks if some pending tx with the same nonce as `newTx` exists.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TxPool.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/TxPool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TxPool.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/TxPool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const ethereumjs_tx_1 = require("@nomicfoundation/ethereumjs-tx");
|
|
4
|
-
const baseTransaction_1 = require("@nomicfoundation/ethereumjs-tx/dist/
|
|
4
|
+
const baseTransaction_1 = require("@nomicfoundation/ethereumjs-tx/dist/baseTransaction");
|
|
5
5
|
// This is a hack to prevent Block.fromBlockData from recreating our
|
|
6
6
|
// transactions and changing their types. Note fromBlockData is used
|
|
7
7
|
// by the BlockBuilder to update block it's building.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ethereumjs-workarounds.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/ethereumjs-workarounds.ts"],"names":[],"mappings":";;AAAA,kEAAoE;AACpE,
|
|
1
|
+
{"version":3,"file":"ethereumjs-workarounds.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/ethereumjs-workarounds.ts"],"names":[],"mappings":";;AAAA,kEAAoE;AACpE,yFAAsF;AAOtF,oEAAoE;AACpE,oEAAoE;AACpE,qDAAqD;AACrD,MAAM,kBAAkB,GAAG,kCAAkB,CAAC,UAAU,CAAC;AACxD,kCAA0B,CAAC,UAAU,GAAG,UACvC,MAAwC,EACxC,SAAqB;IAErB,IAAI,MAAM,YAAY,iCAAe,EAAE;QACrC,OAAO,MAAM,CAAC;KACf;IAED,OAAO,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;AAC1D,CAAC,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
1
2
|
import { Bloom } from "@nomicfoundation/ethereumjs-vm";
|
|
2
3
|
import { RpcLogOutput } from "./output";
|
|
3
4
|
export declare const LATEST_BLOCK = -1n;
|
|
@@ -9,8 +10,8 @@ export declare enum Type {
|
|
|
9
10
|
export interface FilterCriteria {
|
|
10
11
|
fromBlock: bigint;
|
|
11
12
|
toBlock: bigint;
|
|
12
|
-
addresses:
|
|
13
|
-
normalizedTopics: Array<Array<
|
|
13
|
+
addresses: Buffer[];
|
|
14
|
+
normalizedTopics: Array<Array<Buffer | null> | null>;
|
|
14
15
|
}
|
|
15
16
|
export interface Filter {
|
|
16
17
|
id: bigint;
|
|
@@ -21,8 +22,8 @@ export interface Filter {
|
|
|
21
22
|
logs: RpcLogOutput[];
|
|
22
23
|
subscription: boolean;
|
|
23
24
|
}
|
|
24
|
-
export declare function bloomFilter(bloom: Bloom, addresses:
|
|
25
|
+
export declare function bloomFilter(bloom: Bloom, addresses: Buffer[], normalizedTopics: Array<Array<Buffer | null> | null>): boolean;
|
|
25
26
|
export declare function filterLogs(logs: RpcLogOutput[], criteria: FilterCriteria): RpcLogOutput[];
|
|
26
|
-
export declare function includes(addresses:
|
|
27
|
-
export declare function topicMatched(normalizedTopics: Array<Array<
|
|
27
|
+
export declare function includes(addresses: Buffer[], a: Buffer): boolean;
|
|
28
|
+
export declare function topicMatched(normalizedTopics: Array<Array<Buffer | null> | null>, logTopics: string[]): boolean;
|
|
28
29
|
//# sourceMappingURL=filter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/filter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/filter.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,eAAO,MAAM,YAAY,MAAM,CAAC;AAEhC,oBAAY,IAAI;IACd,iBAAiB,IAAI;IACrB,gCAAgC,IAAI;IACpC,kBAAkB,IAAI;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,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,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,QAAQ,EAAE,IAAI,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,MAAM,EAAE,EACnB,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GACnD,OAAO,CAiCT;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,YAAY,EAAE,EACpB,QAAQ,EAAE,cAAc,GACvB,YAAY,EAAE,CA2BhB;AAED,wBAAgB,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAQhE;AAED,wBAAgB,YAAY,CAC1B,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,EACpD,SAAS,EAAE,MAAM,EAAE,GAClB,OAAO,CAwBT"}
|
|
@@ -51,7 +51,7 @@ function filterLogs(logs, criteria) {
|
|
|
51
51
|
continue;
|
|
52
52
|
}
|
|
53
53
|
if (criteria.addresses.length !== 0 &&
|
|
54
|
-
!includes(criteria.addresses, (0, ethereumjs_util_1.
|
|
54
|
+
!includes(criteria.addresses, (0, ethereumjs_util_1.toBuffer)(log.address))) {
|
|
55
55
|
continue;
|
|
56
56
|
}
|
|
57
57
|
if (!topicMatched(criteria.normalizedTopics, log.topics)) {
|
|
@@ -82,7 +82,7 @@ function topicMatched(normalizedTopics, logTopics) {
|
|
|
82
82
|
}
|
|
83
83
|
let match = false;
|
|
84
84
|
for (const topic of sub) {
|
|
85
|
-
if (topic === null || logTopics[i] === (0, ethereumjs_util_1.
|
|
85
|
+
if (topic === null || logTopics[i] === (0, ethereumjs_util_1.bufferToHex)(topic)) {
|
|
86
86
|
match = true;
|
|
87
87
|
break;
|
|
88
88
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/filter.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/filter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { Block } from "@nomicfoundation/ethereumjs-block";
|
|
3
|
-
import { BlockchainInterface, BlockchainEvents } from "@nomicfoundation/ethereumjs-blockchain";
|
|
4
3
|
import { Common } from "@nomicfoundation/ethereumjs-common";
|
|
5
4
|
import { TypedTransaction } from "@nomicfoundation/ethereumjs-tx";
|
|
6
|
-
import { AsyncEventEmitter } from "@nomicfoundation/ethereumjs-util";
|
|
7
5
|
import { JsonRpcClient } from "../../jsonrpc/client";
|
|
8
6
|
import { BlockchainBase } from "../BlockchainBase";
|
|
9
7
|
import { FilterParams } from "../node-types";
|
|
@@ -13,12 +11,7 @@ export declare class ForkBlockchain extends BlockchainBase implements HardhatBlo
|
|
|
13
11
|
private _jsonRpcClient;
|
|
14
12
|
private _forkBlockNumber;
|
|
15
13
|
private _latestBlockNumber;
|
|
16
|
-
events?: AsyncEventEmitter<BlockchainEvents> | undefined;
|
|
17
14
|
constructor(_jsonRpcClient: JsonRpcClient, _forkBlockNumber: bigint, common: Common);
|
|
18
|
-
getIteratorHead(_name?: string | undefined): Promise<Block>;
|
|
19
|
-
setIteratorHead(_tag: string, _headHash: Uint8Array): Promise<void>;
|
|
20
|
-
getCanonicalHeadBlock(): Promise<Block>;
|
|
21
|
-
shallowCopy(): BlockchainInterface;
|
|
22
15
|
getLatestBlockNumber(): bigint;
|
|
23
16
|
getBlock(blockHashOrNumber: Buffer | bigint): Promise<Block>;
|
|
24
17
|
addBlock(block: Block): Promise<Block>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ForkBlockchain.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/fork/ForkBlockchain.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAC1D,OAAO,
|
|
1
|
+
{"version":3,"file":"ForkBlockchain.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/fork/ForkBlockchain.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAQlE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAEL,YAAY,EACZ,gBAAgB,EAIjB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AASjF,qBAAa,cACX,SAAQ,cACR,YAAW,0BAA0B;IAKnC,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,gBAAgB;IAJ1B,OAAO,CAAC,kBAAkB,CAAyB;gBAGzC,cAAc,EAAE,aAAa,EAC7B,gBAAgB,EAAE,MAAM,EAChC,MAAM,EAAE,MAAM;IAKT,oBAAoB,IAAI,MAAM;IAIxB,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAwB5D,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IA0B5C,aAAa,CAClB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,sBAAsB,EAAE,MAAM,EAC9B,4BAA4B,EAAE,MAAM,EACpC,0BAA0B,EAAE,MAAM,GAAG,SAAS;IAYzC,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAe/B,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgBtD,cAAc,CACzB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAW3B,yBAAyB,CACpC,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAeX,qBAAqB,CAChC,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAgB5B,kBAAkB;IAIZ,OAAO,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;YAyB3D,eAAe;YASf,iBAAiB;YAiBjB,mBAAmB;IAkFjC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAQ9C,OAAO,CAAC,yBAAyB;YAuCnB,qBAAqB;CAmBpC"}
|
|
@@ -20,18 +20,6 @@ class ForkBlockchain extends BlockchainBase_1.BlockchainBase {
|
|
|
20
20
|
this._forkBlockNumber = _forkBlockNumber;
|
|
21
21
|
this._latestBlockNumber = this._forkBlockNumber;
|
|
22
22
|
}
|
|
23
|
-
getIteratorHead(_name) {
|
|
24
|
-
throw new Error("Method not implemented.");
|
|
25
|
-
}
|
|
26
|
-
setIteratorHead(_tag, _headHash) {
|
|
27
|
-
throw new Error("Method not implemented.");
|
|
28
|
-
}
|
|
29
|
-
getCanonicalHeadBlock() {
|
|
30
|
-
throw new Error("Method not implemented.");
|
|
31
|
-
}
|
|
32
|
-
shallowCopy() {
|
|
33
|
-
return this;
|
|
34
|
-
}
|
|
35
23
|
getLatestBlockNumber() {
|
|
36
24
|
return this._latestBlockNumber;
|
|
37
25
|
}
|
|
@@ -64,7 +52,7 @@ class ForkBlockchain extends BlockchainBase_1.BlockchainBase {
|
|
|
64
52
|
// Thus, we avoid this check for the first block after the fork.
|
|
65
53
|
if (blockNumber > this._forkBlockNumber + 1n) {
|
|
66
54
|
const parent = await this.getLatestBlock();
|
|
67
|
-
if (!
|
|
55
|
+
if (!block.header.parentHash.equals(parent.hash())) {
|
|
68
56
|
throw new Error("Invalid parent hash");
|
|
69
57
|
}
|
|
70
58
|
}
|
|
@@ -80,8 +68,7 @@ class ForkBlockchain extends BlockchainBase_1.BlockchainBase {
|
|
|
80
68
|
deleteLaterBlocks(block) {
|
|
81
69
|
const blockNumber = block.header.number;
|
|
82
70
|
const savedBlock = this._data.getBlockByNumber(blockNumber);
|
|
83
|
-
if (savedBlock === undefined ||
|
|
84
|
-
!(0, ethereumjs_util_1.equalsBytes)(savedBlock.hash(), block.hash())) {
|
|
71
|
+
if (savedBlock === undefined || !savedBlock.hash().equals(block.hash())) {
|
|
85
72
|
throw new Error("Invalid block");
|
|
86
73
|
}
|
|
87
74
|
const nextBlockNumber = blockNumber + 1n;
|
|
@@ -198,14 +185,10 @@ class ForkBlockchain extends BlockchainBase_1.BlockchainBase {
|
|
|
198
185
|
common.setHardfork("berlin");
|
|
199
186
|
}
|
|
200
187
|
else if (rpcBlock.withdrawals === undefined) {
|
|
201
|
-
|
|
202
|
-
common.setHardfork("mergeForkIdTransition");
|
|
203
|
-
}
|
|
204
|
-
else if (rpcBlock.parentBeaconBlockRoot === undefined) {
|
|
205
|
-
common.setHardfork("shanghai");
|
|
188
|
+
common.setHardfork("merge");
|
|
206
189
|
}
|
|
207
190
|
else {
|
|
208
|
-
common.setHardfork("
|
|
191
|
+
common.setHardfork("shanghai");
|
|
209
192
|
}
|
|
210
193
|
// we don't include the transactions to add our own custom tx objects,
|
|
211
194
|
// otherwise they are recreated with upstream classes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ForkBlockchain.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/fork/ForkBlockchain.ts"],"names":[],"mappings":";;;AAAA,wEAA0D;
|
|
1
|
+
{"version":3,"file":"ForkBlockchain.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/fork/ForkBlockchain.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,54 +1,48 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import {
|
|
2
|
+
import { StateManager } from "@nomicfoundation/ethereumjs-statemanager";
|
|
3
3
|
import { Account, Address } from "@nomicfoundation/ethereumjs-util";
|
|
4
4
|
import { JsonRpcClient } from "../../jsonrpc/client";
|
|
5
5
|
import { GenesisAccount } from "../node-types";
|
|
6
|
-
export declare
|
|
6
|
+
export declare const randomHashSeed: () => Buffer;
|
|
7
|
+
export declare class ForkStateManager implements StateManager {
|
|
7
8
|
private readonly _jsonRpcClient;
|
|
8
9
|
private readonly _forkBlockNumber;
|
|
10
|
+
addresses: Set<string>;
|
|
9
11
|
private _state;
|
|
10
|
-
private _initialStateRoot;
|
|
11
12
|
private _stateRoot;
|
|
12
13
|
private _stateRootToState;
|
|
13
14
|
private _originalStorageCache;
|
|
14
15
|
private _stateCheckpoints;
|
|
15
16
|
private _contextBlockNumber;
|
|
16
17
|
private _contextChanged;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
clear(): void;
|
|
20
|
-
};
|
|
21
|
-
constructor(_jsonRpcClient: JsonRpcClient, _forkBlockNumber: bigint);
|
|
22
|
-
dumpStorageRange(_address: Address, _startKey: bigint, _limit: number): Promise<StorageRange>;
|
|
23
|
-
getProof(_address: Address, _storageSlots?: Uint8Array[] | undefined): Promise<Proof>;
|
|
24
|
-
shallowCopy(_downlevelCaches?: boolean | undefined): EVMStateManagerInterface;
|
|
25
|
-
initializeGenesisAccounts(genesisAccounts: GenesisAccount[]): Promise<void>;
|
|
18
|
+
constructor(_jsonRpcClient: JsonRpcClient, _forkBlockNumber: bigint, stateRoot?: string);
|
|
19
|
+
static withGenesisAccounts(jsonRpcClient: JsonRpcClient, forkBlockNumber: bigint, genesisAccounts: GenesisAccount[]): Promise<ForkStateManager>;
|
|
26
20
|
copy(): ForkStateManager;
|
|
27
21
|
getAccount(address: Address): Promise<Account>;
|
|
28
22
|
putAccount(address: Address, account: Account): Promise<void>;
|
|
29
23
|
touchAccount(_address: Address): void;
|
|
30
24
|
putContractCode(address: Address, value: Buffer): Promise<void>;
|
|
31
|
-
getContractCode(address: Address): Promise<
|
|
32
|
-
getContractStorage(address: Address, key:
|
|
25
|
+
getContractCode(address: Address): Promise<Buffer>;
|
|
26
|
+
getContractStorage(address: Address, key: Buffer): Promise<Buffer>;
|
|
33
27
|
putContractStorage(address: Address, key: Buffer, value: Buffer): Promise<void>;
|
|
34
28
|
clearContractStorage(address: Address): Promise<void>;
|
|
35
29
|
checkpoint(): Promise<void>;
|
|
36
30
|
commit(): Promise<void>;
|
|
37
31
|
revert(): Promise<void>;
|
|
38
|
-
getStateRoot(): Promise<
|
|
39
|
-
setStateRoot(stateRoot:
|
|
32
|
+
getStateRoot(): Promise<Buffer>;
|
|
33
|
+
setStateRoot(stateRoot: Buffer): Promise<void>;
|
|
40
34
|
dumpStorage(_address: Address): Promise<Record<string, string>>;
|
|
41
35
|
hasGenesisState(): Promise<boolean>;
|
|
42
36
|
generateCanonicalGenesis(): Promise<void>;
|
|
43
37
|
generateGenesis(_initState: any): Promise<void>;
|
|
44
38
|
accountIsEmpty(address: Address): Promise<boolean>;
|
|
45
39
|
cleanupTouchedAccounts(): Promise<void>;
|
|
46
|
-
setBlockContext(stateRoot:
|
|
47
|
-
restoreForkBlockContext(stateRoot:
|
|
40
|
+
setBlockContext(stateRoot: Buffer, blockNumber: bigint, irregularState?: Buffer): void;
|
|
41
|
+
restoreForkBlockContext(stateRoot: Buffer): void;
|
|
48
42
|
accountExists(_address: Address): never;
|
|
49
43
|
deleteAccount(address: Address): Promise<void>;
|
|
50
44
|
clearOriginalStorageCache(): void;
|
|
51
|
-
getOriginalContractStorage(address: Address, key:
|
|
45
|
+
getOriginalContractStorage(address: Address, key: Buffer): Promise<Buffer>;
|
|
52
46
|
private _putAccount;
|
|
53
47
|
private _setStateRoot;
|
|
54
48
|
hasStateRoot(root: Buffer): Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ForkStateManager.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/fork/ForkStateManager.ts"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"ForkStateManager.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/fork/ForkStateManager.ts"],"names":[],"mappings":"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"}
|