hardhat 3.4.4 → 3.5.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 (333) hide show
  1. package/CHANGELOG.md +61 -0
  2. package/dist/src/config.d.ts +0 -1
  3. package/dist/src/config.d.ts.map +1 -1
  4. package/dist/src/config.js +0 -3
  5. package/dist/src/config.js.map +1 -1
  6. package/dist/src/hre.d.ts +0 -1
  7. package/dist/src/hre.d.ts.map +1 -1
  8. package/dist/src/hre.js +0 -3
  9. package/dist/src/hre.js.map +1 -1
  10. package/dist/src/index.d.ts +0 -1
  11. package/dist/src/index.d.ts.map +1 -1
  12. package/dist/src/index.js +0 -3
  13. package/dist/src/index.js.map +1 -1
  14. package/dist/src/internal/builtin-global-options.d.ts.map +1 -1
  15. package/dist/src/internal/builtin-global-options.js +1 -1
  16. package/dist/src/internal/builtin-global-options.js.map +1 -1
  17. package/dist/src/internal/builtin-plugins/artifacts/index.d.ts +1 -1
  18. package/dist/src/internal/builtin-plugins/artifacts/index.d.ts.map +1 -1
  19. package/dist/src/internal/builtin-plugins/artifacts/index.js +0 -1
  20. package/dist/src/internal/builtin-plugins/artifacts/index.js.map +1 -1
  21. package/dist/src/internal/builtin-plugins/clean/index.d.ts +1 -1
  22. package/dist/src/internal/builtin-plugins/clean/index.d.ts.map +1 -1
  23. package/dist/src/internal/builtin-plugins/clean/index.js +0 -1
  24. package/dist/src/internal/builtin-plugins/clean/index.js.map +1 -1
  25. package/dist/src/internal/builtin-plugins/clean/type-extensions.d.ts +1 -1
  26. package/dist/src/internal/builtin-plugins/clean/type-extensions.d.ts.map +1 -1
  27. package/dist/src/internal/builtin-plugins/clean/type-extensions.js +1 -1
  28. package/dist/src/internal/builtin-plugins/clean/type-extensions.js.map +1 -1
  29. package/dist/src/internal/builtin-plugins/coverage/hook-handlers/solidity.d.ts.map +1 -1
  30. package/dist/src/internal/builtin-plugins/coverage/hook-handlers/solidity.js +7 -10
  31. package/dist/src/internal/builtin-plugins/coverage/hook-handlers/solidity.js.map +1 -1
  32. package/dist/src/internal/builtin-plugins/coverage/index.d.ts +1 -1
  33. package/dist/src/internal/builtin-plugins/coverage/index.d.ts.map +1 -1
  34. package/dist/src/internal/builtin-plugins/coverage/index.js +0 -1
  35. package/dist/src/internal/builtin-plugins/coverage/index.js.map +1 -1
  36. package/dist/src/internal/builtin-plugins/coverage/instrumentation.d.ts +1 -4
  37. package/dist/src/internal/builtin-plugins/coverage/instrumentation.d.ts.map +1 -1
  38. package/dist/src/internal/builtin-plugins/coverage/instrumentation.js +2 -4
  39. package/dist/src/internal/builtin-plugins/coverage/instrumentation.js.map +1 -1
  40. package/dist/src/internal/builtin-plugins/coverage/type-extensions.d.ts +1 -1
  41. package/dist/src/internal/builtin-plugins/coverage/type-extensions.d.ts.map +1 -1
  42. package/dist/src/internal/builtin-plugins/coverage/type-extensions.js +1 -1
  43. package/dist/src/internal/builtin-plugins/coverage/type-extensions.js.map +1 -1
  44. package/dist/src/internal/builtin-plugins/gas-analytics/index.d.ts +1 -1
  45. package/dist/src/internal/builtin-plugins/gas-analytics/index.d.ts.map +1 -1
  46. package/dist/src/internal/builtin-plugins/gas-analytics/index.js +0 -1
  47. package/dist/src/internal/builtin-plugins/gas-analytics/index.js.map +1 -1
  48. package/dist/src/internal/builtin-plugins/gas-analytics/snapshot-cheatcodes.d.ts +21 -0
  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 +49 -1
  51. package/dist/src/internal/builtin-plugins/gas-analytics/snapshot-cheatcodes.js.map +1 -1
  52. package/dist/src/internal/builtin-plugins/gas-analytics/tasks/solidity-test/task-action.d.ts +2 -1
  53. package/dist/src/internal/builtin-plugins/gas-analytics/tasks/solidity-test/task-action.d.ts.map +1 -1
  54. package/dist/src/internal/builtin-plugins/gas-analytics/tasks/solidity-test/task-action.js +12 -2
  55. package/dist/src/internal/builtin-plugins/gas-analytics/tasks/solidity-test/task-action.js.map +1 -1
  56. package/dist/src/internal/builtin-plugins/gas-analytics/type-extensions.d.ts +1 -1
  57. package/dist/src/internal/builtin-plugins/gas-analytics/type-extensions.d.ts.map +1 -1
  58. package/dist/src/internal/builtin-plugins/gas-analytics/type-extensions.js +1 -1
  59. package/dist/src/internal/builtin-plugins/gas-analytics/type-extensions.js.map +1 -1
  60. package/dist/src/internal/builtin-plugins/index.d.ts +8 -8
  61. package/dist/src/internal/builtin-plugins/index.d.ts.map +1 -1
  62. package/dist/src/internal/builtin-plugins/network-manager/config-resolution.d.ts.map +1 -1
  63. package/dist/src/internal/builtin-plugins/network-manager/config-resolution.js +9 -2
  64. package/dist/src/internal/builtin-plugins/network-manager/config-resolution.js.map +1 -1
  65. package/dist/src/internal/builtin-plugins/network-manager/edr/edr-constants.d.ts +1 -0
  66. package/dist/src/internal/builtin-plugins/network-manager/edr/edr-constants.d.ts.map +1 -1
  67. package/dist/src/internal/builtin-plugins/network-manager/edr/edr-constants.js +1 -0
  68. package/dist/src/internal/builtin-plugins/network-manager/edr/edr-constants.js.map +1 -1
  69. package/dist/src/internal/builtin-plugins/network-manager/edr/edr-provider.d.ts.map +1 -1
  70. package/dist/src/internal/builtin-plugins/network-manager/edr/edr-provider.js +25 -5
  71. package/dist/src/internal/builtin-plugins/network-manager/edr/edr-provider.js.map +1 -1
  72. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/stack-trace-solidity-errors.d.ts.map +1 -1
  73. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/stack-trace-solidity-errors.js +7 -6
  74. package/dist/src/internal/builtin-plugins/network-manager/edr/stack-traces/stack-trace-solidity-errors.js.map +1 -1
  75. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/convert-to-edr.d.ts +16 -0
  76. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/convert-to-edr.d.ts.map +1 -1
  77. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/convert-to-edr.js +28 -1
  78. package/dist/src/internal/builtin-plugins/network-manager/edr/utils/convert-to-edr.js.map +1 -1
  79. package/dist/src/internal/builtin-plugins/network-manager/index.d.ts +4 -4
  80. package/dist/src/internal/builtin-plugins/network-manager/index.d.ts.map +1 -1
  81. package/dist/src/internal/builtin-plugins/network-manager/index.js +0 -4
  82. package/dist/src/internal/builtin-plugins/network-manager/index.js.map +1 -1
  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 +2 -6
  85. package/dist/src/internal/builtin-plugins/network-manager/network-manager.js.map +1 -1
  86. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/config.d.ts +5 -4
  87. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/config.d.ts.map +1 -1
  88. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/config.js +1 -1
  89. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/config.js.map +1 -1
  90. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/global-options.d.ts +1 -1
  91. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/global-options.d.ts.map +1 -1
  92. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/global-options.js +1 -1
  93. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/global-options.js.map +1 -1
  94. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/hooks.d.ts +0 -1
  95. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/hooks.d.ts.map +1 -1
  96. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/hooks.js +1 -1
  97. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/hooks.js.map +1 -1
  98. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/hre.d.ts +0 -1
  99. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/hre.d.ts.map +1 -1
  100. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/hre.js +1 -1
  101. package/dist/src/internal/builtin-plugins/network-manager/type-extensions/hre.js.map +1 -1
  102. package/dist/src/internal/builtin-plugins/network-manager/type-validation.d.ts.map +1 -1
  103. package/dist/src/internal/builtin-plugins/network-manager/type-validation.js +3 -1
  104. package/dist/src/internal/builtin-plugins/network-manager/type-validation.js.map +1 -1
  105. package/dist/src/internal/builtin-plugins/network-manager/utils/apply-coverage-network-overrides.d.ts +18 -0
  106. package/dist/src/internal/builtin-plugins/network-manager/utils/apply-coverage-network-overrides.d.ts.map +1 -0
  107. package/dist/src/internal/builtin-plugins/network-manager/utils/apply-coverage-network-overrides.js +27 -0
  108. package/dist/src/internal/builtin-plugins/network-manager/utils/apply-coverage-network-overrides.js.map +1 -0
  109. package/dist/src/internal/builtin-plugins/node/json-rpc/handler.js +6 -5
  110. package/dist/src/internal/builtin-plugins/node/json-rpc/handler.js.map +1 -1
  111. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.d.ts.map +1 -1
  112. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.js +22 -9
  113. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.js.map +1 -1
  114. package/dist/src/internal/builtin-plugins/solidity/build-system/resolver/remapped-npm-packages-graph.d.ts.map +1 -1
  115. package/dist/src/internal/builtin-plugins/solidity/build-system/resolver/remapped-npm-packages-graph.js +7 -1
  116. package/dist/src/internal/builtin-plugins/solidity/build-system/resolver/remapped-npm-packages-graph.js.map +1 -1
  117. package/dist/src/internal/builtin-plugins/solidity/constants.d.ts +10 -0
  118. package/dist/src/internal/builtin-plugins/solidity/constants.d.ts.map +1 -1
  119. package/dist/src/internal/builtin-plugins/solidity/constants.js +10 -0
  120. package/dist/src/internal/builtin-plugins/solidity/constants.js.map +1 -1
  121. package/dist/src/internal/builtin-plugins/solidity/index.d.ts +1 -1
  122. package/dist/src/internal/builtin-plugins/solidity/index.d.ts.map +1 -1
  123. package/dist/src/internal/builtin-plugins/solidity/index.js +1 -1
  124. package/dist/src/internal/builtin-plugins/solidity/index.js.map +1 -1
  125. package/dist/src/internal/builtin-plugins/solidity/tasks/compile.d.ts +9 -0
  126. package/dist/src/internal/builtin-plugins/solidity/tasks/compile.d.ts.map +1 -0
  127. package/dist/src/internal/builtin-plugins/solidity/tasks/compile.js +10 -0
  128. package/dist/src/internal/builtin-plugins/solidity/tasks/compile.js.map +1 -0
  129. package/dist/src/internal/builtin-plugins/solidity/type-extensions.d.ts +0 -4
  130. package/dist/src/internal/builtin-plugins/solidity/type-extensions.d.ts.map +1 -1
  131. package/dist/src/internal/builtin-plugins/solidity/type-extensions.js +1 -4
  132. package/dist/src/internal/builtin-plugins/solidity/type-extensions.js.map +1 -1
  133. package/dist/src/internal/builtin-plugins/solidity-test/config.d.ts +4 -3
  134. package/dist/src/internal/builtin-plugins/solidity-test/config.d.ts.map +1 -1
  135. package/dist/src/internal/builtin-plugins/solidity-test/config.js +55 -8
  136. package/dist/src/internal/builtin-plugins/solidity-test/config.js.map +1 -1
  137. package/dist/src/internal/builtin-plugins/solidity-test/eip712/ast-walker.d.ts +58 -0
  138. package/dist/src/internal/builtin-plugins/solidity-test/eip712/ast-walker.d.ts.map +1 -0
  139. package/dist/src/internal/builtin-plugins/solidity-test/eip712/ast-walker.js +226 -0
  140. package/dist/src/internal/builtin-plugins/solidity-test/eip712/ast-walker.js.map +1 -0
  141. package/dist/src/internal/builtin-plugins/solidity-test/eip712/canonicalize.d.ts +29 -0
  142. package/dist/src/internal/builtin-plugins/solidity-test/eip712/canonicalize.d.ts.map +1 -0
  143. package/dist/src/internal/builtin-plugins/solidity-test/eip712/canonicalize.js +244 -0
  144. package/dist/src/internal/builtin-plugins/solidity-test/eip712/canonicalize.js.map +1 -0
  145. package/dist/src/internal/builtin-plugins/solidity-test/eip712/glob.d.ts +7 -0
  146. package/dist/src/internal/builtin-plugins/solidity-test/eip712/glob.d.ts.map +1 -0
  147. package/dist/src/internal/builtin-plugins/solidity-test/eip712/glob.js +204 -0
  148. package/dist/src/internal/builtin-plugins/solidity-test/eip712/glob.js.map +1 -0
  149. package/dist/src/internal/builtin-plugins/solidity-test/eip712/index.d.ts +21 -0
  150. package/dist/src/internal/builtin-plugins/solidity-test/eip712/index.d.ts.map +1 -0
  151. package/dist/src/internal/builtin-plugins/solidity-test/eip712/index.js +77 -0
  152. package/dist/src/internal/builtin-plugins/solidity-test/eip712/index.js.map +1 -0
  153. package/dist/src/internal/builtin-plugins/solidity-test/helpers.d.ts +4 -3
  154. package/dist/src/internal/builtin-plugins/solidity-test/helpers.d.ts.map +1 -1
  155. package/dist/src/internal/builtin-plugins/solidity-test/helpers.js +20 -3
  156. package/dist/src/internal/builtin-plugins/solidity-test/helpers.js.map +1 -1
  157. package/dist/src/internal/builtin-plugins/solidity-test/index.d.ts +1 -1
  158. package/dist/src/internal/builtin-plugins/solidity-test/index.d.ts.map +1 -1
  159. package/dist/src/internal/builtin-plugins/solidity-test/index.js +0 -1
  160. package/dist/src/internal/builtin-plugins/solidity-test/index.js.map +1 -1
  161. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/constants.d.ts +4 -2
  162. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/constants.d.ts.map +1 -1
  163. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/constants.js +5 -1
  164. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/constants.js.map +1 -1
  165. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/helpers.d.ts.map +1 -1
  166. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/helpers.js +15 -3
  167. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/helpers.js.map +1 -1
  168. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/validation.d.ts +3 -2
  169. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/validation.d.ts.map +1 -1
  170. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/validation.js +18 -4
  171. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/validation.js.map +1 -1
  172. package/dist/src/internal/builtin-plugins/solidity-test/task-action.d.ts.map +1 -1
  173. package/dist/src/internal/builtin-plugins/solidity-test/task-action.js +5 -1
  174. package/dist/src/internal/builtin-plugins/solidity-test/task-action.js.map +1 -1
  175. package/dist/src/internal/builtin-plugins/solidity-test/test-profiles.d.ts +2 -0
  176. package/dist/src/internal/builtin-plugins/solidity-test/test-profiles.d.ts.map +1 -0
  177. package/dist/src/internal/builtin-plugins/solidity-test/test-profiles.js +2 -0
  178. package/dist/src/internal/builtin-plugins/solidity-test/test-profiles.js.map +1 -0
  179. package/dist/src/internal/builtin-plugins/solidity-test/type-extensions.d.ts +91 -33
  180. package/dist/src/internal/builtin-plugins/solidity-test/type-extensions.d.ts.map +1 -1
  181. package/dist/src/internal/builtin-plugins/solidity-test/type-extensions.js +1 -1
  182. package/dist/src/internal/builtin-plugins/solidity-test/type-extensions.js.map +1 -1
  183. package/dist/src/internal/builtin-plugins/test/index.d.ts +1 -1
  184. package/dist/src/internal/builtin-plugins/test/index.d.ts.map +1 -1
  185. package/dist/src/internal/builtin-plugins/test/index.js +0 -1
  186. package/dist/src/internal/builtin-plugins/test/index.js.map +1 -1
  187. package/dist/src/internal/builtin-plugins/test/type-extensions.d.ts +0 -1
  188. package/dist/src/internal/builtin-plugins/test/type-extensions.d.ts.map +1 -1
  189. package/dist/src/internal/builtin-plugins/test/type-extensions.js +1 -1
  190. package/dist/src/internal/builtin-plugins/test/type-extensions.js.map +1 -1
  191. package/dist/src/internal/cli/init/init.d.ts +31 -6
  192. package/dist/src/internal/cli/init/init.d.ts.map +1 -1
  193. package/dist/src/internal/cli/init/init.js +121 -10
  194. package/dist/src/internal/cli/init/init.js.map +1 -1
  195. package/dist/src/internal/cli/main.d.ts.map +1 -1
  196. package/dist/src/internal/cli/main.js +41 -1
  197. package/dist/src/internal/cli/main.js.map +1 -1
  198. package/dist/src/types/arguments.d.ts +1 -0
  199. package/dist/src/types/arguments.d.ts.map +1 -1
  200. package/dist/src/types/arguments.js +1 -0
  201. package/dist/src/types/arguments.js.map +1 -1
  202. package/dist/src/types/artifacts.d.ts +1 -0
  203. package/dist/src/types/artifacts.d.ts.map +1 -1
  204. package/dist/src/types/artifacts.js +1 -1
  205. package/dist/src/types/artifacts.js.map +1 -1
  206. package/dist/src/types/builtin-plugin-type-extensions.d.ts +2 -0
  207. package/dist/src/types/builtin-plugin-type-extensions.d.ts.map +1 -0
  208. package/dist/src/types/builtin-plugin-type-extensions.js +2 -0
  209. package/dist/src/types/builtin-plugin-type-extensions.js.map +1 -0
  210. package/dist/src/types/config.d.ts +1 -1
  211. package/dist/src/types/config.d.ts.map +1 -1
  212. package/dist/src/types/config.js +1 -3
  213. package/dist/src/types/config.js.map +1 -1
  214. package/dist/src/types/global-options.d.ts +1 -0
  215. package/dist/src/types/global-options.d.ts.map +1 -1
  216. package/dist/src/types/global-options.js +1 -1
  217. package/dist/src/types/global-options.js.map +1 -1
  218. package/dist/src/types/hooks.d.ts +1 -0
  219. package/dist/src/types/hooks.d.ts.map +1 -1
  220. package/dist/src/types/hooks.js +1 -1
  221. package/dist/src/types/hooks.js.map +1 -1
  222. package/dist/src/types/hre.d.ts +1 -0
  223. package/dist/src/types/hre.d.ts.map +1 -1
  224. package/dist/src/types/hre.js +1 -1
  225. package/dist/src/types/hre.js.map +1 -1
  226. package/dist/src/types/index.d.ts +1 -0
  227. package/dist/src/types/index.d.ts.map +1 -1
  228. package/dist/src/types/index.js +1 -0
  229. package/dist/src/types/index.js.map +1 -1
  230. package/dist/src/types/network.d.ts +1 -0
  231. package/dist/src/types/network.d.ts.map +1 -1
  232. package/dist/src/types/network.js +1 -1
  233. package/dist/src/types/network.js.map +1 -1
  234. package/dist/src/types/plugins.d.ts +1 -1
  235. package/dist/src/types/plugins.d.ts.map +1 -1
  236. package/dist/src/types/plugins.js +1 -3
  237. package/dist/src/types/plugins.js.map +1 -1
  238. package/dist/src/types/providers.d.ts +1 -0
  239. package/dist/src/types/providers.d.ts.map +1 -1
  240. package/dist/src/types/providers.js +1 -1
  241. package/dist/src/types/providers.js.map +1 -1
  242. package/dist/src/types/solidity.d.ts +1 -0
  243. package/dist/src/types/solidity.d.ts.map +1 -1
  244. package/dist/src/types/solidity.js +1 -0
  245. package/dist/src/types/solidity.js.map +1 -1
  246. package/dist/src/types/tasks.d.ts +1 -0
  247. package/dist/src/types/tasks.d.ts.map +1 -1
  248. package/dist/src/types/tasks.js +1 -0
  249. package/dist/src/types/tasks.js.map +1 -1
  250. package/dist/src/types/test.d.ts +1 -0
  251. package/dist/src/types/test.d.ts.map +1 -1
  252. package/dist/src/types/test.js +1 -1
  253. package/dist/src/types/test.js.map +1 -1
  254. package/dist/src/types/user-interruptions.d.ts +1 -0
  255. package/dist/src/types/user-interruptions.d.ts.map +1 -1
  256. package/dist/src/types/user-interruptions.js +1 -1
  257. package/dist/src/types/user-interruptions.js.map +1 -1
  258. package/package.json +12 -12
  259. package/src/config.ts +0 -3
  260. package/src/hre.ts +0 -4
  261. package/src/index.ts +0 -4
  262. package/src/internal/builtin-global-options.ts +2 -1
  263. package/src/internal/builtin-plugins/artifacts/index.ts +1 -1
  264. package/src/internal/builtin-plugins/clean/index.ts +1 -1
  265. package/src/internal/builtin-plugins/clean/type-extensions.ts +0 -1
  266. package/src/internal/builtin-plugins/coverage/hook-handlers/solidity.ts +8 -13
  267. package/src/internal/builtin-plugins/coverage/index.ts +1 -1
  268. package/src/internal/builtin-plugins/coverage/instrumentation.ts +0 -5
  269. package/src/internal/builtin-plugins/coverage/type-extensions.ts +0 -1
  270. package/src/internal/builtin-plugins/gas-analytics/index.ts +1 -1
  271. package/src/internal/builtin-plugins/gas-analytics/snapshot-cheatcodes.ts +90 -1
  272. package/src/internal/builtin-plugins/gas-analytics/tasks/solidity-test/task-action.ts +24 -2
  273. package/src/internal/builtin-plugins/gas-analytics/type-extensions.ts +0 -1
  274. package/src/internal/builtin-plugins/index.ts +10 -10
  275. package/src/internal/builtin-plugins/network-manager/config-resolution.ts +11 -3
  276. package/src/internal/builtin-plugins/network-manager/edr/edr-constants.ts +2 -0
  277. package/src/internal/builtin-plugins/network-manager/edr/edr-provider.ts +38 -8
  278. package/src/internal/builtin-plugins/network-manager/edr/stack-traces/stack-trace-solidity-errors.ts +10 -11
  279. package/src/internal/builtin-plugins/network-manager/edr/utils/convert-to-edr.ts +43 -1
  280. package/src/internal/builtin-plugins/network-manager/index.ts +4 -4
  281. package/src/internal/builtin-plugins/network-manager/network-manager.ts +5 -6
  282. package/src/internal/builtin-plugins/network-manager/type-extensions/config.ts +5 -4
  283. package/src/internal/builtin-plugins/network-manager/type-extensions/global-options.ts +0 -1
  284. package/src/internal/builtin-plugins/network-manager/type-extensions/hooks.ts +0 -1
  285. package/src/internal/builtin-plugins/network-manager/type-extensions/hre.ts +0 -1
  286. package/src/internal/builtin-plugins/network-manager/type-validation.ts +7 -1
  287. package/src/internal/builtin-plugins/network-manager/utils/apply-coverage-network-overrides.ts +32 -0
  288. package/src/internal/builtin-plugins/node/json-rpc/handler.ts +7 -5
  289. package/src/internal/builtin-plugins/solidity/build-system/build-system.ts +32 -16
  290. package/src/internal/builtin-plugins/solidity/build-system/resolver/remapped-npm-packages-graph.ts +8 -2
  291. package/src/internal/builtin-plugins/solidity/constants.ts +11 -0
  292. package/src/internal/builtin-plugins/solidity/index.ts +2 -1
  293. package/src/internal/builtin-plugins/solidity/tasks/compile.ts +12 -0
  294. package/src/internal/builtin-plugins/solidity/type-extensions.ts +0 -4
  295. package/src/internal/builtin-plugins/solidity-test/config.ts +85 -12
  296. package/src/internal/builtin-plugins/solidity-test/eip712/ast-walker.ts +324 -0
  297. package/src/internal/builtin-plugins/solidity-test/eip712/canonicalize.ts +317 -0
  298. package/src/internal/builtin-plugins/solidity-test/eip712/glob.ts +225 -0
  299. package/src/internal/builtin-plugins/solidity-test/eip712/index.ts +120 -0
  300. package/src/internal/builtin-plugins/solidity-test/helpers.ts +28 -4
  301. package/src/internal/builtin-plugins/solidity-test/index.ts +1 -1
  302. package/src/internal/builtin-plugins/solidity-test/inline-config/constants.ts +6 -2
  303. package/src/internal/builtin-plugins/solidity-test/inline-config/helpers.ts +15 -4
  304. package/src/internal/builtin-plugins/solidity-test/inline-config/validation.ts +25 -4
  305. package/src/internal/builtin-plugins/solidity-test/task-action.ts +12 -1
  306. package/src/internal/builtin-plugins/solidity-test/test-profiles.ts +1 -0
  307. package/src/internal/builtin-plugins/solidity-test/type-extensions.ts +100 -34
  308. package/src/internal/builtin-plugins/test/index.ts +1 -1
  309. package/src/internal/builtin-plugins/test/type-extensions.ts +0 -1
  310. package/src/internal/cli/init/init.ts +198 -16
  311. package/src/internal/cli/main.ts +64 -1
  312. package/src/types/arguments.ts +2 -0
  313. package/src/types/artifacts.ts +2 -0
  314. package/src/types/builtin-plugin-type-extensions.ts +15 -0
  315. package/src/types/config.ts +1 -3
  316. package/src/types/global-options.ts +2 -0
  317. package/src/types/hooks.ts +2 -0
  318. package/src/types/hre.ts +2 -0
  319. package/src/types/index.ts +2 -0
  320. package/src/types/network.ts +2 -0
  321. package/src/types/plugins.ts +1 -3
  322. package/src/types/providers.ts +2 -0
  323. package/src/types/solidity.ts +2 -0
  324. package/src/types/tasks.ts +2 -0
  325. package/src/types/test.ts +2 -0
  326. package/src/types/user-interruptions.ts +2 -0
  327. package/templates/hardhat-3/01-node-test-runner-viem/package.json +12 -12
  328. package/templates/hardhat-3/01-node-test-runner-viem/tsconfig.json +4 -7
  329. package/templates/hardhat-3/02-mocha-ethers/package.json +15 -15
  330. package/templates/hardhat-3/02-mocha-ethers/tsconfig.json +4 -7
  331. package/templates/hardhat-3/03-minimal/package.json +2 -2
  332. package/templates/hardhat-3/03-minimal/tsconfig.json +4 -7
  333. package/coverage.sol +0 -38
package/CHANGELOG.md CHANGED
@@ -1,5 +1,66 @@
1
1
  # hardhat
2
2
 
3
+ ## 3.5.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#8301](https://github.com/NomicFoundation/hardhat/pull/8301) [`793cc84`](https://github.com/NomicFoundation/hardhat/commit/793cc84d311ff96b1725f5b83a0063b9a28e3d19) Thanks [@kanej](https://github.com/kanej)! - Disable transaction gas cap and block gas limit when running tests under `--coverage`.
8
+
9
+ - [#8270](https://github.com/NomicFoundation/hardhat/pull/8270) [`cf2823b`](https://github.com/NomicFoundation/hardhat/commit/cf2823b5ec9b5e6427c874636393a5ffcb70f412) Thanks [@schaable](https://github.com/schaable)! - Solidity test configuration now also accepts `{ profiles: { default: ... } }`. Only the `default` profile is currently supported, other profile names will be supported in a future release. The previous flat shape continues to work unchanged.
10
+
11
+ The resolved `HardhatConfig.test.solidity` is now profile-keyed: read per-profile fields at `hre.config.test.solidity.profiles.default.*` instead of `hre.config.test.solidity.*`. Plugins that read the resolved Solidity test config need to be updated.
12
+
13
+ ### Patch Changes
14
+
15
+ - [#8298](https://github.com/NomicFoundation/hardhat/pull/8298) [`83b1ae1`](https://github.com/NomicFoundation/hardhat/commit/83b1ae1bdc3b941f9e15f9d2d92cadf88f7a8747) Thanks [@Wodann](https://github.com/Wodann)! - - Fixed a bug when using a test filter where the `setUp` function would be run for empty test suites
16
+
17
+ - Fixed a bug where snapshot cheatcodes would throw an error if names were invalid
18
+ - Fixed coverage instrumentation interfering with the single-call `vm.prank` cheatcode
19
+ - Added support for instrumentation of Solidity 0.8.35
20
+
21
+ - [#8264](https://github.com/NomicFoundation/hardhat/pull/8264) [`8452f97`](https://github.com/NomicFoundation/hardhat/commit/8452f9726205540e1684d3f8458bfd145e790226) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Export `./package.json` so consumers can import the package's manifest.
22
+
23
+ - [#8310](https://github.com/NomicFoundation/hardhat/pull/8310) [`9f394ec`](https://github.com/NomicFoundation/hardhat/commit/9f394ec7547cf7dd3392aeb826fca96b9c0aca28) Thanks [@js360000](https://github.com/js360000)! - Fix JSON-RPC `error.data` shape for revert errors (code 3): return the raw revert hex string directly instead of a `{ message, txHash, data }` wrapper object. This matches the geth/anvil/EVM-node convention that client tooling (viem, ethers, web3.js) relies on when decoding custom errors. Closes [#8075](https://github.com/NomicFoundation/hardhat/issues/8075).
24
+
25
+ - [#8269](https://github.com/NomicFoundation/hardhat/pull/8269) [`045cb8d`](https://github.com/NomicFoundation/hardhat/commit/045cb8d46162f07b51cc08e91395a196ee42d07c) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Always load the builtin plugins' type extensions
26
+
27
+ - [#8243](https://github.com/NomicFoundation/hardhat/pull/8243) [`08805db`](https://github.com/NomicFoundation/hardhat/commit/08805db44549f1ee2175854a456d94a849e7a839) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Support EIP-712 cheatcodes in Solidity Test.
28
+
29
+ - [#8301](https://github.com/NomicFoundation/hardhat/pull/8301) [`793cc84`](https://github.com/NomicFoundation/hardhat/commit/793cc84d311ff96b1725f5b83a0063b9a28e3d19) Thanks [@kanej](https://github.com/kanej)! - Respect user config for `allowUnlimitedContractSize` when running under `--coverage`.
30
+
31
+ - [#8259](https://github.com/NomicFoundation/hardhat/pull/8259) [`1d1204f`](https://github.com/NomicFoundation/hardhat/commit/1d1204fe9baa8221d6c32025ffb2d51b67745b19) Thanks [@kanej](https://github.com/kanej)! - Fixed build overrides not being respected when running `compile`
32
+
33
+ - [#8188](https://github.com/NomicFoundation/hardhat/pull/8188) [`d48bbfd`](https://github.com/NomicFoundation/hardhat/commit/d48bbfd86c22f5dfaaee7e926814ace0db20f320) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Add `--init --template <template-name>` to initialize projects in a non-interactive way. Also add `--init --templates` to get the list of template names.
34
+
35
+ - [#8290](https://github.com/NomicFoundation/hardhat/pull/8290) [`3a15b11`](https://github.com/NomicFoundation/hardhat/commit/3a15b11b4f4f4987b60ea09d2252dfddbe2f430a) Thanks [@gultekinmakif](https://github.com/gultekinmakif)! - Fixed `abstract` contracts being picked up as test suites by the Solidity test runner ([#8203](https://github.com/NomicFoundation/hardhat/issues/8203)).
36
+
37
+ - [#8266](https://github.com/NomicFoundation/hardhat/pull/8266) [`325bae1`](https://github.com/NomicFoundation/hardhat/commit/325bae178dd5278f995d591516e3937d5590de4d) Thanks [@schaable](https://github.com/schaable)! - Sanitized snapshot cheatcode group names to avoid issues when persisting them to disk. A warning is shown when a group is renamed suggesting the user to update their snapshot group names to match the on-disk names.
38
+
39
+ - [#8312](https://github.com/NomicFoundation/hardhat/pull/8312) [`76c15ff`](https://github.com/NomicFoundation/hardhat/commit/76c15ffb080978aea82a198b990b34a2d9d91c99) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Update the Hardhat 3 TypeScript project templates for TypeScript 6.
40
+
41
+ - Updated dependencies:
42
+ - @nomicfoundation/hardhat-errors@3.0.13
43
+ - @nomicfoundation/hardhat-utils@4.1.2
44
+ - @nomicfoundation/hardhat-vendored@3.0.4
45
+ - @nomicfoundation/hardhat-zod-utils@3.0.5
46
+
47
+ ## 3.4.5
48
+
49
+ ### Patch Changes
50
+
51
+ - [#8253](https://github.com/NomicFoundation/hardhat/pull/8253) [`4aeed16`](https://github.com/NomicFoundation/hardhat/commit/4aeed168afeeb3305a0841605cf2ff5ed20d54a4) Thanks [@schaable](https://github.com/schaable)! - Fix compilation artifacts accidentally being deleted when their path contains an intermediate directory whose name ends in `.sol`.
52
+
53
+ - [#8191](https://github.com/NomicFoundation/hardhat/pull/8191) [`2a4ae8e`](https://github.com/NomicFoundation/hardhat/commit/2a4ae8e7dc78cabbe8b17bec778952f0124f9759) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Update how type extensions are handled to optimize the bootstrap process of Hardhat.
54
+
55
+ - [#8190](https://github.com/NomicFoundation/hardhat/pull/8190) [`2443073`](https://github.com/NomicFoundation/hardhat/commit/24430736fdec068d29895156d7789c4e91b6c678) Thanks [@anaPerezGhiglia](https://github.com/anaPerezGhiglia)! - Bump EDR version to `0.12.0-next.32`.
56
+
57
+ - [#8228](https://github.com/NomicFoundation/hardhat/pull/8228) [`417bbf9`](https://github.com/NomicFoundation/hardhat/commit/417bbf9f5d8ee4f9e19788aa40571452d36086d2) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Small performance optimizations
58
+
59
+ - [#8229](https://github.com/NomicFoundation/hardhat/pull/8229) [`a4d106e`](https://github.com/NomicFoundation/hardhat/commit/a4d106e78faf6278747ff526a31d9c26ec92a2ec) Thanks [@schaable](https://github.com/schaable)! - Add `isolate` and `evmVersion` to the Solidity test inline configuration.
60
+
61
+ - Updated dependencies:
62
+ - @nomicfoundation/hardhat-utils@4.1.1
63
+
3
64
  ## 3.4.4
4
65
 
5
66
  ### Patch Changes
@@ -1,7 +1,6 @@
1
1
  export type * from "./internal/core/config.js";
2
2
  export * from "./internal/core/config.js";
3
3
  export type { HardhatUserConfig } from "./types/config.js";
4
- import "./internal/builtin-plugins/index.js";
5
4
  import type { HardhatUserConfig } from "./types/config.js";
6
5
  /**
7
6
  * Defines a Hardhat user config.
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,mBAAmB,2BAA2B,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAE1C,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAI3D,OAAO,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAI3D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,iBAAiB,CASzE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,KAAK,EAAE,GAAG,GAAG,GAAG,CAE/C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,KAAK,EAAE,GAAG,GAAG,GAAG,CAEpD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,KAAK,EAAE,GAAG,GAAG,GAAG,CAEjD;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,GAAG,KAAK,EAAE,GAAG,GAAG,GAAG,CAExC;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,GAAG,KAAK,EAAE,GAAG,GAAG,GAAG,CAE1C"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,mBAAmB,2BAA2B,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAE1C,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAI3D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,iBAAiB,CASzE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,KAAK,EAAE,GAAG,GAAG,GAAG,CAE/C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,KAAK,EAAE,GAAG,GAAG,GAAG,CAEpD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,KAAK,EAAE,GAAG,GAAG,GAAG,CAEjD;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,GAAG,KAAK,EAAE,GAAG,GAAG,GAAG,CAExC;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,GAAG,KAAK,EAAE,GAAG,GAAG,GAAG,CAE1C"}
@@ -1,7 +1,4 @@
1
1
  export * from "./internal/core/config.js";
2
- // NOTE: We import the builtin plugins in this module, so that their
3
- // type-extensions are loaded when the user imports `hardhat/config`.
4
- import "./internal/builtin-plugins/index.js";
5
2
  import { throwUsingHardhat2PluginError } from "./internal/using-hardhat2-plugin-errors.js";
6
3
  /**
7
4
  * Defines a Hardhat user config.
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AACA,cAAc,2BAA2B,CAAC;AAI1C,oEAAoE;AACpE,qEAAqE;AACrE,OAAO,qCAAqC,CAAC;AAG7C,OAAO,EAAE,6BAA6B,EAAE,MAAM,4CAA4C,CAAC;AAE3F;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,YAAY,CAAC,MAAyB;IACpD,8EAA8E;IAC9E,qBAAqB;IACrB,kEAAkE;IAClE,0EAA0E;IAC1E,qDAAqD;IACrD,0EAA0E;IAC1E,+CAA+C;IAC/C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,GAAG,KAAU;IACxC,6BAA6B,EAAE,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAG,KAAU;IAC7C,6BAA6B,EAAE,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,GAAG,KAAU;IAC1C,6BAA6B,EAAE,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,KAAK,CAAC,GAAG,KAAU;IACjC,6BAA6B,EAAE,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,GAAG,KAAU;IACnC,6BAA6B,EAAE,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AACA,cAAc,2BAA2B,CAAC;AAM1C,OAAO,EAAE,6BAA6B,EAAE,MAAM,4CAA4C,CAAC;AAE3F;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,YAAY,CAAC,MAAyB;IACpD,8EAA8E;IAC9E,qBAAqB;IACrB,kEAAkE;IAClE,0EAA0E;IAC1E,qDAAqD;IACrD,0EAA0E;IAC1E,+CAA+C;IAC/C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,GAAG,KAAU;IACxC,6BAA6B,EAAE,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAG,KAAU;IAC7C,6BAA6B,EAAE,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,GAAG,KAAU;IAC1C,6BAA6B,EAAE,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,KAAK,CAAC,GAAG,KAAU;IACjC,6BAA6B,EAAE,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,GAAG,KAAU;IACnC,6BAA6B,EAAE,CAAC;AAClC,CAAC"}
package/dist/src/hre.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- import "./internal/builtin-plugins/index.js";
2
1
  export { importUserConfig } from "./internal/config-loading.js";
3
2
  export { resolveHardhatConfigPath } from "./internal/config-loading.js";
4
3
  export { createHardhatRuntimeEnvironment } from "./internal/hre-initialization.js";
@@ -1 +1 @@
1
- {"version":3,"file":"hre.d.ts","sourceRoot":"","sources":["../../src/hre.ts"],"names":[],"mappings":"AAEA,OAAO,qCAAqC,CAAC;AAE7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"hre.d.ts","sourceRoot":"","sources":["../../src/hre.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC"}
package/dist/src/hre.js CHANGED
@@ -1,6 +1,3 @@
1
- // NOTE: We import the builtin plugins in this module, so that their
2
- // type-extensions are loaded when the user imports `hardhat/hre`.
3
- import "./internal/builtin-plugins/index.js";
4
1
  export { importUserConfig } from "./internal/config-loading.js";
5
2
  export { resolveHardhatConfigPath } from "./internal/config-loading.js";
6
3
  export { createHardhatRuntimeEnvironment } from "./internal/hre-initialization.js";
@@ -1 +1 @@
1
- {"version":3,"file":"hre.js","sourceRoot":"","sources":["../../src/hre.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,kEAAkE;AAClE,OAAO,qCAAqC,CAAC;AAE7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"hre.js","sourceRoot":"","sources":["../../src/hre.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC"}
@@ -7,7 +7,6 @@ import type { NetworkManager } from "./types/network.js";
7
7
  import type { SolidityBuildSystem } from "./types/solidity/build-system.js";
8
8
  import type { TaskManager } from "./types/tasks.js";
9
9
  import type { UserInterruptionManager } from "./types/user-interruptions.js";
10
- import "./internal/builtin-plugins/index.js";
11
10
  declare const hre: HardhatRuntimeEnvironment;
12
11
  export declare const config: HardhatConfig;
13
12
  export declare const tasks: TaskManager;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAM7E,OAAO,qCAAqC,CAAC;AAE7C,QAAA,MAAM,GAAG,EAAE,yBAEyC,CAAC;AAErD,eAAO,MAAM,MAAM,EAAE,aAA0B,CAAC;AAChD,eAAO,MAAM,KAAK,EAAE,WAAuB,CAAC;AAC5C,eAAO,MAAM,aAAa,EAAE,aAAiC,CAAC;AAC9D,eAAO,MAAM,KAAK,EAAE,WAAuB,CAAC;AAC5C,eAAO,MAAM,aAAa,EAAE,uBAA2C,CAAC;AAIxE,eAAO,MAAM,OAAO,EAAE,cAA4B,CAAC;AACnD,eAAO,MAAM,SAAS,EAAE,eAA+B,CAAC;AACxD,eAAO,MAAM,QAAQ,EAAE,mBAAkC,CAAC;AAE1D,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAI7E,QAAA,MAAM,GAAG,EAAE,yBAEyC,CAAC;AAErD,eAAO,MAAM,MAAM,EAAE,aAA0B,CAAC;AAChD,eAAO,MAAM,KAAK,EAAE,WAAuB,CAAC;AAC5C,eAAO,MAAM,aAAa,EAAE,aAAiC,CAAC;AAC9D,eAAO,MAAM,KAAK,EAAE,WAAuB,CAAC;AAC5C,eAAO,MAAM,aAAa,EAAE,uBAA2C,CAAC;AAIxE,eAAO,MAAM,OAAO,EAAE,cAA4B,CAAC;AACnD,eAAO,MAAM,SAAS,EAAE,eAA+B,CAAC;AACxD,eAAO,MAAM,QAAQ,EAAE,mBAAkC,CAAC;AAE1D,eAAe,GAAG,CAAC"}
package/dist/src/index.js CHANGED
@@ -1,7 +1,4 @@
1
1
  import { getOrCreateGlobalHardhatRuntimeEnvironment } from "./internal/hre-initialization.js";
2
- // NOTE: We import the builtin plugins in this module, so that their
3
- // type-extensions are loaded when the user imports `hardhat`.
4
- import "./internal/builtin-plugins/index.js";
5
2
  const hre =
6
3
  // eslint-disable-next-line no-restricted-syntax -- Allow top-level await here
7
4
  await getOrCreateGlobalHardhatRuntimeEnvironment();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,0CAA0C,EAAE,MAAM,kCAAkC,CAAC;AAE9F,oEAAoE;AACpE,8DAA8D;AAC9D,OAAO,qCAAqC,CAAC;AAE7C,MAAM,GAAG;AACP,8EAA8E;AAC9E,MAAM,0CAA0C,EAAE,CAAC;AAErD,MAAM,CAAC,MAAM,MAAM,GAAkB,GAAG,CAAC,MAAM,CAAC;AAChD,MAAM,CAAC,MAAM,KAAK,GAAgB,GAAG,CAAC,KAAK,CAAC;AAC5C,MAAM,CAAC,MAAM,aAAa,GAAkB,GAAG,CAAC,aAAa,CAAC;AAC9D,MAAM,CAAC,MAAM,KAAK,GAAgB,GAAG,CAAC,KAAK,CAAC;AAC5C,MAAM,CAAC,MAAM,aAAa,GAA4B,GAAG,CAAC,aAAa,CAAC;AAExE,8EAA8E;AAC9E,uEAAuE;AACvE,MAAM,CAAC,MAAM,OAAO,GAAmB,GAAG,CAAC,OAAO,CAAC;AACnD,MAAM,CAAC,MAAM,SAAS,GAAoB,GAAG,CAAC,SAAS,CAAC;AACxD,MAAM,CAAC,MAAM,QAAQ,GAAwB,GAAG,CAAC,QAAQ,CAAC;AAE1D,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,0CAA0C,EAAE,MAAM,kCAAkC,CAAC;AAE9F,MAAM,GAAG;AACP,8EAA8E;AAC9E,MAAM,0CAA0C,EAAE,CAAC;AAErD,MAAM,CAAC,MAAM,MAAM,GAAkB,GAAG,CAAC,MAAM,CAAC;AAChD,MAAM,CAAC,MAAM,KAAK,GAAgB,GAAG,CAAC,KAAK,CAAC;AAC5C,MAAM,CAAC,MAAM,aAAa,GAAkB,GAAG,CAAC,aAAa,CAAC;AAC9D,MAAM,CAAC,MAAM,KAAK,GAAgB,GAAG,CAAC,KAAK,CAAC;AAC5C,MAAM,CAAC,MAAM,aAAa,GAA4B,GAAG,CAAC,aAAa,CAAC;AAExE,8EAA8E;AAC9E,uEAAuE;AACvE,MAAM,CAAC,MAAM,OAAO,GAAmB,GAAG,CAAC,OAAO,CAAC;AACnD,MAAM,CAAC,MAAM,SAAS,GAAoB,GAAG,CAAC,SAAS,CAAC;AACxD,MAAM,CAAC,MAAM,QAAQ,GAAwB,GAAG,CAAC,QAAQ,CAAC;AAE1D,eAAe,GAAG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"builtin-global-options.d.ts","sourceRoot":"","sources":["../../../src/internal/builtin-global-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAO1E,eAAO,MAAM,kCAAkC,EAAE,uBAoE7C,CAAC"}
1
+ {"version":3,"file":"builtin-global-options.d.ts","sourceRoot":"","sources":["../../../src/internal/builtin-global-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAO1E,eAAO,MAAM,kCAAkC,EAAE,uBAqE7C,CAAC"}
@@ -31,7 +31,7 @@ export const BUILTIN_GLOBAL_OPTIONS_DEFINITIONS = new Map([
31
31
  pluginId: "builtin",
32
32
  option: globalFlag({
33
33
  name: "init",
34
- description: "Initializes a Hardhat project.",
34
+ description: "Initializes a Hardhat project. Supports `--template <name>` and `--templates`.",
35
35
  }),
36
36
  },
37
37
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"builtin-global-options.js","sourceRoot":"","sources":["../../../src/internal/builtin-global-options.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD,MAAM,CAAC,MAAM,kCAAkC,GAC7C,IAAI,GAAG,CAAC;IACN;QACE,QAAQ;QACR;YACE,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,YAAY,CAAC;gBACnB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wBAAwB;gBACrC,IAAI,EAAE,YAAY,CAAC,sBAAsB;gBACzC,YAAY,EAAE,SAAS;aACxB,CAAC;SACH;KACF;IACD;QACE,MAAM;QACN;YACE,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,UAAU,CAAC;gBACjB,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,GAAG;gBACd,WAAW,EACT,8DAA8D;aACjE,CAAC;SACH;KACF;IACD;QACE,MAAM;QACN;YACE,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,UAAU,CAAC;gBACjB,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,gCAAgC;aAC9C,CAAC;SACH;KACF;IACD;QACE,iBAAiB;QACjB;YACE,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,UAAU,CAAC;gBACjB,IAAI,EAAE,iBAAiB;gBACvB,WAAW,EAAE,mDAAmD;aACjE,CAAC;SACH;KACF;IACD;QACE,WAAW;QACX;YACE,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,WAAW,CAAC;gBAClB,IAAI,EAAE,WAAW;gBACjB,SAAS,EAAE,GAAG;gBACd,WAAW,EAAE,gCAAgC;gBAC7C,YAAY,EAAE,iBAAiB;aAChC,CAAC;SACH;KACF;IACD;QACE,SAAS;QACT;YACE,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,UAAU,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,8BAA8B;aAC5C,CAAC;SACH;KACF;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"builtin-global-options.js","sourceRoot":"","sources":["../../../src/internal/builtin-global-options.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD,MAAM,CAAC,MAAM,kCAAkC,GAC7C,IAAI,GAAG,CAAC;IACN;QACE,QAAQ;QACR;YACE,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,YAAY,CAAC;gBACnB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wBAAwB;gBACrC,IAAI,EAAE,YAAY,CAAC,sBAAsB;gBACzC,YAAY,EAAE,SAAS;aACxB,CAAC;SACH;KACF;IACD;QACE,MAAM;QACN;YACE,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,UAAU,CAAC;gBACjB,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,GAAG;gBACd,WAAW,EACT,8DAA8D;aACjE,CAAC;SACH;KACF;IACD;QACE,MAAM;QACN;YACE,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,UAAU,CAAC;gBACjB,IAAI,EAAE,MAAM;gBACZ,WAAW,EACT,gFAAgF;aACnF,CAAC;SACH;KACF;IACD;QACE,iBAAiB;QACjB;YACE,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,UAAU,CAAC;gBACjB,IAAI,EAAE,iBAAiB;gBACvB,WAAW,EAAE,mDAAmD;aACjE,CAAC;SACH;KACF;IACD;QACE,WAAW;QACX;YACE,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,WAAW,CAAC;gBAClB,IAAI,EAAE,WAAW;gBACjB,SAAS,EAAE,GAAG;gBACd,WAAW,EAAE,gCAAgC;gBAC7C,YAAY,EAAE,iBAAiB;aAChC,CAAC;SACH;KACF;IACD;QACE,SAAS;QACT;YACE,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,UAAU,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,8BAA8B;aAC5C,CAAC;SACH;KACF;CACF,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { HardhatPlugin } from "../../../types/plugins.js";
2
- import "./type-extensions.js";
2
+ export type * from "./type-extensions.js";
3
3
  declare const hardhatPlugin: HardhatPlugin;
4
4
  export default hardhatPlugin;
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/artifacts/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,sBAAsB,CAAC;AAE9B,QAAA,MAAM,aAAa,EAAE,aAMpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/artifacts/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,mBAAmB,sBAAsB,CAAC;AAE1C,QAAA,MAAM,aAAa,EAAE,aAMpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1,4 +1,3 @@
1
- import "./type-extensions.js";
2
1
  const hardhatPlugin = {
3
2
  id: "builtin:artifacts",
4
3
  hookHandlers: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/artifacts/index.ts"],"names":[],"mappings":"AACA,OAAO,sBAAsB,CAAC;AAE9B,MAAM,aAAa,GAAkB;IACnC,EAAE,EAAE,mBAAmB;IACvB,YAAY,EAAE;QACZ,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,wBAAwB,CAAC;KAC5C;IACD,UAAU,EAAE,SAAS;CACtB,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/artifacts/index.ts"],"names":[],"mappings":"AAGA,MAAM,aAAa,GAAkB;IACnC,EAAE,EAAE,mBAAmB;IACvB,YAAY,EAAE;QACZ,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,wBAAwB,CAAC;KAC5C;IACD,UAAU,EAAE,SAAS;CACtB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { HardhatPlugin } from "../../../types/plugins.js";
2
- import "./type-extensions.js";
2
+ export type * from "./type-extensions.js";
3
3
  declare const hardhatPlugin: HardhatPlugin;
4
4
  export default hardhatPlugin;
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/clean/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAI/D,OAAO,sBAAsB,CAAC;AAE9B,QAAA,MAAM,aAAa,EAAE,aAYpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/clean/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAI/D,mBAAmB,sBAAsB,CAAC;AAE1C,QAAA,MAAM,aAAa,EAAE,aAYpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1,5 +1,4 @@
1
1
  import { task } from "../../core/config.js";
2
- import "./type-extensions.js";
3
2
  const hardhatPlugin = {
4
3
  id: "builtin:clean",
5
4
  tasks: [
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/clean/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAE5C,OAAO,sBAAsB,CAAC;AAE9B,MAAM,aAAa,GAAkB;IACnC,EAAE,EAAE,eAAe;IACnB,KAAK,EAAE;QACL,IAAI,CAAC,OAAO,EAAE,0CAA0C,CAAC;aACtD,OAAO,CAAC;YACP,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,wBAAwB;SACtC,CAAC;aACD,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;aACvD,KAAK,EAAE;KACX;IACD,UAAU,EAAE,SAAS;CACtB,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/clean/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAI5C,MAAM,aAAa,GAAkB;IACnC,EAAE,EAAE,eAAe;IACnB,KAAK,EAAE;QACL,IAAI,CAAC,OAAO,EAAE,0CAA0C,CAAC;aACtD,OAAO,CAAC;YACP,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,wBAAwB;SACtC,CAAC;aACD,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;aACvD,KAAK,EAAE;KACX;IACD,UAAU,EAAE,SAAS;CACtB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1,4 +1,3 @@
1
- import "../../../types/hooks.js";
2
1
  declare module "../../../types/hooks.js" {
3
2
  interface HardhatHooks {
4
3
  clean: CleanHooks;
@@ -7,4 +6,5 @@ declare module "../../../types/hooks.js" {
7
6
  onClean: (context: HookContext) => Promise<void>;
8
7
  }
9
8
  }
9
+ export {};
10
10
  //# sourceMappingURL=type-extensions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-extensions.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/clean/type-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,QAAQ,yBAAyB,CAAC;IACvC,UAAiB,YAAY;QAC3B,KAAK,EAAE,UAAU,CAAC;KACnB;IAED,UAAiB,UAAU;QACzB,OAAO,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KAClD;CACF"}
1
+ {"version":3,"file":"type-extensions.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/clean/type-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,yBAAyB,CAAC;IACvC,UAAiB,YAAY;QAC3B,KAAK,EAAE,UAAU,CAAC;KACnB;IAED,UAAiB,UAAU;QACzB,OAAO,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KAClD;CACF"}
@@ -1,2 +1,2 @@
1
- import "../../../types/hooks.js";
1
+ export {};
2
2
  //# sourceMappingURL=type-extensions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-extensions.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/clean/type-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC"}
1
+ {"version":3,"file":"type-extensions.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/clean/type-extensions.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"solidity.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/builtin-plugins/coverage/hook-handlers/solidity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;8BAmBvC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AAAxD,wBA0GG"}
1
+ {"version":3,"file":"solidity.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/builtin-plugins/coverage/hook-handlers/solidity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;8BAevC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AAAxD,wBAyGG"}
@@ -1,13 +1,11 @@
1
1
  import path from "node:path";
2
+ import { getCoverageLibrary } from "@nomicfoundation/edr/coverage";
2
3
  import { HardhatError } from "@nomicfoundation/hardhat-errors";
3
4
  import { createDebug } from "@nomicfoundation/hardhat-utils/debug";
4
5
  import { ensureError } from "@nomicfoundation/hardhat-utils/error";
5
- import { readUtf8File } from "@nomicfoundation/hardhat-utils/fs";
6
- import { findClosestPackageRoot } from "@nomicfoundation/hardhat-utils/package";
7
6
  import { getCoverageManager } from "../helpers/accessors.js";
8
7
  import { instrumentSolidityFileForCompilationJob } from "../instrumentation.js";
9
8
  const log = createDebug("hardhat:core:coverage:hook-handlers:solidity");
10
- const COVERAGE_LIBRARY_PATH = "__hardhat_coverage_library_a3e9cfe2-41b4-4a1f-ad9e-ac62dd82979e.sol";
11
9
  export default async () => ({
12
10
  preprocessProjectFileBeforeBuilding: async (context, sourceName, fsPath, fileContent, solcVersion, next) => {
13
11
  // NOTE: We do not want to instrument the test project files as we don't
@@ -19,7 +17,6 @@ export default async () => ({
19
17
  compilationJobSolcVersion: solcVersion,
20
18
  sourceName,
21
19
  fileContent,
22
- coverageLibraryPath: COVERAGE_LIBRARY_PATH,
23
20
  });
24
21
  // TODO: Remove this once EDR starts returning line information as part
25
22
  // of the metadata.
@@ -70,21 +67,21 @@ export default async () => ({
70
67
  },
71
68
  preprocessSolcInputBeforeBuilding: async (context, solcInput, next) => {
72
69
  if (context.globalOptions.coverage) {
70
+ const coverageLib = getCoverageLibrary();
73
71
  // NOTE: We check for a source name clash here. It could happen if the user
74
72
  // wanted to compile a source with our highly unlikely name by chance or
75
73
  // if we accidentally tried to preprocess the same solc input twice.
76
- if (solcInput.sources[COVERAGE_LIBRARY_PATH] !== undefined) {
74
+ if (solcInput.sources[coverageLib.filename] !== undefined) {
77
75
  throw new HardhatError(HardhatError.ERRORS.CORE.COVERAGE.IMPORT_PATH_ALREADY_DEFINED, {
78
- importPath: COVERAGE_LIBRARY_PATH,
76
+ importPath: coverageLib.filename,
79
77
  });
80
78
  }
81
79
  // NOTE: We add the coverage.sol straight into sources here. The alternative
82
80
  // would be to do it during the resolution phase. However, we decided this
83
81
  // is a simpler solution, at least for now.
84
- const packageRoot = await findClosestPackageRoot(import.meta.url);
85
- const coverageSolPath = path.join(packageRoot, "coverage.sol");
86
- const content = await readUtf8File(coverageSolPath);
87
- solcInput.sources[COVERAGE_LIBRARY_PATH] = { content };
82
+ solcInput.sources[coverageLib.filename] = {
83
+ content: coverageLib.content,
84
+ };
88
85
  }
89
86
  return await next(context, solcInput);
90
87
  },
@@ -1 +1 @@
1
- {"version":3,"file":"solidity.js","sourceRoot":"","sources":["../../../../../../src/internal/builtin-plugins/coverage/hook-handlers/solidity.ts"],"names":[],"mappings":"AAGA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,uCAAuC,EAAE,MAAM,uBAAuB,CAAC;AAEhF,MAAM,GAAG,GAAG,WAAW,CAAC,8CAA8C,CAAC,CAAC;AAExE,MAAM,qBAAqB,GACzB,qEAAqE,CAAC;AAExE,eAAe,KAAK,IAAqC,EAAE,CAAC,CAAC;IAC3D,mCAAmC,EAAE,KAAK,EACxC,OAAO,EACP,UAAU,EACV,MAAM,EACN,WAAW,EACX,WAAW,EACX,IAAI,EACJ,EAAE;QACF,wEAAwE;QACxE,oCAAoC;QAEpC,MAAM,YAAY,GAAG,CAAC,MAAM,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,OAAO,CAAC;QAE3E,IAAI,OAAO,CAAC,aAAa,CAAC,QAAQ,IAAI,CAAC,YAAY,EAAE,CAAC;YACpD,IAAI,CAAC;gBACH,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,uCAAuC,CAAC;oBACnE,yBAAyB,EAAE,WAAW;oBACtC,UAAU;oBACV,WAAW;oBACX,mBAAmB,EAAE,qBAAqB;iBAC3C,CAAC,CAAC;gBAEH,uEAAuE;gBACvE,mBAAmB;gBACnB,IAAI,UAAU,GAAG,CAAC,CAAC;gBACnB,MAAM,WAAW,GAAG,EAAE,CAAC;gBACvB,KAAK,MAAM,SAAS,IAAI,WAAW,EAAE,CAAC;oBACpC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAC7B,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;wBACvB,UAAU,EAAE,CAAC;oBACf,CAAC;gBACH,CAAC;gBAED,MAAM,gBAAgB,GAAqB,EAAE,CAAC;gBAE9C,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;oBACzB,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;wBACf,KAAK,WAAW;4BACd,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EACzB,MAAM,CACP,CAAC;4BACF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;4BAC/C,gBAAgB,CAAC,IAAI,CAAC;gCACpB,YAAY;gCACZ,GAAG;gCACH,UAAU,EAAE,CAAC,CAAC,UAAU;gCACxB,QAAQ,EAAE,CAAC,CAAC,QAAQ;6BACrB,CAAC,CAAC;4BACH,MAAM;wBACR;4BACE,+DAA+D;4BAC/D,kEAAkE;4BAClE,sCAAsC;4BACtC,GAAG,CAAC,oCAAoC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;4BAClD,MAAM;oBACV,CAAC;gBACH,CAAC;gBAED,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;gBAEhE,OAAO,MAAM,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;YACtE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,WAAW,CAAC,CAAC,CAAC,CAAC;gBAEf,mEAAmE;gBACnE,0EAA0E;gBAC1E,MAAM,IAAI,YAAY,CACpB,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,uBAAuB,EACzD;oBACE,UAAU;iBACX,EACD,CAAC,CACF,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IACD,iCAAiC,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE;QACpE,IAAI,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;YACnC,2EAA2E;YAC3E,wEAAwE;YACxE,oEAAoE;YACpE,IAAI,SAAS,CAAC,OAAO,CAAC,qBAAqB,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC3D,MAAM,IAAI,YAAY,CACpB,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,2BAA2B,EAC7D;oBACE,UAAU,EAAE,qBAAqB;iBAClC,CACF,CAAC;YACJ,CAAC;YAED,4EAA4E;YAC5E,0EAA0E;YAC1E,2CAA2C;YAC3C,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClE,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;YAE/D,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC,CAAC;YACpD,SAAS,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC;QACzD,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACxC,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"solidity.js","sourceRoot":"","sources":["../../../../../../src/internal/builtin-plugins/coverage/hook-handlers/solidity.ts"],"names":[],"mappings":"AAGA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAEnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,uCAAuC,EAAE,MAAM,uBAAuB,CAAC;AAEhF,MAAM,GAAG,GAAG,WAAW,CAAC,8CAA8C,CAAC,CAAC;AAExE,eAAe,KAAK,IAAqC,EAAE,CAAC,CAAC;IAC3D,mCAAmC,EAAE,KAAK,EACxC,OAAO,EACP,UAAU,EACV,MAAM,EACN,WAAW,EACX,WAAW,EACX,IAAI,EACJ,EAAE;QACF,wEAAwE;QACxE,oCAAoC;QAEpC,MAAM,YAAY,GAAG,CAAC,MAAM,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,OAAO,CAAC;QAE3E,IAAI,OAAO,CAAC,aAAa,CAAC,QAAQ,IAAI,CAAC,YAAY,EAAE,CAAC;YACpD,IAAI,CAAC;gBACH,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,uCAAuC,CAAC;oBACnE,yBAAyB,EAAE,WAAW;oBACtC,UAAU;oBACV,WAAW;iBACZ,CAAC,CAAC;gBAEH,uEAAuE;gBACvE,mBAAmB;gBACnB,IAAI,UAAU,GAAG,CAAC,CAAC;gBACnB,MAAM,WAAW,GAAG,EAAE,CAAC;gBACvB,KAAK,MAAM,SAAS,IAAI,WAAW,EAAE,CAAC;oBACpC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAC7B,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;wBACvB,UAAU,EAAE,CAAC;oBACf,CAAC;gBACH,CAAC;gBAED,MAAM,gBAAgB,GAAqB,EAAE,CAAC;gBAE9C,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;oBACzB,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;wBACf,KAAK,WAAW;4BACd,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EACzB,MAAM,CACP,CAAC;4BACF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;4BAC/C,gBAAgB,CAAC,IAAI,CAAC;gCACpB,YAAY;gCACZ,GAAG;gCACH,UAAU,EAAE,CAAC,CAAC,UAAU;gCACxB,QAAQ,EAAE,CAAC,CAAC,QAAQ;6BACrB,CAAC,CAAC;4BACH,MAAM;wBACR;4BACE,+DAA+D;4BAC/D,kEAAkE;4BAClE,sCAAsC;4BACtC,GAAG,CAAC,oCAAoC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;4BAClD,MAAM;oBACV,CAAC;gBACH,CAAC;gBAED,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;gBAEhE,OAAO,MAAM,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;YACtE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,WAAW,CAAC,CAAC,CAAC,CAAC;gBAEf,mEAAmE;gBACnE,0EAA0E;gBAC1E,MAAM,IAAI,YAAY,CACpB,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,uBAAuB,EACzD;oBACE,UAAU;iBACX,EACD,CAAC,CACF,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IACD,iCAAiC,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE;QACpE,IAAI,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;YACnC,MAAM,WAAW,GAAG,kBAAkB,EAAE,CAAC;YAEzC,2EAA2E;YAC3E,wEAAwE;YACxE,oEAAoE;YACpE,IAAI,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC1D,MAAM,IAAI,YAAY,CACpB,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,2BAA2B,EAC7D;oBACE,UAAU,EAAE,WAAW,CAAC,QAAQ;iBACjC,CACF,CAAC;YACJ,CAAC;YAED,4EAA4E;YAC5E,0EAA0E;YAC1E,2CAA2C;YAC3C,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG;gBACxC,OAAO,EAAE,WAAW,CAAC,OAAO;aAC7B,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACxC,CAAC;CACF,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { HardhatPlugin } from "../../../types/plugins.js";
2
- import "./type-extensions.js";
2
+ export type * from "./type-extensions.js";
3
3
  declare const hardhatPlugin: HardhatPlugin;
4
4
  export default hardhatPlugin;
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/coverage/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAI/D,OAAO,sBAAsB,CAAC;AAE9B,QAAA,MAAM,aAAa,EAAE,aAgBpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/coverage/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAI/D,mBAAmB,sBAAsB,CAAC;AAE1C,QAAA,MAAM,aAAa,EAAE,aAgBpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1,5 +1,4 @@
1
1
  import { globalFlag } from "../../core/config.js";
2
- import "./type-extensions.js";
3
2
  const hardhatPlugin = {
4
3
  id: "builtin:coverage",
5
4
  tasks: [],
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/coverage/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,sBAAsB,CAAC;AAE9B,MAAM,aAAa,GAAkB;IACnC,EAAE,EAAE,kBAAkB;IACtB,KAAK,EAAE,EAAE;IACT,aAAa,EAAE;QACb,UAAU,CAAC;YACT,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,uBAAuB;SACrC,CAAC;KACH;IACD,YAAY,EAAE;QACZ,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,0BAA0B,CAAC;QAC/C,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,wBAAwB,CAAC;QAC3C,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,6BAA6B,CAAC;QACrD,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,yBAAyB,CAAC;KAC9C;IACD,UAAU,EAAE,SAAS;CACtB,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/coverage/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAIlD,MAAM,aAAa,GAAkB;IACnC,EAAE,EAAE,kBAAkB;IACtB,KAAK,EAAE,EAAE;IACT,aAAa,EAAE;QACb,UAAU,CAAC;YACT,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,uBAAuB;SACrC,CAAC;KACH;IACD,YAAY,EAAE;QACZ,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,0BAA0B,CAAC;QAC/C,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,wBAAwB,CAAC;QAC3C,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,6BAA6B,CAAC;QACrD,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,yBAAyB,CAAC;KAC9C;IACD,UAAU,EAAE,SAAS;CACtB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -9,16 +9,13 @@ import type { InstrumentationMetadata } from "@nomicfoundation/edr";
9
9
  * @param sourceName The source name of the file, as present in the compilation
10
10
  * job.
11
11
  * @param fileContent The contents of the file.
12
- * @param coverageLibraryPath The path to the coverage library. i.e. where to
13
- * import it from.
14
12
  * @returns An object with the instrumented source and its metadata, and the
15
13
  * solidity version used to instrument the sources.
16
14
  */
17
- export declare function instrumentSolidityFileForCompilationJob({ compilationJobSolcVersion, sourceName, fileContent, coverageLibraryPath, }: {
15
+ export declare function instrumentSolidityFileForCompilationJob({ compilationJobSolcVersion, sourceName, fileContent, }: {
18
16
  compilationJobSolcVersion: string;
19
17
  sourceName: string;
20
18
  fileContent: string;
21
- coverageLibraryPath: string;
22
19
  }): {
23
20
  source: string;
24
21
  metadata: InstrumentationMetadata[];
@@ -1 +1 @@
1
- {"version":3,"file":"instrumentation.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/coverage/instrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAYpE;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uCAAuC,CAAC,EACtD,yBAAyB,EACzB,UAAU,EACV,WAAW,EACX,mBAAmB,GACpB,EAAE;IACD,yBAAyB,EAAE,MAAM,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;CAC7B,GAAG;IACF,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,uBAAuB,EAAE,CAAC;IACpC,sBAAsB,EAAE,MAAM,CAAC;CAChC,CA6BA"}
1
+ {"version":3,"file":"instrumentation.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/coverage/instrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAYpE;;;;;;;;;;;;GAYG;AACH,wBAAgB,uCAAuC,CAAC,EACtD,yBAAyB,EACzB,UAAU,EACV,WAAW,GACZ,EAAE;IACD,yBAAyB,EAAE,MAAM,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB,GAAG;IACF,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,uBAAuB,EAAE,CAAC;IACpC,sBAAsB,EAAE,MAAM,CAAC;CAChC,CA4BA"}
@@ -11,12 +11,10 @@ import { lowerThanOrEqual, parseVersion, } from "@nomicfoundation/hardhat-utils/
11
11
  * @param sourceName The source name of the file, as present in the compilation
12
12
  * job.
13
13
  * @param fileContent The contents of the file.
14
- * @param coverageLibraryPath The path to the coverage library. i.e. where to
15
- * import it from.
16
14
  * @returns An object with the instrumented source and its metadata, and the
17
15
  * solidity version used to instrument the sources.
18
16
  */
19
- export function instrumentSolidityFileForCompilationJob({ compilationJobSolcVersion, sourceName, fileContent, coverageLibraryPath, }) {
17
+ export function instrumentSolidityFileForCompilationJob({ compilationJobSolcVersion, sourceName, fileContent, }) {
20
18
  const latestSupportedVersion = latestSupportedSolidityVersion();
21
19
  const parsedLatestSupportedVersion = parseVersion(latestSupportedVersion);
22
20
  assertHardhatInvariant(parsedLatestSupportedVersion !== undefined, `Invalid latest supported solidity version: ${latestSupportedVersion}`);
@@ -26,7 +24,7 @@ export function instrumentSolidityFileForCompilationJob({ compilationJobSolcVers
26
24
  if (!lowerThanOrEqual(parsedInstrumentationVersion, parsedLatestSupportedVersion)) {
27
25
  instrumentationVersion = latestSupportedVersion;
28
26
  }
29
- const { source, metadata } = addStatementCoverageInstrumentation(fileContent, sourceName, instrumentationVersion, coverageLibraryPath);
27
+ const { source, metadata } = addStatementCoverageInstrumentation(fileContent, sourceName, instrumentationVersion);
30
28
  return { source, metadata, instrumentationVersion };
31
29
  }
32
30
  //# sourceMappingURL=instrumentation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"instrumentation.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/coverage/instrumentation.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mCAAmC,EACnC,8BAA8B,GAC/B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EACL,gBAAgB,EAChB,YAAY,GACb,MAAM,4CAA4C,CAAC;AAEpD;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,uCAAuC,CAAC,EACtD,yBAAyB,EACzB,UAAU,EACV,WAAW,EACX,mBAAmB,GAMpB;IAKC,MAAM,sBAAsB,GAAG,8BAA8B,EAAE,CAAC;IAChE,MAAM,4BAA4B,GAAG,YAAY,CAAC,sBAAsB,CAAC,CAAC;IAC1E,sBAAsB,CACpB,4BAA4B,KAAK,SAAS,EAC1C,8CAA8C,sBAAsB,EAAE,CACvE,CAAC;IACF,IAAI,sBAAsB,GAAG,yBAAyB,CAAC;IACvD,MAAM,4BAA4B,GAAG,YAAY,CAAC,sBAAsB,CAAC,CAAC;IAC1E,sBAAsB,CACpB,4BAA4B,KAAK,SAAS,EAC1C,yBAAyB,sBAAsB,EAAE,CAClD,CAAC;IACF,IACE,CAAC,gBAAgB,CACf,4BAA4B,EAC5B,4BAA4B,CAC7B,EACD,CAAC;QACD,sBAAsB,GAAG,sBAAsB,CAAC;IAClD,CAAC;IACD,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,mCAAmC,CAC9D,WAAW,EACX,UAAU,EACV,sBAAsB,EACtB,mBAAmB,CACpB,CAAC;IAEF,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,sBAAsB,EAAE,CAAC;AACtD,CAAC"}
1
+ {"version":3,"file":"instrumentation.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/coverage/instrumentation.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mCAAmC,EACnC,8BAA8B,GAC/B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EACL,gBAAgB,EAChB,YAAY,GACb,MAAM,4CAA4C,CAAC;AAEpD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uCAAuC,CAAC,EACtD,yBAAyB,EACzB,UAAU,EACV,WAAW,GAKZ;IAKC,MAAM,sBAAsB,GAAG,8BAA8B,EAAE,CAAC;IAChE,MAAM,4BAA4B,GAAG,YAAY,CAAC,sBAAsB,CAAC,CAAC;IAC1E,sBAAsB,CACpB,4BAA4B,KAAK,SAAS,EAC1C,8CAA8C,sBAAsB,EAAE,CACvE,CAAC;IACF,IAAI,sBAAsB,GAAG,yBAAyB,CAAC;IACvD,MAAM,4BAA4B,GAAG,YAAY,CAAC,sBAAsB,CAAC,CAAC;IAC1E,sBAAsB,CACpB,4BAA4B,KAAK,SAAS,EAC1C,yBAAyB,sBAAsB,EAAE,CAClD,CAAC;IACF,IACE,CAAC,gBAAgB,CACf,4BAA4B,EAC5B,4BAA4B,CAC7B,EACD,CAAC;QACD,sBAAsB,GAAG,sBAAsB,CAAC;IAClD,CAAC;IACD,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,mCAAmC,CAC9D,WAAW,EACX,UAAU,EACV,sBAAsB,CACvB,CAAC;IAEF,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,sBAAsB,EAAE,CAAC;AACtD,CAAC"}
@@ -1,7 +1,7 @@
1
- import "../../../types/global-options.js";
2
1
  declare module "../../../types/global-options.js" {
3
2
  interface GlobalOptions {
4
3
  coverage: boolean;
5
4
  }
6
5
  }
6
+ export {};
7
7
  //# sourceMappingURL=type-extensions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-extensions.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/coverage/type-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,kCAAkC,CAAC;AAC1C,OAAO,QAAQ,kCAAkC,CAAC;IAChD,UAAiB,aAAa;QAC5B,QAAQ,EAAE,OAAO,CAAC;KACnB;CACF"}
1
+ {"version":3,"file":"type-extensions.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/coverage/type-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,kCAAkC,CAAC;IAChD,UAAiB,aAAa;QAC5B,QAAQ,EAAE,OAAO,CAAC;KACnB;CACF"}
@@ -1,2 +1,2 @@
1
- import "../../../types/global-options.js";
1
+ export {};
2
2
  //# sourceMappingURL=type-extensions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-extensions.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/coverage/type-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,kCAAkC,CAAC"}
1
+ {"version":3,"file":"type-extensions.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/coverage/type-extensions.ts"],"names":[],"mappings":""}
@@ -1,5 +1,5 @@
1
1
  import type { HardhatPlugin } from "../../../types/plugins.js";
2
- import "./type-extensions.js";
2
+ export type * from "./type-extensions.js";
3
3
  declare const hardhatPlugin: HardhatPlugin;
4
4
  export default hardhatPlugin;
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/gas-analytics/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAK/D,OAAO,sBAAsB,CAAC;AAE9B,QAAA,MAAM,aAAa,EAAE,aA0DpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/gas-analytics/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAK/D,mBAAmB,sBAAsB,CAAC;AAE1C,QAAA,MAAM,aAAa,EAAE,aA0DpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1,6 +1,5 @@
1
1
  import { ArgumentType } from "../../../types/arguments.js";
2
2
  import { globalFlag, globalOption, overrideTask } from "../../core/config.js";
3
- import "./type-extensions.js";
4
3
  const hardhatPlugin = {
5
4
  id: "builtin:gas-analytics",
6
5
  tasks: [
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/gas-analytics/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAE9E,OAAO,sBAAsB,CAAC;AAE9B,MAAM,aAAa,GAAkB;IACnC,EAAE,EAAE,uBAAuB;IAC3B,KAAK,EAAE;QACL,YAAY,CAAC,MAAM,CAAC;aACjB,OAAO,CAAC;YACP,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,wCAAwC;SACtD,CAAC;aACD,OAAO,CAAC;YACP,IAAI,EAAE,eAAe;YACrB,WAAW,EACT,mEAAmE;SACtE,CAAC;aACD,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YACtB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gBACtC,mEAAmE;gBACnE,iCAAiC;gBACjC,OAAO,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;SACF,CAAC,CAAC;aACF,KAAK,EAAE;QACV,YAAY,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;aAC/B,OAAO,CAAC;YACP,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,kBAAkB;SAChC,CAAC;aACD,OAAO,CAAC;YACP,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,6CAA6C;SAC3D,CAAC;aACD,SAAS,CACR,KAAK,IAAI,EAAE,CAAC,MAAM,MAAM,CAAC,sCAAsC,CAAC,CACjE;aACA,KAAK,EAAE;KACX;IACD,aAAa,EAAE;QACb,UAAU,CAAC;YACT,IAAI,EAAE,UAAU;YAChB,WAAW,EACT,gFAAgF;SACnF,CAAC;QACF,YAAY,CAAC;YACX,IAAI,EAAE,cAAc;YACpB,WAAW,EACT,iEAAiE;YACnE,IAAI,EAAE,YAAY,CAAC,oBAAoB;YACvC,YAAY,EAAE,SAAS;SACxB,CAAC;KACH;IACD,YAAY,EAAE;QACZ,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,wBAAwB,CAAC;QAC3C,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,yBAAyB,CAAC;KAC9C;IACD,YAAY,EAAE,GAAG,EAAE,CAAC;QAClB,MAAM,CAAC,kBAAkB,CAAC;QAC1B,MAAM,CAAC,2BAA2B,CAAC;KACpC;IACD,UAAU,EAAE,SAAS;CACtB,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/gas-analytics/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAI9E,MAAM,aAAa,GAAkB;IACnC,EAAE,EAAE,uBAAuB;IAC3B,KAAK,EAAE;QACL,YAAY,CAAC,MAAM,CAAC;aACjB,OAAO,CAAC;YACP,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,wCAAwC;SACtD,CAAC;aACD,OAAO,CAAC;YACP,IAAI,EAAE,eAAe;YACrB,WAAW,EACT,mEAAmE;SACtE,CAAC;aACD,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YACtB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gBACtC,mEAAmE;gBACnE,iCAAiC;gBACjC,OAAO,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;SACF,CAAC,CAAC;aACF,KAAK,EAAE;QACV,YAAY,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;aAC/B,OAAO,CAAC;YACP,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,kBAAkB;SAChC,CAAC;aACD,OAAO,CAAC;YACP,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,6CAA6C;SAC3D,CAAC;aACD,SAAS,CACR,KAAK,IAAI,EAAE,CAAC,MAAM,MAAM,CAAC,sCAAsC,CAAC,CACjE;aACA,KAAK,EAAE;KACX;IACD,aAAa,EAAE;QACb,UAAU,CAAC;YACT,IAAI,EAAE,UAAU;YAChB,WAAW,EACT,gFAAgF;SACnF,CAAC;QACF,YAAY,CAAC;YACX,IAAI,EAAE,cAAc;YACpB,WAAW,EACT,iEAAiE;YACnE,IAAI,EAAE,YAAY,CAAC,oBAAoB;YACvC,YAAY,EAAE,SAAS;SACxB,CAAC;KACH;IACD,YAAY,EAAE;QACZ,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,wBAAwB,CAAC;QAC3C,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,yBAAyB,CAAC;KAC9C;IACD,YAAY,EAAE,GAAG,EAAE,CAAC;QAClB,MAAM,CAAC,kBAAkB,CAAC;QAC1B,MAAM,CAAC,2BAA2B,CAAC;KACpC;IACD,UAAU,EAAE,SAAS;CACtB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1,5 +1,13 @@
1
1
  import type { SuiteResult } from "@nomicfoundation/edr";
2
2
  export declare const SNAPSHOT_CHEATCODES_DIR = "snapshots";
3
+ export interface RenamedSnapshotGroup {
4
+ original: string;
5
+ sanitized: string;
6
+ }
7
+ export interface SanitizedSnapshotCheatcodes {
8
+ snapshotCheatcodes: SnapshotCheatcodesWithMetadataMap;
9
+ renamedGroups: RenamedSnapshotGroup[];
10
+ }
3
11
  export type SnapshotCheatcodesMap = Map<string, // group
4
12
  Record<string, // name
5
13
  string>>;
@@ -32,8 +40,20 @@ export interface SnapshotCheatcodesCheckResult {
32
40
  passed: boolean;
33
41
  comparison: SnapshotCheatcodesComparison;
34
42
  written: boolean;
43
+ renamedGroups: RenamedSnapshotGroup[];
35
44
  }
36
45
  export declare function getSnapshotCheatcodesPath(basePath: string, filename: string): string;
46
+ /**
47
+ * Rekeys {@link snapshotCheatcodes} so each group name is safe to use as a
48
+ * filename component, returning the rekeyed map alongside the list of names
49
+ * that were actually changed by sanitization.
50
+ *
51
+ * @throws `SOLIDITY_TESTS.SNAPSHOT_GROUP_NAME_COLLISION` if two distinct
52
+ * original names sanitize to the same on-disk filename. Originals are
53
+ * sorted by codepoint in the error message so the same input always
54
+ * produces the same error text.
55
+ */
56
+ export declare function sanitizeSnapshotCheatcodes(snapshotCheatcodes: SnapshotCheatcodesWithMetadataMap): SanitizedSnapshotCheatcodes;
37
57
  export declare function extractSnapshotCheatcodes(suiteResults: SuiteResult[]): SnapshotCheatcodesWithMetadataMap;
38
58
  export declare function writeSnapshotCheatcodes(basePath: string, snapshotCheatcodes: SnapshotCheatcodesWithMetadataMap): Promise<void>;
39
59
  export declare function readSnapshotCheatcodes(basePath: string): Promise<SnapshotCheatcodesMap>;
@@ -42,4 +62,5 @@ export declare function compareSnapshotCheatcodes(previousSnapshotsMap: Snapshot
42
62
  export declare function checkSnapshotCheatcodes(basePath: string, suiteResults: SuiteResult[]): Promise<SnapshotCheatcodesCheckResult>;
43
63
  export declare function logSnapshotCheatcodesSection(result: SnapshotCheatcodesCheckResult, logger?: typeof console.log): void;
44
64
  export declare function printSnapshotCheatcodeChanges(changes: SnapshotCheatcodeChange[], logger?: typeof console.log): void;
65
+ export declare function logSnapshotRenameWarnings(renamedGroups: RenamedSnapshotGroup[], logger?: typeof console.log): void;
45
66
  //# sourceMappingURL=snapshot-cheatcodes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot-cheatcodes.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/gas-analytics/snapshot-cheatcodes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAuBxD,eAAO,MAAM,uBAAuB,cAAc,CAAC;AAEnD,MAAM,MAAM,qBAAqB,GAAG,GAAG,CACrC,MAAM,EAAE,QAAQ;AAChB,MAAM,CACJ,MAAM,EAAE,OAAO;AACf,MAAM,CACP,CACF,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG,GAAG,CACjD,MAAM,EAAE,QAAQ;AAChB,MAAM,CACJ,MAAM,EAAE,OAAO;AACf;IACE,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE;QACR,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH,CACF,CACF,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,4BAA4B;IAC3C,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,OAAO,EAAE,uBAAuB,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,4BAA4B,CAAC;IACzC,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,MAAM,CAER;AAED,wBAAgB,yBAAyB,CACvC,YAAY,EAAE,WAAW,EAAE,GAC1B,iCAAiC,CAgCnC;AA4BD,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,kBAAkB,EAAE,iCAAiC,GACpD,OAAO,CAAC,IAAI,CAAC,CA8Bf;AAED,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,qBAAqB,CAAC,CA4ChC;AAED,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,iBAAiB,EAAE,GAC7B,MAAM,CAOR;AAED,wBAAgB,yBAAyB,CACvC,oBAAoB,EAAE,qBAAqB,EAC3C,mBAAmB,EAAE,iCAAiC,GACrD,4BAA4B,CAqD9B;AAED,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,WAAW,EAAE,GAC1B,OAAO,CAAC,6BAA6B,CAAC,CA6CxC;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,6BAA6B,EACrC,MAAM,GAAE,OAAO,OAAO,CAAC,GAAiB,GACvC,IAAI,CAgEN;AAED,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,uBAAuB,EAAE,EAClC,MAAM,GAAE,OAAO,OAAO,CAAC,GAAiB,GACvC,IAAI,CAkCN"}
1
+ {"version":3,"file":"snapshot-cheatcodes.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/gas-analytics/snapshot-cheatcodes.ts"],"names":[],"mappings":"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"}