hardhat 3.2.0 → 3.4.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 (432) hide show
  1. package/CHANGELOG.md +88 -0
  2. package/dist/src/internal/builtin-global-options.d.ts.map +1 -1
  3. package/dist/src/internal/builtin-global-options.js +14 -1
  4. package/dist/src/internal/builtin-global-options.js.map +1 -1
  5. package/dist/src/internal/builtin-plugins/artifacts/artifact-manager.d.ts.map +1 -1
  6. package/dist/src/internal/builtin-plugins/artifacts/artifact-manager.js +5 -13
  7. package/dist/src/internal/builtin-plugins/artifacts/artifact-manager.js.map +1 -1
  8. package/dist/src/internal/builtin-plugins/console/task-action.d.ts.map +1 -1
  9. package/dist/src/internal/builtin-plugins/console/task-action.js +2 -1
  10. package/dist/src/internal/builtin-plugins/console/task-action.js.map +1 -1
  11. package/dist/src/internal/builtin-plugins/gas-analytics/exports.d.ts +1 -1
  12. package/dist/src/internal/builtin-plugins/gas-analytics/exports.d.ts.map +1 -1
  13. package/dist/src/internal/builtin-plugins/gas-analytics/exports.js +1 -1
  14. package/dist/src/internal/builtin-plugins/gas-analytics/exports.js.map +1 -1
  15. package/dist/src/internal/builtin-plugins/gas-analytics/function-gas-snapshots.d.ts.map +1 -1
  16. package/dist/src/internal/builtin-plugins/gas-analytics/function-gas-snapshots.js +1 -2
  17. package/dist/src/internal/builtin-plugins/gas-analytics/function-gas-snapshots.js.map +1 -1
  18. package/dist/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.d.ts +7 -5
  19. package/dist/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.d.ts.map +1 -1
  20. package/dist/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.js +60 -44
  21. package/dist/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.js.map +1 -1
  22. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/accessors.d.ts +6 -0
  23. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/accessors.d.ts.map +1 -0
  24. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/accessors.js +14 -0
  25. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/accessors.js.map +1 -0
  26. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/compat.d.ts +4 -0
  27. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/compat.d.ts.map +1 -0
  28. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/compat.js +27 -0
  29. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/compat.js.map +1 -0
  30. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/utils.d.ts +36 -0
  31. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/utils.d.ts.map +1 -0
  32. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/utils.js +86 -0
  33. package/dist/src/internal/builtin-plugins/gas-analytics/helpers/utils.js.map +1 -0
  34. package/dist/src/internal/builtin-plugins/gas-analytics/hook-handlers/hre.js +1 -1
  35. package/dist/src/internal/builtin-plugins/gas-analytics/hook-handlers/hre.js.map +1 -1
  36. package/dist/src/internal/builtin-plugins/gas-analytics/hook-handlers/test.js +1 -1
  37. package/dist/src/internal/builtin-plugins/gas-analytics/hook-handlers/test.js.map +1 -1
  38. package/dist/src/internal/builtin-plugins/gas-analytics/snapshot-cheatcodes.d.ts.map +1 -1
  39. package/dist/src/internal/builtin-plugins/gas-analytics/snapshot-cheatcodes.js +1 -2
  40. package/dist/src/internal/builtin-plugins/gas-analytics/snapshot-cheatcodes.js.map +1 -1
  41. package/dist/src/internal/builtin-plugins/gas-analytics/types.d.ts +10 -2
  42. package/dist/src/internal/builtin-plugins/gas-analytics/types.d.ts.map +1 -1
  43. package/dist/src/internal/builtin-plugins/network-manager/accounts/derive-private-keys.d.ts.map +1 -1
  44. package/dist/src/internal/builtin-plugins/network-manager/accounts/derive-private-keys.js +12 -2
  45. package/dist/src/internal/builtin-plugins/network-manager/accounts/derive-private-keys.js.map +1 -1
  46. package/dist/src/internal/builtin-plugins/network-manager/edr/edr-provider.d.ts +9 -3
  47. package/dist/src/internal/builtin-plugins/network-manager/edr/edr-provider.d.ts.map +1 -1
  48. package/dist/src/internal/builtin-plugins/network-manager/edr/edr-provider.js +65 -42
  49. package/dist/src/internal/builtin-plugins/network-manager/edr/edr-provider.js.map +1 -1
  50. package/dist/src/internal/builtin-plugins/network-manager/edr/genesis-state.d.ts +11 -0
  51. package/dist/src/internal/builtin-plugins/network-manager/edr/genesis-state.d.ts.map +1 -0
  52. package/dist/src/internal/builtin-plugins/network-manager/edr/genesis-state.js +104 -0
  53. package/dist/src/internal/builtin-plugins/network-manager/edr/genesis-state.js.map +1 -0
  54. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/solidity-stack-trace.d.ts +4 -4
  55. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/solidity-stack-trace.d.ts.map +1 -1
  56. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/solidity-stack-trace.js +2 -2
  57. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/solidity-stack-trace.js.map +1 -1
  58. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/stack-trace-solidity-errors.d.ts +6 -3
  59. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/stack-trace-solidity-errors.d.ts.map +1 -1
  60. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/stack-trace-solidity-errors.js +23 -5
  61. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/stack-trace-solidity-errors.js.map +1 -1
  62. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/convert-to-edr.d.ts.map +1 -1
  63. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/convert-to-edr.js +2 -1
  64. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/convert-to-edr.js.map +1 -1
  65. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/trace-formatters.d.ts +6 -0
  66. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/trace-formatters.d.ts.map +1 -0
  67. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/trace-formatters.js +152 -0
  68. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/trace-formatters.js.map +1 -0
  69. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/trace-output.d.ts +19 -0
  70. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/trace-output.d.ts.map +1 -0
  71. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/trace-output.js +104 -0
  72. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/trace-output.js.map +1 -0
  73. package/dist/src/internal/builtin-plugins/network-manager/hook-handlers/hre.d.ts.map +1 -1
  74. package/dist/src/internal/builtin-plugins/network-manager/hook-handlers/hre.js +23 -1
  75. package/dist/src/internal/builtin-plugins/network-manager/hook-handlers/hre.js.map +1 -1
  76. package/dist/src/internal/builtin-plugins/network-manager/hook-handlers/network.d.ts.map +1 -1
  77. package/dist/src/internal/builtin-plugins/network-manager/hook-handlers/network.js +25 -17
  78. package/dist/src/internal/builtin-plugins/network-manager/hook-handlers/network.js.map +1 -1
  79. package/dist/src/internal/builtin-plugins/network-manager/http-provider.d.ts.map +1 -1
  80. package/dist/src/internal/builtin-plugins/network-manager/http-provider.js +1 -0
  81. package/dist/src/internal/builtin-plugins/network-manager/http-provider.js.map +1 -1
  82. package/dist/src/internal/builtin-plugins/network-manager/network-manager.d.ts +12 -2
  83. package/dist/src/internal/builtin-plugins/network-manager/network-manager.d.ts.map +1 -1
  84. package/dist/src/internal/builtin-plugins/network-manager/network-manager.js +149 -26
  85. package/dist/src/internal/builtin-plugins/network-manager/network-manager.js.map +1 -1
  86. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/hd-wallet-handler.d.ts.map +1 -1
  87. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/hd-wallet-handler.js.map +1 -1
  88. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/local-accounts.d.ts +1 -0
  89. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/local-accounts.d.ts.map +1 -1
  90. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/local-accounts.js +70 -33
  91. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/local-accounts.js.map +1 -1
  92. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/sender.d.ts +2 -0
  93. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/sender.d.ts.map +1 -1
  94. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/sender.js +19 -12
  95. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/sender.js.map +1 -1
  96. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/chain-id/chain-id-handler.d.ts +1 -0
  97. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/chain-id/chain-id-handler.d.ts.map +1 -1
  98. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/chain-id/chain-id-handler.js +9 -3
  99. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/chain-id/chain-id-handler.js.map +1 -1
  100. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-handler.d.ts +2 -0
  101. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-handler.d.ts.map +1 -1
  102. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-handler.js +5 -1
  103. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-handler.js.map +1 -1
  104. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-price-handler.d.ts +1 -0
  105. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-price-handler.d.ts.map +1 -1
  106. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-price-handler.js +5 -1
  107. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-price-handler.js.map +1 -1
  108. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-handler.d.ts +1 -0
  109. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-handler.d.ts.map +1 -1
  110. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-handler.js +5 -1
  111. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-handler.js.map +1 -1
  112. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-price-handler.d.ts +1 -0
  113. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-price-handler.d.ts.map +1 -1
  114. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-price-handler.js +5 -1
  115. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-price-handler.js.map +1 -1
  116. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers-array.d.ts +0 -3
  117. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers-array.d.ts.map +1 -1
  118. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers-array.js +9 -12
  119. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/handlers-array.js.map +1 -1
  120. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/types.d.ts +9 -0
  121. package/dist/src/internal/builtin-plugins/network-manager/request-handlers/types.d.ts.map +1 -1
  122. package/dist/src/internal/builtin-plugins/network-manager/revert-error-code.d.ts +2 -0
  123. package/dist/src/internal/builtin-plugins/network-manager/revert-error-code.d.ts.map +1 -0
  124. package/dist/src/internal/builtin-plugins/network-manager/revert-error-code.js +3 -0
  125. package/dist/src/internal/builtin-plugins/network-manager/revert-error-code.js.map +1 -0
  126. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/config.d.ts +1 -1
  127. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/config.d.ts.map +1 -1
  128. package/dist/src/internal/builtin-plugins/network-manager/type-validation.d.ts.map +1 -1
  129. package/dist/src/internal/builtin-plugins/network-manager/type-validation.js +2 -1
  130. package/dist/src/internal/builtin-plugins/network-manager/type-validation.js.map +1 -1
  131. package/dist/src/internal/builtin-plugins/node/artifacts/build-info-watcher.d.ts.map +1 -1
  132. package/dist/src/internal/builtin-plugins/node/artifacts/build-info-watcher.js +1 -1
  133. package/dist/src/internal/builtin-plugins/node/artifacts/build-info-watcher.js.map +1 -1
  134. package/dist/src/internal/builtin-plugins/node/helpers.d.ts.map +1 -1
  135. package/dist/src/internal/builtin-plugins/node/helpers.js +6 -2
  136. package/dist/src/internal/builtin-plugins/node/helpers.js.map +1 -1
  137. package/dist/src/internal/builtin-plugins/node/json-rpc/handler.d.ts.map +1 -1
  138. package/dist/src/internal/builtin-plugins/node/json-rpc/handler.js +8 -2
  139. package/dist/src/internal/builtin-plugins/node/json-rpc/handler.js.map +1 -1
  140. package/dist/src/internal/builtin-plugins/node/task-action.js +2 -2
  141. package/dist/src/internal/builtin-plugins/node/task-action.js.map +1 -1
  142. package/dist/src/internal/builtin-plugins/run/task-action.d.ts.map +1 -1
  143. package/dist/src/internal/builtin-plugins/run/task-action.js +2 -1
  144. package/dist/src/internal/builtin-plugins/run/task-action.js.map +1 -1
  145. package/dist/src/internal/builtin-plugins/solidity/build-system/artifacts.d.ts.map +1 -1
  146. package/dist/src/internal/builtin-plugins/solidity/build-system/artifacts.js +7 -0
  147. package/dist/src/internal/builtin-plugins/solidity/build-system/artifacts.js.map +1 -1
  148. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.d.ts +6 -2
  149. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.d.ts.map +1 -1
  150. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.js +198 -76
  151. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.js.map +1 -1
  152. package/dist/src/internal/builtin-plugins/solidity/build-system/cache.d.ts +3 -0
  153. package/dist/src/internal/builtin-plugins/solidity/build-system/cache.d.ts.map +1 -1
  154. package/dist/src/internal/builtin-plugins/solidity/build-system/cache.js.map +1 -1
  155. package/dist/src/internal/builtin-plugins/solidity/build-system/compilation-job.d.ts +5 -3
  156. package/dist/src/internal/builtin-plugins/solidity/build-system/compilation-job.d.ts.map +1 -1
  157. package/dist/src/internal/builtin-plugins/solidity/build-system/compilation-job.js +35 -7
  158. package/dist/src/internal/builtin-plugins/solidity/build-system/compilation-job.js.map +1 -1
  159. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/compiler.d.ts +16 -0
  160. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/compiler.d.ts.map +1 -1
  161. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/compiler.js +1 -1
  162. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/compiler.js.map +1 -1
  163. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.d.ts.map +1 -1
  164. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.js +1 -1
  165. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.js.map +1 -1
  166. package/dist/src/internal/builtin-plugins/solidity/build-system/dependency-graph.d.ts.map +1 -1
  167. package/dist/src/internal/builtin-plugins/solidity/build-system/dependency-graph.js +5 -5
  168. package/dist/src/internal/builtin-plugins/solidity/build-system/dependency-graph.js.map +1 -1
  169. package/dist/src/internal/builtin-plugins/solidity/build-system/solc-config-selection.d.ts +2 -2
  170. package/dist/src/internal/builtin-plugins/solidity/build-system/solc-config-selection.d.ts.map +1 -1
  171. package/dist/src/internal/builtin-plugins/solidity/build-system/solc-config-selection.js.map +1 -1
  172. package/dist/src/internal/builtin-plugins/solidity/build-system/solc-info.d.ts.map +1 -1
  173. package/dist/src/internal/builtin-plugins/solidity/build-system/solc-info.js +1 -0
  174. package/dist/src/internal/builtin-plugins/solidity/build-system/solc-info.js.map +1 -1
  175. package/dist/src/internal/builtin-plugins/solidity/build-system/warning-suppression.js +2 -2
  176. package/dist/src/internal/builtin-plugins/solidity/build-system/warning-suppression.js.map +1 -1
  177. package/dist/src/internal/builtin-plugins/solidity/config.d.ts +4 -2
  178. package/dist/src/internal/builtin-plugins/solidity/config.d.ts.map +1 -1
  179. package/dist/src/internal/builtin-plugins/solidity/config.js +266 -84
  180. package/dist/src/internal/builtin-plugins/solidity/config.js.map +1 -1
  181. package/dist/src/internal/builtin-plugins/solidity/constants.d.ts +3 -0
  182. package/dist/src/internal/builtin-plugins/solidity/constants.d.ts.map +1 -0
  183. package/dist/src/internal/builtin-plugins/solidity/constants.js +19 -0
  184. package/dist/src/internal/builtin-plugins/solidity/constants.js.map +1 -0
  185. package/dist/src/internal/builtin-plugins/solidity/exports.d.ts +3 -0
  186. package/dist/src/internal/builtin-plugins/solidity/exports.d.ts.map +1 -0
  187. package/dist/src/internal/builtin-plugins/solidity/exports.js +3 -0
  188. package/dist/src/internal/builtin-plugins/solidity/exports.js.map +1 -0
  189. package/dist/src/internal/builtin-plugins/solidity/hook-handlers/config.d.ts.map +1 -1
  190. package/dist/src/internal/builtin-plugins/solidity/hook-handlers/config.js +2 -1
  191. package/dist/src/internal/builtin-plugins/solidity/hook-handlers/config.js.map +1 -1
  192. package/dist/src/internal/builtin-plugins/solidity/hook-handlers/solidity.d.ts +4 -0
  193. package/dist/src/internal/builtin-plugins/solidity/hook-handlers/solidity.d.ts.map +1 -0
  194. package/dist/src/internal/builtin-plugins/solidity/hook-handlers/solidity.js +7 -0
  195. package/dist/src/internal/builtin-plugins/solidity/hook-handlers/solidity.js.map +1 -0
  196. package/dist/src/internal/builtin-plugins/solidity/index.d.ts.map +1 -1
  197. package/dist/src/internal/builtin-plugins/solidity/index.js +1 -0
  198. package/dist/src/internal/builtin-plugins/solidity/index.js.map +1 -1
  199. package/dist/src/internal/builtin-plugins/solidity/solidity-hooks.d.ts +18 -0
  200. package/dist/src/internal/builtin-plugins/solidity/solidity-hooks.d.ts.map +1 -0
  201. package/dist/src/internal/builtin-plugins/solidity/solidity-hooks.js +33 -0
  202. package/dist/src/internal/builtin-plugins/solidity/solidity-hooks.js.map +1 -0
  203. package/dist/src/internal/builtin-plugins/solidity/tasks/build.d.ts +1 -1
  204. package/dist/src/internal/builtin-plugins/solidity/tasks/build.d.ts.map +1 -1
  205. package/dist/src/internal/builtin-plugins/solidity/tasks/build.js +225 -55
  206. package/dist/src/internal/builtin-plugins/solidity/tasks/build.js.map +1 -1
  207. package/dist/src/internal/builtin-plugins/solidity/type-extensions.d.ts +227 -28
  208. package/dist/src/internal/builtin-plugins/solidity/type-extensions.d.ts.map +1 -1
  209. package/dist/src/internal/builtin-plugins/solidity/type-extensions.js.map +1 -1
  210. package/dist/src/internal/builtin-plugins/solidity-test/config.d.ts.map +1 -1
  211. package/dist/src/internal/builtin-plugins/solidity-test/config.js +5 -3
  212. package/dist/src/internal/builtin-plugins/solidity-test/config.js.map +1 -1
  213. package/dist/src/internal/builtin-plugins/solidity-test/edr-artifacts.d.ts +12 -6
  214. package/dist/src/internal/builtin-plugins/solidity-test/edr-artifacts.d.ts.map +1 -1
  215. package/dist/src/internal/builtin-plugins/solidity-test/edr-artifacts.js +9 -7
  216. package/dist/src/internal/builtin-plugins/solidity-test/edr-artifacts.js.map +1 -1
  217. package/dist/src/internal/builtin-plugins/solidity-test/formatters.d.ts +1 -12
  218. package/dist/src/internal/builtin-plugins/solidity-test/formatters.d.ts.map +1 -1
  219. package/dist/src/internal/builtin-plugins/solidity-test/formatters.js +0 -150
  220. package/dist/src/internal/builtin-plugins/solidity-test/formatters.js.map +1 -1
  221. package/dist/src/internal/builtin-plugins/solidity-test/helpers.d.ts +4 -5
  222. package/dist/src/internal/builtin-plugins/solidity-test/helpers.d.ts.map +1 -1
  223. package/dist/src/internal/builtin-plugins/solidity-test/helpers.js +5 -12
  224. package/dist/src/internal/builtin-plugins/solidity-test/helpers.js.map +1 -1
  225. package/dist/src/internal/builtin-plugins/solidity-test/index.d.ts.map +1 -1
  226. package/dist/src/internal/builtin-plugins/solidity-test/index.js +0 -7
  227. package/dist/src/internal/builtin-plugins/solidity-test/index.js.map +1 -1
  228. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/constants.d.ts +7 -0
  229. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/constants.d.ts.map +1 -0
  230. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/constants.js +20 -0
  231. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/constants.js.map +1 -0
  232. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/helpers.d.ts +24 -0
  233. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/helpers.d.ts.map +1 -0
  234. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/helpers.js +68 -0
  235. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/helpers.js.map +1 -0
  236. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/index.d.ts +13 -0
  237. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/index.d.ts.map +1 -0
  238. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/index.js +136 -0
  239. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/index.js.map +1 -0
  240. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/parsing.d.ts +19 -0
  241. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/parsing.d.ts.map +1 -0
  242. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/parsing.js +133 -0
  243. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/parsing.js.map +1 -0
  244. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/types.d.ts +10 -0
  245. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/types.d.ts.map +1 -0
  246. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/types.js +2 -0
  247. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/types.js.map +1 -0
  248. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/validation.d.ts +12 -0
  249. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/validation.d.ts.map +1 -0
  250. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/validation.js +81 -0
  251. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/validation.js.map +1 -0
  252. package/dist/src/internal/builtin-plugins/solidity-test/reporter.d.ts +1 -1
  253. package/dist/src/internal/builtin-plugins/solidity-test/reporter.d.ts.map +1 -1
  254. package/dist/src/internal/builtin-plugins/solidity-test/reporter.js +5 -2
  255. package/dist/src/internal/builtin-plugins/solidity-test/reporter.js.map +1 -1
  256. package/dist/src/internal/builtin-plugins/solidity-test/runner.d.ts +2 -8
  257. package/dist/src/internal/builtin-plugins/solidity-test/runner.d.ts.map +1 -1
  258. package/dist/src/internal/builtin-plugins/solidity-test/runner.js +47 -50
  259. package/dist/src/internal/builtin-plugins/solidity-test/runner.js.map +1 -1
  260. package/dist/src/internal/builtin-plugins/solidity-test/stack-trace-solidity-errors.d.ts.map +1 -1
  261. package/dist/src/internal/builtin-plugins/solidity-test/stack-trace-solidity-errors.js +11 -2
  262. package/dist/src/internal/builtin-plugins/solidity-test/stack-trace-solidity-errors.js.map +1 -1
  263. package/dist/src/internal/builtin-plugins/solidity-test/task-action.d.ts +0 -1
  264. package/dist/src/internal/builtin-plugins/solidity-test/task-action.d.ts.map +1 -1
  265. package/dist/src/internal/builtin-plugins/solidity-test/task-action.js +122 -39
  266. package/dist/src/internal/builtin-plugins/solidity-test/task-action.js.map +1 -1
  267. package/dist/src/internal/builtin-plugins/solidity-test/type-extensions.d.ts +1 -2
  268. package/dist/src/internal/builtin-plugins/solidity-test/type-extensions.d.ts.map +1 -1
  269. package/dist/src/internal/builtin-plugins/test/index.d.ts.map +1 -1
  270. package/dist/src/internal/builtin-plugins/test/index.js +0 -7
  271. package/dist/src/internal/builtin-plugins/test/index.js.map +1 -1
  272. package/dist/src/internal/builtin-plugins/test/task-action.d.ts +0 -1
  273. package/dist/src/internal/builtin-plugins/test/task-action.d.ts.map +1 -1
  274. package/dist/src/internal/builtin-plugins/test/task-action.js +4 -8
  275. package/dist/src/internal/builtin-plugins/test/task-action.js.map +1 -1
  276. package/dist/src/internal/cli/help/get-help-string.d.ts.map +1 -1
  277. package/dist/src/internal/cli/help/get-help-string.js +1 -1
  278. package/dist/src/internal/cli/help/get-help-string.js.map +1 -1
  279. package/dist/src/internal/cli/init/init.d.ts.map +1 -1
  280. package/dist/src/internal/cli/init/init.js +1 -1
  281. package/dist/src/internal/cli/init/init.js.map +1 -1
  282. package/dist/src/internal/cli/init/prompt.d.ts.map +1 -1
  283. package/dist/src/internal/cli/init/prompt.js +1 -7
  284. package/dist/src/internal/cli/init/prompt.js.map +1 -1
  285. package/dist/src/internal/cli/main.d.ts.map +1 -1
  286. package/dist/src/internal/cli/main.js +8 -0
  287. package/dist/src/internal/cli/main.js.map +1 -1
  288. package/dist/src/internal/core/hre.d.ts +2 -1
  289. package/dist/src/internal/core/hre.d.ts.map +1 -1
  290. package/dist/src/internal/core/hre.js +18 -0
  291. package/dist/src/internal/core/hre.js.map +1 -1
  292. package/dist/src/internal/core/plugins/detect-plugin-npm-dependency-problems.d.ts.map +1 -1
  293. package/dist/src/internal/core/plugins/detect-plugin-npm-dependency-problems.js +6 -1
  294. package/dist/src/internal/core/plugins/detect-plugin-npm-dependency-problems.js.map +1 -1
  295. package/dist/src/internal/core/user-interruptions.d.ts.map +1 -1
  296. package/dist/src/internal/core/user-interruptions.js +2 -5
  297. package/dist/src/internal/core/user-interruptions.js.map +1 -1
  298. package/dist/src/internal/utils/colorizer.d.ts +10 -0
  299. package/dist/src/internal/utils/colorizer.d.ts.map +1 -0
  300. package/dist/src/internal/utils/colorizer.js +2 -0
  301. package/dist/src/internal/utils/colorizer.js.map +1 -0
  302. package/dist/src/internal/utils/package.d.ts.map +1 -1
  303. package/dist/src/internal/utils/package.js +1 -1
  304. package/dist/src/internal/utils/package.js.map +1 -1
  305. package/dist/src/types/artifacts.d.ts +5 -4
  306. package/dist/src/types/artifacts.d.ts.map +1 -1
  307. package/dist/src/types/global-options.d.ts +1 -0
  308. package/dist/src/types/global-options.d.ts.map +1 -1
  309. package/dist/src/types/hooks.d.ts +32 -0
  310. package/dist/src/types/hooks.d.ts.map +1 -1
  311. package/dist/src/types/network.d.ts +39 -0
  312. package/dist/src/types/network.d.ts.map +1 -1
  313. package/dist/src/types/solidity/build-system.d.ts +66 -3
  314. package/dist/src/types/solidity/build-system.d.ts.map +1 -1
  315. package/dist/src/types/solidity/build-system.js.map +1 -1
  316. package/dist/src/types/solidity/compilation-job.d.ts +11 -5
  317. package/dist/src/types/solidity/compilation-job.d.ts.map +1 -1
  318. package/dist/src/types/solidity/solidity-artifacts.d.ts +29 -0
  319. package/dist/src/types/solidity/solidity-artifacts.d.ts.map +1 -1
  320. package/package.json +10 -9
  321. package/src/internal/builtin-global-options.ts +15 -1
  322. package/src/internal/builtin-plugins/artifacts/artifact-manager.ts +9 -15
  323. package/src/internal/builtin-plugins/console/task-action.ts +2 -1
  324. package/src/internal/builtin-plugins/gas-analytics/exports.ts +1 -1
  325. package/src/internal/builtin-plugins/gas-analytics/function-gas-snapshots.ts +1 -2
  326. package/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.ts +100 -61
  327. package/src/internal/builtin-plugins/gas-analytics/helpers/accessors.ts +31 -0
  328. package/src/internal/builtin-plugins/gas-analytics/helpers/compat.ts +37 -0
  329. package/src/internal/builtin-plugins/gas-analytics/helpers/utils.ts +112 -0
  330. package/src/internal/builtin-plugins/gas-analytics/hook-handlers/hre.ts +1 -1
  331. package/src/internal/builtin-plugins/gas-analytics/hook-handlers/test.ts +1 -1
  332. package/src/internal/builtin-plugins/gas-analytics/snapshot-cheatcodes.ts +1 -2
  333. package/src/internal/builtin-plugins/gas-analytics/types.ts +11 -2
  334. package/src/internal/builtin-plugins/network-manager/accounts/derive-private-keys.ts +25 -3
  335. package/src/internal/builtin-plugins/network-manager/edr/edr-provider.ts +107 -56
  336. package/src/internal/builtin-plugins/network-manager/edr/genesis-state.ts +179 -0
  337. package/src/internal/builtin-plugins/network-manager/edr/stack-traces/solidity-stack-trace.ts +4 -0
  338. package/src/internal/builtin-plugins/network-manager/edr/stack-traces/stack-trace-solidity-errors.ts +28 -4
  339. package/src/internal/builtin-plugins/network-manager/edr/utils/convert-to-edr.ts +2 -1
  340. package/src/internal/builtin-plugins/network-manager/edr/utils/trace-formatters.ts +197 -0
  341. package/src/internal/builtin-plugins/network-manager/edr/utils/trace-output.ts +137 -0
  342. package/src/internal/builtin-plugins/network-manager/hook-handlers/hre.ts +30 -0
  343. package/src/internal/builtin-plugins/network-manager/hook-handlers/network.ts +27 -24
  344. package/src/internal/builtin-plugins/network-manager/http-provider.ts +1 -0
  345. package/src/internal/builtin-plugins/network-manager/network-manager.ts +213 -37
  346. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/hd-wallet-handler.ts +1 -0
  347. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/local-accounts.ts +115 -34
  348. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/accounts/sender.ts +25 -17
  349. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/chain-id/chain-id-handler.ts +13 -5
  350. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-handler.ts +7 -1
  351. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/automatic-gas-price-handler.ts +7 -1
  352. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-handler.ts +7 -1
  353. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers/gas/fixed-gas-price-handler.ts +7 -1
  354. package/src/internal/builtin-plugins/network-manager/request-handlers/handlers-array.ts +10 -30
  355. package/src/internal/builtin-plugins/network-manager/request-handlers/types.ts +10 -0
  356. package/src/internal/builtin-plugins/network-manager/revert-error-code.ts +2 -0
  357. package/src/internal/builtin-plugins/network-manager/type-extensions/config.ts +1 -1
  358. package/src/internal/builtin-plugins/network-manager/type-validation.ts +5 -1
  359. package/src/internal/builtin-plugins/node/artifacts/build-info-watcher.ts +1 -2
  360. package/src/internal/builtin-plugins/node/helpers.ts +9 -2
  361. package/src/internal/builtin-plugins/node/json-rpc/handler.ts +10 -2
  362. package/src/internal/builtin-plugins/node/task-action.ts +2 -2
  363. package/src/internal/builtin-plugins/run/task-action.ts +2 -1
  364. package/src/internal/builtin-plugins/solidity/build-system/artifacts.ts +10 -2
  365. package/src/internal/builtin-plugins/solidity/build-system/build-system.ts +297 -99
  366. package/src/internal/builtin-plugins/solidity/build-system/cache.ts +3 -0
  367. package/src/internal/builtin-plugins/solidity/build-system/compilation-job.ts +49 -16
  368. package/src/internal/builtin-plugins/solidity/build-system/compiler/compiler.ts +1 -1
  369. package/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.ts +1 -2
  370. package/src/internal/builtin-plugins/solidity/build-system/dependency-graph.ts +9 -7
  371. package/src/internal/builtin-plugins/solidity/build-system/solc-config-selection.ts +4 -2
  372. package/src/internal/builtin-plugins/solidity/build-system/solc-info.ts +1 -0
  373. package/src/internal/builtin-plugins/solidity/build-system/warning-suppression.ts +2 -2
  374. package/src/internal/builtin-plugins/solidity/config.ts +359 -124
  375. package/src/internal/builtin-plugins/solidity/constants.ts +21 -0
  376. package/src/internal/builtin-plugins/solidity/exports.ts +2 -0
  377. package/src/internal/builtin-plugins/solidity/hook-handlers/config.ts +3 -0
  378. package/src/internal/builtin-plugins/solidity/hook-handlers/solidity.ts +9 -0
  379. package/src/internal/builtin-plugins/solidity/index.ts +1 -0
  380. package/src/internal/builtin-plugins/solidity/solidity-hooks.ts +53 -0
  381. package/src/internal/builtin-plugins/solidity/tasks/build.ts +359 -74
  382. package/src/internal/builtin-plugins/solidity/type-extensions.ts +289 -32
  383. package/src/internal/builtin-plugins/solidity-test/config.ts +11 -2
  384. package/src/internal/builtin-plugins/solidity-test/edr-artifacts.ts +22 -10
  385. package/src/internal/builtin-plugins/solidity-test/formatters.ts +1 -213
  386. package/src/internal/builtin-plugins/solidity-test/helpers.ts +8 -15
  387. package/src/internal/builtin-plugins/solidity-test/index.ts +0 -7
  388. package/src/internal/builtin-plugins/solidity-test/inline-config/constants.ts +21 -0
  389. package/src/internal/builtin-plugins/solidity-test/inline-config/helpers.ts +99 -0
  390. package/src/internal/builtin-plugins/solidity-test/inline-config/index.ts +272 -0
  391. package/src/internal/builtin-plugins/solidity-test/inline-config/parsing.ts +186 -0
  392. package/src/internal/builtin-plugins/solidity-test/inline-config/types.ts +9 -0
  393. package/src/internal/builtin-plugins/solidity-test/inline-config/validation.ts +122 -0
  394. package/src/internal/builtin-plugins/solidity-test/reporter.ts +6 -6
  395. package/src/internal/builtin-plugins/solidity-test/runner.ts +64 -83
  396. package/src/internal/builtin-plugins/solidity-test/stack-trace-solidity-errors.ts +15 -2
  397. package/src/internal/builtin-plugins/solidity-test/task-action.ts +192 -57
  398. package/src/internal/builtin-plugins/solidity-test/type-extensions.ts +1 -2
  399. package/src/internal/builtin-plugins/test/index.ts +0 -7
  400. package/src/internal/builtin-plugins/test/task-action.ts +4 -10
  401. package/src/internal/cli/help/get-help-string.ts +2 -2
  402. package/src/internal/cli/init/init.ts +1 -1
  403. package/src/internal/cli/init/prompt.ts +1 -14
  404. package/src/internal/cli/main.ts +14 -0
  405. package/src/internal/core/hre.ts +33 -0
  406. package/src/internal/core/plugins/detect-plugin-npm-dependency-problems.ts +8 -1
  407. package/src/internal/core/user-interruptions.ts +3 -5
  408. package/src/internal/utils/colorizer.ts +9 -0
  409. package/src/internal/utils/package.ts +1 -2
  410. package/src/types/artifacts.ts +5 -4
  411. package/src/types/global-options.ts +1 -0
  412. package/src/types/hooks.ts +37 -0
  413. package/src/types/network.ts +48 -0
  414. package/src/types/solidity/build-system.ts +66 -3
  415. package/src/types/solidity/compilation-job.ts +12 -5
  416. package/src/types/solidity/solidity-artifacts.ts +32 -0
  417. package/templates/hardhat-2/04-mocha-viem-ts/package.json +1 -1
  418. package/templates/hardhat-3/01-node-test-runner-viem/gitignore +11 -0
  419. package/templates/hardhat-3/01-node-test-runner-viem/package.json +12 -12
  420. package/templates/hardhat-3/01-node-test-runner-viem/scripts/send-op-tx.ts +1 -1
  421. package/templates/hardhat-3/01-node-test-runner-viem/test/Counter.ts +1 -1
  422. package/templates/hardhat-3/02-mocha-ethers/gitignore +11 -0
  423. package/templates/hardhat-3/02-mocha-ethers/package.json +14 -14
  424. package/templates/hardhat-3/02-mocha-ethers/scripts/send-op-tx.ts +1 -1
  425. package/templates/hardhat-3/02-mocha-ethers/test/Counter.ts +1 -1
  426. package/templates/hardhat-3/03-minimal/gitignore +11 -0
  427. package/templates/hardhat-3/03-minimal/package.json +1 -1
  428. package/dist/src/internal/builtin-plugins/gas-analytics/helpers.d.ts +0 -19
  429. package/dist/src/internal/builtin-plugins/gas-analytics/helpers.d.ts.map +0 -1
  430. package/dist/src/internal/builtin-plugins/gas-analytics/helpers.js +0 -46
  431. package/dist/src/internal/builtin-plugins/gas-analytics/helpers.js.map +0 -1
  432. package/src/internal/builtin-plugins/gas-analytics/helpers.ts +0 -86
@@ -1,54 +1,232 @@
1
- import type { SolcConfig } from "../../../types/config.js";
1
+ import type { SolidityCompilerConfig } from "../../../types/config.js";
2
2
  import type { BuildOptions, CompilationJobCreationError, FileBuildResult, SolidityBuildSystem } from "../../../types/solidity/build-system.js";
3
3
  import type { Compiler, CompilerInput, CompilerOutput } from "../../../types/solidity.js";
4
4
  import "../../../types/config.js";
5
5
  declare module "../../../types/config.js" {
6
+ /**
7
+ * An interface with a key per compiler type.
8
+ * The types of the values don't matter; we use `true` as a convention.
9
+ *
10
+ * By default, only "solc" is provided. Plugins can extend this via
11
+ * declaration merging to add new compiler types (e.g. "solx").
12
+ */
13
+ interface SolidityCompilerTypeDefinitions {
14
+ solc: true;
15
+ }
16
+ /**
17
+ * The different Solidity compiler types, derived from
18
+ * SolidityCompilerTypeDefinitions. Extensible via declaration merging.
19
+ */
20
+ type SolidityCompilerType = keyof SolidityCompilerTypeDefinitions;
21
+ /**
22
+ * The type of `userConfig.solidity`.
23
+ */
6
24
  type SolidityUserConfig = string | string[] | SingleVersionSolidityUserConfig | MultiVersionSolidityUserConfig | BuildProfilesSolidityUserConfig;
7
- interface SolcUserConfig {
25
+ /**
26
+ * Fields that all the object-typed variants of SolidityUserConfig share.
27
+ *
28
+ * Note: All the variants of SolidityUserConfig except for the string and
29
+ * array of strings MUST extend this interface. For plugins creating their
30
+ * own `SingleVersionSolidityUserConfig` variant, see
31
+ * {@link CommonSingleVersionSolidityUserConfig}.
32
+ */
33
+ interface CommonSolidityUserConfig {
34
+ isolated?: boolean;
35
+ npmFilesToBuild?: string[];
36
+ /**
37
+ * Controls whether Solidity test files are compiled in a separate pass
38
+ * from contract files.
39
+ *
40
+ * When `false` (the default), contracts and tests are compiled together
41
+ * in a single pass.
42
+ *
43
+ * When `true`, contracts and tests are compiled separately.
44
+ */
45
+ splitTestsCompilation?: boolean;
46
+ }
47
+ /**
48
+ * Common fields for every SingleVersionSolidityUserConfig variant.
49
+ *
50
+ * NOTE: All the variants of SingleVersionSolidityUserConfig must extend this
51
+ * interface.
52
+ */
53
+ interface CommonSingleVersionSolidityUserConfig extends CommonSolidityUserConfig {
54
+ toolVersionsInBuildInfo?: boolean;
55
+ }
56
+ /**
57
+ * Fields that all the SolidityCompilerUserConfig variants share.
58
+ *
59
+ * Note: All the types of SolidityCompilerUserConfig MUST extend this
60
+ * interface. This is especially relevant for plugins creating their own
61
+ * `SolidityCompilerUserConfig` variant.
62
+ */
63
+ interface CommonSolidityCompilerUserConfig {
64
+ type?: SolidityCompilerType;
8
65
  version: string;
9
66
  settings?: any;
10
67
  path?: string;
11
- preferWasm?: boolean;
12
68
  }
13
- interface SingleVersionSolcUserConfig extends SolcUserConfig {
14
- isolated?: boolean;
69
+ /**
70
+ * Deprecated: Use `SolcSolidityCompilerUserConfig` instead.
71
+ * @deprecated
72
+ */
73
+ interface SolcUserConfig extends CommonSolidityCompilerUserConfig {
74
+ type?: "solc";
15
75
  preferWasm?: boolean;
16
76
  }
17
- interface MultiVersionSolcUserConfig {
18
- isolated?: boolean;
19
- preferWasm?: boolean;
20
- compilers: SolcUserConfig[];
21
- overrides?: Record<string, SolcUserConfig>;
77
+ /**
78
+ * Solc-specific SolidityCompilerUserConfig.
79
+ */
80
+ interface SolcSolidityCompilerUserConfig extends SolcUserConfig {
22
81
  }
23
- interface CommonSolidityUserConfig {
24
- npmFilesToBuild?: string[];
82
+ /**
83
+ * A map from compiler type to its SolidityCompilerUserConfig type.
84
+ *
85
+ * Note: The types MUST extend `CommonSolidityCompilerUserConfig`.
86
+ */
87
+ interface SolidityCompilerUserConfigPerType {
88
+ solc: SolcSolidityCompilerUserConfig;
89
+ }
90
+ /**
91
+ * The type of all the compiler user configs.
92
+ */
93
+ type SolidityCompilerUserConfig = {
94
+ [type in keyof SolidityCompilerUserConfigPerType]: SolidityCompilerUserConfigPerType[type];
95
+ }[keyof SolidityCompilerUserConfigPerType] | (Omit<SolcSolidityCompilerUserConfig, "type"> & Partial<Pick<SolcSolidityCompilerUserConfig, "type">>);
96
+ /**
97
+ * Deprecated: Use `SolcSingleVersionSolidityUserConfig` instead.
98
+ * @deprecated
99
+ */
100
+ interface SingleVersionSolcUserConfig extends SolcSolidityCompilerUserConfig, CommonSingleVersionSolidityUserConfig {
101
+ }
102
+ /**
103
+ * Solc-specific SingleVersionSolidityUserConfig.
104
+ */
105
+ interface SolcSingleVersionSolidityUserConfig extends SingleVersionSolcUserConfig {
25
106
  }
26
- interface SingleVersionSolidityUserConfig extends SingleVersionSolcUserConfig, CommonSolidityUserConfig {
107
+ /**
108
+ * A map from compiler type to its SingleVersionSolidityUserConfig type.
109
+ *
110
+ * Note: The types MUST extend `CommonSingleVersionSolidityUserConfig`.
111
+ */
112
+ interface SingleVersionSolidityUserConfigPerType {
113
+ solc: SolcSingleVersionSolidityUserConfig;
27
114
  }
115
+ /**
116
+ * The type of all the single version user configs.
117
+ */
118
+ type SingleVersionSolidityUserConfig = {
119
+ [type in keyof SingleVersionSolidityUserConfigPerType]: SingleVersionSolidityUserConfigPerType[type];
120
+ }[keyof SingleVersionSolidityUserConfigPerType] | (Omit<SolcSingleVersionSolidityUserConfig, "type"> & Partial<Pick<SolcSingleVersionSolidityUserConfig, "type">>);
121
+ /**
122
+ * Deprecated: Use `MultiVersionSolidityUserConfig` or
123
+ * `MultiVersionBuildProfileUserConfig` instead.
124
+ * @deprecated
125
+ */
126
+ interface MultiVersionSolcUserConfig {
127
+ preferWasm?: boolean;
128
+ isolated?: boolean;
129
+ compilers: SolidityCompilerUserConfig[];
130
+ overrides?: Record<string, SolidityCompilerUserConfig>;
131
+ }
132
+ /**
133
+ * The type of a multi-version SolidityUserConfig.
134
+ *
135
+ * Partially defined in `MultiVersionSolcUserConfig` for backwards
136
+ * compatibility.
137
+ */
28
138
  interface MultiVersionSolidityUserConfig extends MultiVersionSolcUserConfig, CommonSolidityUserConfig {
139
+ toolVersionsInBuildInfo?: boolean;
140
+ }
141
+ /**
142
+ * The type of a single-version build profile user config.
143
+ */
144
+ type SingleVersionBuildProfileUserConfig = SolidityCompilerUserConfig & {
145
+ isolated?: boolean;
146
+ toolVersionsInBuildInfo?: boolean;
147
+ };
148
+ /**
149
+ * The type of a multi-version build profile user config.
150
+ * Mostly defined in `MultiVersionSolcUserConfig` for backwards compatibility
151
+ */
152
+ interface MultiVersionBuildProfileUserConfig extends MultiVersionSolcUserConfig {
153
+ toolVersionsInBuildInfo?: boolean;
29
154
  }
155
+ /**
156
+ * The type of the build profile version of the SolidityUserConfig.
157
+ */
30
158
  interface BuildProfilesSolidityUserConfig extends CommonSolidityUserConfig {
31
- profiles: Record<string, SingleVersionSolcUserConfig | MultiVersionSolcUserConfig>;
159
+ profiles: Record<string, SingleVersionBuildProfileUserConfig | MultiVersionBuildProfileUserConfig>;
32
160
  }
161
+ /**
162
+ * Extension of HardhatUserConfig with the `solidity` property.
163
+ */
33
164
  interface HardhatUserConfig {
34
165
  solidity?: SolidityUserConfig;
35
166
  }
36
- interface SolcConfig {
167
+ /**
168
+ * Common fields of a SolidityCompilerConfig.
169
+ *
170
+ * Note: All the types of SolidityCompiler config MUST extend this interface.
171
+ * This is especially relevant for plugins creating their own
172
+ * `SolidityCompilerConfig` variant.
173
+ */
174
+ interface CommonSolidityCompilerConfig {
175
+ type?: SolidityCompilerType;
37
176
  version: string;
38
177
  settings: any;
39
178
  path?: string;
179
+ }
180
+ /**
181
+ * Deprecated: Use `SolcSolidityCompilerConfig` instead.
182
+ * @deprecated
183
+ */
184
+ interface SolcConfig extends CommonSolidityCompilerConfig {
185
+ type?: "solc";
40
186
  preferWasm?: boolean;
41
187
  }
188
+ /**
189
+ * The type of a solc-specific SolidityCompilerConfig.
190
+ */
191
+ interface SolcSolidityCompilerConfig extends SolcConfig {
192
+ }
193
+ /**
194
+ * A map from compiler type to its `SolidityCompilerConfig` type. Note that
195
+ * the types MUST extend `CommonSolidityCompilerConfig`.
196
+ */
197
+ interface SolidityCompilerConfigPerType {
198
+ solc: SolcSolidityCompilerConfig;
199
+ }
200
+ /**
201
+ * The type of all the compiler configs.
202
+ */
203
+ type SolidityCompilerConfig = {
204
+ [type in keyof SolidityCompilerConfigPerType]: SolidityCompilerConfigPerType[type] & {
205
+ type: type;
206
+ };
207
+ }[keyof SolidityCompilerConfigPerType] | (Omit<SolcSolidityCompilerConfig, "type"> & Partial<Pick<SolcSolidityCompilerConfig, "type">>);
208
+ /**
209
+ * The type of a resolved build profile config.
210
+ */
42
211
  interface SolidityBuildProfileConfig {
43
212
  isolated: boolean;
44
213
  preferWasm: boolean;
45
- compilers: SolcConfig[];
46
- overrides: Record<string, SolcConfig>;
214
+ toolVersionsInBuildInfo?: boolean;
215
+ compilers: SolidityCompilerConfig[];
216
+ overrides: Record<string, SolidityCompilerConfig>;
47
217
  }
218
+ /**
219
+ * Resolved Solidity config.
220
+ */
48
221
  interface SolidityConfig {
49
222
  profiles: Record<string, SolidityBuildProfileConfig>;
50
223
  npmFilesToBuild: string[];
224
+ registeredCompilerTypes: SolidityCompilerType[];
225
+ splitTestsCompilation: boolean;
51
226
  }
227
+ /**
228
+ * An extension of HardhatConfig with the `solidity` property.
229
+ */
52
230
  interface HardhatConfig {
53
231
  solidity: SolidityConfig;
54
232
  }
@@ -77,6 +255,27 @@ declare module "../../../types/hooks.js" {
77
255
  solidity: SolidityHooks;
78
256
  }
79
257
  interface SolidityHooks {
258
+ /**
259
+ * Hook triggered to download compilers needed for compilation.
260
+ * Each handler should download compilers it is responsible for.
261
+ * Runs in parallel — all registered handlers execute concurrently.
262
+ *
263
+ * @param context The hook context.
264
+ * @param compilerConfigs All compiler configurations from all build profiles.
265
+ * @param quiet Whether to suppress download progress output.
266
+ */
267
+ downloadCompilers: (context: HookContext, compilerConfigs: SolidityCompilerConfig[], quiet: boolean) => Promise<void>;
268
+ /**
269
+ * Hook to obtain a Compiler instance for a given compiler configuration.
270
+ * The default handler returns a solc compiler. Plugins can intercept to
271
+ * return their own compiler (e.g. SolxCompiler for type: "solx").
272
+ *
273
+ * @param context The hook context.
274
+ * @param compilerConfig The compiler configuration to get a compiler for.
275
+ * @param next A function to call the next handler for this hook.
276
+ * @returns A Compiler instance.
277
+ */
278
+ getCompiler: (context: HookContext, compilerConfig: SolidityCompilerConfig, next: (nextContext: HookContext, nextCompilerConfig: SolidityCompilerConfig) => Promise<Compiler>) => Promise<Compiler>;
80
279
  /**
81
280
  * Hook triggered during the cleanup process of Solidity compilation artifacts.
82
281
  * This hook runs after unused artifacts and build-info files have been removed.
@@ -105,7 +304,7 @@ declare module "../../../types/hooks.js" {
105
304
  */
106
305
  preprocessProjectFileBeforeBuilding(context: HookContext, inputSourceName: string, fsPath: string, fileContent: string, solcVersion: string, next: (nextContext: HookContext, nextInputSourceName: string, nextFsPath: string, nextFileContent: string, nextSolcVersion: string) => Promise<string>): Promise<string>;
107
306
  /**
108
- * Hook triggered within the compilation job when its' solc input is first constructed.
307
+ * Hook triggered within the compilation job when its solc input is first constructed.
109
308
  *
110
309
  * @param context The hook context.
111
310
  * @param solcInput The solc input that will be passed to solc.
@@ -128,22 +327,22 @@ declare module "../../../types/hooks.js" {
128
327
  */
129
328
  build: (context: HookContext, rootFilePaths: string[], options: BuildOptions | undefined, next: (nextContext: HookContext, nextRootFilePaths: string[], nextOptions: BuildOptions | undefined) => Promise<CompilationJobCreationError | Map<string, FileBuildResult>>) => Promise<CompilationJobCreationError | Map<string, FileBuildResult>>;
130
329
  /**
131
- * Hook triggered to invoke a passed in Solc compiler on the
132
- * Solc input generated for a given compilation job.
133
- * This hook allows for manipulating the Solc input passed into the Solc
134
- * compiler Hardhat has selected for the compilation job, and similarly to
135
- * manipulate the Solc output.
330
+ * Hook triggered to invoke a compiler on the standard-json input
331
+ * generated for a given compilation job.
332
+ * This hook allows for manipulating the input passed into the compiler
333
+ * Hardhat has selected for the compilation job, and similarly to
334
+ * manipulate the output.
136
335
  *
137
336
  * @param context The hook context.
138
- * @param compile The Solc compiler selected by Hardhat for this compilation
139
- * job.
140
- * @param solcInput The solc input json constructed from the compilation
337
+ * @param compiler The compiler selected by Hardhat for this compilation
141
338
  * job.
142
- * @param solcConfig The configuration used to setup solc e.g. version.
339
+ * @param solcInput The standard-json input constructed from the
340
+ * compilation job.
341
+ * @param solcConfig The compiler configuration (version, type, etc.).
143
342
  * @param next A function to call the next handler for this hook, or the
144
343
  * default implementation if no more handlers exist.
145
344
  */
146
- invokeSolc(context: HookContext, compiler: Compiler, solcInput: CompilerInput, solcConfig: SolcConfig, next: (nextContext: HookContext, nextCompiler: Compiler, nextSolcInput: CompilerInput, nextSolcConfig: SolcConfig) => Promise<CompilerOutput>): Promise<CompilerOutput>;
345
+ invokeSolc(context: HookContext, compiler: Compiler, solcInput: CompilerInput, solcConfig: SolidityCompilerConfig, next: (nextContext: HookContext, nextCompiler: Compiler, nextSolcInput: CompilerInput, nextSolcConfig: SolidityCompilerConfig) => Promise<CompilerOutput>): Promise<CompilerOutput>;
147
346
  /**
148
347
  * Provide a handler for this hook to supply remappings for npm packages.
149
348
  *
@@ -1 +1 @@
1
- {"version":3,"file":"type-extensions.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity/type-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EACV,YAAY,EACZ,2BAA2B,EAC3B,eAAe,EACf,mBAAmB,EACpB,MAAM,yCAAyC,CAAC;AACjD,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,cAAc,EACf,MAAM,4BAA4B,CAAC;AAEpC,OAAO,0BAA0B,CAAC;AAClC,OAAO,QAAQ,0BAA0B,CAAC;IACxC,KAAY,kBAAkB,GAC1B,MAAM,GACN,MAAM,EAAE,GACR,+BAA+B,GAC/B,8BAA8B,GAC9B,+BAA+B,CAAC;IAEpC,UAAiB,cAAc;QAC7B,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,GAAG,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB;IAED,UAAiB,2BAA4B,SAAQ,cAAc;QACjE,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB;IAED,UAAiB,0BAA0B;QACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,SAAS,EAAE,cAAc,EAAE,CAAC;QAC5B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;KAC5C;IAED,UAAiB,wBAAwB;QACvC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;KAC5B;IAED,UAAiB,+BACf,SAAQ,2BAA2B,EACjC,wBAAwB;KAAG;IAE/B,UAAiB,8BACf,SAAQ,0BAA0B,EAChC,wBAAwB;KAAG;IAE/B,UAAiB,+BACf,SAAQ,wBAAwB;QAChC,QAAQ,EAAE,MAAM,CACd,MAAM,EACN,2BAA2B,GAAG,0BAA0B,CACzD,CAAC;KACH;IAED,UAAiB,iBAAiB;QAChC,QAAQ,CAAC,EAAE,kBAAkB,CAAC;KAC/B;IAED,UAAiB,UAAU;QACzB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,GAAG,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB;IAED,UAAiB,0BAA0B;QACzC,QAAQ,EAAE,OAAO,CAAC;QAClB,UAAU,EAAE,OAAO,CAAC;QACpB,SAAS,EAAE,UAAU,EAAE,CAAC;QACxB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;KACvC;IAED,UAAiB,cAAc;QAC7B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;QACrD,eAAe,EAAE,MAAM,EAAE,CAAC;KAC3B;IAED,UAAiB,aAAa;QAC5B,QAAQ,EAAE,cAAc,CAAC;KAC1B;IAED,UAAiB,qBAAqB;QACpC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;KAC9B;IAED,UAAiB,iBAAiB;QAChC,QAAQ,EAAE,MAAM,EAAE,CAAC;KACpB;CACF;AAED,OAAO,uBAAuB,CAAC;AAC/B,OAAO,QAAQ,uBAAuB,CAAC;IACrC,UAAiB,yBAAyB;QACxC,QAAQ,EAAE,mBAAmB,CAAC;KAC/B;CACF;AAED,OAAO,kCAAkC,CAAC;AAC1C,OAAO,QAAQ,kCAAkC,CAAC;IAChD,UAAiB,aAAa;QAC5B,YAAY,EAAE,MAAM,CAAC;KACtB;CACF;AAED,OAAO,yBAAyB,CAAC;AACjC,OAAO,QAAQ,yBAAyB,CAAC;IACvC,UAAiB,YAAY;QAC3B,QAAQ,EAAE,aAAa,CAAC;KACzB;IAED,UAAiB,aAAa;QAC5B;;;;;;;;WAQG;QACH,kBAAkB,EAAE,CAClB,OAAO,EAAE,WAAW,EACpB,aAAa,EAAE,MAAM,EAAE,EACvB,IAAI,EAAE,CACJ,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,MAAM,EAAE,KACpB,OAAO,CAAC,IAAI,CAAC,KACf,OAAO,CAAC,IAAI,CAAC,CAAC;QAEnB;;;;;;;;;;;;;;;WAeG;QACH,mCAAmC,CACjC,OAAO,EAAE,WAAW,EACpB,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,CACJ,WAAW,EAAE,WAAW,EACxB,mBAAmB,EAAE,MAAM,EAC3B,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EACvB,eAAe,EAAE,MAAM,KACpB,OAAO,CAAC,MAAM,CAAC,GACnB,OAAO,CAAC,MAAM,CAAC,CAAC;QAEnB;;;;;;;;;WASG;QACH,iCAAiC,CAC/B,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,aAAa,EACxB,IAAI,EAAE,CACJ,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,aAAa,KACzB,OAAO,CAAC,aAAa,CAAC,GAC1B,OAAO,CAAC,aAAa,CAAC,CAAC;QAE1B,cAAc,EAAE,CACd,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,CACJ,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,MAAM,KACrB,OAAO,CAAC,MAAM,CAAC,KACjB,OAAO,CAAC,MAAM,CAAC,CAAC;QAErB;;;;;;;;;WASG;QACH,KAAK,EAAE,CACL,OAAO,EAAE,WAAW,EACpB,aAAa,EAAE,MAAM,EAAE,EACvB,OAAO,EAAE,YAAY,GAAG,SAAS,EACjC,IAAI,EAAE,CACJ,WAAW,EAAE,WAAW,EACxB,iBAAiB,EAAE,MAAM,EAAE,EAC3B,WAAW,EAAE,YAAY,GAAG,SAAS,KAClC,OAAO,CAAC,2BAA2B,GAAG,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,KACrE,OAAO,CAAC,2BAA2B,GAAG,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;QAEzE;;;;;;;;;;;;;;;WAeG;QACH,UAAU,CACR,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,aAAa,EACxB,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,CACJ,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,QAAQ,EACtB,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,UAAU,KACvB,OAAO,CAAC,cAAc,CAAC,GAC3B,OAAO,CAAC,cAAc,CAAC,CAAC;QAE3B;;;;;;;;;;;;;;WAcG;QACH,wBAAwB,EAAE,CACxB,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,CACJ,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,MAAM,EACvB,kBAAkB,EAAE,MAAM,EAC1B,eAAe,EAAE,MAAM,KACpB,OAAO,CAAC,KAAK,CAAC;YAAE,UAAU,EAAE,MAAM,EAAE,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC,KAC1D,OAAO,CAAC,KAAK,CAAC;YAAE,UAAU,EAAE,MAAM,EAAE,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC,CAAC;KAC/D;CACF"}
1
+ {"version":3,"file":"type-extensions.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity/type-extensions.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"type-extensions.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity/type-extensions.ts"],"names":[],"mappings":"AAaA,OAAO,0BAA0B,CAAC;AAoFlC,OAAO,uBAAuB,CAAC;AAO/B,OAAO,kCAAkC,CAAC;AAO1C,OAAO,yBAAyB,CAAC"}
1
+ {"version":3,"file":"type-extensions.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity/type-extensions.ts"],"names":[],"mappings":"AAaA,OAAO,0BAA0B,CAAC;AAmTlC,OAAO,uBAAuB,CAAC;AAO/B,OAAO,kCAAkC,CAAC;AAO1C,OAAO,yBAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EACV,6BAA6B,EAC7B,aAAa,EAEd,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,wBAAwB,CAAC;AAehC,eAAO,MAAM,iBAAiB,uEACwC,CAAC;AA+EvE,wBAAgB,gCAAgC,CAC9C,iBAAiB,EAAE,sBAAsB,CAAC,SAAS,CAAC,EACpD,4BAA4B,EAAE,6BAA6B,GAC1D,yBAAyB,GAAG,SAAS,CAqBvC;AAED,wBAAgB,8BAA8B,CAC5C,UAAU,EAAE,OAAO,GAClB,gCAAgC,EAAE,CAEpC;AAED,wBAAsB,6BAA6B,CACjD,UAAU,EAAE,iBAAiB,EAC7B,cAAc,EAAE,aAAa,EAC7B,4BAA4B,EAAE,6BAA6B,GAC1D,OAAO,CAAC,aAAa,CAAC,CAmCxB;AAED,wBAAgB,iBAAiB,CAC/B,cAAc,GAAE,sBAAsB,CAAC,MAAM,CAAM,GAClD,kBAAkB,CAAC,MAAM,CAAC,CAK5B"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EACV,6BAA6B,EAC7B,aAAa,EAEd,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,wBAAwB,CAAC;AAgBhC,eAAO,MAAM,iBAAiB,uEACwC,CAAC;AAmFvE,wBAAgB,gCAAgC,CAC9C,iBAAiB,EAAE,sBAAsB,CAAC,SAAS,CAAC,EACpD,4BAA4B,EAAE,6BAA6B,GAC1D,yBAAyB,GAAG,SAAS,CAyBvC;AAED,wBAAgB,8BAA8B,CAC5C,UAAU,EAAE,OAAO,GAClB,gCAAgC,EAAE,CAEpC;AAED,wBAAsB,6BAA6B,CACjD,UAAU,EAAE,iBAAiB,EAC7B,cAAc,EAAE,aAAa,EAC7B,4BAA4B,EAAE,6BAA6B,GAC1D,OAAO,CAAC,aAAa,CAAC,CAmCxB;AAED,wBAAgB,iBAAiB,CAC/B,cAAc,GAAE,sBAAsB,CAAC,MAAM,CAAM,GAClD,kBAAkB,CAAC,MAAM,CAAC,CAK5B"}
@@ -1,12 +1,11 @@
1
1
  import path from "node:path";
2
2
  import { isObject } from "@nomicfoundation/hardhat-utils/lang";
3
3
  import { resolveFromRoot } from "@nomicfoundation/hardhat-utils/path";
4
- import { conditionalUnionType, sensitiveStringSchema, sensitiveUrlSchema, validateUserConfigZodType, } from "@nomicfoundation/hardhat-zod-utils";
4
+ import { conditionalUnionType, sensitiveStringSchema, sensitiveUrlSchema, unionType, validateUserConfigZodType, } from "@nomicfoundation/hardhat-zod-utils";
5
5
  import { z } from "zod";
6
6
  // the keccak256 of "built for ethereum"
7
7
  export const DEFAULT_FUZZ_SEED = "0x7727ea51af0441c20da14dcd68a15dac8c9ebd589c5be8fa8c87c1d3720450bc";
8
8
  const solidityTestUserConfigType = z.object({
9
- timeout: z.number().optional(),
10
9
  fsPermissions: z
11
10
  .object({
12
11
  readWriteFile: z.array(z.string()).optional(),
@@ -44,7 +43,7 @@ const solidityTestUserConfigType = z.object({
44
43
  forking: z
45
44
  .object({
46
45
  url: z.optional(sensitiveUrlSchema),
47
- blockNumber: z.bigint().optional(),
46
+ blockNumber: z.optional(unionType([z.number().int().nonnegative().safe(), z.bigint().nonnegative()], "Expected a nonnegative safe int or a nonnegative bigint")),
48
47
  rpcEndpoints: z.record(sensitiveStringSchema).optional(),
49
48
  })
50
49
  .optional(),
@@ -89,6 +88,9 @@ export function resolveSolidityTestForkingConfig(forkingUserConfig, resolveConfi
89
88
  }
90
89
  return {
91
90
  ...forkingUserConfig,
91
+ blockNumber: forkingUserConfig.blockNumber !== undefined
92
+ ? BigInt(forkingUserConfig.blockNumber)
93
+ : undefined,
92
94
  url: forkingUserConfig.url !== undefined
93
95
  ? resolveConfigurationVariable(forkingUserConfig.url)
94
96
  : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/config.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,26 @@
1
1
  import type { ArtifactManager } from "../../../types/artifacts.js";
2
- import type { BuildInfoAndOutput, Artifact as EdrArtifact } from "@nomicfoundation/edr";
2
+ import type { BuildInfoAndOutput as EdrBuildInfoAndOutput, Artifact as EdrArtifact } from "@nomicfoundation/edr";
3
+ export interface BuildInfoAndOutput extends EdrBuildInfoAndOutput {
4
+ buildInfoId: string;
5
+ }
6
+ export interface EdrArtifactWithMetadata {
7
+ edrArtifact: EdrArtifact;
8
+ userSourceName: string;
9
+ buildInfoId: string;
10
+ }
11
+ export declare const BUILD_INFO_FORMAT: RegExp;
3
12
  /**
4
13
  * This function returns all the build infos and associated outputs.
5
14
  *
6
15
  * @param artifactManager The artifact manager.
7
16
  * @returns The build infos in the Hardhat v3 format as expected by the EDR.
8
17
  */
9
- export declare function getBuildInfos(artifactManager: ArtifactManager): Promise<BuildInfoAndOutput[]>;
18
+ export declare function getBuildInfosAndOutputs(artifactManager: ArtifactManager): Promise<BuildInfoAndOutput[]>;
10
19
  /**
11
20
  * This function returns the artifacts generated during the compilation.
12
21
  *
13
22
  * @param artifactManager The artifact manager.
14
23
  * @returns The artifacts in the format expected by the EDR.
15
24
  */
16
- export declare function getEdrArtifacts(artifactManager: ArtifactManager): Promise<Array<{
17
- edrArtifact: EdrArtifact;
18
- userSourceName: string;
19
- }>>;
25
+ export declare function buildEdrArtifactsWithMetadata(artifactManager: ArtifactManager): Promise<EdrArtifactWithMetadata[]>;
20
26
  //# sourceMappingURL=edr-artifacts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"edr-artifacts.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/edr-artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAY,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,KAAK,EACV,kBAAkB,EAClB,QAAQ,IAAI,WAAW,EACxB,MAAM,sBAAsB,CAAC;AAQ9B;;;;;GAKG;AACH,wBAAsB,aAAa,CACjC,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAgC/B;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,KAAK,CAAC;IAAE,WAAW,EAAE,WAAW,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAuFtE"}
1
+ {"version":3,"file":"edr-artifacts.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/edr-artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAY,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,KAAK,EACV,kBAAkB,IAAI,qBAAqB,EAC3C,QAAQ,IAAI,WAAW,EACxB,MAAM,sBAAsB,CAAC;AAK9B,MAAM,WAAW,kBAAmB,SAAQ,qBAAqB;IAC/D,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,iBAAiB,EAAE,MAC4E,CAAC;AAE7G;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAiC/B;AAED;;;;;GAKG;AACH,wBAAsB,6BAA6B,CACjD,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAwFpC"}
@@ -1,17 +1,17 @@
1
1
  import { assertHardhatInvariant } from "@nomicfoundation/hardhat-errors";
2
2
  import { readBinaryFile } from "@nomicfoundation/hardhat-utils/fs";
3
- const BUILD_INFO_FORMAT = /^solc-(?<major>\d+)_(?<minor>\d+)_(?<patch>\d+)-[0-9a-fA-F]*$/;
3
+ export const BUILD_INFO_FORMAT = /^solc-(?<major>\d+)_(?<minor>\d+)_(?<patch>\d+)(?:-(?<compilerType>[a-zA-Z][a-zA-Z0-9]*))?-[0-9a-fA-F]*$/;
4
4
  /**
5
5
  * This function returns all the build infos and associated outputs.
6
6
  *
7
7
  * @param artifactManager The artifact manager.
8
8
  * @returns The build infos in the Hardhat v3 format as expected by the EDR.
9
9
  */
10
- export async function getBuildInfos(artifactManager) {
11
- const buildIds = await artifactManager.getAllBuildInfoIds();
12
- return Promise.all(Array.from(buildIds).map(async (buildId) => {
13
- const buildInfoPath = await artifactManager.getBuildInfoPath(buildId);
14
- const buildInfoOutputPath = await artifactManager.getBuildInfoOutputPath(buildId);
10
+ export async function getBuildInfosAndOutputs(artifactManager) {
11
+ const buildInfoIds = await artifactManager.getAllBuildInfoIds();
12
+ return Promise.all(Array.from(buildInfoIds).map(async (buildInfoId) => {
13
+ const buildInfoPath = await artifactManager.getBuildInfoPath(buildInfoId);
14
+ const buildInfoOutputPath = await artifactManager.getBuildInfoOutputPath(buildInfoId);
15
15
  // This is only safe because of how we currently interact with getBuildInfos
16
16
  // i.e. we call it immediately after a build which should ensure both
17
17
  // the build info and build info output exist. If the usage pattern of this
@@ -22,6 +22,7 @@ export async function getBuildInfos(artifactManager) {
22
22
  const buildInfo = await readBinaryFile(buildInfoPath);
23
23
  const output = await readBinaryFile(buildInfoOutputPath);
24
24
  return {
25
+ buildInfoId,
25
26
  buildInfo,
26
27
  output,
27
28
  };
@@ -33,7 +34,7 @@ export async function getBuildInfos(artifactManager) {
33
34
  * @param artifactManager The artifact manager.
34
35
  * @returns The artifacts in the format expected by the EDR.
35
36
  */
36
- export async function getEdrArtifacts(artifactManager) {
37
+ export async function buildEdrArtifactsWithMetadata(artifactManager) {
37
38
  const fullyQualifiedNames = await artifactManager.getAllFullyQualifiedNames();
38
39
  const artifacts = await Promise.all(Array.from(fullyQualifiedNames).map(async (fullyQualifiedName) => {
39
40
  return artifactManager.readArtifact(fullyQualifiedName);
@@ -84,6 +85,7 @@ export async function getEdrArtifacts(artifactManager) {
84
85
  contract,
85
86
  },
86
87
  userSourceName: artifact.sourceName,
88
+ buildInfoId: artifact.buildInfoId,
87
89
  };
88
90
  });
89
91
  }
@@ -1 +1 @@
1
- {"version":3,"file":"edr-artifacts.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/edr-artifacts.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAEnE,MAAM,iBAAiB,GACrB,+DAA+D,CAAC;AAElE;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,eAAgC;IAEhC,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,kBAAkB,EAAE,CAAC;IAE5D,OAAO,OAAO,CAAC,GAAG,CAChB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACzC,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACtE,MAAM,mBAAmB,GACvB,MAAM,eAAe,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAExD,4EAA4E;QAC5E,qEAAqE;QACrE,2EAA2E;QAC3E,0EAA0E;QAC1E,yCAAyC;QACzC,sBAAsB,CACpB,aAAa,KAAK,SAAS,EAC3B,uCAAuC,CACxC,CAAC;QACF,sBAAsB,CACpB,mBAAmB,KAAK,SAAS,EACjC,6CAA6C,CAC9C,CAAC;QAEF,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,aAAa,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,mBAAmB,CAAC,CAAC;QAEzD,OAAO;YACL,SAAS;YACT,MAAM;SACP,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,eAAgC;IAEhC,MAAM,mBAAmB,GAAG,MAAM,eAAe,CAAC,yBAAyB,EAAE,CAAC;IAE9E,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CACjC,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,kBAAkB,EAAE,EAAE;QAC/D,OAAO,eAAe,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;IAC1D,CAAC,CAAC,CACH,CAAC;IAEF,MAAM,YAAY,GAAa,KAAK,CAAC,IAAI,CACvC,IAAI,GAAG,CACL,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QACzB,sBAAsB,CACpB,QAAQ,CAAC,WAAW,KAAK,SAAS,EAClC,qDAAqD,uBAAuB,CAAC,QAAQ,CAAC,EAAE,CACzF,CAAC;QAEF,OAAO,QAAQ,CAAC,WAAW,CAAC;IAC9B,CAAC,CAAC,CACH,CACF,CAAC;IAEF,MAAM,iBAAiB,GAA4B,YAAY;SAC5D,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;QACnB,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAElD,yEAAyE;QACzE,wEAAwE;QACxE,qBAAqB;QACrB,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,sBAAsB,CACpB,KAAK,CAAC,MAAM,KAAK,SAAS,EAC1B,4BAA4B,CAC7B,CAAC;QAEF,MAAM,gBAAgB,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAE7F,MAAM,MAAM,GAAqB,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;QAEjE,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,sBAAsB,EAAE,EAAE,CAAC,sBAAsB,KAAK,SAAS,CAAC,CAAC;IAE5E,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAEhD,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QAChC,sBAAsB,CACpB,QAAQ,CAAC,WAAW,KAAK,SAAS,EAClC,qDAAqD,uBAAuB,CAAC,QAAQ,CAAC,EAAE,CACzF,CAAC;QAEF,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAE3D,sBAAsB,CACpB,WAAW,KAAK,SAAS,EACzB,qDAAqD,uBAAuB,CAAC,QAAQ,CAAC,EAAE,CACzF,CAAC;QAEF,MAAM,EAAE,GAAG;YACT,IAAI,EAAE,QAAQ,CAAC,YAAY;YAC3B,WAAW;YACX,MAAM,EAAE,QAAQ,CAAC,eAAe,IAAI,QAAQ,CAAC,UAAU;SACxD,CAAC;QAEF,MAAM,QAAQ,GAAG;YACf,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;YACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,cAAc,EAAE,QAAQ,CAAC,cAAc;YACvC,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;YAC3C,sBAAsB,EAAE,QAAQ,CAAC,sBAAsB;SACxD,CAAC;QAEF,4EAA4E;QAC5E,0EAA0E;QAC1E,2EAA2E;QAC3E,eAAe;QACf,OAAO;YACL,WAAW,EAAE;gBACX,EAAE;gBACF,QAAQ;aACT;YACD,cAAc,EAAE,QAAQ,CAAC,UAAU;SACpC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,uBAAuB,CAAC,QAAkB;IACjD,OAAO,IAAI,QAAQ,CAAC,YAAY,SAAS,QAAQ,CAAC,UAAU,GAAG,CAAC;AAClE,CAAC"}
1
+ {"version":3,"file":"edr-artifacts.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/edr-artifacts.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,3 @@
1
- import type { ArtifactId, CallTrace } from "@nomicfoundation/edr";
2
- export interface Colorizer {
3
- blue: (text: string) => string;
4
- green: (text: string) => string;
5
- red: (text: string) => string;
6
- cyan: (text: string) => string;
7
- yellow: (text: string) => string;
8
- grey: (text: string) => string;
9
- dim: (text: string) => string;
10
- }
1
+ import type { ArtifactId } from "@nomicfoundation/edr";
11
2
  export declare function formatArtifactId(artifactId: ArtifactId, sourceNameToUserSourceName: Map<string, string>): string;
12
- export declare function formatLogs(logs: string[], indent: number, colorizer: Colorizer): string;
13
- export declare function formatTraces(traces: CallTrace[], prefix: string, colorizer: Colorizer): string;
14
3
  //# sourceMappingURL=formatters.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"formatters.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/formatters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,UAAU,EACV,SAAS,EAEV,MAAM,sBAAsB,CAAC;AAO9B,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/B,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAChC,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC9B,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/B,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IACjC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/B,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CAC/B;AAID,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,UAAU,EACtB,0BAA0B,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9C,MAAM,CAKR;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EAAE,EACd,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,GACnB,MAAM,CAIR;AA2KD,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,EAAE,EACnB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,GACnB,MAAM,CAKR"}
1
+ {"version":3,"file":"formatters.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/formatters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,UAAU,EACtB,0BAA0B,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9C,MAAM,CAKR"}