hardhat 3.1.7 → 3.1.9

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 (54) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/src/internal/builtin-plugins/coverage/hook-handlers/solidity.d.ts.map +1 -1
  3. package/dist/src/internal/builtin-plugins/coverage/hook-handlers/solidity.js +7 -8
  4. package/dist/src/internal/builtin-plugins/coverage/hook-handlers/solidity.js.map +1 -1
  5. package/dist/src/internal/builtin-plugins/coverage/instrumentation.d.ts +27 -0
  6. package/dist/src/internal/builtin-plugins/coverage/instrumentation.d.ts.map +1 -0
  7. package/dist/src/internal/builtin-plugins/coverage/instrumentation.js +27 -0
  8. package/dist/src/internal/builtin-plugins/coverage/instrumentation.js.map +1 -0
  9. package/dist/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.d.ts +0 -1
  10. package/dist/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.d.ts.map +1 -1
  11. package/dist/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.js +2 -6
  12. package/dist/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.js.map +1 -1
  13. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.d.ts +4 -0
  14. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.d.ts.map +1 -1
  15. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.js +19 -2
  16. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.js.map +1 -1
  17. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.d.ts.map +1 -1
  18. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.js +6 -6
  19. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.js.map +1 -1
  20. package/dist/src/internal/builtin-plugins/solidity/build-system/solc-info.d.ts +10 -0
  21. package/dist/src/internal/builtin-plugins/solidity/build-system/solc-info.d.ts.map +1 -1
  22. package/dist/src/internal/builtin-plugins/solidity/build-system/solc-info.js +17 -0
  23. package/dist/src/internal/builtin-plugins/solidity/build-system/solc-info.js.map +1 -1
  24. package/dist/src/internal/builtin-plugins/solidity/config.d.ts +0 -1
  25. package/dist/src/internal/builtin-plugins/solidity/config.d.ts.map +1 -1
  26. package/dist/src/internal/builtin-plugins/solidity/config.js +17 -8
  27. package/dist/src/internal/builtin-plugins/solidity/config.js.map +1 -1
  28. package/dist/src/internal/builtin-plugins/solidity/type-extensions.d.ts +2 -0
  29. package/dist/src/internal/builtin-plugins/solidity/type-extensions.d.ts.map +1 -1
  30. package/dist/src/internal/builtin-plugins/solidity/type-extensions.js.map +1 -1
  31. package/dist/src/internal/builtin-plugins/solidity-test/helpers.d.ts +2 -1
  32. package/dist/src/internal/builtin-plugins/solidity-test/helpers.d.ts.map +1 -1
  33. package/dist/src/internal/builtin-plugins/solidity-test/helpers.js +8 -4
  34. package/dist/src/internal/builtin-plugins/solidity-test/helpers.js.map +1 -1
  35. package/dist/src/internal/builtin-plugins/solidity-test/task-action.d.ts.map +1 -1
  36. package/dist/src/internal/builtin-plugins/solidity-test/task-action.js +10 -0
  37. package/dist/src/internal/builtin-plugins/solidity-test/task-action.js.map +1 -1
  38. package/dist/src/internal/cli/telemetry/sentry/transport.js +1 -0
  39. package/dist/src/internal/cli/telemetry/sentry/transport.js.map +1 -1
  40. package/package.json +2 -2
  41. package/src/internal/builtin-plugins/coverage/hook-handlers/solidity.ts +6 -17
  42. package/src/internal/builtin-plugins/coverage/instrumentation.ts +52 -0
  43. package/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.ts +2 -7
  44. package/src/internal/builtin-plugins/solidity/build-system/build-system.ts +31 -2
  45. package/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.ts +8 -6
  46. package/src/internal/builtin-plugins/solidity/build-system/solc-info.ts +22 -0
  47. package/src/internal/builtin-plugins/solidity/config.ts +21 -10
  48. package/src/internal/builtin-plugins/solidity/type-extensions.ts +2 -0
  49. package/src/internal/builtin-plugins/solidity-test/helpers.ts +14 -4
  50. package/src/internal/builtin-plugins/solidity-test/task-action.ts +11 -0
  51. package/src/internal/cli/telemetry/sentry/transport.ts +1 -0
  52. package/templates/hardhat-3/01-node-test-runner-viem/package.json +2 -2
  53. package/templates/hardhat-3/02-mocha-ethers/package.json +3 -3
  54. package/templates/hardhat-3/03-minimal/package.json +1 -1
@@ -1,9 +1,9 @@
1
- import os from "node:os";
2
1
  import { deepMerge, isObject } from "@nomicfoundation/hardhat-utils/lang";
3
2
  import { resolveFromRoot } from "@nomicfoundation/hardhat-utils/path";
4
3
  import { conditionalUnionType, incompatibleFieldType, validateUserConfigZodType, } from "@nomicfoundation/hardhat-zod-utils";
5
4
  import { z } from "zod";
6
5
  import { DEFAULT_BUILD_PROFILES } from "./build-profiles.js";
6
+ import { hasOfficialArm64Build, missesSomeOfficialNativeBuilds, } from "./build-system/solc-info.js";
7
7
  const sourcePathsType = conditionalUnionType([
8
8
  [(data) => typeof data === "string", z.string()],
9
9
  [(data) => Array.isArray(data), z.array(z.string()).nonempty()],
@@ -14,6 +14,8 @@ const commonSolcUserConfigType = z.object({
14
14
  const solcUserConfigType = z.object({
15
15
  version: z.string(),
16
16
  settings: z.any().optional(),
17
+ path: z.string().optional(),
18
+ preferWasm: z.boolean().optional(),
17
19
  compilers: incompatibleFieldType("This field is incompatible with `version`"),
18
20
  overrides: incompatibleFieldType("This field is incompatible with `version`"),
19
21
  profiles: incompatibleFieldType("This field is incompatible with `version`"),
@@ -177,7 +179,7 @@ function resolveBuildProfileConfig(solidityConfig, production = false) {
177
179
  compilers: [resolveSolcConfig(solidityConfig, production)],
178
180
  overrides: {},
179
181
  isolated: solidityConfig.isolated ?? production,
180
- preferWasm: solidityConfig.preferWasm ?? (production && shouldUseWasm()),
182
+ preferWasm: solidityConfig.preferWasm ?? false,
181
183
  };
182
184
  }
183
185
  return {
@@ -187,7 +189,7 @@ function resolveBuildProfileConfig(solidityConfig, production = false) {
187
189
  resolveSolcConfig(override, production),
188
190
  ])),
189
191
  isolated: solidityConfig.isolated ?? production,
190
- preferWasm: solidityConfig.preferWasm ?? (production && shouldUseWasm()),
192
+ preferWasm: solidityConfig.preferWasm ?? false,
191
193
  };
192
194
  }
193
195
  function resolveSolcConfig(solcConfig, production = false) {
@@ -211,10 +213,22 @@ function resolveSolcConfig(solcConfig, production = false) {
211
213
  runs: 200,
212
214
  };
213
215
  }
216
+ // Resolve per-compiler preferWasm:
217
+ // If explicitly set, use that value.
218
+ // Otherwise, for ARM64 Linux in production, default to true only for
219
+ // versions without official ARM64 builds.
220
+ let resolvedPreferWasm = solcConfig.preferWasm;
221
+ if (resolvedPreferWasm === undefined && missesSomeOfficialNativeBuilds()) {
222
+ resolvedPreferWasm =
223
+ production && !hasOfficialArm64Build(solcConfig.version)
224
+ ? true
225
+ : undefined;
226
+ }
214
227
  return {
215
228
  version: solcConfig.version,
216
229
  settings: deepMerge(defaultSolcConfigSettings, solcConfig.settings ?? {}),
217
230
  path: solcConfig.path,
231
+ preferWasm: resolvedPreferWasm,
218
232
  };
219
233
  }
220
234
  function copyFromDefault(defaultSolidityConfig) {
@@ -233,9 +247,4 @@ function copyFromDefault(defaultSolidityConfig) {
233
247
  ])),
234
248
  };
235
249
  }
236
- // We use wasm builds in production to avoid using unofficial builds for deployments
237
- // This should change once https://github.com/ethereum/solidity/issues/11351 gets resolved
238
- export function shouldUseWasm() {
239
- return os.platform() === "linux" && os.arch() === "arm64";
240
- }
241
250
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity/config.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,MAAM,eAAe,GAAG,oBAAoB,CAC1C;IACE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;IAChD,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;CAChE,EACD,0CAA0C,CAC3C,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC5B,SAAS,EAAE,qBAAqB,CAAC,2CAA2C,CAAC;IAC7E,SAAS,EAAE,qBAAqB,CAAC,2CAA2C,CAAC;IAC7E,QAAQ,EAAE,qBAAqB,CAAC,2CAA2C,CAAC;CAC7E,CAAC,CAAC;AAEH,wEAAwE;AACxE,MAAM,+BAA+B,GAAG,kBAAkB,CAAC,MAAM,CAAC;IAChE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAChC,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAEH,MAAM,8BAA8B,GAAG,wBAAwB,CAAC,MAAM,CAAC;IACrE,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE;IACjD,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC,QAAQ,EAAE;IAC9D,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAChC,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAClC,OAAO,EAAE,qBAAqB,CAAC,6CAA6C,CAAC;IAC7E,QAAQ,EAAE,qBAAqB,CAC7B,6CAA6C,CAC9C;CACF,CAAC,CAAC;AAEH,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC;AAEH,MAAM,mCAAmC,GAAG,+BAA+B;KACxE,KAAK,CAAC,4BAA4B,CAAC;KACnC,MAAM,CAAC;IACN,SAAS,EAAE,qBAAqB,CAC9B,2CAA2C,CAC5C;IACD,SAAS,EAAE,qBAAqB,CAC9B,2CAA2C,CAC5C;IACD,QAAQ,EAAE,qBAAqB,CAC7B,2CAA2C,CAC5C;CACF,CAAC,CAAC;AAEL,MAAM,kCAAkC,GAAG,8BAA8B;KACtE,KAAK,CAAC,4BAA4B,CAAC;KACnC,MAAM,CAAC;IACN,OAAO,EAAE,qBAAqB,CAC5B,6CAA6C,CAC9C;IACD,QAAQ,EAAE,qBAAqB,CAC7B,6CAA6C,CAC9C;CACF,CAAC,CAAC;AAEL,MAAM,mCAAmC,GAAG,4BAA4B,CAAC,MAAM,CAC7E;IACE,QAAQ,EAAE,CAAC,CAAC,MAAM,CAChB,CAAC,CAAC,MAAM,EAAE,EACV,oBAAoB,CAClB;QACE;YACE,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,SAAS,IAAI,IAAI;YAC7C,+BAA+B;SAChC;QACD;YACE,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,WAAW,IAAI,IAAI;YAC/C,8BAA8B;SAC/B;KACF,EACD,iEAAiE,CAClE,CACF;IACD,OAAO,EAAE,qBAAqB,CAC5B,4CAA4C,CAC7C;IACD,SAAS,EAAE,qBAAqB,CAC9B,4CAA4C,CAC7C;IACD,SAAS,EAAE,qBAAqB,CAC9B,4CAA4C,CAC7C;CACF,CACF,CAAC;AAEF,MAAM,qBAAqB,GAAG,oBAAoB,CAChD;IACE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;IAChD,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC/D;QACE,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,SAAS,IAAI,IAAI;QAC7C,mCAAmC;KACpC;IACD;QACE,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,WAAW,IAAI,IAAI;QAC/C,kCAAkC;KACnC;IACD;QACE,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,UAAU,IAAI,IAAI;QAC9C,mCAAmC;KACpC;CACF,EACD,8IAA8I,CAC/I,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,KAAK,EAAE,CAAC;SACL,MAAM,CAAC;QACN,OAAO,EAAE,oBAAoB,CAC3B;YACE,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,eAAe,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC9D;gBACE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBACzD,eAAe;aAChB;SACF,EACD,2FAA2F,CAC5F,CAAC,QAAQ,EAAE;KACb,CAAC;SACD,QAAQ,EAAE;IACb,QAAQ,EAAE,qBAAqB,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAEH,MAAM,UAAU,0BAA0B,CACxC,UAAmB;IAEnB,MAAM,MAAM,GAAG,yBAAyB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAErE,IACE,QAAQ,CAAC,UAAU,CAAC;QACpB,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC;QAC7B,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACtC,CAAC,CAAC,SAAS,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC5C,CAAC;QACD,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EACL,sEAAsE;YACxE,IAAI,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC;SAC/B,CAAC,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,UAA6B,EAC7B,cAA6B;IAE7B,IAAI,YAAY,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC;IAE7C,4DAA4D;IAC5D,YAAY;QACV,OAAO,YAAY,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC;YAC9D,CAAC,CAAC,YAAY,CAAC,QAAQ;YACvB,CAAC,CAAC,YAAY,CAAC;IAEnB,YAAY,KAAK,WAAW,CAAC;IAE7B,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;IAE3E,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC3C,eAAe,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAC9C,CAAC;IAEF,OAAO;QACL,GAAG,cAAc;QACjB,KAAK,EAAE;YACL,GAAG,cAAc,CAAC,KAAK;YACvB,OAAO,EAAE;gBACP,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO;gBAC/B,QAAQ,EAAE,aAAa;aACxB;SACF;QACD,QAAQ,EAAE,qBAAqB,CAAC,UAAU,CAAC,QAAQ,IAAI,OAAO,CAAC;KAChE,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAC5B,cAAkC;IAElC,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE,CAAC;QACvC,cAAc,GAAG,CAAC,cAAc,CAAC,CAAC;IACpC,CAAC;IAED,yDAAyD;IACzD,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;QAClC,MAAM,qBAAqB,GAAG;YAC5B,SAAS,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;SAC1D,CAAC;QACF,OAAO;YACL,QAAQ,EAAE;gBACR,OAAO,EAAE,yBAAyB,CAAC,qBAAqB,CAAC;gBACzD,UAAU,EAAE,yBAAyB,CACnC,eAAe,CAAC,qBAAqB,CAAC,EACtC,IAAI,CACL;aACF;YACD,eAAe,EAAE,EAAE;SACpB,CAAC;IACJ,CAAC;IAED,kEAAkE;IAClE,IAAI,SAAS,IAAI,cAAc,IAAI,WAAW,IAAI,cAAc,EAAE,CAAC;QACjE,OAAO;YACL,QAAQ,EAAE;gBACR,OAAO,EAAE,yBAAyB,CAAC,cAAc,CAAC;gBAClD,UAAU,EAAE,yBAAyB,CACnC,eAAe,CAAC,cAAc,CAAC,EAC/B,IAAI,CACL;aACF;YACD,eAAe,EAAE,cAAc,CAAC,eAAe,IAAI,EAAE;SACtD,CAAC;IACJ,CAAC;IAED,wCAAwC;IACxC,MAAM,QAAQ,GAA+C,EAAE,CAAC;IAEhE,KAAK,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CACjD,cAAc,CAAC,QAAQ,CACxB,EAAE,CAAC;QACF,QAAQ,CAAC,WAAW,CAAC,GAAG,yBAAyB,CAC/C,OAAO,EACP,WAAW,KAAK,YAAY,CAC7B,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,+EAA+E;IAC/E,KAAK,MAAM,OAAO,IAAI,sBAAsB,EAAE,CAAC;QAC7C,IAAI,CAAC,CAAC,OAAO,IAAI,QAAQ,CAAC,EAAE,CAAC;YAC3B,QAAQ,CAAC,OAAO,CAAC,GAAG,yBAAyB,CAC3C,eAAe,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,EAChD,OAAO,KAAK,YAAY,CACzB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO;QACL,QAAQ;QACR,eAAe,EAAE,cAAc,CAAC,eAAe,IAAI,EAAE;KACtD,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAChC,cAEkC,EAClC,aAAsB,KAAK;IAE3B,IAAI,SAAS,IAAI,cAAc,EAAE,CAAC;QAChC,OAAO;YACL,SAAS,EAAE,CAAC,iBAAiB,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;YAC1D,SAAS,EAAE,EAAE;YACb,QAAQ,EAAE,cAAc,CAAC,QAAQ,IAAI,UAAU;YAC/C,UAAU,EAAE,cAAc,CAAC,UAAU,IAAI,CAAC,UAAU,IAAI,aAAa,EAAE,CAAC;SACzE,CAAC;IACJ,CAAC;IAED,OAAO;QACL,SAAS,EAAE,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CACnD,iBAAiB,CAAC,QAAQ,EAAE,UAAU,CAAC,CACxC;QACD,SAAS,EAAE,MAAM,CAAC,WAAW,CAC3B,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAChD,CAAC,CAAC,cAAc,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC;YAC9B,cAAc;YACd,iBAAiB,CAAC,QAAQ,EAAE,UAAU,CAAC;SACxC,CACF,CACF;QACD,QAAQ,EAAE,cAAc,CAAC,QAAQ,IAAI,UAAU;QAC/C,UAAU,EAAE,cAAc,CAAC,UAAU,IAAI,CAAC,UAAU,IAAI,aAAa,EAAE,CAAC;KACzE,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,UAA0B,EAC1B,aAAsB,KAAK;IAE3B,MAAM,yBAAyB,GAA2B;QACxD,eAAe,EAAE;YACf,GAAG,EAAE;gBACH,EAAE,EAAE,CAAC,KAAK,CAAC;gBACX,GAAG,EAAE;oBACH,KAAK;oBACL,cAAc;oBACd,sBAAsB;oBACtB,uBAAuB;oBACvB,UAAU;iBACX;aACF;SACF;KACF,CAAC;IAEF,IAAI,UAAU,EAAE,CAAC;QACf,yBAAyB,CAAC,SAAS,GAAG;YACpC,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,GAAG;SACV,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,QAAQ,EAAE,SAAS,CAAC,yBAAyB,EAAE,UAAU,CAAC,QAAQ,IAAI,EAAE,CAAC;QACzE,IAAI,EAAE,UAAU,CAAC,IAAI;KACtB,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CACtB,qBAEkC;IAElC,IAAI,SAAS,IAAI,qBAAqB,EAAE,CAAC;QACvC,OAAO;YACL,OAAO,EAAE,qBAAqB,CAAC,OAAO;SACvC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,SAAS,EAAE,qBAAqB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACrD,OAAO,EAAE,CAAC,CAAC,OAAO;SACnB,CAAC,CAAC;QACH,SAAS,EAAE,MAAM,CAAC,WAAW,CAC3B,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CACvD,CAAC,CAAC,cAAc,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC;YAC9B,cAAc;YACd,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE;SAC9B,CACF,CACF;KACF,CAAC;AACJ,CAAC;AAED,oFAAoF;AACpF,0FAA0F;AAC1F,MAAM,UAAU,aAAa;IAC3B,OAAO,EAAE,CAAC,QAAQ,EAAE,KAAK,OAAO,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,OAAO,CAAC;AAC5D,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity/config.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ declare module "../../../types/config.js" {
8
8
  version: string;
9
9
  settings?: any;
10
10
  path?: string;
11
+ preferWasm?: boolean;
11
12
  }
12
13
  interface SingleVersionSolcUserConfig extends SolcUserConfig {
13
14
  isolated?: boolean;
@@ -36,6 +37,7 @@ declare module "../../../types/config.js" {
36
37
  version: string;
37
38
  settings: any;
38
39
  path?: string;
40
+ preferWasm?: boolean;
39
41
  }
40
42
  interface SolidityBuildProfileConfig {
41
43
  isolated: boolean;
@@ -1 +1 @@
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
+ {"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;KAC5B;CACF"}
@@ -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;AAkFlC,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;AAoFlC,OAAO,uBAAuB,CAAC;AAO/B,OAAO,kCAAkC,CAAC;AAO1C,OAAO,yBAAyB,CAAC"}
@@ -6,6 +6,7 @@ import { type Colorizer } from "./formatters.js";
6
6
  interface SolidityTestConfigParams {
7
7
  chainType: ChainType;
8
8
  projectRoot: string;
9
+ hardfork?: string;
9
10
  config: SolidityTestConfig;
10
11
  verbosity: number;
11
12
  observability?: ObservabilityConfig;
@@ -13,7 +14,7 @@ interface SolidityTestConfigParams {
13
14
  generateGasReport: boolean;
14
15
  }
15
16
  export declare function solidityTestConfigToRunOptions(config: SolidityTestConfig): RunOptions;
16
- export declare function solidityTestConfigToSolidityTestRunnerConfigArgs({ chainType, projectRoot, config, verbosity, observability, testPattern, generateGasReport, }: SolidityTestConfigParams): Promise<SolidityTestRunnerConfigArgs>;
17
+ export declare function solidityTestConfigToSolidityTestRunnerConfigArgs({ chainType, projectRoot, hardfork, config, verbosity, observability, testPattern, generateGasReport, }: SolidityTestConfigParams): Promise<SolidityTestRunnerConfigArgs>;
17
18
  export declare function isTestSuiteArtifact(artifact: Artifact): boolean;
18
19
  export declare function warnDeprecatedTestFail(artifact: Artifact, sourceNameToUserSourceName: Map<string, string>, colorizer?: Colorizer): void;
19
20
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EACV,4BAA4B,EAE5B,QAAQ,EACR,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAgB9B,OAAO,EAAE,KAAK,SAAS,EAAoB,MAAM,iBAAiB,CAAC;AAEnE,UAAU,wBAAwB;IAChC,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAMD,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,kBAAkB,GACzB,UAAU,CAEZ;AAED,wBAAsB,gDAAgD,CAAC,EACrE,SAAS,EACT,WAAW,EACX,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,iBAAiB,GAClB,EAAE,wBAAwB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAkGlE;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAQ/D;AAED,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,QAAQ,EAClB,0BAA0B,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/C,SAAS,GAAE,SAAiB,GAC3B,IAAI,CAkBN"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EACV,4BAA4B,EAE5B,QAAQ,EACR,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAkB9B,OAAO,EAAE,KAAK,SAAS,EAAoB,MAAM,iBAAiB,CAAC;AAEnE,UAAU,wBAAwB;IAChC,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAMD,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,kBAAkB,GACzB,UAAU,CAEZ;AAED,wBAAsB,gDAAgD,CAAC,EACrE,SAAS,EACT,WAAW,EACX,QAAQ,EACR,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,iBAAiB,GAClB,EAAE,wBAAwB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAwGlE;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAQ/D;AAED,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,QAAQ,EAClB,0BAA0B,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/C,SAAS,GAAE,SAAiB,GAC3B,IAAI,CAkBN"}
@@ -1,7 +1,9 @@
1
- import { opGenesisState, opLatestHardfork, l1GenesisState, l1HardforkLatest, IncludeTraces, FsAccessPermission, CollectStackTraces, } from "@nomicfoundation/edr";
1
+ import { opGenesisState, l1GenesisState, IncludeTraces, FsAccessPermission, CollectStackTraces, opHardforkFromString, l1HardforkFromString, } from "@nomicfoundation/edr";
2
2
  import { hexStringToBytes } from "@nomicfoundation/hardhat-utils/hex";
3
3
  import chalk from "chalk";
4
4
  import { DEFAULT_VERBOSITY, OPTIMISM_CHAIN_TYPE } from "../../constants.js";
5
+ import { resolveHardfork } from "../network-manager/config-resolution.js";
6
+ import { hardhatHardforkToEdrSpecId } from "../network-manager/edr/utils/convert-to-edr.js";
5
7
  import { formatArtifactId } from "./formatters.js";
6
8
  function hexStringToBuffer(hexString) {
7
9
  return Buffer.from(hexStringToBytes(hexString));
@@ -9,7 +11,7 @@ function hexStringToBuffer(hexString) {
9
11
  export function solidityTestConfigToRunOptions(config) {
10
12
  return config;
11
13
  }
12
- export async function solidityTestConfigToSolidityTestRunnerConfigArgs({ chainType, projectRoot, config, verbosity, observability, testPattern, generateGasReport, }) {
14
+ export async function solidityTestConfigToSolidityTestRunnerConfigArgs({ chainType, projectRoot, hardfork, config, verbosity, observability, testPattern, generateGasReport, }) {
13
15
  const fsPermissions = [
14
16
  config.fsPermissions?.readWriteFile?.map((p) => ({
15
17
  access: FsAccessPermission.ReadWriteFile,
@@ -43,9 +45,10 @@ export async function solidityTestConfigToSolidityTestRunnerConfigArgs({ chainTy
43
45
  const blockCoinbase = config.coinbase === undefined
44
46
  ? undefined
45
47
  : hexStringToBuffer(config.coinbase);
48
+ const resolvedHardfork = hardhatHardforkToEdrSpecId(resolveHardfork(hardfork, chainType), chainType);
46
49
  const localPredeploys = chainType === OPTIMISM_CHAIN_TYPE
47
- ? opGenesisState(opLatestHardfork())
48
- : l1GenesisState(l1HardforkLatest());
50
+ ? opGenesisState(opHardforkFromString(resolvedHardfork))
51
+ : l1GenesisState(l1HardforkFromString(resolvedHardfork));
49
52
  let includeTraces = IncludeTraces.None;
50
53
  if (verbosity >= 5) {
51
54
  includeTraces = IncludeTraces.All;
@@ -71,6 +74,7 @@ export async function solidityTestConfigToSolidityTestRunnerConfigArgs({ chainTy
71
74
  const shouldAlwaysCollectStackTraces = verbosity > DEFAULT_VERBOSITY;
72
75
  return {
73
76
  projectRoot,
77
+ hardfork: resolvedHardfork,
74
78
  ...config,
75
79
  fsPermissions,
76
80
  localPredeploys,
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/helpers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"task-action.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/task-action.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AA4CrE,UAAU,mBAAmB;IAC3B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,QAAA,MAAM,gBAAgB,EAAE,qBAAqB,CAAC,mBAAmB,CAmOhE,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"task-action.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/task-action.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AA4CrE,UAAU,mBAAmB;IAC3B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,QAAA,MAAM,gBAAgB,EAAE,qBAAqB,CAAC,mBAAmB,CA8OhE,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -80,9 +80,19 @@ const runSolidityTests = async ({ testFiles, chainType, grep, noCompile, verbosi
80
80
  },
81
81
  };
82
82
  }
83
+ // Extract hardfork from the selected network configuration
84
+ let hardfork;
85
+ if (hre.globalOptions.network !== undefined) {
86
+ const networkName = hre.globalOptions.network;
87
+ const networkConfig = hre.config.networks[networkName];
88
+ if (networkConfig !== undefined && networkConfig.type === "edr-simulated") {
89
+ hardfork = networkConfig.hardfork;
90
+ }
91
+ }
83
92
  const config = await solidityTestConfigToSolidityTestRunnerConfigArgs({
84
93
  chainType,
85
94
  projectRoot: hre.config.paths.root,
95
+ hardfork,
86
96
  config: solidityTestConfig,
87
97
  verbosity,
88
98
  observability: observabilityConfig,
@@ -1 +1 @@
1
- {"version":3,"file":"task-action.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/task-action.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-action.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/task-action.ts"],"names":[],"mappings":"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"}
@@ -114,6 +114,7 @@ async function sendSerializedEnvelopeToSentryBackend(dsn, serializedEnvelope) {
114
114
  ]
115
115
  .filter(Boolean)
116
116
  .join(", ");
117
+ // eslint-disable-next-line no-restricted-globals -- TODO: determine whether this should be using undici
117
118
  const res = await fetch(ingestUrl, {
118
119
  method: "POST",
119
120
  headers: {
@@ -1 +1 @@
1
- {"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../../../../src/internal/cli/telemetry/sentry/transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../../../../src/internal/cli/telemetry/sentry/transport.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hardhat",
3
- "version": "3.1.7",
3
+ "version": "3.1.9",
4
4
  "description": "Hardhat is an extensible developer tool that helps smart contract developers increase productivity by reliably bringing together the tools they want.",
5
5
  "homepage": "https://github.com/nomicfoundation/hardhat/tree/v-next/v-next/hardhat",
6
6
  "repository": {
@@ -71,7 +71,7 @@
71
71
  "@nomicfoundation/hardhat-test-utils": "^2.0.1"
72
72
  },
73
73
  "dependencies": {
74
- "@nomicfoundation/edr": "0.12.0-next.23",
74
+ "@nomicfoundation/edr": "0.12.0-next.24",
75
75
  "@nomicfoundation/hardhat-errors": "^3.0.6",
76
76
  "@nomicfoundation/hardhat-utils": "^3.0.6",
77
77
  "@nomicfoundation/hardhat-vendored": "^3.0.1",
@@ -3,10 +3,6 @@ import type { CoverageMetadata } from "../types.js";
3
3
 
4
4
  import path from "node:path";
5
5
 
6
- import {
7
- addStatementCoverageInstrumentation,
8
- latestSupportedSolidityVersion,
9
- } from "@nomicfoundation/edr";
10
6
  import {
11
7
  assertHardhatInvariant,
12
8
  HardhatError,
@@ -15,9 +11,9 @@ import { ensureError } from "@nomicfoundation/hardhat-utils/error";
15
11
  import { readUtf8File } from "@nomicfoundation/hardhat-utils/fs";
16
12
  import { findClosestPackageRoot } from "@nomicfoundation/hardhat-utils/package";
17
13
  import debug from "debug";
18
- import { satisfies } from "semver";
19
14
 
20
15
  import { CoverageManagerImplementation } from "../coverage-manager.js";
16
+ import { instrumentSolidityFileForCompilationJob } from "../instrumentation.js";
21
17
 
22
18
  const log = debug("hardhat:core:coverage:hook-handlers:solidity");
23
19
 
@@ -40,19 +36,12 @@ export default async (): Promise<Partial<SolidityHooks>> => ({
40
36
 
41
37
  if (context.globalOptions.coverage && !isTestSource) {
42
38
  try {
43
- const latestSupportedVersion = latestSupportedSolidityVersion();
44
- if (!satisfies(solcVersion, `<=${latestSupportedVersion}`)) {
45
- console.log(
46
- `Solidity version ${solcVersion} is not yet supported for coverage instrumentation. Hardhat will try the latest supported version ${latestSupportedVersion} instead.`,
47
- );
48
- solcVersion = latestSupportedVersion;
49
- }
50
- const { source, metadata } = addStatementCoverageInstrumentation(
51
- fileContent,
39
+ const { source, metadata } = instrumentSolidityFileForCompilationJob({
40
+ compilationJobSolcVersion: solcVersion,
52
41
  sourceName,
53
- solcVersion,
54
- COVERAGE_LIBRARY_PATH,
55
- );
42
+ fileContent,
43
+ coverageLibraryPath: COVERAGE_LIBRARY_PATH,
44
+ });
56
45
 
57
46
  // TODO: Remove this once EDR starts returning line information as part
58
47
  // of the metadata.
@@ -0,0 +1,52 @@
1
+ import type { InstrumentationMetadata } from "@nomicfoundation/edr";
2
+
3
+ import {
4
+ addStatementCoverageInstrumentation,
5
+ latestSupportedSolidityVersion,
6
+ } from "@nomicfoundation/edr";
7
+ import { satisfies } from "semver";
8
+
9
+ /**
10
+ * Instruments a solidity source file as part of a compilation job. i.e. the
11
+ * file is about to be compile as either a root file or a transitive dependency
12
+ * of one of the root files.
13
+ *
14
+ * @param compilationJobSolcVersion The solc version that the compilation job
15
+ * will use.
16
+ * @param sourceName The source name of the file, as present in the compilation
17
+ * job.
18
+ * @param fileContent The contents of the file.
19
+ * @param coverageLibraryPath The path to the coverage library. i.e. where to
20
+ * import it from.
21
+ * @returns An object with the instrumented source and its metadata, and the
22
+ * solidity version used to instrument the sources.
23
+ */
24
+ export function instrumentSolidityFileForCompilationJob({
25
+ compilationJobSolcVersion,
26
+ sourceName,
27
+ fileContent,
28
+ coverageLibraryPath,
29
+ }: {
30
+ compilationJobSolcVersion: string;
31
+ sourceName: string;
32
+ fileContent: string;
33
+ coverageLibraryPath: string;
34
+ }): {
35
+ source: string;
36
+ metadata: InstrumentationMetadata[];
37
+ instrumentationVersion: string;
38
+ } {
39
+ const latestSupportedVersion = latestSupportedSolidityVersion();
40
+ let instrumentationVersion = compilationJobSolcVersion;
41
+ if (!satisfies(instrumentationVersion, `<=${latestSupportedVersion}`)) {
42
+ instrumentationVersion = latestSupportedVersion;
43
+ }
44
+ const { source, metadata } = addStatementCoverageInstrumentation(
45
+ fileContent,
46
+ sourceName,
47
+ instrumentationVersion,
48
+ coverageLibraryPath,
49
+ );
50
+
51
+ return { source, metadata, instrumentationVersion };
52
+ }
@@ -142,8 +142,8 @@ export class GasAnalyticsManagerImplementation implements GasAnalyticsManager {
142
142
  const stats: GasStats = {
143
143
  min: Math.min(...gasValues),
144
144
  max: Math.max(...gasValues),
145
- avg: roundTo(avg(gasValues), 2),
146
- median: roundTo(median(gasValues), 2),
145
+ avg: Math.round(avg(gasValues)),
146
+ median: Math.round(median(gasValues)),
147
147
  calls: gasValues.length,
148
148
  };
149
149
 
@@ -332,8 +332,3 @@ export function findDuplicates<T>(arr: T[]): T[] {
332
332
 
333
333
  return [...duplicates];
334
334
  }
335
-
336
- export function roundTo(value: number, decimals: number): number {
337
- const factor = 10 ** decimals;
338
- return Math.round(value * factor) / factor;
339
- }
@@ -78,6 +78,32 @@ import { shouldSuppressWarning } from "./warning-suppression.js";
78
78
 
79
79
  const log = debug("hardhat:core:solidity:build-system");
80
80
 
81
+ /**
82
+ * Resolves the preferWasm setting for a given solc config, falling back
83
+ * to the build profile's preferWasm if not set on the compiler.
84
+ */
85
+ function resolvePreferWasm(
86
+ solcConfig: SolcConfig,
87
+ buildProfilePreferWasm: boolean,
88
+ ): boolean {
89
+ return solcConfig.preferWasm ?? buildProfilePreferWasm;
90
+ }
91
+
92
+ // Compiler warnings to suppress from build output.
93
+ // Each rule specifies a warning message and the source file it applies to.
94
+ // This allows suppressing known warnings from internal files (e.g., console.sol)
95
+ // while still showing the same warning type from user code.
96
+ export const SUPPRESSED_WARNINGS: Array<{
97
+ message: string;
98
+ sourceFile: string;
99
+ }> = [
100
+ {
101
+ message:
102
+ "Natspec memory-safe-assembly special comment for inline assembly is deprecated and scheduled for removal. Use the memory-safe block annotation instead.",
103
+ sourceFile: path.normalize("hardhat/console.sol"),
104
+ },
105
+ ];
106
+
81
107
  interface CompilationResult {
82
108
  compilationJob: CompilationJob;
83
109
  compilerOutput: CompilerOutput;
@@ -434,7 +460,7 @@ export class SolidityBuildSystemImplementation implements SolidityBuildSystem {
434
460
 
435
461
  if (solcLongVersion === undefined) {
436
462
  const compiler = await getCompiler(solcConfig.version, {
437
- preferWasm: buildProfile.preferWasm,
463
+ preferWasm: resolvePreferWasm(solcConfig, buildProfile.preferWasm),
438
464
  compilerPath: solcConfig.path,
439
465
  });
440
466
  solcLongVersion = compiler.longVersion;
@@ -643,7 +669,10 @@ export class SolidityBuildSystemImplementation implements SolidityBuildSystem {
643
669
  const compiler = await getCompiler(
644
670
  runnableCompilationJob.solcConfig.version,
645
671
  {
646
- preferWasm: buildProfile.preferWasm,
672
+ preferWasm: resolvePreferWasm(
673
+ runnableCompilationJob.solcConfig,
674
+ buildProfile.preferWasm,
675
+ ),
647
676
  compilerPath: runnableCompilationJob.solcConfig.path,
648
677
  },
649
678
  );
@@ -153,7 +153,6 @@ export class CompilerDownloaderImplementation implements CompilerDownloader {
153
153
  readonly #compilersDir: string;
154
154
  readonly #downloadFunction: typeof download;
155
155
 
156
- readonly #mutexCompiler = new MultiProcessMutex("compiler-download");
157
156
  readonly #mutexCompilerList = new MultiProcessMutex("compiler-download-list");
158
157
 
159
158
  /**
@@ -200,11 +199,14 @@ export class CompilerDownloaderImplementation implements CompilerDownloader {
200
199
  }
201
200
 
202
201
  public async downloadCompiler(version: string): Promise<boolean> {
203
- // Since only one process at a time can acquire the mutex, we avoid the risk of downloading the same compiler multiple times.
204
- // This is because the mutex blocks access until a compiler has been fully downloaded, preventing any new process
205
- // from checking whether that version of the compiler exists. Without mutex it might incorrectly
206
- // return false, indicating that the compiler isn't present, even though it is currently being downloaded.
207
- return this.#mutexCompiler.use(async () => {
202
+ // A per-version mutex ensures that only one process at a time can download a given compiler version,
203
+ // while still allowing different compiler versions to be downloaded in parallel.
204
+ // Without the mutex, a concurrent process might check whether a version exists, incorrectly
205
+ // find it missing (because another process is still downloading it), and start a redundant download.
206
+
207
+ const mutex = new MultiProcessMutex(`compiler-download-${version}`);
208
+
209
+ return mutex.use(async () => {
208
210
  const isCompilerDownloaded = await this.isCompilerDownloaded(version);
209
211
 
210
212
  if (isCompilerDownloaded === true) {
@@ -1,3 +1,25 @@
1
+ import os from "node:os";
2
+
3
+ import semver from "semver";
4
+
5
+ // The first solc version with official ARM64 Linux builds
6
+ export const FIRST_OFFICIAL_ARM64_SOLC_VERSION = "0.8.31";
7
+
8
+ /**
9
+ * Determines if a solc version has an official ARM64 Linux build.
10
+ */
11
+ export function hasOfficialArm64Build(version: string): boolean {
12
+ return semver.gte(version, FIRST_OFFICIAL_ARM64_SOLC_VERSION);
13
+ }
14
+
15
+ /**
16
+ * Returns true if running on a platform that doesn't have official native
17
+ * solc builds for all versions (currently ARM64 Linux before 0.8.31).
18
+ */
19
+ export function missesSomeOfficialNativeBuilds(): boolean {
20
+ return os.platform() === "linux" && os.arch() === "arm64";
21
+ }
22
+
1
23
  const defaultEvmTargets: { [key: string]: string } = {
2
24
  "0.5.1": "byzantium",
3
25
  "0.5.2": "byzantium",