hardhat 2.20.0 → 2.21.0-dev.0

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 (271) hide show
  1. package/internal/core/jsonrpc/types/input/blockTag.d.ts +3 -3
  2. package/internal/core/jsonrpc/types/input/filterRequest.d.ts +6 -6
  3. package/internal/core/providers/construction.d.ts.map +1 -1
  4. package/internal/core/providers/construction.js +28 -4
  5. package/internal/core/providers/construction.js.map +1 -1
  6. package/internal/core/providers/http.d.ts +2 -0
  7. package/internal/core/providers/http.d.ts.map +1 -1
  8. package/internal/core/providers/http.js +2 -1
  9. package/internal/core/providers/http.js.map +1 -1
  10. package/internal/core/runtime-environment.d.ts.map +1 -1
  11. package/internal/core/runtime-environment.js.map +1 -1
  12. package/internal/hardhat-network/jsonrpc/client.d.ts +0 -2
  13. package/internal/hardhat-network/jsonrpc/client.d.ts.map +1 -1
  14. package/internal/hardhat-network/jsonrpc/client.js +0 -16
  15. package/internal/hardhat-network/jsonrpc/client.js.map +1 -1
  16. package/internal/hardhat-network/jsonrpc/handler.js +9 -1
  17. package/internal/hardhat-network/jsonrpc/handler.js.map +1 -1
  18. package/internal/hardhat-network/provider/BlockchainData.d.ts +5 -5
  19. package/internal/hardhat-network/provider/BlockchainData.d.ts.map +1 -1
  20. package/internal/hardhat-network/provider/BlockchainData.js +10 -10
  21. package/internal/hardhat-network/provider/BlockchainData.js.map +1 -1
  22. package/internal/hardhat-network/provider/HardhatBlockchain.d.ts +0 -7
  23. package/internal/hardhat-network/provider/HardhatBlockchain.d.ts.map +1 -1
  24. package/internal/hardhat-network/provider/HardhatBlockchain.js +2 -14
  25. package/internal/hardhat-network/provider/HardhatBlockchain.js.map +1 -1
  26. package/internal/hardhat-network/provider/TxPool.d.ts +3 -2
  27. package/internal/hardhat-network/provider/TxPool.d.ts.map +1 -1
  28. package/internal/hardhat-network/provider/TxPool.js +16 -16
  29. package/internal/hardhat-network/provider/TxPool.js.map +1 -1
  30. package/internal/hardhat-network/provider/ethereumjs-workarounds.js +1 -1
  31. package/internal/hardhat-network/provider/ethereumjs-workarounds.js.map +1 -1
  32. package/internal/hardhat-network/provider/filter.d.ts +6 -5
  33. package/internal/hardhat-network/provider/filter.d.ts.map +1 -1
  34. package/internal/hardhat-network/provider/filter.js +2 -2
  35. package/internal/hardhat-network/provider/filter.js.map +1 -1
  36. package/internal/hardhat-network/provider/fork/ForkBlockchain.d.ts +0 -7
  37. package/internal/hardhat-network/provider/fork/ForkBlockchain.d.ts.map +1 -1
  38. package/internal/hardhat-network/provider/fork/ForkBlockchain.js +4 -21
  39. package/internal/hardhat-network/provider/fork/ForkBlockchain.js.map +1 -1
  40. package/internal/hardhat-network/provider/fork/ForkStateManager.d.ts +13 -19
  41. package/internal/hardhat-network/provider/fork/ForkStateManager.d.ts.map +1 -1
  42. package/internal/hardhat-network/provider/fork/ForkStateManager.js +61 -59
  43. package/internal/hardhat-network/provider/fork/ForkStateManager.js.map +1 -1
  44. package/internal/hardhat-network/provider/fork/rpcToBlockData.d.ts.map +1 -1
  45. package/internal/hardhat-network/provider/fork/rpcToBlockData.js +0 -3
  46. package/internal/hardhat-network/provider/fork/rpcToBlockData.js.map +1 -1
  47. package/internal/hardhat-network/provider/fork/rpcToTxData.d.ts +2 -2
  48. package/internal/hardhat-network/provider/fork/rpcToTxData.d.ts.map +1 -1
  49. package/internal/hardhat-network/provider/fork/rpcToTxData.js +1 -1
  50. package/internal/hardhat-network/provider/fork/rpcToTxData.js.map +1 -1
  51. package/internal/hardhat-network/provider/modules/base.js +4 -4
  52. package/internal/hardhat-network/provider/modules/base.js.map +1 -1
  53. package/internal/hardhat-network/provider/modules/eth.d.ts.map +1 -1
  54. package/internal/hardhat-network/provider/modules/eth.js +9 -16
  55. package/internal/hardhat-network/provider/modules/eth.js.map +1 -1
  56. package/internal/hardhat-network/provider/modules/logger.d.ts +6 -84
  57. package/internal/hardhat-network/provider/modules/logger.d.ts.map +1 -1
  58. package/internal/hardhat-network/provider/modules/logger.js +3 -530
  59. package/internal/hardhat-network/provider/modules/logger.js.map +1 -1
  60. package/internal/hardhat-network/provider/node-types.d.ts +2 -65
  61. package/internal/hardhat-network/provider/node-types.d.ts.map +1 -1
  62. package/internal/hardhat-network/provider/node-types.js +0 -5
  63. package/internal/hardhat-network/provider/node-types.js.map +1 -1
  64. package/internal/hardhat-network/provider/node.d.ts +2 -6
  65. package/internal/hardhat-network/provider/node.d.ts.map +1 -1
  66. package/internal/hardhat-network/provider/node.js +79 -148
  67. package/internal/hardhat-network/provider/node.js.map +1 -1
  68. package/internal/hardhat-network/provider/output.d.ts +0 -14
  69. package/internal/hardhat-network/provider/output.d.ts.map +1 -1
  70. package/internal/hardhat-network/provider/output.js +0 -264
  71. package/internal/hardhat-network/provider/output.js.map +1 -1
  72. package/internal/hardhat-network/provider/provider.d.ts +26 -25
  73. package/internal/hardhat-network/provider/provider.d.ts.map +1 -1
  74. package/internal/hardhat-network/provider/provider.js +342 -186
  75. package/internal/hardhat-network/provider/provider.js.map +1 -1
  76. package/internal/hardhat-network/provider/transactions/FakeSenderAccessListEIP2930Transaction.d.ts +10 -8
  77. package/internal/hardhat-network/provider/transactions/FakeSenderAccessListEIP2930Transaction.d.ts.map +1 -1
  78. package/internal/hardhat-network/provider/transactions/FakeSenderAccessListEIP2930Transaction.js +9 -9
  79. package/internal/hardhat-network/provider/transactions/FakeSenderAccessListEIP2930Transaction.js.map +1 -1
  80. package/internal/hardhat-network/provider/transactions/FakeSenderEIP1559Transaction.d.ts +10 -8
  81. package/internal/hardhat-network/provider/transactions/FakeSenderEIP1559Transaction.d.ts.map +1 -1
  82. package/internal/hardhat-network/provider/transactions/FakeSenderEIP1559Transaction.js +9 -9
  83. package/internal/hardhat-network/provider/transactions/FakeSenderEIP1559Transaction.js.map +1 -1
  84. package/internal/hardhat-network/provider/transactions/FakeSenderTransaction.d.ts +10 -9
  85. package/internal/hardhat-network/provider/transactions/FakeSenderTransaction.d.ts.map +1 -1
  86. package/internal/hardhat-network/provider/transactions/FakeSenderTransaction.js +7 -6
  87. package/internal/hardhat-network/provider/transactions/FakeSenderTransaction.js.map +1 -1
  88. package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.d.ts +6 -5
  89. package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.d.ts.map +1 -1
  90. package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.js +1 -1
  91. package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.js.map +1 -1
  92. package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP2930Transaction.d.ts +5 -4
  93. package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP2930Transaction.d.ts.map +1 -1
  94. package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP2930Transaction.js +1 -1
  95. package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP2930Transaction.js.map +1 -1
  96. package/internal/hardhat-network/provider/transactions/ReadOnlyValidTransaction.d.ts +8 -7
  97. package/internal/hardhat-network/provider/transactions/ReadOnlyValidTransaction.d.ts.map +1 -1
  98. package/internal/hardhat-network/provider/transactions/ReadOnlyValidTransaction.js +2 -2
  99. package/internal/hardhat-network/provider/transactions/ReadOnlyValidTransaction.js.map +1 -1
  100. package/internal/hardhat-network/provider/transactions/ReadOnlyValidUnknownTypeTransaction.d.ts +8 -7
  101. package/internal/hardhat-network/provider/transactions/ReadOnlyValidUnknownTypeTransaction.d.ts.map +1 -1
  102. package/internal/hardhat-network/provider/transactions/ReadOnlyValidUnknownTypeTransaction.js +2 -2
  103. package/internal/hardhat-network/provider/transactions/ReadOnlyValidUnknownTypeTransaction.js.map +1 -1
  104. package/internal/hardhat-network/provider/types/HardhatBlockchainInterface.d.ts +5 -4
  105. package/internal/hardhat-network/provider/types/HardhatBlockchainInterface.d.ts.map +1 -1
  106. package/internal/hardhat-network/provider/utils/convertToEdr.d.ts +14 -0
  107. package/internal/hardhat-network/provider/utils/convertToEdr.d.ts.map +1 -0
  108. package/internal/hardhat-network/provider/utils/convertToEdr.js +191 -0
  109. package/internal/hardhat-network/provider/utils/convertToEdr.js.map +1 -0
  110. package/internal/hardhat-network/provider/utils/getCurrentTimestamp.d.ts +0 -1
  111. package/internal/hardhat-network/provider/utils/getCurrentTimestamp.d.ts.map +1 -1
  112. package/internal/hardhat-network/provider/utils/getCurrentTimestamp.js +1 -5
  113. package/internal/hardhat-network/provider/utils/getCurrentTimestamp.js.map +1 -1
  114. package/internal/hardhat-network/provider/utils/makeCommon.d.ts +1 -1
  115. package/internal/hardhat-network/provider/utils/makeCommon.d.ts.map +1 -1
  116. package/internal/hardhat-network/provider/utils/makeCommon.js +1 -3
  117. package/internal/hardhat-network/provider/utils/makeCommon.js.map +1 -1
  118. package/internal/hardhat-network/provider/utils/makeFakeSignature.d.ts +2 -2
  119. package/internal/hardhat-network/provider/utils/makeFakeSignature.d.ts.map +1 -1
  120. package/internal/hardhat-network/provider/utils/makeFakeSignature.js +1 -15
  121. package/internal/hardhat-network/provider/utils/makeFakeSignature.js.map +1 -1
  122. package/internal/hardhat-network/provider/utils/makeForkClient.d.ts +10 -1
  123. package/internal/hardhat-network/provider/utils/makeForkClient.d.ts.map +1 -1
  124. package/internal/hardhat-network/provider/utils/makeForkClient.js +38 -18
  125. package/internal/hardhat-network/provider/utils/makeForkClient.js.map +1 -1
  126. package/internal/hardhat-network/provider/utils/makeStateTrie.js +2 -2
  127. package/internal/hardhat-network/provider/utils/makeStateTrie.js.map +1 -1
  128. package/internal/hardhat-network/provider/utils/putGenesisBlock.d.ts +3 -1
  129. package/internal/hardhat-network/provider/utils/putGenesisBlock.d.ts.map +1 -1
  130. package/internal/hardhat-network/provider/utils/putGenesisBlock.js +2 -6
  131. package/internal/hardhat-network/provider/utils/putGenesisBlock.js.map +1 -1
  132. package/internal/hardhat-network/provider/utils/random.d.ts +1 -0
  133. package/internal/hardhat-network/provider/utils/random.d.ts.map +1 -1
  134. package/internal/hardhat-network/provider/utils/random.js +7 -1
  135. package/internal/hardhat-network/provider/utils/random.js.map +1 -1
  136. package/internal/hardhat-network/provider/utils/reorgs-protection.d.ts +1 -1
  137. package/internal/hardhat-network/provider/utils/reorgs-protection.d.ts.map +1 -1
  138. package/internal/hardhat-network/provider/utils/reorgs-protection.js +5 -5
  139. package/internal/hardhat-network/provider/utils/reorgs-protection.js.map +1 -1
  140. package/internal/hardhat-network/provider/vm/exit.d.ts +22 -0
  141. package/internal/hardhat-network/provider/vm/exit.d.ts.map +1 -0
  142. package/internal/hardhat-network/provider/vm/exit.js +93 -0
  143. package/internal/hardhat-network/provider/vm/exit.js.map +1 -0
  144. package/internal/hardhat-network/provider/vm/minimal-vm.d.ts +29 -0
  145. package/internal/hardhat-network/provider/vm/minimal-vm.d.ts.map +1 -0
  146. package/internal/hardhat-network/provider/vm/minimal-vm.js +46 -0
  147. package/internal/hardhat-network/provider/vm/minimal-vm.js.map +1 -0
  148. package/internal/hardhat-network/provider/vm/proxy-vm.d.ts +36 -0
  149. package/internal/hardhat-network/provider/vm/proxy-vm.d.ts.map +1 -0
  150. package/internal/hardhat-network/provider/vm/proxy-vm.js +73 -0
  151. package/internal/hardhat-network/provider/vm/proxy-vm.js.map +1 -0
  152. package/internal/hardhat-network/provider/vm/types.d.ts +27 -0
  153. package/internal/hardhat-network/provider/vm/types.d.ts.map +1 -0
  154. package/internal/hardhat-network/provider/vm/types.js +3 -0
  155. package/internal/hardhat-network/provider/vm/types.js.map +1 -0
  156. package/internal/hardhat-network/stack-traces/consoleLogger.d.ts +6 -0
  157. package/internal/hardhat-network/stack-traces/consoleLogger.d.ts.map +1 -1
  158. package/internal/hardhat-network/stack-traces/consoleLogger.js +33 -16
  159. package/internal/hardhat-network/stack-traces/consoleLogger.js.map +1 -1
  160. package/internal/hardhat-network/stack-traces/contracts-identifier.d.ts +1 -2
  161. package/internal/hardhat-network/stack-traces/contracts-identifier.d.ts.map +1 -1
  162. package/internal/hardhat-network/stack-traces/contracts-identifier.js +6 -7
  163. package/internal/hardhat-network/stack-traces/contracts-identifier.js.map +1 -1
  164. package/internal/hardhat-network/stack-traces/debug.js +6 -6
  165. package/internal/hardhat-network/stack-traces/debug.js.map +1 -1
  166. package/internal/hardhat-network/stack-traces/error-inferrer.d.ts.map +1 -1
  167. package/internal/hardhat-network/stack-traces/error-inferrer.js +13 -7
  168. package/internal/hardhat-network/stack-traces/error-inferrer.js.map +1 -1
  169. package/internal/hardhat-network/stack-traces/message-trace.d.ts +8 -3
  170. package/internal/hardhat-network/stack-traces/message-trace.d.ts.map +1 -1
  171. package/internal/hardhat-network/stack-traces/message-trace.js +22 -1
  172. package/internal/hardhat-network/stack-traces/message-trace.js.map +1 -1
  173. package/internal/hardhat-network/stack-traces/model.d.ts +8 -0
  174. package/internal/hardhat-network/stack-traces/model.d.ts.map +1 -1
  175. package/internal/hardhat-network/stack-traces/model.js +52 -0
  176. package/internal/hardhat-network/stack-traces/model.js.map +1 -1
  177. package/internal/hardhat-network/stack-traces/opcodes.d.ts +1 -0
  178. package/internal/hardhat-network/stack-traces/opcodes.d.ts.map +1 -1
  179. package/internal/hardhat-network/stack-traces/opcodes.js +5 -1
  180. package/internal/hardhat-network/stack-traces/opcodes.js.map +1 -1
  181. package/internal/hardhat-network/stack-traces/solidity-errors.js +2 -2
  182. package/internal/hardhat-network/stack-traces/solidity-errors.js.map +1 -1
  183. package/internal/hardhat-network/stack-traces/solidityTracer.d.ts.map +1 -1
  184. package/internal/hardhat-network/stack-traces/solidityTracer.js +5 -5
  185. package/internal/hardhat-network/stack-traces/solidityTracer.js.map +1 -1
  186. package/internal/hardhat-network/stack-traces/vm-debug-tracer.d.ts.map +1 -1
  187. package/internal/hardhat-network/stack-traces/vm-debug-tracer.js +28 -34
  188. package/internal/hardhat-network/stack-traces/vm-debug-tracer.js.map +1 -1
  189. package/internal/hardhat-network/stack-traces/vm-trace-decoder.d.ts +7 -0
  190. package/internal/hardhat-network/stack-traces/vm-trace-decoder.d.ts.map +1 -1
  191. package/internal/hardhat-network/stack-traces/vm-trace-decoder.js +69 -2
  192. package/internal/hardhat-network/stack-traces/vm-trace-decoder.js.map +1 -1
  193. package/internal/hardhat-network/stack-traces/vm-tracer.d.ts +7 -12
  194. package/internal/hardhat-network/stack-traces/vm-tracer.d.ts.map +1 -1
  195. package/internal/hardhat-network/stack-traces/vm-tracer.js +46 -65
  196. package/internal/hardhat-network/stack-traces/vm-tracer.js.map +1 -1
  197. package/internal/util/date.d.ts +1 -0
  198. package/internal/util/date.d.ts.map +1 -1
  199. package/internal/util/date.js +5 -1
  200. package/internal/util/date.js.map +1 -1
  201. package/internal/util/hardforks.d.ts +2 -0
  202. package/internal/util/hardforks.d.ts.map +1 -1
  203. package/internal/util/hardforks.js +27 -1
  204. package/internal/util/hardforks.js.map +1 -1
  205. package/package.json +18 -16
  206. package/src/internal/core/providers/construction.ts +7 -9
  207. package/src/internal/core/providers/http.ts +3 -1
  208. package/src/internal/core/runtime-environment.ts +2 -1
  209. package/src/internal/hardhat-network/jsonrpc/client.ts +1 -28
  210. package/src/internal/hardhat-network/jsonrpc/handler.ts +9 -1
  211. package/src/internal/hardhat-network/provider/modules/logger.ts +6 -801
  212. package/src/internal/hardhat-network/provider/node-types.ts +2 -89
  213. package/src/internal/hardhat-network/provider/output.ts +0 -352
  214. package/src/internal/hardhat-network/provider/provider.ts +482 -263
  215. package/src/internal/hardhat-network/provider/utils/convertToEdr.ts +228 -0
  216. package/src/internal/hardhat-network/provider/utils/getCurrentTimestamp.ts +0 -4
  217. package/src/internal/hardhat-network/provider/utils/makeCommon.ts +1 -12
  218. package/src/internal/hardhat-network/provider/utils/makeForkClient.ts +63 -24
  219. package/src/internal/hardhat-network/provider/utils/random.ts +8 -1
  220. package/src/internal/hardhat-network/provider/utils/reorgs-protection.ts +5 -5
  221. package/src/internal/hardhat-network/provider/vm/exit.ts +101 -0
  222. package/src/internal/hardhat-network/provider/vm/minimal-vm.ts +101 -0
  223. package/src/internal/hardhat-network/provider/vm/types.ts +31 -0
  224. package/src/internal/hardhat-network/stack-traces/consoleLogger.ts +40 -21
  225. package/src/internal/hardhat-network/stack-traces/contracts-identifier.ts +10 -12
  226. package/src/internal/hardhat-network/stack-traces/debug.ts +6 -6
  227. package/src/internal/hardhat-network/stack-traces/error-inferrer.ts +15 -8
  228. package/src/internal/hardhat-network/stack-traces/message-trace.ts +40 -4
  229. package/src/internal/hardhat-network/stack-traces/model.ts +61 -0
  230. package/src/internal/hardhat-network/stack-traces/opcodes.ts +4 -0
  231. package/src/internal/hardhat-network/stack-traces/solidity-errors.ts +2 -2
  232. package/src/internal/hardhat-network/stack-traces/solidityTracer.ts +6 -5
  233. package/src/internal/hardhat-network/stack-traces/vm-trace-decoder.ts +113 -4
  234. package/src/internal/hardhat-network/stack-traces/vm-tracer.ts +67 -95
  235. package/src/internal/util/date.ts +4 -0
  236. package/src/internal/util/hardforks.ts +52 -0
  237. package/src/internal/hardhat-network/provider/BlockchainBase.ts +0 -185
  238. package/src/internal/hardhat-network/provider/BlockchainData.ts +0 -261
  239. package/src/internal/hardhat-network/provider/HardhatBlockchain.ts +0 -140
  240. package/src/internal/hardhat-network/provider/PoolState.ts +0 -48
  241. package/src/internal/hardhat-network/provider/TransactionQueue.ts +0 -158
  242. package/src/internal/hardhat-network/provider/TxPool.ts +0 -715
  243. package/src/internal/hardhat-network/provider/ethereumjs-workarounds.ts +0 -21
  244. package/src/internal/hardhat-network/provider/filter.ts +0 -142
  245. package/src/internal/hardhat-network/provider/fork/ForkBlockchain.ts +0 -433
  246. package/src/internal/hardhat-network/provider/fork/ForkStateManager.ts +0 -480
  247. package/src/internal/hardhat-network/provider/fork/rpcToBlockData.ts +0 -35
  248. package/src/internal/hardhat-network/provider/fork/rpcToTxData.ts +0 -44
  249. package/src/internal/hardhat-network/provider/modules/base.ts +0 -156
  250. package/src/internal/hardhat-network/provider/modules/debug.ts +0 -104
  251. package/src/internal/hardhat-network/provider/modules/eth.ts +0 -1781
  252. package/src/internal/hardhat-network/provider/modules/evm.ts +0 -249
  253. package/src/internal/hardhat-network/provider/modules/hardhat.ts +0 -481
  254. package/src/internal/hardhat-network/provider/modules/net.ts +0 -60
  255. package/src/internal/hardhat-network/provider/modules/personal.ts +0 -40
  256. package/src/internal/hardhat-network/provider/modules/web3.ts +0 -49
  257. package/src/internal/hardhat-network/provider/node.ts +0 -2993
  258. package/src/internal/hardhat-network/provider/transactions/FakeSenderAccessListEIP2930Transaction.ts +0 -226
  259. package/src/internal/hardhat-network/provider/transactions/FakeSenderEIP1559Transaction.ts +0 -224
  260. package/src/internal/hardhat-network/provider/transactions/FakeSenderTransaction.ts +0 -216
  261. package/src/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.ts +0 -143
  262. package/src/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP2930Transaction.ts +0 -144
  263. package/src/internal/hardhat-network/provider/transactions/ReadOnlyValidTransaction.ts +0 -171
  264. package/src/internal/hardhat-network/provider/transactions/ReadOnlyValidUnknownTypeTransaction.ts +0 -169
  265. package/src/internal/hardhat-network/provider/types/HardhatBlockchainInterface.ts +0 -25
  266. package/src/internal/hardhat-network/provider/utils/makeFakeSignature.ts +0 -60
  267. package/src/internal/hardhat-network/provider/utils/makeStateTrie.ts +0 -29
  268. package/src/internal/hardhat-network/provider/utils/putGenesisBlock.ts +0 -61
  269. package/src/internal/hardhat-network/provider/utils/reorganizeTransactionsLists.ts +0 -45
  270. package/src/internal/hardhat-network/provider/utils/txMapToArray.ts +0 -7
  271. package/src/internal/hardhat-network/stack-traces/vm-debug-tracer.ts +0 -630
@@ -8,7 +8,7 @@ const errors_1 = require("../../../core/providers/errors");
8
8
  * This class is like `ReadOnlyValidTransaction` but for
9
9
  * a transaction with an unknown tx type.
10
10
  */
11
- class ReadOnlyValidUnknownTypeTransaction extends ethereumjs_tx_1.LegacyTransaction {
11
+ class ReadOnlyValidUnknownTypeTransaction extends ethereumjs_tx_1.Transaction {
12
12
  static fromTxData(_txData, _opts) {
13
13
  throw new errors_1.InternalError("`fromTxData` is not implemented in ReadOnlyValidUnknownTypeTransaction");
14
14
  }
@@ -22,7 +22,7 @@ class ReadOnlyValidUnknownTypeTransaction extends ethereumjs_tx_1.LegacyTransact
22
22
  throw new errors_1.InternalError("`fromRlpSerializedTx` is not implemented in ReadOnlyValidUnknownTypeTransaction");
23
23
  }
24
24
  constructor(sender, type, data = {}) {
25
- super(data, { freeze: false, allowUnlimitedInitCodeSize: true });
25
+ super(data, { freeze: false, disableMaxInitCodeSizeCheck: true });
26
26
  this.common = this._getCommon();
27
27
  this._sender = sender;
28
28
  this._actualType = type;
@@ -1 +1 @@
1
- {"version":3,"file":"ReadOnlyValidUnknownTypeTransaction.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/transactions/ReadOnlyValidUnknownTypeTransaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ReadOnlyValidUnknownTypeTransaction.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/transactions/ReadOnlyValidUnknownTypeTransaction.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,17 @@
1
+ /// <reference types="node" />
1
2
  import { Block } from "@nomicfoundation/ethereumjs-block";
2
3
  import { BlockchainInterface } from "@nomicfoundation/ethereumjs-blockchain";
3
4
  import { FilterParams } from "../node-types";
4
5
  import { RpcLogOutput, RpcReceiptOutput } from "../output";
5
6
  export interface HardhatBlockchainInterface extends BlockchainInterface {
6
7
  addTransactionReceipts(receipts: RpcReceiptOutput[]): void;
7
- reserveBlocks(count: bigint, interval: bigint, previousBlockStateRoot: Uint8Array, previousBlockTotalDifficulty: bigint, previousBlockBaseFeePerGas: bigint | undefined): void;
8
+ reserveBlocks(count: bigint, interval: bigint, previousBlockStateRoot: Buffer, previousBlockTotalDifficulty: bigint, previousBlockBaseFeePerGas: bigint | undefined): void;
8
9
  deleteLaterBlocks(block: Block): void;
9
- getBlockByTransactionHash(transactionHash: Uint8Array): Promise<Block | null>;
10
+ getBlockByTransactionHash(transactionHash: Buffer): Promise<Block | null>;
10
11
  getLatestBlock(): Promise<Block>;
11
12
  getLatestBlockNumber(): bigint;
12
13
  getLogs(filterParams: FilterParams): Promise<RpcLogOutput[]>;
13
- getTotalDifficulty(blockHash: Uint8Array): Promise<bigint>;
14
- getTransactionReceipt(transactionHash: Uint8Array): Promise<RpcReceiptOutput | null>;
14
+ getTotalDifficulty(blockHash: Buffer): Promise<bigint>;
15
+ getTransactionReceipt(transactionHash: Buffer): Promise<RpcReceiptOutput | null>;
15
16
  }
16
17
  //# sourceMappingURL=HardhatBlockchainInterface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HardhatBlockchainInterface.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/types/HardhatBlockchainInterface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAE7E,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE3D,MAAM,WAAW,0BAA2B,SAAQ,mBAAmB;IACrE,sBAAsB,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC;IAC3D,aAAa,CACX,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,sBAAsB,EAAE,UAAU,EAClC,4BAA4B,EAAE,MAAM,EACpC,0BAA0B,EAAE,MAAM,GAAG,SAAS,GAC7C,IAAI,CAAC;IACR,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACtC,yBAAyB,CAAC,eAAe,EAAE,UAAU,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC9E,cAAc,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IACjC,oBAAoB,IAAI,MAAM,CAAC;IAC/B,OAAO,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC7D,kBAAkB,CAAC,SAAS,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3D,qBAAqB,CACnB,eAAe,EAAE,UAAU,GAC1B,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;CACrC"}
1
+ {"version":3,"file":"HardhatBlockchainInterface.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/types/HardhatBlockchainInterface.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAE7E,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE3D,MAAM,WAAW,0BAA2B,SAAQ,mBAAmB;IACrE,sBAAsB,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC;IAC3D,aAAa,CACX,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,sBAAsB,EAAE,MAAM,EAC9B,4BAA4B,EAAE,MAAM,EACpC,0BAA0B,EAAE,MAAM,GAAG,SAAS,GAC7C,IAAI,CAAC;IACR,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACtC,yBAAyB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC1E,cAAc,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IACjC,oBAAoB,IAAI,MAAM,CAAC;IAC/B,OAAO,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC7D,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,qBAAqB,CACnB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;CACrC"}
@@ -0,0 +1,14 @@
1
+ import { SpecId, MineOrdering, IntervalRange, DebugTraceResult, TracingMessage, TracingMessageResult, TracingStep } from "@nomicfoundation/edr";
2
+ import { HardforkName } from "../../../util/hardforks";
3
+ import { IntervalMiningConfig, MempoolOrder } from "../node-types";
4
+ import { RpcDebugTraceOutput } from "../output";
5
+ import { MinimalEVMResult, MinimalInterpreterStep, MinimalMessage } from "../vm/types";
6
+ export declare function ethereumsjsHardforkToEdrSpecId(hardfork: HardforkName): SpecId;
7
+ export declare function edrSpecIdToEthereumHardfork(specId: SpecId): HardforkName;
8
+ export declare function ethereumjsIntervalMiningConfigToEdr(config: IntervalMiningConfig): bigint | IntervalRange | undefined;
9
+ export declare function ethereumjsMempoolOrderToEdrMineOrdering(mempoolOrder: MempoolOrder): MineOrdering;
10
+ export declare function edrRpcDebugTraceToHardhat(rpcDebugTrace: DebugTraceResult): RpcDebugTraceOutput;
11
+ export declare function edrTracingStepToMinimalInterpreterStep(step: TracingStep): MinimalInterpreterStep;
12
+ export declare function edrTracingMessageResultToMinimalEVMResult(tracingMessageResult: TracingMessageResult): MinimalEVMResult;
13
+ export declare function edrTracingMessageToMinimalMessage(message: TracingMessage): MinimalMessage;
14
+ //# sourceMappingURL=convertToEdr.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convertToEdr.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/convertToEdr.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,oBAAoB,EACpB,WAAW,EACZ,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAgB,MAAM,WAAW,CAAC;AAC9D,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,cAAc,EACf,MAAM,aAAa,CAAC;AAIrB,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CA0C7E;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAyCxE;AAED,wBAAgB,mCAAmC,CACjD,MAAM,EAAE,oBAAoB,GAC3B,MAAM,GAAG,aAAa,GAAG,SAAS,CAcpC;AAED,wBAAgB,uCAAuC,CACrD,YAAY,EAAE,YAAY,GACzB,YAAY,CAOd;AAED,wBAAgB,yBAAyB,CACvC,aAAa,EAAE,gBAAgB,GAC9B,mBAAmB,CAoDrB;AAED,wBAAgB,sCAAsC,CACpD,IAAI,EAAE,WAAW,GAChB,sBAAsB,CASxB;AAED,wBAAgB,yCAAyC,CACvD,oBAAoB,EAAE,oBAAoB,GACzC,gBAAgB,CAMlB;AAED,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,cAAc,GACtB,cAAc,CAQhB"}
@@ -0,0 +1,191 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.edrTracingMessageToMinimalMessage = exports.edrTracingMessageResultToMinimalEVMResult = exports.edrTracingStepToMinimalInterpreterStep = exports.edrRpcDebugTraceToHardhat = exports.ethereumjsMempoolOrderToEdrMineOrdering = exports.ethereumjsIntervalMiningConfigToEdr = exports.edrSpecIdToEthereumHardfork = exports.ethereumsjsHardforkToEdrSpecId = void 0;
4
+ const ethereumjs_util_1 = require("@nomicfoundation/ethereumjs-util");
5
+ const hardforks_1 = require("../../../util/hardforks");
6
+ /* eslint-disable @nomicfoundation/hardhat-internal-rules/only-hardhat-error */
7
+ function ethereumsjsHardforkToEdrSpecId(hardfork) {
8
+ switch (hardfork) {
9
+ case hardforks_1.HardforkName.FRONTIER:
10
+ return 0 /* SpecId.Frontier */;
11
+ case hardforks_1.HardforkName.HOMESTEAD:
12
+ return 2 /* SpecId.Homestead */;
13
+ case hardforks_1.HardforkName.DAO:
14
+ return 3 /* SpecId.DaoFork */;
15
+ case hardforks_1.HardforkName.TANGERINE_WHISTLE:
16
+ return 4 /* SpecId.Tangerine */;
17
+ case hardforks_1.HardforkName.SPURIOUS_DRAGON:
18
+ return 5 /* SpecId.SpuriousDragon */;
19
+ case hardforks_1.HardforkName.BYZANTIUM:
20
+ return 6 /* SpecId.Byzantium */;
21
+ case hardforks_1.HardforkName.CONSTANTINOPLE:
22
+ return 7 /* SpecId.Constantinople */;
23
+ case hardforks_1.HardforkName.PETERSBURG:
24
+ return 8 /* SpecId.Petersburg */;
25
+ case hardforks_1.HardforkName.ISTANBUL:
26
+ return 9 /* SpecId.Istanbul */;
27
+ case hardforks_1.HardforkName.MUIR_GLACIER:
28
+ return 10 /* SpecId.MuirGlacier */;
29
+ case hardforks_1.HardforkName.BERLIN:
30
+ return 11 /* SpecId.Berlin */;
31
+ case hardforks_1.HardforkName.LONDON:
32
+ return 12 /* SpecId.London */;
33
+ case hardforks_1.HardforkName.ARROW_GLACIER:
34
+ return 13 /* SpecId.ArrowGlacier */;
35
+ case hardforks_1.HardforkName.GRAY_GLACIER:
36
+ return 14 /* SpecId.GrayGlacier */;
37
+ case hardforks_1.HardforkName.MERGE:
38
+ return 15 /* SpecId.Merge */;
39
+ case hardforks_1.HardforkName.SHANGHAI:
40
+ return 16 /* SpecId.Shanghai */;
41
+ case hardforks_1.HardforkName.CANCUN:
42
+ return 17 /* SpecId.Cancun */;
43
+ default:
44
+ const _exhaustiveCheck = hardfork;
45
+ throw new Error(`Unknown hardfork name '${hardfork}', this shouldn't happen`);
46
+ }
47
+ }
48
+ exports.ethereumsjsHardforkToEdrSpecId = ethereumsjsHardforkToEdrSpecId;
49
+ function edrSpecIdToEthereumHardfork(specId) {
50
+ switch (specId) {
51
+ case 0 /* SpecId.Frontier */:
52
+ return hardforks_1.HardforkName.FRONTIER;
53
+ case 2 /* SpecId.Homestead */:
54
+ return hardforks_1.HardforkName.HOMESTEAD;
55
+ case 3 /* SpecId.DaoFork */:
56
+ return hardforks_1.HardforkName.DAO;
57
+ case 4 /* SpecId.Tangerine */:
58
+ return hardforks_1.HardforkName.TANGERINE_WHISTLE;
59
+ case 5 /* SpecId.SpuriousDragon */:
60
+ return hardforks_1.HardforkName.SPURIOUS_DRAGON;
61
+ case 6 /* SpecId.Byzantium */:
62
+ return hardforks_1.HardforkName.BYZANTIUM;
63
+ case 7 /* SpecId.Constantinople */:
64
+ return hardforks_1.HardforkName.CONSTANTINOPLE;
65
+ case 8 /* SpecId.Petersburg */:
66
+ return hardforks_1.HardforkName.PETERSBURG;
67
+ case 9 /* SpecId.Istanbul */:
68
+ return hardforks_1.HardforkName.ISTANBUL;
69
+ case 10 /* SpecId.MuirGlacier */:
70
+ return hardforks_1.HardforkName.MUIR_GLACIER;
71
+ case 11 /* SpecId.Berlin */:
72
+ return hardforks_1.HardforkName.BERLIN;
73
+ case 12 /* SpecId.London */:
74
+ return hardforks_1.HardforkName.LONDON;
75
+ case 13 /* SpecId.ArrowGlacier */:
76
+ return hardforks_1.HardforkName.ARROW_GLACIER;
77
+ case 14 /* SpecId.GrayGlacier */:
78
+ return hardforks_1.HardforkName.GRAY_GLACIER;
79
+ case 15 /* SpecId.Merge */:
80
+ return hardforks_1.HardforkName.MERGE;
81
+ case 16 /* SpecId.Shanghai */:
82
+ return hardforks_1.HardforkName.SHANGHAI;
83
+ // HACK: EthereumJS doesn't support Cancun, so report Shanghai
84
+ case 17 /* SpecId.Cancun */:
85
+ return hardforks_1.HardforkName.SHANGHAI;
86
+ default:
87
+ throw new Error(`Unknown spec id '${specId}', this shouldn't happen`);
88
+ }
89
+ }
90
+ exports.edrSpecIdToEthereumHardfork = edrSpecIdToEthereumHardfork;
91
+ function ethereumjsIntervalMiningConfigToEdr(config) {
92
+ if (typeof config === "number") {
93
+ // Is interval mining disabled?
94
+ if (config === 0) {
95
+ return undefined;
96
+ }
97
+ else {
98
+ return BigInt(config);
99
+ }
100
+ }
101
+ else {
102
+ return {
103
+ min: BigInt(config[0]),
104
+ max: BigInt(config[1]),
105
+ };
106
+ }
107
+ }
108
+ exports.ethereumjsIntervalMiningConfigToEdr = ethereumjsIntervalMiningConfigToEdr;
109
+ function ethereumjsMempoolOrderToEdrMineOrdering(mempoolOrder) {
110
+ switch (mempoolOrder) {
111
+ case "fifo":
112
+ return "Fifo" /* MineOrdering.Fifo */;
113
+ case "priority":
114
+ return "Priority" /* MineOrdering.Priority */;
115
+ }
116
+ }
117
+ exports.ethereumjsMempoolOrderToEdrMineOrdering = ethereumjsMempoolOrderToEdrMineOrdering;
118
+ function edrRpcDebugTraceToHardhat(rpcDebugTrace) {
119
+ const structLogs = rpcDebugTrace.structLogs.map((log) => {
120
+ const result = {
121
+ depth: Number(log.depth),
122
+ gas: Number(log.gas),
123
+ gasCost: Number(log.gasCost),
124
+ op: log.opName,
125
+ pc: Number(log.pc),
126
+ };
127
+ if (log.memory !== undefined) {
128
+ result.memory = log.memory;
129
+ }
130
+ if (log.stack !== undefined) {
131
+ // Remove 0x prefix which is required by EIP-3155, but not expected by Hardhat.
132
+ result.stack = log.stack?.map((item) => item.slice(2));
133
+ }
134
+ if (log.storage !== undefined) {
135
+ result.storage = Object.fromEntries(Object.entries(log.storage).map(([key, value]) => {
136
+ return [key.slice(2), value.slice(2)];
137
+ }));
138
+ }
139
+ if (log.error !== undefined) {
140
+ result.error = {
141
+ message: log.error,
142
+ };
143
+ }
144
+ return result;
145
+ });
146
+ // REVM trace adds initial STOP that Hardhat doesn't expect
147
+ if (structLogs.length > 0 && structLogs[0].op === "STOP") {
148
+ structLogs.shift();
149
+ }
150
+ let returnValue = rpcDebugTrace.output?.toString("hex") ?? "";
151
+ if (returnValue === "0x") {
152
+ returnValue = "";
153
+ }
154
+ return {
155
+ failed: !rpcDebugTrace.pass,
156
+ gas: Number(rpcDebugTrace.gasUsed),
157
+ returnValue,
158
+ structLogs,
159
+ };
160
+ }
161
+ exports.edrRpcDebugTraceToHardhat = edrRpcDebugTraceToHardhat;
162
+ function edrTracingStepToMinimalInterpreterStep(step) {
163
+ return {
164
+ pc: Number(step.pc),
165
+ depth: step.depth,
166
+ opcode: {
167
+ name: step.opcode,
168
+ },
169
+ stack: step.stackTop !== undefined ? [step.stackTop] : [],
170
+ };
171
+ }
172
+ exports.edrTracingStepToMinimalInterpreterStep = edrTracingStepToMinimalInterpreterStep;
173
+ function edrTracingMessageResultToMinimalEVMResult(tracingMessageResult) {
174
+ return {
175
+ execResult: {
176
+ executionGasUsed: tracingMessageResult.executionResult.result.gasUsed,
177
+ },
178
+ };
179
+ }
180
+ exports.edrTracingMessageResultToMinimalEVMResult = edrTracingMessageResultToMinimalEVMResult;
181
+ function edrTracingMessageToMinimalMessage(message) {
182
+ return {
183
+ to: message.to !== undefined ? new ethereumjs_util_1.Address(message.to) : undefined,
184
+ data: message.data,
185
+ value: message.value,
186
+ caller: new ethereumjs_util_1.Address(message.caller),
187
+ gasLimit: message.gasLimit,
188
+ };
189
+ }
190
+ exports.edrTracingMessageToMinimalMessage = edrTracingMessageToMinimalMessage;
191
+ //# sourceMappingURL=convertToEdr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convertToEdr.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/convertToEdr.ts"],"names":[],"mappings":";;;AASA,sEAA2D;AAE3D,uDAAuD;AASvD,+EAA+E;AAE/E,SAAgB,8BAA8B,CAAC,QAAsB;IACnE,QAAQ,QAAQ,EAAE;QAChB,KAAK,wBAAY,CAAC,QAAQ;YACxB,+BAAuB;QACzB,KAAK,wBAAY,CAAC,SAAS;YACzB,gCAAwB;QAC1B,KAAK,wBAAY,CAAC,GAAG;YACnB,8BAAsB;QACxB,KAAK,wBAAY,CAAC,iBAAiB;YACjC,gCAAwB;QAC1B,KAAK,wBAAY,CAAC,eAAe;YAC/B,qCAA6B;QAC/B,KAAK,wBAAY,CAAC,SAAS;YACzB,gCAAwB;QAC1B,KAAK,wBAAY,CAAC,cAAc;YAC9B,qCAA6B;QAC/B,KAAK,wBAAY,CAAC,UAAU;YAC1B,iCAAyB;QAC3B,KAAK,wBAAY,CAAC,QAAQ;YACxB,+BAAuB;QACzB,KAAK,wBAAY,CAAC,YAAY;YAC5B,mCAA0B;QAC5B,KAAK,wBAAY,CAAC,MAAM;YACtB,8BAAqB;QACvB,KAAK,wBAAY,CAAC,MAAM;YACtB,8BAAqB;QACvB,KAAK,wBAAY,CAAC,aAAa;YAC7B,oCAA2B;QAC7B,KAAK,wBAAY,CAAC,YAAY;YAC5B,mCAA0B;QAC5B,KAAK,wBAAY,CAAC,KAAK;YACrB,6BAAoB;QACtB,KAAK,wBAAY,CAAC,QAAQ;YACxB,gCAAuB;QACzB,KAAK,wBAAY,CAAC,MAAM;YACtB,8BAAqB;QACvB;YACE,MAAM,gBAAgB,GAAU,QAAQ,CAAC;YACzC,MAAM,IAAI,KAAK,CACb,0BAA0B,QAAkB,0BAA0B,CACvE,CAAC;KACL;AACH,CAAC;AA1CD,wEA0CC;AAED,SAAgB,2BAA2B,CAAC,MAAc;IACxD,QAAQ,MAAM,EAAE;QACd;YACE,OAAO,wBAAY,CAAC,QAAQ,CAAC;QAC/B;YACE,OAAO,wBAAY,CAAC,SAAS,CAAC;QAChC;YACE,OAAO,wBAAY,CAAC,GAAG,CAAC;QAC1B;YACE,OAAO,wBAAY,CAAC,iBAAiB,CAAC;QACxC;YACE,OAAO,wBAAY,CAAC,eAAe,CAAC;QACtC;YACE,OAAO,wBAAY,CAAC,SAAS,CAAC;QAChC;YACE,OAAO,wBAAY,CAAC,cAAc,CAAC;QACrC;YACE,OAAO,wBAAY,CAAC,UAAU,CAAC;QACjC;YACE,OAAO,wBAAY,CAAC,QAAQ,CAAC;QAC/B;YACE,OAAO,wBAAY,CAAC,YAAY,CAAC;QACnC;YACE,OAAO,wBAAY,CAAC,MAAM,CAAC;QAC7B;YACE,OAAO,wBAAY,CAAC,MAAM,CAAC;QAC7B;YACE,OAAO,wBAAY,CAAC,aAAa,CAAC;QACpC;YACE,OAAO,wBAAY,CAAC,YAAY,CAAC;QACnC;YACE,OAAO,wBAAY,CAAC,KAAK,CAAC;QAC5B;YACE,OAAO,wBAAY,CAAC,QAAQ,CAAC;QAC/B,8DAA8D;QAC9D;YACE,OAAO,wBAAY,CAAC,QAAQ,CAAC;QAE/B;YACE,MAAM,IAAI,KAAK,CAAC,oBAAoB,MAAM,0BAA0B,CAAC,CAAC;KACzE;AACH,CAAC;AAzCD,kEAyCC;AAED,SAAgB,mCAAmC,CACjD,MAA4B;IAE5B,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC9B,+BAA+B;QAC/B,IAAI,MAAM,KAAK,CAAC,EAAE;YAChB,OAAO,SAAS,CAAC;SAClB;aAAM;YACL,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;SACvB;KACF;SAAM;QACL,OAAO;YACL,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACtB,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;SACvB,CAAC;KACH;AACH,CAAC;AAhBD,kFAgBC;AAED,SAAgB,uCAAuC,CACrD,YAA0B;IAE1B,QAAQ,YAAY,EAAE;QACpB,KAAK,MAAM;YACT,sCAAyB;QAC3B,KAAK,UAAU;YACb,8CAA6B;KAChC;AACH,CAAC;AATD,0FASC;AAED,SAAgB,yBAAyB,CACvC,aAA+B;IAE/B,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACtD,MAAM,MAAM,GAAiB;YAC3B,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;YACxB,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;YACpB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;YAC5B,EAAE,EAAE,GAAG,CAAC,MAAM;YACd,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;SACnB,CAAC;QAEF,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE;YAC5B,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;SAC5B;QAED,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,EAAE;YAC3B,+EAA+E;YAC/E,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;SACxD;QAED,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE;YAC7B,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,WAAW,CACjC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACxC,CAAC,CAAC,CACH,CAAC;SACH;QAED,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,EAAE;YAC3B,MAAM,CAAC,KAAK,GAAG;gBACb,OAAO,EAAE,GAAG,CAAC,KAAK;aACnB,CAAC;SACH;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,2DAA2D;IAC3D,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,EAAE;QACxD,UAAU,CAAC,KAAK,EAAE,CAAC;KACpB;IAED,IAAI,WAAW,GAAG,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAC9D,IAAI,WAAW,KAAK,IAAI,EAAE;QACxB,WAAW,GAAG,EAAE,CAAC;KAClB;IAED,OAAO;QACL,MAAM,EAAE,CAAC,aAAa,CAAC,IAAI;QAC3B,GAAG,EAAE,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC;QAClC,WAAW;QACX,UAAU;KACX,CAAC;AACJ,CAAC;AAtDD,8DAsDC;AAED,SAAgB,sCAAsC,CACpD,IAAiB;IAEjB,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACnB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,MAAM,EAAE;YACN,IAAI,EAAE,IAAI,CAAC,MAAM;SAClB;QACD,KAAK,EAAE,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;KAC1D,CAAC;AACJ,CAAC;AAXD,wFAWC;AAED,SAAgB,yCAAyC,CACvD,oBAA0C;IAE1C,OAAO;QACL,UAAU,EAAE;YACV,gBAAgB,EAAE,oBAAoB,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO;SACtE;KACF,CAAC;AACJ,CAAC;AARD,8FAQC;AAED,SAAgB,iCAAiC,CAC/C,OAAuB;IAEvB,OAAO;QACL,EAAE,EAAE,OAAO,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,yBAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;QAClE,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,IAAI,yBAAO,CAAC,OAAO,CAAC,MAAM,CAAC;QACnC,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC3B,CAAC;AACJ,CAAC;AAVD,8EAUC"}
@@ -1,3 +1,2 @@
1
1
  export declare function getCurrentTimestamp(): number;
2
- export declare function getCurrentTimestampBigInt(): bigint;
3
2
  //# sourceMappingURL=getCurrentTimestamp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getCurrentTimestamp.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/getCurrentTimestamp.ts"],"names":[],"mappings":"AAAA,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED,wBAAgB,yBAAyB,IAAI,MAAM,CAElD"}
1
+ {"version":3,"file":"getCurrentTimestamp.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/getCurrentTimestamp.ts"],"names":[],"mappings":"AAAA,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C"}
@@ -1,12 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getCurrentTimestampBigInt = exports.getCurrentTimestamp = void 0;
3
+ exports.getCurrentTimestamp = void 0;
4
4
  function getCurrentTimestamp() {
5
5
  return Math.ceil(new Date().getTime() / 1000);
6
6
  }
7
7
  exports.getCurrentTimestamp = getCurrentTimestamp;
8
- function getCurrentTimestampBigInt() {
9
- return BigInt(getCurrentTimestamp());
10
- }
11
- exports.getCurrentTimestampBigInt = getCurrentTimestampBigInt;
12
8
  //# sourceMappingURL=getCurrentTimestamp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getCurrentTimestamp.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/getCurrentTimestamp.ts"],"names":[],"mappings":";;;AAAA,SAAgB,mBAAmB;IACjC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;AAChD,CAAC;AAFD,kDAEC;AAED,SAAgB,yBAAyB;IACvC,OAAO,MAAM,CAAC,mBAAmB,EAAE,CAAC,CAAC;AACvC,CAAC;AAFD,8DAEC"}
1
+ {"version":3,"file":"getCurrentTimestamp.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/getCurrentTimestamp.ts"],"names":[],"mappings":";;;AAAA,SAAgB,mBAAmB;IACjC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;AAChD,CAAC;AAFD,kDAEC"}
@@ -1,4 +1,4 @@
1
1
  import { Common } from "@nomicfoundation/ethereumjs-common";
2
2
  import { LocalNodeConfig } from "../node-types";
3
- export declare function makeCommon({ chainId, networkId, hardfork, enableTransientStorage, }: LocalNodeConfig): Common;
3
+ export declare function makeCommon({ chainId, networkId, hardfork }: LocalNodeConfig): Common;
4
4
  //# sourceMappingURL=makeCommon.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"makeCommon.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/makeCommon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAIhD,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,SAAS,EACT,QAAQ,EACR,sBAAsB,GACvB,EAAE,eAAe,UAmBjB"}
1
+ {"version":3,"file":"makeCommon.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/makeCommon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGhD,wBAAgB,UAAU,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,eAAe,UAc3E"}
@@ -3,9 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.makeCommon = void 0;
4
4
  const ethereumjs_common_1 = require("@nomicfoundation/ethereumjs-common");
5
5
  const hardforks_1 = require("../../../util/hardforks");
6
- const node_1 = require("../node");
7
- function makeCommon({ chainId, networkId, hardfork, enableTransientStorage, }) {
8
- (0, node_1.assertTransientStorageCompatibility)(enableTransientStorage, hardfork);
6
+ function makeCommon({ chainId, networkId, hardfork }) {
9
7
  const common = ethereumjs_common_1.Common.custom({
10
8
  chainId,
11
9
  networkId,
@@ -1 +1 @@
1
- {"version":3,"file":"makeCommon.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/makeCommon.ts"],"names":[],"mappings":";;;AAAA,0EAA4D;AAG5D,uDAAuD;AACvD,kCAA8D;AAE9D,SAAgB,UAAU,CAAC,EACzB,OAAO,EACP,SAAS,EACT,QAAQ,EACR,sBAAsB,GACN;IAChB,IAAA,0CAAmC,EACjC,sBAAsB,EACtB,QAAwB,CACzB,CAAC;IAEF,MAAM,MAAM,GAAG,0BAAM,CAAC,MAAM,CAC1B;QACE,OAAO;QACP,SAAS;KACV,EACD;QACE,mDAAmD;QACnD,QAAQ,EACN,QAAQ,KAAK,wBAAY,CAAC,KAAK,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,QAAQ;KACvE,CACF,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC;AAxBD,gCAwBC"}
1
+ {"version":3,"file":"makeCommon.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/makeCommon.ts"],"names":[],"mappings":";;;AAAA,0EAA4D;AAG5D,uDAAuD;AAEvD,SAAgB,UAAU,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAmB;IAC1E,MAAM,MAAM,GAAG,0BAAM,CAAC,MAAM,CAC1B;QACE,OAAO;QACP,SAAS;KACV,EACD;QACE,mDAAmD;QACnD,QAAQ,EACN,QAAQ,KAAK,wBAAY,CAAC,KAAK,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,QAAQ;KACvE,CACF,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC;AAdD,gCAcC"}
@@ -1,6 +1,6 @@
1
- import { AccessListEIP2930TxData, FeeMarketEIP1559TxData, LegacyTxData } from "@nomicfoundation/ethereumjs-tx";
1
+ import { AccessListEIP2930Transaction, FeeMarketEIP1559Transaction, TxData } from "@nomicfoundation/ethereumjs-tx";
2
2
  import { Address } from "@nomicfoundation/ethereumjs-util";
3
- export declare function makeFakeSignature(tx: LegacyTxData | AccessListEIP2930TxData | FeeMarketEIP1559TxData, sender: Address): {
3
+ export declare function makeFakeSignature(tx: TxData | AccessListEIP2930Transaction | FeeMarketEIP1559Transaction, sender: Address): {
4
4
  r: number;
5
5
  s: number;
6
6
  };
@@ -1 +1 @@
1
- {"version":3,"file":"makeFakeSignature.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/makeFakeSignature.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,YAAY,EACb,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAK3D,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,YAAY,GAAG,uBAAuB,GAAG,sBAAsB,EACnE,MAAM,EAAE,OAAO,GACd;IACD,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX,CA2CA"}
1
+ {"version":3,"file":"makeFakeSignature.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/makeFakeSignature.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,2BAA2B,EAC3B,MAAM,EACP,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAK3D,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,MAAM,GAAG,4BAA4B,GAAG,2BAA2B,EACvE,MAAM,EAAE,OAAO,GACd;IACD,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX,CA6BA"}
@@ -16,21 +16,7 @@ function makeFakeSignature(tx, sender) {
16
16
  "maxPriorityFeePerGas" in tx ? tx.maxPriorityFeePerGas : "",
17
17
  "maxFeePerGas" in tx ? tx.maxFeePerGas : "",
18
18
  "accessList" in tx
19
- ? tx.accessList?.map((accessListItem) => {
20
- let address;
21
- let storageKeys;
22
- if (Array.isArray(accessListItem)) {
23
- address = Buffer.from(accessListItem[0]).toString("hex");
24
- storageKeys = accessListItem[1].map((b) => Buffer.from(b).toString("hex"));
25
- }
26
- else {
27
- address = accessListItem.address;
28
- storageKeys = accessListItem.storageKeys;
29
- }
30
- return [address, ...storageKeys]
31
- .map((b) => Buffer.from(b).toString("hex"))
32
- .join(";");
33
- })
19
+ ? tx.accessList?.map(([buf, bufs]) => [buf, ...bufs].map((b) => b.toString("hex")).join(";"))
34
20
  : "",
35
21
  ]
36
22
  .map((a) => a?.toString() ?? "")
@@ -1 +1 @@
1
- {"version":3,"file":"makeFakeSignature.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/makeFakeSignature.ts"],"names":[],"mappings":";;;AAOA,6CAA+E;AAE/E,4EAA4E;AAC5E,SAAgB,iBAAiB,CAC/B,EAAmE,EACnE,MAAe;IAKf,MAAM,eAAe,GAAG;QACtB,MAAM;QACN,EAAE,CAAC,KAAK;QACR,EAAE,CAAC,QAAQ;QACX,EAAE,CAAC,KAAK;QACR,EAAE,CAAC,EAAE;QACL,EAAE,CAAC,IAAI;QACP,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;QACnC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACjC,sBAAsB,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE;QAC3D,cAAc,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE;QAC3C,YAAY,IAAI,EAAE;YAChB,CAAC,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE;gBACpC,IAAI,OAAe,CAAC;gBACpB,IAAI,WAAqB,CAAC;gBAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;oBACjC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBACzD,WAAW,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACxC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC/B,CAAC;iBACH;qBAAM;oBACL,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC;oBACjC,WAAW,GAAG,cAAc,CAAC,WAAW,CAAC;iBAC1C;gBAED,OAAO,CAAC,OAAO,EAAE,GAAG,WAAW,CAAC;qBAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;qBAC1C,IAAI,CAAC,GAAG,CAAC,CAAC;YACf,CAAC,CAAC;YACJ,CAAC,CAAC,EAAE;KACP;SACE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;SAC/B,IAAI,CAAC,GAAG,CAAC,CAAC;IAEb,MAAM,UAAU,GAAG,IAAA,gDAAyC,EAC1D,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAC7B,CAAC;IAEF,OAAO;QACL,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE;QAC5B,CAAC,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;KAC9B,CAAC;AACJ,CAAC;AAjDD,8CAiDC"}
1
+ {"version":3,"file":"makeFakeSignature.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/makeFakeSignature.ts"],"names":[],"mappings":";;;AAOA,6CAA+E;AAE/E,4EAA4E;AAC5E,SAAgB,iBAAiB,CAC/B,EAAuE,EACvE,MAAe;IAKf,MAAM,eAAe,GAAG;QACtB,MAAM;QACN,EAAE,CAAC,KAAK;QACR,EAAE,CAAC,QAAQ;QACX,EAAE,CAAC,KAAK;QACR,EAAE,CAAC,EAAE;QACL,EAAE,CAAC,IAAI;QACP,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;QACnC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACjC,sBAAsB,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE;QAC3D,cAAc,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE;QAC3C,YAAY,IAAI,EAAE;YAChB,CAAC,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CACjC,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CACvD;YACH,CAAC,CAAC,EAAE;KACP;SACE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;SAC/B,IAAI,CAAC,GAAG,CAAC,CAAC;IAEb,MAAM,UAAU,GAAG,IAAA,gDAAyC,EAC1D,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAC7B,CAAC;IAEF,OAAO;QACL,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE;QAC5B,CAAC,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;KAC9B,CAAC;AACJ,CAAC;AAnCD,8CAmCC"}
@@ -1,10 +1,19 @@
1
+ import { HttpProvider } from "../../../core/providers/http";
1
2
  import { JsonRpcClient } from "../../jsonrpc/client";
2
3
  import { ForkConfig } from "../node-types";
4
+ export declare function makeForkProvider(forkConfig: ForkConfig): Promise<{
5
+ forkProvider: HttpProvider;
6
+ networkId: number;
7
+ forkBlockNumber: bigint;
8
+ latestBlockNumber: bigint;
9
+ maxReorg: bigint;
10
+ }>;
3
11
  export declare function makeForkClient(forkConfig: ForkConfig, forkCachePath?: string): Promise<{
4
12
  forkClient: JsonRpcClient;
5
13
  forkBlockNumber: bigint;
6
14
  forkBlockTimestamp: number;
7
15
  forkBlockHash: string;
16
+ forkBlockStateRoot: string;
8
17
  }>;
9
- export declare function getLastSafeBlock(latestBlock: bigint, maxReorg: bigint): bigint;
18
+ export declare function getLastSafeBlockNumber(latestBlockNumber: bigint, maxReorg: bigint): bigint;
10
19
  //# sourceMappingURL=makeForkClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"makeForkClient.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/makeForkClient.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAe3C,wBAAsB,cAAc,CAClC,UAAU,EAAE,UAAU,EACtB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC;IACT,UAAU,EAAE,aAAa,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC,CAmED;AA8BD,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,GACf,MAAM,CAIR"}
1
+ {"version":3,"file":"makeForkClient.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/makeForkClient.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAe3C,wBAAsB,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC;IACtE,YAAY,EAAE,YAAY,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,CAuDD;AAED,wBAAsB,cAAc,CAClC,UAAU,EAAE,UAAU,EACtB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC;IACT,UAAU,EAAE,aAAa,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;CAC5B,CAAC,CAwCD;AA8BD,wBAAgB,sBAAsB,CACpC,iBAAiB,EAAE,MAAM,EACzB,QAAQ,EAAE,MAAM,GACf,MAAM,CAMR"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getLastSafeBlock = exports.makeForkClient = void 0;
6
+ exports.getLastSafeBlockNumber = exports.makeForkClient = exports.makeForkProvider = void 0;
7
7
  const chalk_1 = __importDefault(require("chalk"));
8
8
  const constants_1 = require("../../../constants");
9
9
  const errors_1 = require("../../../core/errors");
@@ -17,37 +17,55 @@ const reorgs_protection_1 = require("./reorgs-protection");
17
17
  // removed in its new major version. UPDATE: we aren't even using node-fetch
18
18
  // anymore, so this really should be revisited.
19
19
  const FORK_HTTP_TIMEOUT = 35000;
20
- async function makeForkClient(forkConfig, forkCachePath) {
21
- const provider = new http_1.HttpProvider(forkConfig.jsonRpcUrl, constants_1.HARDHAT_NETWORK_NAME, forkConfig.httpHeaders, FORK_HTTP_TIMEOUT);
22
- const networkId = await getNetworkId(provider);
20
+ async function makeForkProvider(forkConfig) {
21
+ const forkProvider = new http_1.HttpProvider(forkConfig.jsonRpcUrl, constants_1.HARDHAT_NETWORK_NAME, forkConfig.httpHeaders, FORK_HTTP_TIMEOUT);
22
+ const networkId = await getNetworkId(forkProvider);
23
23
  const actualMaxReorg = (0, reorgs_protection_1.getLargestPossibleReorg)(networkId);
24
24
  const maxReorg = actualMaxReorg ?? reorgs_protection_1.FALLBACK_MAX_REORG;
25
- const latestBlock = await getLatestBlockNumber(provider);
26
- const lastSafeBlock = getLastSafeBlock(latestBlock, maxReorg);
25
+ const latestBlockNumber = await getLatestBlockNumber(forkProvider);
26
+ const lastSafeBlockNumber = getLastSafeBlockNumber(latestBlockNumber, maxReorg);
27
27
  let forkBlockNumber;
28
28
  if (forkConfig.blockNumber !== undefined) {
29
- if (forkConfig.blockNumber > latestBlock) {
29
+ if (forkConfig.blockNumber > latestBlockNumber) {
30
30
  // eslint-disable-next-line @nomicfoundation/hardhat-internal-rules/only-hardhat-error
31
- throw new Error(`Trying to initialize a provider with block ${forkConfig.blockNumber} but the current block is ${latestBlock}`);
31
+ throw new Error(`Trying to initialize a provider with block ${forkConfig.blockNumber} but the current block is ${latestBlockNumber}`);
32
32
  }
33
- if (forkConfig.blockNumber > lastSafeBlock) {
34
- const confirmations = latestBlock - BigInt(forkConfig.blockNumber) + 1n;
33
+ if (forkConfig.blockNumber > lastSafeBlockNumber) {
34
+ const confirmations = latestBlockNumber - BigInt(forkConfig.blockNumber) + 1n;
35
35
  const requiredConfirmations = maxReorg + 1n;
36
36
  console.warn(chalk_1.default.yellow(`You are forking from block ${forkConfig.blockNumber}, which has less than ${requiredConfirmations} confirmations, and will affect Hardhat Network's performance.
37
- Please use block number ${lastSafeBlock} or wait for the block to get ${requiredConfirmations - confirmations} more confirmations.`));
37
+ Please use block number ${lastSafeBlockNumber} or wait for the block to get ${requiredConfirmations - confirmations} more confirmations.`));
38
38
  }
39
39
  forkBlockNumber = BigInt(forkConfig.blockNumber);
40
40
  }
41
41
  else {
42
- forkBlockNumber = BigInt(lastSafeBlock);
42
+ forkBlockNumber = BigInt(lastSafeBlockNumber);
43
43
  }
44
- const block = await getBlockByNumber(provider, forkBlockNumber);
44
+ return {
45
+ forkProvider,
46
+ networkId,
47
+ forkBlockNumber,
48
+ latestBlockNumber,
49
+ maxReorg,
50
+ };
51
+ }
52
+ exports.makeForkProvider = makeForkProvider;
53
+ async function makeForkClient(forkConfig, forkCachePath) {
54
+ const { forkProvider, networkId, forkBlockNumber, latestBlockNumber, maxReorg, } = await makeForkProvider(forkConfig);
55
+ const block = await getBlockByNumber(forkProvider, forkBlockNumber);
45
56
  const forkBlockTimestamp = (0, base_types_1.rpcQuantityToNumber)(block.timestamp) * 1000;
46
57
  const cacheToDiskEnabled = forkConfig.blockNumber !== undefined && forkCachePath !== undefined;
47
- const forkClient = new client_1.JsonRpcClient(provider, networkId, latestBlock, maxReorg, cacheToDiskEnabled ? forkCachePath : undefined);
58
+ const forkClient = new client_1.JsonRpcClient(forkProvider, networkId, latestBlockNumber, maxReorg, cacheToDiskEnabled ? forkCachePath : undefined);
48
59
  const forkBlockHash = block.hash;
49
60
  (0, errors_1.assertHardhatInvariant)(forkBlockHash !== null, "Forked block should have a hash");
50
- return { forkClient, forkBlockNumber, forkBlockTimestamp, forkBlockHash };
61
+ const forkBlockStateRoot = block.stateRoot;
62
+ return {
63
+ forkClient,
64
+ forkBlockNumber,
65
+ forkBlockTimestamp,
66
+ forkBlockHash,
67
+ forkBlockStateRoot,
68
+ };
51
69
  }
52
70
  exports.makeForkClient = makeForkClient;
53
71
  async function getBlockByNumber(provider, blockNumber) {
@@ -70,10 +88,12 @@ async function getLatestBlockNumber(provider) {
70
88
  const latestBlock = BigInt(latestBlockString);
71
89
  return latestBlock;
72
90
  }
73
- function getLastSafeBlock(latestBlock, maxReorg) {
91
+ function getLastSafeBlockNumber(latestBlockNumber, maxReorg) {
74
92
  // Design choice: if latestBlock - maxReorg results in a negative number then the latestBlock block will be used.
75
93
  // This decision is based on the assumption that if maxReorg > latestBlock then there is a high probability that the fork is occurring on a devnet.
76
- return latestBlock - maxReorg >= 0 ? latestBlock - maxReorg : latestBlock;
94
+ return latestBlockNumber - maxReorg >= 0
95
+ ? latestBlockNumber - maxReorg
96
+ : latestBlockNumber;
77
97
  }
78
- exports.getLastSafeBlock = getLastSafeBlock;
98
+ exports.getLastSafeBlockNumber = getLastSafeBlockNumber;
79
99
  //# sourceMappingURL=makeForkClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"makeForkClient.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/makeForkClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"makeForkClient.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/makeForkClient.ts"],"names":[],"mappings":"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"}
@@ -8,11 +8,11 @@ async function makeStateTrie(genesisAccounts) {
8
8
  const stateTrie = new ethereumjs_trie_1.Trie({ useKeyHashing: true });
9
9
  for (const acc of genesisAccounts) {
10
10
  const { address, account } = (0, makeAccount_1.makeAccount)(acc);
11
- await stateTrie.put(address.toBytes(), account.serialize());
11
+ await stateTrie.put(address.toBuffer(), account.serialize());
12
12
  }
13
13
  // Mimic precompiles activation
14
14
  for (let i = 1; i <= 8; i++) {
15
- await stateTrie.put((0, ethereumjs_util_1.setLengthLeft)((0, ethereumjs_util_1.intToBytes)(i), 20), new ethereumjs_util_1.Account().serialize());
15
+ await stateTrie.put((0, ethereumjs_util_1.setLengthLeft)((0, ethereumjs_util_1.intToBuffer)(i), 20), new ethereumjs_util_1.Account().serialize());
16
16
  }
17
17
  return stateTrie;
18
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"makeStateTrie.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/makeStateTrie.ts"],"names":[],"mappings":";;;AAAA,sEAAwD;AACxD,sEAI0C;AAI1C,+CAA4C;AAErC,KAAK,UAAU,aAAa,CAAC,eAAiC;IACnE,MAAM,SAAS,GAAG,IAAI,sBAAI,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAEpD,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE;QACjC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAA,yBAAW,EAAC,GAAG,CAAC,CAAC;QAC9C,MAAM,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;KAC7D;IAED,+BAA+B;IAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;QAC3B,MAAM,SAAS,CAAC,GAAG,CACjB,IAAA,+BAAa,EAAC,IAAA,4BAAU,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAChC,IAAI,yBAAO,EAAE,CAAC,SAAS,EAAE,CAC1B,CAAC;KACH;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAjBD,sCAiBC"}
1
+ {"version":3,"file":"makeStateTrie.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/makeStateTrie.ts"],"names":[],"mappings":";;;AAAA,sEAAwD;AACxD,sEAI0C;AAI1C,+CAA4C;AAErC,KAAK,UAAU,aAAa,CAAC,eAAiC;IACnE,MAAM,SAAS,GAAG,IAAI,sBAAI,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAEpD,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE;QACjC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAA,yBAAW,EAAC,GAAG,CAAC,CAAC;QAC9C,MAAM,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;KAC9D;IAED,+BAA+B;IAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;QAC3B,MAAM,SAAS,CAAC,GAAG,CACjB,IAAA,+BAAa,EAAC,IAAA,6BAAW,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EACjC,IAAI,yBAAO,EAAE,CAAC,SAAS,EAAE,CAC1B,CAAC;KACH;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAjBD,sCAiBC"}
@@ -1,6 +1,8 @@
1
+ /// <reference types="node" />
1
2
  import { Common } from "@nomicfoundation/ethereumjs-common";
3
+ import { Trie } from "@nomicfoundation/ethereumjs-trie";
2
4
  import { HardforkName } from "../../../util/hardforks";
3
5
  import { HardhatBlockchain } from "../HardhatBlockchain";
4
6
  import { LocalNodeConfig } from "../node-types";
5
- export declare function putGenesisBlock(blockchain: HardhatBlockchain, common: Common, { initialDate, blockGasLimit: initialBlockGasLimit }: LocalNodeConfig, stateRoot: Uint8Array, hardfork: HardforkName, initialMixHash: Uint8Array, initialParentBeaconBlockRoot: Uint8Array, initialBaseFee?: bigint): Promise<void>;
7
+ export declare function putGenesisBlock(blockchain: HardhatBlockchain, common: Common, { initialDate, blockGasLimit: initialBlockGasLimit }: LocalNodeConfig, stateTrie: Trie, hardfork: HardforkName, initialMixHash: Buffer, initialBaseFee?: bigint): Promise<void>;
6
8
  //# sourceMappingURL=putGenesisBlock.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"putGenesisBlock.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/putGenesisBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAI5D,OAAO,EAAe,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGhD,wBAAsB,eAAe,CACnC,UAAU,EAAE,iBAAiB,EAC7B,MAAM,EAAE,MAAM,EACd,EAAE,WAAW,EAAE,aAAa,EAAE,oBAAoB,EAAE,EAAE,eAAe,EACrE,SAAS,EAAE,UAAU,EACrB,QAAQ,EAAE,YAAY,EACtB,cAAc,EAAE,UAAU,EAC1B,4BAA4B,EAAE,UAAU,EACxC,cAAc,CAAC,EAAE,MAAM,iBA0CxB"}
1
+ {"version":3,"file":"putGenesisBlock.d.ts","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/utils/putGenesisBlock.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AAIxD,OAAO,EAAe,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGhD,wBAAsB,eAAe,CACnC,UAAU,EAAE,iBAAiB,EAC7B,MAAM,EAAE,MAAM,EACd,EAAE,WAAW,EAAE,aAAa,EAAE,oBAAoB,EAAE,EAAE,eAAe,EACrE,SAAS,EAAE,IAAI,EACf,QAAQ,EAAE,YAAY,EACtB,cAAc,EAAE,MAAM,EACtB,cAAc,CAAC,EAAE,MAAM,iBAqCxB"}