hardhat 3.3.0 → 3.4.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.
Files changed (417) hide show
  1. package/CHANGELOG.md +69 -0
  2. package/dist/src/internal/builtin-plugins/artifacts/artifact-manager.d.ts.map +1 -1
  3. package/dist/src/internal/builtin-plugins/artifacts/artifact-manager.js +6 -14
  4. package/dist/src/internal/builtin-plugins/artifacts/artifact-manager.js.map +1 -1
  5. package/dist/src/internal/builtin-plugins/artifacts/hook-handlers/hre.d.ts.map +1 -1
  6. package/dist/src/internal/builtin-plugins/artifacts/hook-handlers/hre.js +10 -10
  7. package/dist/src/internal/builtin-plugins/artifacts/hook-handlers/hre.js.map +1 -1
  8. package/dist/src/internal/builtin-plugins/clean/index.js +1 -1
  9. package/dist/src/internal/builtin-plugins/clean/index.js.map +1 -1
  10. package/dist/src/internal/builtin-plugins/console/index.js +1 -1
  11. package/dist/src/internal/builtin-plugins/console/index.js.map +1 -1
  12. package/dist/src/internal/builtin-plugins/console/task-action.d.ts.map +1 -1
  13. package/dist/src/internal/builtin-plugins/console/task-action.js +2 -1
  14. package/dist/src/internal/builtin-plugins/console/task-action.js.map +1 -1
  15. package/dist/src/internal/builtin-plugins/coverage/hook-handlers/solidity.js +2 -2
  16. package/dist/src/internal/builtin-plugins/coverage/hook-handlers/solidity.js.map +1 -1
  17. package/dist/src/internal/builtin-plugins/flatten/index.js +1 -1
  18. package/dist/src/internal/builtin-plugins/flatten/index.js.map +1 -1
  19. package/dist/src/internal/builtin-plugins/gas-analytics/exports.d.ts +1 -1
  20. package/dist/src/internal/builtin-plugins/gas-analytics/exports.d.ts.map +1 -1
  21. package/dist/src/internal/builtin-plugins/gas-analytics/exports.js +1 -1
  22. package/dist/src/internal/builtin-plugins/gas-analytics/exports.js.map +1 -1
  23. package/dist/src/internal/builtin-plugins/gas-analytics/function-gas-snapshots.d.ts.map +1 -1
  24. package/dist/src/internal/builtin-plugins/gas-analytics/function-gas-snapshots.js +1 -2
  25. package/dist/src/internal/builtin-plugins/gas-analytics/function-gas-snapshots.js.map +1 -1
  26. package/dist/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.d.ts +7 -5
  27. package/dist/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.d.ts.map +1 -1
  28. package/dist/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.js +60 -44
  29. package/dist/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.js.map +1 -1
  30. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/accessors.d.ts +6 -0
  31. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/accessors.d.ts.map +1 -0
  32. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/accessors.js +14 -0
  33. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/accessors.js.map +1 -0
  34. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/compat.d.ts +4 -0
  35. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/compat.d.ts.map +1 -0
  36. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/compat.js +27 -0
  37. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/compat.js.map +1 -0
  38. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/utils.d.ts +36 -0
  39. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/utils.d.ts.map +1 -0
  40. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/utils.js +86 -0
  41. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/utils.js.map +1 -0
  42. package/dist/src/internal/builtin-plugins/gas-analytics/hook-handlers/hre.js +1 -1
  43. package/dist/src/internal/builtin-plugins/gas-analytics/hook-handlers/hre.js.map +1 -1
  44. package/dist/src/internal/builtin-plugins/gas-analytics/hook-handlers/test.js +1 -1
  45. package/dist/src/internal/builtin-plugins/gas-analytics/hook-handlers/test.js.map +1 -1
  46. package/dist/src/internal/builtin-plugins/gas-analytics/index.d.ts.map +1 -1
  47. package/dist/src/internal/builtin-plugins/gas-analytics/index.js +2 -2
  48. package/dist/src/internal/builtin-plugins/gas-analytics/index.js.map +1 -1
  49. package/dist/src/internal/builtin-plugins/gas-analytics/snapshot-cheatcodes.d.ts.map +1 -1
  50. package/dist/src/internal/builtin-plugins/gas-analytics/snapshot-cheatcodes.js +1 -2
  51. package/dist/src/internal/builtin-plugins/gas-analytics/snapshot-cheatcodes.js.map +1 -1
  52. package/dist/src/internal/builtin-plugins/gas-analytics/types.d.ts +10 -2
  53. package/dist/src/internal/builtin-plugins/gas-analytics/types.d.ts.map +1 -1
  54. package/dist/src/internal/builtin-plugins/network-manager/edr/edr-provider.js +4 -4
  55. package/dist/src/internal/builtin-plugins/network-manager/edr/edr-provider.js.map +1 -1
  56. package/dist/src/internal/builtin-plugins/network-manager/edr/genesis-state.js +1 -1
  57. package/dist/src/internal/builtin-plugins/network-manager/edr/genesis-state.js.map +1 -1
  58. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/solidity-stack-trace.d.ts +4 -4
  59. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/solidity-stack-trace.d.ts.map +1 -1
  60. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/solidity-stack-trace.js +2 -2
  61. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/solidity-stack-trace.js.map +1 -1
  62. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/stack-trace-solidity-errors.d.ts +6 -3
  63. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/stack-trace-solidity-errors.d.ts.map +1 -1
  64. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/stack-trace-solidity-errors.js +23 -5
  65. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/stack-trace-solidity-errors.js.map +1 -1
  66. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/convert-to-edr.d.ts.map +1 -1
  67. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/convert-to-edr.js +3 -2
  68. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/convert-to-edr.js.map +1 -1
  69. package/dist/src/internal/builtin-plugins/network-manager/hook-handlers/hre.d.ts.map +1 -1
  70. package/dist/src/internal/builtin-plugins/network-manager/hook-handlers/hre.js +24 -2
  71. package/dist/src/internal/builtin-plugins/network-manager/hook-handlers/hre.js.map +1 -1
  72. package/dist/src/internal/builtin-plugins/network-manager/hook-handlers/network.d.ts.map +1 -1
  73. package/dist/src/internal/builtin-plugins/network-manager/hook-handlers/network.js +19 -11
  74. package/dist/src/internal/builtin-plugins/network-manager/hook-handlers/network.js.map +1 -1
  75. package/dist/src/internal/builtin-plugins/network-manager/http-provider.d.ts.map +1 -1
  76. package/dist/src/internal/builtin-plugins/network-manager/http-provider.js +2 -2
  77. package/dist/src/internal/builtin-plugins/network-manager/http-provider.js.map +1 -1
  78. package/dist/src/internal/builtin-plugins/network-manager/network-manager.d.ts +11 -1
  79. package/dist/src/internal/builtin-plugins/network-manager/network-manager.d.ts.map +1 -1
  80. package/dist/src/internal/builtin-plugins/network-manager/network-manager.js +91 -24
  81. package/dist/src/internal/builtin-plugins/network-manager/network-manager.js.map +1 -1
  82. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/hd-wallet-handler.d.ts.map +1 -1
  83. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/hd-wallet-handler.js.map +1 -1
  84. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/local-accounts.d.ts +1 -0
  85. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/local-accounts.d.ts.map +1 -1
  86. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/local-accounts.js +22 -8
  87. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/local-accounts.js.map +1 -1
  88. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/sender.d.ts +2 -0
  89. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/sender.d.ts.map +1 -1
  90. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/sender.js +19 -12
  91. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/sender.js.map +1 -1
  92. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/chain-id/chain-id-handler.d.ts +1 -0
  93. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/chain-id/chain-id-handler.d.ts.map +1 -1
  94. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/chain-id/chain-id-handler.js +9 -3
  95. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/chain-id/chain-id-handler.js.map +1 -1
  96. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-handler.d.ts +2 -0
  97. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-handler.d.ts.map +1 -1
  98. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-handler.js +5 -1
  99. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-handler.js.map +1 -1
  100. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-price-handler.d.ts +1 -0
  101. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-price-handler.d.ts.map +1 -1
  102. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-price-handler.js +5 -1
  103. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-price-handler.js.map +1 -1
  104. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-handler.d.ts +1 -0
  105. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-handler.d.ts.map +1 -1
  106. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-handler.js +5 -1
  107. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-handler.js.map +1 -1
  108. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-price-handler.d.ts +1 -0
  109. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-price-handler.d.ts.map +1 -1
  110. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-price-handler.js +5 -1
  111. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-price-handler.js.map +1 -1
  112. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/types.d.ts +9 -0
  113. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/types.d.ts.map +1 -1
  114. package/dist/src/internal/builtin-plugins/network-manager/revert-error-code.d.ts +2 -0
  115. package/dist/src/internal/builtin-plugins/network-manager/revert-error-code.d.ts.map +1 -0
  116. package/dist/src/internal/builtin-plugins/network-manager/revert-error-code.js +3 -0
  117. package/dist/src/internal/builtin-plugins/network-manager/revert-error-code.js.map +1 -0
  118. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/config.d.ts +1 -1
  119. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/config.d.ts.map +1 -1
  120. package/dist/src/internal/builtin-plugins/network-manager/type-validation.d.ts.map +1 -1
  121. package/dist/src/internal/builtin-plugins/network-manager/type-validation.js +2 -1
  122. package/dist/src/internal/builtin-plugins/network-manager/type-validation.js.map +1 -1
  123. package/dist/src/internal/builtin-plugins/node/helpers.js +1 -1
  124. package/dist/src/internal/builtin-plugins/node/helpers.js.map +1 -1
  125. package/dist/src/internal/builtin-plugins/node/index.js +1 -1
  126. package/dist/src/internal/builtin-plugins/node/index.js.map +1 -1
  127. package/dist/src/internal/builtin-plugins/node/json-rpc/handler.d.ts.map +1 -1
  128. package/dist/src/internal/builtin-plugins/node/json-rpc/handler.js +8 -2
  129. package/dist/src/internal/builtin-plugins/node/json-rpc/handler.js.map +1 -1
  130. package/dist/src/internal/builtin-plugins/node/task-action.js +2 -2
  131. package/dist/src/internal/builtin-plugins/node/task-action.js.map +1 -1
  132. package/dist/src/internal/builtin-plugins/run/index.js +1 -1
  133. package/dist/src/internal/builtin-plugins/run/index.js.map +1 -1
  134. package/dist/src/internal/builtin-plugins/run/task-action.d.ts.map +1 -1
  135. package/dist/src/internal/builtin-plugins/run/task-action.js +2 -1
  136. package/dist/src/internal/builtin-plugins/run/task-action.js.map +1 -1
  137. package/dist/src/internal/builtin-plugins/solidity/build-system/artifacts.d.ts.map +1 -1
  138. package/dist/src/internal/builtin-plugins/solidity/build-system/artifacts.js +3 -0
  139. package/dist/src/internal/builtin-plugins/solidity/build-system/artifacts.js.map +1 -1
  140. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.d.ts +1 -1
  141. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.d.ts.map +1 -1
  142. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.js +125 -39
  143. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.js.map +1 -1
  144. package/dist/src/internal/builtin-plugins/solidity/build-system/cache.d.ts +2 -0
  145. package/dist/src/internal/builtin-plugins/solidity/build-system/cache.d.ts.map +1 -1
  146. package/dist/src/internal/builtin-plugins/solidity/build-system/cache.js.map +1 -1
  147. package/dist/src/internal/builtin-plugins/solidity/build-system/compilation-job.d.ts +3 -1
  148. package/dist/src/internal/builtin-plugins/solidity/build-system/compilation-job.d.ts.map +1 -1
  149. package/dist/src/internal/builtin-plugins/solidity/build-system/compilation-job.js +12 -4
  150. package/dist/src/internal/builtin-plugins/solidity/build-system/compilation-job.js.map +1 -1
  151. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.js +4 -4
  152. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.js.map +1 -1
  153. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/index.js +2 -2
  154. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/index.js.map +1 -1
  155. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/solcjs-runner.js +1 -1
  156. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/solcjs-runner.js.map +1 -1
  157. package/dist/src/internal/builtin-plugins/solidity/build-system/dependency-graph-building.js +1 -1
  158. package/dist/src/internal/builtin-plugins/solidity/build-system/dependency-graph-building.js.map +1 -1
  159. package/dist/src/internal/builtin-plugins/solidity/build-system/dependency-graph.d.ts.map +1 -1
  160. package/dist/src/internal/builtin-plugins/solidity/build-system/dependency-graph.js +5 -5
  161. package/dist/src/internal/builtin-plugins/solidity/build-system/dependency-graph.js.map +1 -1
  162. package/dist/src/internal/builtin-plugins/solidity/build-system/read-source-file.js +1 -1
  163. package/dist/src/internal/builtin-plugins/solidity/build-system/read-source-file.js.map +1 -1
  164. package/dist/src/internal/builtin-plugins/solidity/build-system/resolver/dependency-resolver.js +10 -10
  165. package/dist/src/internal/builtin-plugins/solidity/build-system/resolver/dependency-resolver.js.map +1 -1
  166. package/dist/src/internal/builtin-plugins/solidity/build-system/resolver/remapped-npm-packages-graph.js +1 -1
  167. package/dist/src/internal/builtin-plugins/solidity/build-system/resolver/remapped-npm-packages-graph.js.map +1 -1
  168. package/dist/src/internal/builtin-plugins/solidity/build-system/solc-info.d.ts.map +1 -1
  169. package/dist/src/internal/builtin-plugins/solidity/build-system/solc-info.js +1 -0
  170. package/dist/src/internal/builtin-plugins/solidity/build-system/solc-info.js.map +1 -1
  171. package/dist/src/internal/builtin-plugins/solidity/build-system/warning-suppression.js +2 -2
  172. package/dist/src/internal/builtin-plugins/solidity/build-system/warning-suppression.js.map +1 -1
  173. package/dist/src/internal/builtin-plugins/solidity/config.d.ts.map +1 -1
  174. package/dist/src/internal/builtin-plugins/solidity/config.js +19 -16
  175. package/dist/src/internal/builtin-plugins/solidity/config.js.map +1 -1
  176. package/dist/src/internal/builtin-plugins/solidity/constants.d.ts +3 -0
  177. package/dist/src/internal/builtin-plugins/solidity/constants.d.ts.map +1 -0
  178. package/dist/src/internal/builtin-plugins/solidity/constants.js +19 -0
  179. package/dist/src/internal/builtin-plugins/solidity/constants.js.map +1 -0
  180. package/dist/src/internal/builtin-plugins/solidity/hook-handlers/config.js +1 -1
  181. package/dist/src/internal/builtin-plugins/solidity/hook-handlers/config.js.map +1 -1
  182. package/dist/src/internal/builtin-plugins/solidity/hook-handlers/hre.d.ts.map +1 -1
  183. package/dist/src/internal/builtin-plugins/solidity/hook-handlers/hre.js +10 -10
  184. package/dist/src/internal/builtin-plugins/solidity/hook-handlers/hre.js.map +1 -1
  185. package/dist/src/internal/builtin-plugins/solidity/index.js +1 -1
  186. package/dist/src/internal/builtin-plugins/solidity/index.js.map +1 -1
  187. package/dist/src/internal/builtin-plugins/solidity/solidity-hooks.js +1 -1
  188. package/dist/src/internal/builtin-plugins/solidity/solidity-hooks.js.map +1 -1
  189. package/dist/src/internal/builtin-plugins/solidity/tasks/build.d.ts +1 -1
  190. package/dist/src/internal/builtin-plugins/solidity/tasks/build.d.ts.map +1 -1
  191. package/dist/src/internal/builtin-plugins/solidity/tasks/build.js +225 -55
  192. package/dist/src/internal/builtin-plugins/solidity/tasks/build.js.map +1 -1
  193. package/dist/src/internal/builtin-plugins/solidity/type-extensions.d.ts +30 -4
  194. package/dist/src/internal/builtin-plugins/solidity/type-extensions.d.ts.map +1 -1
  195. package/dist/src/internal/builtin-plugins/solidity/type-extensions.js.map +1 -1
  196. package/dist/src/internal/builtin-plugins/solidity-test/config.d.ts.map +1 -1
  197. package/dist/src/internal/builtin-plugins/solidity-test/config.js +5 -3
  198. package/dist/src/internal/builtin-plugins/solidity-test/config.js.map +1 -1
  199. package/dist/src/internal/builtin-plugins/solidity-test/edr-artifacts.js +2 -2
  200. package/dist/src/internal/builtin-plugins/solidity-test/edr-artifacts.js.map +1 -1
  201. package/dist/src/internal/builtin-plugins/solidity-test/helpers.d.ts +0 -2
  202. package/dist/src/internal/builtin-plugins/solidity-test/helpers.d.ts.map +1 -1
  203. package/dist/src/internal/builtin-plugins/solidity-test/helpers.js +0 -3
  204. package/dist/src/internal/builtin-plugins/solidity-test/helpers.js.map +1 -1
  205. package/dist/src/internal/builtin-plugins/solidity-test/hook-handlers/config.js +1 -1
  206. package/dist/src/internal/builtin-plugins/solidity-test/hook-handlers/config.js.map +1 -1
  207. package/dist/src/internal/builtin-plugins/solidity-test/hook-handlers/test.js +1 -1
  208. package/dist/src/internal/builtin-plugins/solidity-test/hook-handlers/test.js.map +1 -1
  209. package/dist/src/internal/builtin-plugins/solidity-test/index.js +1 -1
  210. package/dist/src/internal/builtin-plugins/solidity-test/index.js.map +1 -1
  211. package/dist/src/internal/builtin-plugins/solidity-test/reporter.js +1 -1
  212. package/dist/src/internal/builtin-plugins/solidity-test/reporter.js.map +1 -1
  213. package/dist/src/internal/builtin-plugins/solidity-test/runner.d.ts +2 -8
  214. package/dist/src/internal/builtin-plugins/solidity-test/runner.d.ts.map +1 -1
  215. package/dist/src/internal/builtin-plugins/solidity-test/runner.js +47 -50
  216. package/dist/src/internal/builtin-plugins/solidity-test/runner.js.map +1 -1
  217. package/dist/src/internal/builtin-plugins/solidity-test/stack-trace-solidity-errors.d.ts.map +1 -1
  218. package/dist/src/internal/builtin-plugins/solidity-test/stack-trace-solidity-errors.js +11 -2
  219. package/dist/src/internal/builtin-plugins/solidity-test/stack-trace-solidity-errors.js.map +1 -1
  220. package/dist/src/internal/builtin-plugins/solidity-test/task-action.d.ts.map +1 -1
  221. package/dist/src/internal/builtin-plugins/solidity-test/task-action.js +108 -32
  222. package/dist/src/internal/builtin-plugins/solidity-test/task-action.js.map +1 -1
  223. package/dist/src/internal/builtin-plugins/solidity-test/type-extensions.d.ts +1 -2
  224. package/dist/src/internal/builtin-plugins/solidity-test/type-extensions.d.ts.map +1 -1
  225. package/dist/src/internal/builtin-plugins/telemetry/index.js +1 -1
  226. package/dist/src/internal/builtin-plugins/telemetry/index.js.map +1 -1
  227. package/dist/src/internal/builtin-plugins/test/hook-handlers/config.js +1 -1
  228. package/dist/src/internal/builtin-plugins/test/hook-handlers/config.js.map +1 -1
  229. package/dist/src/internal/builtin-plugins/test/index.js +1 -1
  230. package/dist/src/internal/builtin-plugins/test/index.js.map +1 -1
  231. package/dist/src/internal/builtin-plugins/test/task-action.d.ts.map +1 -1
  232. package/dist/src/internal/builtin-plugins/test/task-action.js +3 -4
  233. package/dist/src/internal/builtin-plugins/test/task-action.js.map +1 -1
  234. package/dist/src/internal/cli/init/init.js +1 -1
  235. package/dist/src/internal/cli/init/init.js.map +1 -1
  236. package/dist/src/internal/cli/main.d.ts.map +1 -1
  237. package/dist/src/internal/cli/main.js +12 -2
  238. package/dist/src/internal/cli/main.js.map +1 -1
  239. package/dist/src/internal/cli/node-version.d.ts.map +1 -1
  240. package/dist/src/internal/cli/node-version.js +3 -0
  241. package/dist/src/internal/cli/node-version.js.map +1 -1
  242. package/dist/src/internal/cli/telemetry/analytics/analytics.js +2 -2
  243. package/dist/src/internal/cli/telemetry/analytics/analytics.js.map +1 -1
  244. package/dist/src/internal/cli/telemetry/error-reporter/global-error-handlers.d.ts +6 -0
  245. package/dist/src/internal/cli/telemetry/error-reporter/global-error-handlers.d.ts.map +1 -0
  246. package/dist/src/internal/cli/telemetry/error-reporter/global-error-handlers.js +47 -0
  247. package/dist/src/internal/cli/telemetry/error-reporter/global-error-handlers.js.map +1 -0
  248. package/dist/src/internal/cli/telemetry/error-reporter/reporter.d.ts +27 -0
  249. package/dist/src/internal/cli/telemetry/error-reporter/reporter.d.ts.map +1 -0
  250. package/dist/src/internal/cli/telemetry/error-reporter/reporter.js +40 -0
  251. package/dist/src/internal/cli/telemetry/error-reporter/reporter.js.map +1 -0
  252. package/dist/src/internal/cli/telemetry/sentry/anonymizer.js +1 -1
  253. package/dist/src/internal/cli/telemetry/sentry/anonymizer.js.map +1 -1
  254. package/dist/src/internal/cli/telemetry/sentry/init.d.ts +0 -8
  255. package/dist/src/internal/cli/telemetry/sentry/init.d.ts.map +1 -1
  256. package/dist/src/internal/cli/telemetry/sentry/init.js +1 -37
  257. package/dist/src/internal/cli/telemetry/sentry/init.js.map +1 -1
  258. package/dist/src/internal/cli/telemetry/sentry/reporter.d.ts +8 -2
  259. package/dist/src/internal/cli/telemetry/sentry/reporter.d.ts.map +1 -1
  260. package/dist/src/internal/cli/telemetry/sentry/reporter.js +18 -12
  261. package/dist/src/internal/cli/telemetry/sentry/reporter.js.map +1 -1
  262. package/dist/src/internal/cli/telemetry/sentry/transport.js +1 -1
  263. package/dist/src/internal/cli/telemetry/sentry/transport.js.map +1 -1
  264. package/dist/src/internal/cli/telemetry/telemetry-permissions.js +1 -1
  265. package/dist/src/internal/cli/telemetry/telemetry-permissions.js.map +1 -1
  266. package/dist/src/internal/config-loading.js +3 -3
  267. package/dist/src/internal/config-loading.js.map +1 -1
  268. package/dist/src/internal/core/configuration-variables.d.ts.map +1 -1
  269. package/dist/src/internal/core/configuration-variables.js +1 -1
  270. package/dist/src/internal/core/configuration-variables.js.map +1 -1
  271. package/dist/src/internal/core/hook-manager.js +3 -3
  272. package/dist/src/internal/core/hook-manager.js.map +1 -1
  273. package/dist/src/internal/core/hre.d.ts.map +1 -1
  274. package/dist/src/internal/core/hre.js +3 -3
  275. package/dist/src/internal/core/hre.js.map +1 -1
  276. package/dist/src/internal/core/plugins/resolve-plugin-list.js +1 -1
  277. package/dist/src/internal/core/plugins/resolve-plugin-list.js.map +1 -1
  278. package/dist/src/internal/core/tasks/resolved-task.js +4 -4
  279. package/dist/src/internal/core/tasks/resolved-task.js.map +1 -1
  280. package/dist/src/internal/core/user-interruptions.js +9 -9
  281. package/dist/src/internal/core/user-interruptions.js.map +1 -1
  282. package/dist/src/internal/hre-initialization.js +1 -1
  283. package/dist/src/internal/hre-initialization.js.map +1 -1
  284. package/dist/src/types/artifacts.d.ts +5 -4
  285. package/dist/src/types/artifacts.d.ts.map +1 -1
  286. package/dist/src/types/network.d.ts +39 -0
  287. package/dist/src/types/network.d.ts.map +1 -1
  288. package/dist/src/types/solidity/build-system.d.ts +66 -3
  289. package/dist/src/types/solidity/build-system.d.ts.map +1 -1
  290. package/dist/src/types/solidity/build-system.js.map +1 -1
  291. package/dist/src/types/solidity/compilation-job.d.ts +6 -0
  292. package/dist/src/types/solidity/compilation-job.d.ts.map +1 -1
  293. package/dist/src/types/solidity/solidity-artifacts.d.ts +14 -0
  294. package/dist/src/types/solidity/solidity-artifacts.d.ts.map +1 -1
  295. package/package.json +9 -9
  296. package/src/internal/builtin-plugins/artifacts/artifact-manager.ts +10 -16
  297. package/src/internal/builtin-plugins/artifacts/hook-handlers/hre.ts +16 -10
  298. package/src/internal/builtin-plugins/clean/index.ts +1 -1
  299. package/src/internal/builtin-plugins/console/index.ts +1 -1
  300. package/src/internal/builtin-plugins/console/task-action.ts +2 -1
  301. package/src/internal/builtin-plugins/coverage/hook-handlers/solidity.ts +2 -2
  302. package/src/internal/builtin-plugins/flatten/index.ts +1 -1
  303. package/src/internal/builtin-plugins/gas-analytics/exports.ts +1 -1
  304. package/src/internal/builtin-plugins/gas-analytics/function-gas-snapshots.ts +1 -2
  305. package/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.ts +100 -61
  306. package/src/internal/builtin-plugins/gas-analytics/helpers/accessors.ts +31 -0
  307. package/src/internal/builtin-plugins/gas-analytics/helpers/compat.ts +37 -0
  308. package/src/internal/builtin-plugins/gas-analytics/helpers/utils.ts +112 -0
  309. package/src/internal/builtin-plugins/gas-analytics/hook-handlers/hre.ts +1 -1
  310. package/src/internal/builtin-plugins/gas-analytics/hook-handlers/test.ts +1 -1
  311. package/src/internal/builtin-plugins/gas-analytics/index.ts +4 -2
  312. package/src/internal/builtin-plugins/gas-analytics/snapshot-cheatcodes.ts +1 -2
  313. package/src/internal/builtin-plugins/gas-analytics/types.ts +11 -2
  314. package/src/internal/builtin-plugins/network-manager/edr/edr-provider.ts +4 -4
  315. package/src/internal/builtin-plugins/network-manager/edr/genesis-state.ts +1 -1
  316. package/src/internal/builtin-plugins/network-manager/edr/stack-traces/solidity-stack-trace.ts +4 -0
  317. package/src/internal/builtin-plugins/network-manager/edr/stack-traces/stack-trace-solidity-errors.ts +28 -4
  318. package/src/internal/builtin-plugins/network-manager/edr/utils/convert-to-edr.ts +3 -2
  319. package/src/internal/builtin-plugins/network-manager/hook-handlers/hre.ts +31 -2
  320. package/src/internal/builtin-plugins/network-manager/hook-handlers/network.ts +22 -16
  321. package/src/internal/builtin-plugins/network-manager/http-provider.ts +6 -2
  322. package/src/internal/builtin-plugins/network-manager/network-manager.ts +139 -32
  323. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/hd-wallet-handler.ts +1 -0
  324. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/local-accounts.ts +30 -13
  325. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/sender.ts +25 -17
  326. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/chain-id/chain-id-handler.ts +13 -5
  327. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-handler.ts +7 -1
  328. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-price-handler.ts +7 -1
  329. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-handler.ts +7 -1
  330. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-price-handler.ts +7 -1
  331. package/src/internal/builtin-plugins/network-manager/request-handlers/types.ts +10 -0
  332. package/src/internal/builtin-plugins/network-manager/revert-error-code.ts +2 -0
  333. package/src/internal/builtin-plugins/network-manager/type-extensions/config.ts +1 -1
  334. package/src/internal/builtin-plugins/network-manager/type-validation.ts +5 -1
  335. package/src/internal/builtin-plugins/node/helpers.ts +1 -1
  336. package/src/internal/builtin-plugins/node/index.ts +1 -1
  337. package/src/internal/builtin-plugins/node/json-rpc/handler.ts +10 -2
  338. package/src/internal/builtin-plugins/node/task-action.ts +2 -2
  339. package/src/internal/builtin-plugins/run/index.ts +1 -1
  340. package/src/internal/builtin-plugins/run/task-action.ts +2 -1
  341. package/src/internal/builtin-plugins/solidity/build-system/artifacts.ts +3 -0
  342. package/src/internal/builtin-plugins/solidity/build-system/build-system.ts +176 -45
  343. package/src/internal/builtin-plugins/solidity/build-system/cache.ts +2 -0
  344. package/src/internal/builtin-plugins/solidity/build-system/compilation-job.ts +16 -10
  345. package/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.ts +4 -4
  346. package/src/internal/builtin-plugins/solidity/build-system/compiler/index.ts +2 -2
  347. package/src/internal/builtin-plugins/solidity/build-system/compiler/solcjs-runner.ts +1 -1
  348. package/src/internal/builtin-plugins/solidity/build-system/dependency-graph-building.ts +1 -1
  349. package/src/internal/builtin-plugins/solidity/build-system/dependency-graph.ts +9 -7
  350. package/src/internal/builtin-plugins/solidity/build-system/read-source-file.ts +2 -2
  351. package/src/internal/builtin-plugins/solidity/build-system/resolver/dependency-resolver.ts +11 -11
  352. package/src/internal/builtin-plugins/solidity/build-system/resolver/remapped-npm-packages-graph.ts +1 -1
  353. package/src/internal/builtin-plugins/solidity/build-system/solc-info.ts +1 -0
  354. package/src/internal/builtin-plugins/solidity/build-system/warning-suppression.ts +2 -2
  355. package/src/internal/builtin-plugins/solidity/config.ts +23 -13
  356. package/src/internal/builtin-plugins/solidity/constants.ts +21 -0
  357. package/src/internal/builtin-plugins/solidity/hook-handlers/config.ts +1 -1
  358. package/src/internal/builtin-plugins/solidity/hook-handlers/hre.ts +14 -10
  359. package/src/internal/builtin-plugins/solidity/index.ts +1 -1
  360. package/src/internal/builtin-plugins/solidity/solidity-hooks.ts +1 -1
  361. package/src/internal/builtin-plugins/solidity/tasks/build.ts +359 -74
  362. package/src/internal/builtin-plugins/solidity/type-extensions.ts +38 -8
  363. package/src/internal/builtin-plugins/solidity-test/config.ts +11 -2
  364. package/src/internal/builtin-plugins/solidity-test/edr-artifacts.ts +2 -2
  365. package/src/internal/builtin-plugins/solidity-test/helpers.ts +0 -7
  366. package/src/internal/builtin-plugins/solidity-test/hook-handlers/config.ts +1 -1
  367. package/src/internal/builtin-plugins/solidity-test/hook-handlers/test.ts +1 -1
  368. package/src/internal/builtin-plugins/solidity-test/index.ts +1 -1
  369. package/src/internal/builtin-plugins/solidity-test/reporter.ts +1 -1
  370. package/src/internal/builtin-plugins/solidity-test/runner.ts +64 -83
  371. package/src/internal/builtin-plugins/solidity-test/stack-trace-solidity-errors.ts +15 -2
  372. package/src/internal/builtin-plugins/solidity-test/task-action.ts +161 -43
  373. package/src/internal/builtin-plugins/solidity-test/type-extensions.ts +1 -2
  374. package/src/internal/builtin-plugins/telemetry/index.ts +1 -1
  375. package/src/internal/builtin-plugins/test/hook-handlers/config.ts +1 -1
  376. package/src/internal/builtin-plugins/test/index.ts +1 -1
  377. package/src/internal/builtin-plugins/test/task-action.ts +3 -4
  378. package/src/internal/cli/init/init.ts +1 -1
  379. package/src/internal/cli/main.ts +19 -3
  380. package/src/internal/cli/node-version.ts +3 -0
  381. package/src/internal/cli/telemetry/analytics/analytics.ts +2 -2
  382. package/src/internal/cli/telemetry/error-reporter/global-error-handlers.ts +64 -0
  383. package/src/internal/cli/telemetry/error-reporter/reporter.ts +49 -0
  384. package/src/internal/cli/telemetry/sentry/anonymizer.ts +1 -1
  385. package/src/internal/cli/telemetry/sentry/init.ts +2 -62
  386. package/src/internal/cli/telemetry/sentry/reporter.ts +27 -15
  387. package/src/internal/cli/telemetry/sentry/transport.ts +1 -1
  388. package/src/internal/cli/telemetry/telemetry-permissions.ts +1 -1
  389. package/src/internal/config-loading.ts +3 -3
  390. package/src/internal/core/configuration-variables.ts +19 -18
  391. package/src/internal/core/hook-manager.ts +3 -3
  392. package/src/internal/core/hre.ts +5 -3
  393. package/src/internal/core/plugins/resolve-plugin-list.ts +1 -1
  394. package/src/internal/core/tasks/resolved-task.ts +4 -4
  395. package/src/internal/core/user-interruptions.ts +9 -9
  396. package/src/internal/hre-initialization.ts +1 -1
  397. package/src/types/artifacts.ts +5 -4
  398. package/src/types/network.ts +48 -0
  399. package/src/types/solidity/build-system.ts +66 -3
  400. package/src/types/solidity/compilation-job.ts +7 -0
  401. package/src/types/solidity/solidity-artifacts.ts +16 -0
  402. package/templates/hardhat-2/04-mocha-viem-ts/package.json +1 -1
  403. package/templates/hardhat-3/01-node-test-runner-viem/gitignore +11 -0
  404. package/templates/hardhat-3/01-node-test-runner-viem/package.json +12 -12
  405. package/templates/hardhat-3/01-node-test-runner-viem/scripts/send-op-tx.ts +1 -1
  406. package/templates/hardhat-3/01-node-test-runner-viem/test/Counter.ts +1 -1
  407. package/templates/hardhat-3/02-mocha-ethers/gitignore +11 -0
  408. package/templates/hardhat-3/02-mocha-ethers/package.json +14 -14
  409. package/templates/hardhat-3/02-mocha-ethers/scripts/send-op-tx.ts +1 -1
  410. package/templates/hardhat-3/02-mocha-ethers/test/Counter.ts +1 -1
  411. package/templates/hardhat-3/03-minimal/gitignore +11 -0
  412. package/templates/hardhat-3/03-minimal/package.json +1 -1
  413. package/dist/src/internal/builtin-plugins/gas-analytics/helpers.d.ts +0 -14
  414. package/dist/src/internal/builtin-plugins/gas-analytics/helpers.d.ts.map +0 -1
  415. package/dist/src/internal/builtin-plugins/gas-analytics/helpers.js +0 -55
  416. package/dist/src/internal/builtin-plugins/gas-analytics/helpers.js.map +0 -1
  417. package/src/internal/builtin-plugins/gas-analytics/helpers.ts +0 -96
@@ -43,7 +43,13 @@ export interface BuildOptions {
43
43
  quiet?: boolean;
44
44
 
45
45
  /**
46
- * Whether to compile contracts or tests. Defaults to contracts
46
+ * Whether to compile contracts or tests. Defaults to contracts.
47
+ *
48
+ * When `solidity.splitTestsCompilation` is `false` (the default), only
49
+ * `"contracts"` is accepted.
50
+ *
51
+ * When `solidity.splitTestsCompilation` is `true`, both scopes are valid
52
+ * and produce separate compilation passes.
47
53
  */
48
54
  scope?: BuildScope;
49
55
  }
@@ -272,6 +278,16 @@ export interface SolidityBuildSystem {
272
278
  * The root files are either absolute paths or
273
279
  * `npm:<package-name>/<file-path>` URIs.
274
280
  *
281
+ * When `solidity.splitTestsCompilation` is `false`, contracts and tests are
282
+ * compiled together and `scope: "contracts"` returns every build root:
283
+ * contract roots, test roots, and `npmFilesToBuild` roots.
284
+ *
285
+ * Calling this method with `scope: "tests"` in this mode is a logic error and
286
+ * throws a `HardhatError`.
287
+ *
288
+ * When `solidity.splitTestsCompilation` is `true`, `scope: "contracts"`
289
+ * returns only contract roots and `scope: "tests"` returns only test roots.
290
+ *
275
291
  * @returns An array of root file paths.
276
292
  */
277
293
  getRootFilePaths(options?: { scope?: BuildScope }): Promise<string[]>;
@@ -284,6 +300,15 @@ export interface SolidityBuildSystem {
284
300
  /**
285
301
  * Builds the provided files, generating their compilation artifacts.
286
302
  *
303
+ * When `solidity.splitTestsCompilation` is `false`, this method rejects
304
+ * `scope: "tests"` as a logic error and throws a `HardhatError`
305
+ *
306
+ * In this mode, callers must use `scope: "contracts"` and contracts and tests
307
+ * are built together, emitting their artifacts into the same directory.
308
+ *
309
+ * When `solidity.splitTestsCompilation` is `true`, both scopes are valid
310
+ * and are built into separate artifact directories.
311
+ *
287
312
  * @param rootFilePaths The files to build, which can be either absolute paths
288
313
  * or `npm:<package-name>/<file-path>` URIs.
289
314
  * @param options The options to use when building the files.
@@ -313,6 +338,9 @@ export interface SolidityBuildSystem {
313
338
  * can be returned for multiple files, so you should deduplicate the results
314
339
  * before using them.
315
340
  *
341
+ * When `solidity.splitTestsCompilation` is `false`, this method rejects
342
+ * `scope: "tests"` as a logic error and throws a `HardhatError`.
343
+ *
316
344
  * @param rootFilePaths The files to analyze, which can be either absolute
317
345
  * paths or `npm:<package-name>/<file-path>` URIs.
318
346
  * @param options The options to use when analyzing the files.
@@ -358,6 +386,13 @@ export interface SolidityBuildSystem {
358
386
  /**
359
387
  * Emits the artifacts of the given compilation job.
360
388
  *
389
+ * When `solidity.splitTestsCompilation` is `false`, this method rejects
390
+ * `scope: "tests"` as a logic error and throws a `HardhatError`
391
+ *
392
+ * Artifacts for both contracts and tests are emitted under the main artifacts
393
+ * directory when built with `scope: "contracts"` and `splitTestsCompilation`
394
+ * `false`.
395
+ *
361
396
  * @param compilationJob The compilation job to emit the artifacts of.
362
397
  * @param compilerOutput The result of running the compilation job.
363
398
  * @returns A map from user source name to the absolute paths of the
@@ -379,7 +414,25 @@ export interface SolidityBuildSystem {
379
414
  * This method should only be used after a complete build has succeeded, as
380
415
  * it relies on the build system to have generated all the necessary artifact
381
416
  * files.
382
-
417
+ *
418
+ * When `solidity.splitTestsCompilation` is `false`, this method rejects
419
+ * `scope: "tests"` as a logic error and throws a `HardhatError`. Cleanup in
420
+ * this mode operates on the main artifacts directory using `scope:
421
+ * "contracts"`.
422
+ *
423
+ * What is considered a complete build changes according to
424
+ * `splitTestsCompilation`:
425
+ * - When it's `true`
426
+ * - A full "contracts" build is run when `--no-contracts` isn't used, and
427
+ * no explicit contract `files` are provided (i.e. you can still provide
428
+ * explicit test `files`).
429
+ * - A full "tests" build is run when `--no-tests` isn't used, and no
430
+ * explicit test files `files` are provided (i.e. you can still provide
431
+ * explicit contract `files`)
432
+ * - When it's `false`
433
+ * - A full build is when `files`, `--no-contracts`, nor `--no-tests` are
434
+ * used.
435
+ *
383
436
  * @param rootFilePaths All the root files of the project.
384
437
  */
385
438
  cleanupArtifacts(
@@ -405,7 +458,17 @@ export interface SolidityBuildSystem {
405
458
  ): Promise<CompilerOutput>;
406
459
 
407
460
  /**
408
- * Gets the artifacts directory for a given target (contracts/tests)
461
+ * Gets the artifacts directory for a given target (contracts/tests).
462
+ *
463
+ * When `solidity.splitTestsCompilation` is `false`, both scopes return the
464
+ * main artifacts directory, because contracts and tests share it.
465
+ *
466
+ * Unlike the other scope-aware methods, this one does not throw on that mode,
467
+ * as it's a read-only method that can be helpful for plugins.
468
+ *
469
+ * When `solidity.splitTestsCompilation` is `true`, `scope: "contracts"`
470
+ * returns the main artifacts directory and `scope: "tests"` returns a
471
+ * separate test-artifacts directory under the cache path.
409
472
  */
410
473
  getArtifactsDirectory(scope: BuildScope): Promise<string>;
411
474
  }
@@ -1,5 +1,6 @@
1
1
  import type { CompilerInput } from "./compiler-io.js";
2
2
  import type { DependencyGraph } from "./dependency-graph.js";
3
+ import type { ToolVersions } from "./solidity-artifacts.js";
3
4
  import type { SolidityCompilerConfig } from "../config.js";
4
5
 
5
6
  /**
@@ -22,6 +23,12 @@ export interface CompilationJob {
22
23
  */
23
24
  solcLongVersion: string;
24
25
 
26
+ /**
27
+ * The versions to include in the build info, if any.
28
+ * When present, these versions influence the build id.
29
+ */
30
+ toolVersions?: ToolVersions;
31
+
25
32
  /**
26
33
  * Returns the solc input to be used.
27
34
  */
@@ -1,5 +1,13 @@
1
1
  import type { CompilerInput, CompilerOutput } from "./compiler-io.js";
2
2
 
3
+ /**
4
+ * A record with the versions of the different tools used to create a
5
+ * build info.
6
+ */
7
+ export interface ToolVersions {
8
+ readonly hardhat: string;
9
+ }
10
+
3
11
  /**
4
12
  * A SolidityBuildInfo is a file that contains all the information of a solc
5
13
  * run. It includes all the necessary information to recreate that exact same
@@ -43,6 +51,14 @@ export interface SolidityBuildInfo {
43
51
  */
44
52
  readonly compilerType?: string;
45
53
 
54
+ /**
55
+ * Versions of the different tools used to create this build info.
56
+ *
57
+ * Not present if the build profile used to create this build info
58
+ * had `toolVersionsInBuildInfo` as `false`.
59
+ */
60
+ readonly toolVersions?: ToolVersions;
61
+
46
62
  /**
47
63
  * A mapping from user source names to input source names, for the root
48
64
  * files of the build (i.e. the files whose artifacts where being compiled).
@@ -20,6 +20,6 @@
20
20
  "solidity-coverage": "^0.8.0",
21
21
  "ts-node": ">=8.0.0",
22
22
  "typescript": "~5.0.4",
23
- "viem": "^2.43.0"
23
+ "viem": "^2.47.6"
24
24
  }
25
25
  }
@@ -16,5 +16,16 @@
16
16
  # Typechain output
17
17
  /types
18
18
 
19
+ # Environment files
20
+ .env
21
+ .env.*
22
+ !.env.example
23
+
19
24
  # Hardhat coverage reports
20
25
  /coverage
26
+
27
+ # Gas snapshot files
28
+ /.gas-snapshot
29
+
30
+ # Snapshot cheatcodes output
31
+ /snapshots
@@ -5,22 +5,22 @@
5
5
  "description": "A TypeScript Hardhat project using Node Test Runner and Viem",
6
6
  "type": "module",
7
7
  "devDependencies": {
8
- "hardhat": "workspace:^3.3.0",
9
- "@nomicfoundation/hardhat-toolbox-viem": "workspace:^5.0.3",
10
- "@nomicfoundation/hardhat-ignition": "workspace:^3.1.1",
8
+ "hardhat": "workspace:^3.4.1",
9
+ "@nomicfoundation/hardhat-toolbox-viem": "workspace:^5.0.4",
10
+ "@nomicfoundation/hardhat-ignition": "workspace:^3.1.3",
11
11
  "@types/node": "^22.8.5",
12
12
  "forge-std": "foundry-rs/forge-std#v1.9.4",
13
13
  "typescript": "~5.8.0",
14
- "viem": "^2.43.0"
14
+ "viem": "^2.47.6"
15
15
  },
16
16
  "peerDependencies": {
17
- "@nomicfoundation/hardhat-ignition-viem": "workspace:^3.1.1",
18
- "@nomicfoundation/hardhat-keystore": "workspace:^3.0.5",
19
- "@nomicfoundation/hardhat-network-helpers": "workspace:^3.0.4",
20
- "@nomicfoundation/hardhat-node-test-runner": "workspace:^3.0.12",
21
- "@nomicfoundation/hardhat-viem": "workspace:^3.0.4",
22
- "@nomicfoundation/hardhat-viem-assertions": "workspace:^3.0.7",
23
- "@nomicfoundation/hardhat-verify": "workspace:^3.0.13",
24
- "@nomicfoundation/ignition-core": "workspace:^3.1.1"
17
+ "@nomicfoundation/hardhat-ignition-viem": "workspace:^3.1.3",
18
+ "@nomicfoundation/hardhat-keystore": "workspace:^3.0.7",
19
+ "@nomicfoundation/hardhat-network-helpers": "workspace:^3.0.6",
20
+ "@nomicfoundation/hardhat-node-test-runner": "workspace:^3.0.14",
21
+ "@nomicfoundation/hardhat-viem": "workspace:^3.0.6",
22
+ "@nomicfoundation/hardhat-viem-assertions": "workspace:^3.0.9",
23
+ "@nomicfoundation/hardhat-verify": "workspace:^3.0.15",
24
+ "@nomicfoundation/ignition-core": "workspace:^3.1.3"
25
25
  }
26
26
  }
@@ -1,6 +1,6 @@
1
1
  import { network } from "hardhat";
2
2
 
3
- const { viem } = await network.connect({
3
+ const { viem } = await network.create({
4
4
  network: "hardhatOp",
5
5
  chainType: "op",
6
6
  });
@@ -4,7 +4,7 @@ import { describe, it } from "node:test";
4
4
  import { network } from "hardhat";
5
5
 
6
6
  describe("Counter", async function () {
7
- const { viem } = await network.connect();
7
+ const { viem } = await network.create();
8
8
  const publicClient = await viem.getPublicClient();
9
9
 
10
10
  it("Should emit the Increment event when calling the inc() function", async function () {
@@ -16,5 +16,16 @@
16
16
  # Typechain output
17
17
  /types
18
18
 
19
+ # Environment files
20
+ .env
21
+ .env.*
22
+ !.env.example
23
+
19
24
  # Hardhat coverage reports
20
25
  /coverage
26
+
27
+ # Gas snapshot files
28
+ /.gas-snapshot
29
+
30
+ # Snapshot cheatcodes output
31
+ /snapshots
@@ -5,10 +5,10 @@
5
5
  "description": "A TypeScript Hardhat project using Mocha and Ethers.js",
6
6
  "type": "module",
7
7
  "devDependencies": {
8
- "hardhat": "workspace:^3.3.0",
9
- "@nomicfoundation/hardhat-toolbox-mocha-ethers": "workspace:^3.0.3",
10
- "@nomicfoundation/hardhat-ethers": "workspace:^4.0.7",
11
- "@nomicfoundation/hardhat-ignition": "workspace:^3.1.1",
8
+ "hardhat": "workspace:^3.4.1",
9
+ "@nomicfoundation/hardhat-toolbox-mocha-ethers": "workspace:^3.0.4",
10
+ "@nomicfoundation/hardhat-ethers": "workspace:^4.0.9",
11
+ "@nomicfoundation/hardhat-ignition": "workspace:^3.1.3",
12
12
  "@types/chai": "^5.2.3",
13
13
  "@types/chai-as-promised": "^8.0.1",
14
14
  "@types/mocha": ">=10.0.10",
@@ -20,15 +20,15 @@
20
20
  "typescript": "~5.8.0"
21
21
  },
22
22
  "peerDependencies": {
23
- "@nomicfoundation/hardhat-ethers": "workspace:^4.0.7",
24
- "@nomicfoundation/hardhat-ethers-chai-matchers": "workspace:^3.0.4",
25
- "@nomicfoundation/hardhat-ignition": "workspace:^3.1.1",
26
- "@nomicfoundation/hardhat-ignition-ethers": "workspace:^3.1.1",
27
- "@nomicfoundation/hardhat-keystore": "workspace:^3.0.5",
28
- "@nomicfoundation/hardhat-mocha": "workspace:^3.0.15",
29
- "@nomicfoundation/hardhat-network-helpers": "workspace:^3.0.4",
30
- "@nomicfoundation/hardhat-typechain": "workspace:^3.0.5",
31
- "@nomicfoundation/hardhat-verify": "workspace:^3.0.13",
32
- "@nomicfoundation/ignition-core": "workspace:^3.1.1"
23
+ "@nomicfoundation/hardhat-ethers": "workspace:^4.0.9",
24
+ "@nomicfoundation/hardhat-ethers-chai-matchers": "workspace:^3.0.6",
25
+ "@nomicfoundation/hardhat-ignition": "workspace:^3.1.3",
26
+ "@nomicfoundation/hardhat-ignition-ethers": "workspace:^3.1.3",
27
+ "@nomicfoundation/hardhat-keystore": "workspace:^3.0.7",
28
+ "@nomicfoundation/hardhat-mocha": "workspace:^3.0.17",
29
+ "@nomicfoundation/hardhat-network-helpers": "workspace:^3.0.6",
30
+ "@nomicfoundation/hardhat-typechain": "workspace:^3.0.7",
31
+ "@nomicfoundation/hardhat-verify": "workspace:^3.0.15",
32
+ "@nomicfoundation/ignition-core": "workspace:^3.1.3"
33
33
  }
34
34
  }
@@ -1,6 +1,6 @@
1
1
  import { network } from "hardhat";
2
2
 
3
- const { ethers } = await network.connect({
3
+ const { ethers } = await network.create({
4
4
  network: "hardhatOp",
5
5
  chainType: "op",
6
6
  });
@@ -1,7 +1,7 @@
1
1
  import { expect } from "chai";
2
2
  import { network } from "hardhat";
3
3
 
4
- const { ethers } = await network.connect();
4
+ const { ethers } = await network.create();
5
5
 
6
6
  describe("Counter", function () {
7
7
  it("Should emit the Increment event when calling the inc() function", async function () {
@@ -16,5 +16,16 @@
16
16
  # Typechain output
17
17
  /types
18
18
 
19
+ # Environment files
20
+ .env
21
+ .env.*
22
+ !.env.example
23
+
19
24
  # Hardhat coverage reports
20
25
  /coverage
26
+
27
+ # Gas snapshot files
28
+ /.gas-snapshot
29
+
30
+ # Snapshot cheatcodes output
31
+ /snapshots
@@ -5,7 +5,7 @@
5
5
  "description": "A minimal Hardhat project",
6
6
  "type": "module",
7
7
  "devDependencies": {
8
- "hardhat": "workspace:^3.3.0",
8
+ "hardhat": "workspace:^3.4.1",
9
9
  "@types/node": "^22.8.5",
10
10
  "typescript": "~5.8.0"
11
11
  }
@@ -1,14 +0,0 @@
1
- import type { GasAnalyticsManager } from "./types.js";
2
- import type { HookContext } from "../../../types/hooks.js";
3
- import type { HardhatRuntimeEnvironment } from "../../../types/hre.js";
4
- export declare function getGasAnalyticsManager(hookContextOrHre: HookContext | HardhatRuntimeEnvironment): GasAnalyticsManager;
5
- export declare function setGasAnalyticsManager(hre: HardhatRuntimeEnvironment, gasAnalyticsManager: GasAnalyticsManager): void;
6
- export declare function markTestRunStart(id: string): Promise<void>;
7
- export declare function markTestWorkerDone(id: string): Promise<void>;
8
- export declare function markTestRunDone(id: string): Promise<void>;
9
- export declare function formatSectionHeader(sectionName: string, { changedLength, addedLength, removedLength, }: {
10
- changedLength: number;
11
- addedLength: number;
12
- removedLength: number;
13
- }): string;
14
- //# sourceMappingURL=helpers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/gas-analytics/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAcvE,wBAAgB,sBAAsB,CACpC,gBAAgB,EAAE,WAAW,GAAG,yBAAyB,GACxD,mBAAmB,CAQrB;AAED,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,yBAAyB,EAC9B,mBAAmB,EAAE,mBAAmB,GACvC,IAAI,CAMN;AAkBD,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhE;AAED,wBAAsB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGlE;AAED,wBAAsB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG/D;AAED,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,EACE,aAAa,EACb,WAAW,EACX,aAAa,GACd,EAAE;IACD,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACvB,GACA,MAAM,CAcR"}
@@ -1,55 +0,0 @@
1
- import { assertHardhatInvariant } from "@nomicfoundation/hardhat-errors";
2
- import chalk from "chalk";
3
- import { HardhatRuntimeEnvironmentImplementation } from "../../core/hre.js";
4
- import { GasAnalyticsManagerImplementation } from "./gas-analytics-manager.js";
5
- import { testRunDone, testRunStart, testWorkerDone, } from "./hook-handlers/test.js";
6
- export function getGasAnalyticsManager(hookContextOrHre) {
7
- assertHardhatInvariant("_gasAnalytics" in hookContextOrHre &&
8
- hookContextOrHre._gasAnalytics instanceof
9
- GasAnalyticsManagerImplementation, "Expected _gasAnalytics to be an instance of GasAnalyticsManagerImplementation");
10
- return hookContextOrHre._gasAnalytics;
11
- }
12
- export function setGasAnalyticsManager(hre, gasAnalyticsManager) {
13
- assertHardhatInvariant(hre instanceof HardhatRuntimeEnvironmentImplementation, "Expected HRE to be an instance of HardhatRuntimeEnvironmentImplementation");
14
- hre._gasAnalytics = gasAnalyticsManager;
15
- }
16
- /**
17
- * The following helpers are kept for backward compatibility with older versions
18
- * of test runner plugins (hardhat-mocha, hardhat-node-test-runner) that import
19
- * from "hardhat/internal/gas-analytics".
20
- */
21
- // Dynamically import the HRE when calling the helpers
22
- let cachedHre;
23
- async function getHre() {
24
- if (cachedHre === undefined) {
25
- const { default: hre } = await import("../../../index.js");
26
- cachedHre = hre;
27
- }
28
- return cachedHre;
29
- }
30
- export async function markTestRunStart(id) {
31
- const hre = await getHre();
32
- await testRunStart(hre, id);
33
- }
34
- export async function markTestWorkerDone(id) {
35
- const hre = await getHre();
36
- await testWorkerDone(hre, id);
37
- }
38
- export async function markTestRunDone(id) {
39
- const hre = await getHre();
40
- await testRunDone(hre, id);
41
- }
42
- export function formatSectionHeader(sectionName, { changedLength, addedLength, removedLength, }) {
43
- const parts = [];
44
- if (changedLength > 0) {
45
- parts.push(`${changedLength} changed`);
46
- }
47
- if (addedLength > 0) {
48
- parts.push(`${addedLength} added`);
49
- }
50
- if (removedLength > 0) {
51
- parts.push(`${removedLength} removed`);
52
- }
53
- return `${sectionName}: ${chalk.gray(parts.join(", "))}`;
54
- }
55
- //# sourceMappingURL=helpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/gas-analytics/helpers.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,uCAAuC,EAAE,MAAM,mBAAmB,CAAC;AAE5E,OAAO,EAAE,iCAAiC,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EACL,WAAW,EACX,YAAY,EACZ,cAAc,GACf,MAAM,yBAAyB,CAAC;AAEjC,MAAM,UAAU,sBAAsB,CACpC,gBAAyD;IAEzD,sBAAsB,CACpB,eAAe,IAAI,gBAAgB;QACjC,gBAAgB,CAAC,aAAa;YAC5B,iCAAiC,EACrC,+EAA+E,CAChF,CAAC;IACF,OAAO,gBAAgB,CAAC,aAAa,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,GAA8B,EAC9B,mBAAwC;IAExC,sBAAsB,CACpB,GAAG,YAAY,uCAAuC,EACtD,2EAA2E,CAC5E,CAAC;IACF,GAAG,CAAC,aAAa,GAAG,mBAAmB,CAAC;AAC1C,CAAC;AAED;;;;GAIG;AAEH,sDAAsD;AACtD,IAAI,SAAgD,CAAC;AACrD,KAAK,UAAU,MAAM;IACnB,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAC3D,SAAS,GAAG,GAAG,CAAC;IAClB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,EAAU;IAC/C,MAAM,GAAG,GAAG,MAAM,MAAM,EAAE,CAAC;IAC3B,MAAM,YAAY,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,EAAU;IACjD,MAAM,GAAG,GAAG,MAAM,MAAM,EAAE,CAAC;IAC3B,MAAM,cAAc,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,EAAU;IAC9C,MAAM,GAAG,GAAG,MAAM,MAAM,EAAE,CAAC;IAC3B,MAAM,WAAW,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,WAAmB,EACnB,EACE,aAAa,EACb,WAAW,EACX,aAAa,GAKd;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,GAAG,aAAa,UAAU,CAAC,CAAC;IACzC,CAAC;IACD,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,GAAG,WAAW,QAAQ,CAAC,CAAC;IACrC,CAAC;IACD,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,GAAG,aAAa,UAAU,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,GAAG,WAAW,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;AAC3D,CAAC"}
@@ -1,96 +0,0 @@
1
- import type { GasAnalyticsManager } from "./types.js";
2
- import type { HookContext } from "../../../types/hooks.js";
3
- import type { HardhatRuntimeEnvironment } from "../../../types/hre.js";
4
-
5
- import { assertHardhatInvariant } from "@nomicfoundation/hardhat-errors";
6
- import chalk from "chalk";
7
-
8
- import { HardhatRuntimeEnvironmentImplementation } from "../../core/hre.js";
9
-
10
- import { GasAnalyticsManagerImplementation } from "./gas-analytics-manager.js";
11
- import {
12
- testRunDone,
13
- testRunStart,
14
- testWorkerDone,
15
- } from "./hook-handlers/test.js";
16
-
17
- export function getGasAnalyticsManager(
18
- hookContextOrHre: HookContext | HardhatRuntimeEnvironment,
19
- ): GasAnalyticsManager {
20
- assertHardhatInvariant(
21
- "_gasAnalytics" in hookContextOrHre &&
22
- hookContextOrHre._gasAnalytics instanceof
23
- GasAnalyticsManagerImplementation,
24
- "Expected _gasAnalytics to be an instance of GasAnalyticsManagerImplementation",
25
- );
26
- return hookContextOrHre._gasAnalytics;
27
- }
28
-
29
- export function setGasAnalyticsManager(
30
- hre: HardhatRuntimeEnvironment,
31
- gasAnalyticsManager: GasAnalyticsManager,
32
- ): void {
33
- assertHardhatInvariant(
34
- hre instanceof HardhatRuntimeEnvironmentImplementation,
35
- "Expected HRE to be an instance of HardhatRuntimeEnvironmentImplementation",
36
- );
37
- hre._gasAnalytics = gasAnalyticsManager;
38
- }
39
-
40
- /**
41
- * The following helpers are kept for backward compatibility with older versions
42
- * of test runner plugins (hardhat-mocha, hardhat-node-test-runner) that import
43
- * from "hardhat/internal/gas-analytics".
44
- */
45
-
46
- // Dynamically import the HRE when calling the helpers
47
- let cachedHre: HardhatRuntimeEnvironment | undefined;
48
- async function getHre(): Promise<HardhatRuntimeEnvironment> {
49
- if (cachedHre === undefined) {
50
- const { default: hre } = await import("../../../index.js");
51
- cachedHre = hre;
52
- }
53
- return cachedHre;
54
- }
55
-
56
- export async function markTestRunStart(id: string): Promise<void> {
57
- const hre = await getHre();
58
- await testRunStart(hre, id);
59
- }
60
-
61
- export async function markTestWorkerDone(id: string): Promise<void> {
62
- const hre = await getHre();
63
- await testWorkerDone(hre, id);
64
- }
65
-
66
- export async function markTestRunDone(id: string): Promise<void> {
67
- const hre = await getHre();
68
- await testRunDone(hre, id);
69
- }
70
-
71
- export function formatSectionHeader(
72
- sectionName: string,
73
- {
74
- changedLength,
75
- addedLength,
76
- removedLength,
77
- }: {
78
- changedLength: number;
79
- addedLength: number;
80
- removedLength: number;
81
- },
82
- ): string {
83
- const parts: string[] = [];
84
-
85
- if (changedLength > 0) {
86
- parts.push(`${changedLength} changed`);
87
- }
88
- if (addedLength > 0) {
89
- parts.push(`${addedLength} added`);
90
- }
91
- if (removedLength > 0) {
92
- parts.push(`${removedLength} removed`);
93
- }
94
-
95
- return `${sectionName}: ${chalk.gray(parts.join(", "))}`;
96
- }