hardhat 3.1.8 → 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 (26) hide show
  1. package/CHANGELOG.md +8 -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/compiler/downloader.d.ts.map +1 -1
  14. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.js +6 -6
  15. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.js.map +1 -1
  16. package/dist/src/internal/cli/telemetry/sentry/transport.js +1 -0
  17. package/dist/src/internal/cli/telemetry/sentry/transport.js.map +1 -1
  18. package/package.json +1 -1
  19. package/src/internal/builtin-plugins/coverage/hook-handlers/solidity.ts +6 -17
  20. package/src/internal/builtin-plugins/coverage/instrumentation.ts +52 -0
  21. package/src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.ts +2 -7
  22. package/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.ts +8 -6
  23. package/src/internal/cli/telemetry/sentry/transport.ts +1 -0
  24. package/templates/hardhat-3/01-node-test-runner-viem/package.json +1 -1
  25. package/templates/hardhat-3/02-mocha-ethers/package.json +2 -2
  26. package/templates/hardhat-3/03-minimal/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # hardhat
2
2
 
3
+ ## 3.1.9
4
+
5
+ ### Patch Changes
6
+
7
+ - 621d07e: Make the coverage work with versions of Solidity that aren't fully supported by EDR [#7982 ](https://github.com/NomicFoundation/hardhat/pull/7982)
8
+ - 3e39a06: Round average and median gas usage in the gas analytics output
9
+ - 78af2ed: Allow multiple parallel downloads of different compilers ([7946](https://github.com/NomicFoundation/hardhat/pull/7946)).
10
+
3
11
  ## 3.1.8
4
12
 
5
13
  ### Patch Changes
@@ -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;8BA0BvC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AAAxD,wBAuHG"}
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;8BAsBvC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AAAxD,wBAgHG"}
@@ -1,12 +1,11 @@
1
1
  import path from "node:path";
2
- import { addStatementCoverageInstrumentation, latestSupportedSolidityVersion, } from "@nomicfoundation/edr";
3
2
  import { assertHardhatInvariant, HardhatError, } from "@nomicfoundation/hardhat-errors";
4
3
  import { ensureError } from "@nomicfoundation/hardhat-utils/error";
5
4
  import { readUtf8File } from "@nomicfoundation/hardhat-utils/fs";
6
5
  import { findClosestPackageRoot } from "@nomicfoundation/hardhat-utils/package";
7
6
  import debug from "debug";
8
- import { satisfies } from "semver";
9
7
  import { CoverageManagerImplementation } from "../coverage-manager.js";
8
+ import { instrumentSolidityFileForCompilationJob } from "../instrumentation.js";
10
9
  const log = debug("hardhat:core:coverage:hook-handlers:solidity");
11
10
  const COVERAGE_LIBRARY_PATH = "__hardhat_coverage_library_a3e9cfe2-41b4-4a1f-ad9e-ac62dd82979e.sol";
12
11
  export default async () => ({
@@ -16,12 +15,12 @@ export default async () => ({
16
15
  const isTestSource = (await context.solidity.getScope(fsPath)) === "tests";
17
16
  if (context.globalOptions.coverage && !isTestSource) {
18
17
  try {
19
- const latestSupportedVersion = latestSupportedSolidityVersion();
20
- if (!satisfies(solcVersion, `<=${latestSupportedVersion}`)) {
21
- console.log(`Solidity version ${solcVersion} is not yet supported for coverage instrumentation. Hardhat will try the latest supported version ${latestSupportedVersion} instead.`);
22
- solcVersion = latestSupportedVersion;
23
- }
24
- const { source, metadata } = addStatementCoverageInstrumentation(fileContent, sourceName, solcVersion, COVERAGE_LIBRARY_PATH);
18
+ const { source, metadata } = instrumentSolidityFileForCompilationJob({
19
+ compilationJobSolcVersion: solcVersion,
20
+ sourceName,
21
+ fileContent,
22
+ coverageLibraryPath: COVERAGE_LIBRARY_PATH,
23
+ });
25
24
  // TODO: Remove this once EDR starts returning line information as part
26
25
  // of the metadata.
27
26
  let lineNumber = 1;
@@ -1 +1 @@
1
- {"version":3,"file":"solidity.js","sourceRoot":"","sources":["../../../../../../src/internal/builtin-plugins/coverage/hook-handlers/solidity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"solidity.js","sourceRoot":"","sources":["../../../../../../src/internal/builtin-plugins/coverage/hook-handlers/solidity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type { InstrumentationMetadata } from "@nomicfoundation/edr";
2
+ /**
3
+ * Instruments a solidity source file as part of a compilation job. i.e. the
4
+ * file is about to be compile as either a root file or a transitive dependency
5
+ * of one of the root files.
6
+ *
7
+ * @param compilationJobSolcVersion The solc version that the compilation job
8
+ * will use.
9
+ * @param sourceName The source name of the file, as present in the compilation
10
+ * job.
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
+ * @returns An object with the instrumented source and its metadata, and the
15
+ * solidity version used to instrument the sources.
16
+ */
17
+ export declare function instrumentSolidityFileForCompilationJob({ compilationJobSolcVersion, sourceName, fileContent, coverageLibraryPath, }: {
18
+ compilationJobSolcVersion: string;
19
+ sourceName: string;
20
+ fileContent: string;
21
+ coverageLibraryPath: string;
22
+ }): {
23
+ source: string;
24
+ metadata: InstrumentationMetadata[];
25
+ instrumentationVersion: string;
26
+ };
27
+ //# sourceMappingURL=instrumentation.d.ts.map
@@ -0,0 +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;AAQpE;;;;;;;;;;;;;;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,CAcA"}
@@ -0,0 +1,27 @@
1
+ import { addStatementCoverageInstrumentation, latestSupportedSolidityVersion, } from "@nomicfoundation/edr";
2
+ import { satisfies } from "semver";
3
+ /**
4
+ * Instruments a solidity source file as part of a compilation job. i.e. the
5
+ * file is about to be compile as either a root file or a transitive dependency
6
+ * of one of the root files.
7
+ *
8
+ * @param compilationJobSolcVersion The solc version that the compilation job
9
+ * will use.
10
+ * @param sourceName The source name of the file, as present in the compilation
11
+ * job.
12
+ * @param fileContent The contents of the file.
13
+ * @param coverageLibraryPath The path to the coverage library. i.e. where to
14
+ * import it from.
15
+ * @returns An object with the instrumented source and its metadata, and the
16
+ * solidity version used to instrument the sources.
17
+ */
18
+ export function instrumentSolidityFileForCompilationJob({ compilationJobSolcVersion, sourceName, fileContent, coverageLibraryPath, }) {
19
+ const latestSupportedVersion = latestSupportedSolidityVersion();
20
+ let instrumentationVersion = compilationJobSolcVersion;
21
+ if (!satisfies(instrumentationVersion, `<=${latestSupportedVersion}`)) {
22
+ instrumentationVersion = latestSupportedVersion;
23
+ }
24
+ const { source, metadata } = addStatementCoverageInstrumentation(fileContent, sourceName, instrumentationVersion, coverageLibraryPath);
25
+ return { source, metadata, instrumentationVersion };
26
+ }
27
+ //# sourceMappingURL=instrumentation.js.map
@@ -0,0 +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,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,uCAAuC,CAAC,EACtD,yBAAyB,EACzB,UAAU,EACV,WAAW,EACX,mBAAmB,GAMpB;IAKC,MAAM,sBAAsB,GAAG,8BAA8B,EAAE,CAAC;IAChE,IAAI,sBAAsB,GAAG,yBAAyB,CAAC;IACvD,IAAI,CAAC,SAAS,CAAC,sBAAsB,EAAE,KAAK,sBAAsB,EAAE,CAAC,EAAE,CAAC;QACtE,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"}
@@ -54,6 +54,5 @@ export declare function median(values: number[]): number;
54
54
  export declare function getUserFqn(inputFqn: string): string;
55
55
  export declare function getFunctionName(signature: string): string;
56
56
  export declare function findDuplicates<T>(arr: T[]): T[];
57
- export declare function roundTo(value: number, decimals: number): number;
58
57
  export {};
59
58
  //# sourceMappingURL=gas-analytics-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gas-analytics-manager.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAqBtE,UAAU,gBAAgB;IACxB,UAAU,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,SAAS,EAAE,GAAG,CACZ,MAAM,EAAE,6CAA6C;IACrD,QAAQ,CACT,CAAC;CACH;AAED,KAAK,kBAAkB,GAAG,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;AAExD,UAAU,QAAQ;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,KAAK,yBAAyB,GAAG,GAAG,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;AAEtE,UAAU,uBAAuB;IAC/B,UAAU,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,SAAS,EAAE,GAAG,CACZ,MAAM,EAAE,cAAc;IACtB,MAAM,EAAE,CACT,CAAC;CACH;AAED,qBAAa,iCAAkC,YAAW,mBAAmB;;IACpE,eAAe,EAAE,cAAc,EAAE,CAAM;gBAGlC,gBAAgB,EAAE,MAAM;IAI7B,iBAAiB,CAAC,cAAc,EAAE,cAAc,GAAG,IAAI;IAIjD,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/C,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAU9C,cAAc,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB5D;;OAEG;IACU,oBAAoB,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAelE;;OAEG;IACI,kBAAkB,IAAI,kBAAkB;IA4C/C;;OAEG;IACI,yBAAyB,IAAI,yBAAyB;IAyC7D;;OAEG;IACI,uBAAuB,CAC5B,kBAAkB,EAAE,kBAAkB,GACrC,MAAM;CAyEV;AAED,wBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAE5C;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAO/C;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAgBnD;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAa/C;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAG/D"}
1
+ {"version":3,"file":"gas-analytics-manager.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAqBtE,UAAU,gBAAgB;IACxB,UAAU,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,SAAS,EAAE,GAAG,CACZ,MAAM,EAAE,6CAA6C;IACrD,QAAQ,CACT,CAAC;CACH;AAED,KAAK,kBAAkB,GAAG,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;AAExD,UAAU,QAAQ;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,KAAK,yBAAyB,GAAG,GAAG,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;AAEtE,UAAU,uBAAuB;IAC/B,UAAU,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,SAAS,EAAE,GAAG,CACZ,MAAM,EAAE,cAAc;IACtB,MAAM,EAAE,CACT,CAAC;CACH;AAED,qBAAa,iCAAkC,YAAW,mBAAmB;;IACpE,eAAe,EAAE,cAAc,EAAE,CAAM;gBAGlC,gBAAgB,EAAE,MAAM;IAI7B,iBAAiB,CAAC,cAAc,EAAE,cAAc,GAAG,IAAI;IAIjD,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/C,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAU9C,cAAc,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB5D;;OAEG;IACU,oBAAoB,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAelE;;OAEG;IACI,kBAAkB,IAAI,kBAAkB;IA4C/C;;OAEG;IACI,yBAAyB,IAAI,yBAAyB;IAyC7D;;OAEG;IACI,uBAAuB,CAC5B,kBAAkB,EAAE,kBAAkB,GACrC,MAAM;CAyEV;AAED,wBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAE5C;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAO/C;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAgBnD;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAa/C"}
@@ -79,8 +79,8 @@ export class GasAnalyticsManagerImplementation {
79
79
  const stats = {
80
80
  min: Math.min(...gasValues),
81
81
  max: Math.max(...gasValues),
82
- avg: roundTo(avg(gasValues), 2),
83
- median: roundTo(median(gasValues), 2),
82
+ avg: Math.round(avg(gasValues)),
83
+ median: Math.round(median(gasValues)),
84
84
  calls: gasValues.length,
85
85
  };
86
86
  contractGasStats.functions.set(isOverloaded ? functionSig : functionName, stats);
@@ -223,8 +223,4 @@ export function findDuplicates(arr) {
223
223
  }
224
224
  return [...duplicates];
225
225
  }
226
- export function roundTo(value, decimals) {
227
- const factor = 10 ** decimals;
228
- return Math.round(value * factor) / factor;
229
- }
230
226
  //# sourceMappingURL=gas-analytics-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gas-analytics-manager.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gas-analytics-manager.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/gas-analytics/gas-analytics-manager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"downloader.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/builtin-plugins/solidity/build-system/compiler/downloader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yCAAyC,CAAC;AAyBxE,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAiBlE,oBAAY,gBAAgB;IAC1B,KAAK,gBAAgB;IACrB,WAAW,gBAAgB;IAC3B,OAAO,kBAAkB;IACzB,KAAK,iBAAiB;IACtB,IAAI,SAAS;CACd;AAiBD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,0BAA0B,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjE;;;;OAIG;IACH,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAExD;;;;;;OAMG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpD;;;;;;OAMG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC;CAC7D;AAED;;GAEG;AACH,qBAAa,gCAAiC,YAAW,kBAAkB;;WAC3D,mBAAmB,IAAI,gBAAgB;IAoCrD;;OAEG;gBAED,QAAQ,EAAE,gBAAgB,EAC1B,YAAY,EAAE,MAAM,EACpB,gBAAgB,GAAE,OAAO,QAAmB;IAOjC,0BAA0B,CACrC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,GACpB,OAAO,CAAC,IAAI,CAAC;IAoBH,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQvD,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyCnD,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;CAwQzE"}
1
+ {"version":3,"file":"downloader.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/builtin-plugins/solidity/build-system/compiler/downloader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yCAAyC,CAAC;AAyBxE,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAiBlE,oBAAY,gBAAgB;IAC1B,KAAK,gBAAgB;IACrB,WAAW,gBAAgB;IAC3B,OAAO,kBAAkB;IACzB,KAAK,iBAAiB;IACtB,IAAI,SAAS;CACd;AAiBD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,0BAA0B,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjE;;;;OAIG;IACH,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAExD;;;;;;OAMG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpD;;;;;;OAMG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC;CAC7D;AAED;;GAEG;AACH,qBAAa,gCAAiC,YAAW,kBAAkB;;WAC3D,mBAAmB,IAAI,gBAAgB;IAmCrD;;OAEG;gBAED,QAAQ,EAAE,gBAAgB,EAC1B,YAAY,EAAE,MAAM,EACpB,gBAAgB,GAAE,OAAO,QAAmB;IAOjC,0BAA0B,CACrC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,GACpB,OAAO,CAAC,IAAI,CAAC;IAoBH,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQvD,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA4CnD,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;CAwQzE"}
@@ -62,7 +62,6 @@ export class CompilerDownloaderImplementation {
62
62
  #platform;
63
63
  #compilersDir;
64
64
  #downloadFunction;
65
- #mutexCompiler = new MultiProcessMutex("compiler-download");
66
65
  #mutexCompilerList = new MultiProcessMutex("compiler-download-list");
67
66
  /**
68
67
  * Use CompilerDownloader.getConcurrencySafeDownloader instead
@@ -92,11 +91,12 @@ export class CompilerDownloaderImplementation {
92
91
  return exists(downloadPath);
93
92
  }
94
93
  async downloadCompiler(version) {
95
- // Since only one process at a time can acquire the mutex, we avoid the risk of downloading the same compiler multiple times.
96
- // This is because the mutex blocks access until a compiler has been fully downloaded, preventing any new process
97
- // from checking whether that version of the compiler exists. Without mutex it might incorrectly
98
- // return false, indicating that the compiler isn't present, even though it is currently being downloaded.
99
- return this.#mutexCompiler.use(async () => {
94
+ // A per-version mutex ensures that only one process at a time can download a given compiler version,
95
+ // while still allowing different compiler versions to be downloaded in parallel.
96
+ // Without the mutex, a concurrent process might check whether a version exists, incorrectly
97
+ // find it missing (because another process is still downloading it), and start a redundant download.
98
+ const mutex = new MultiProcessMutex(`compiler-download-${version}`);
99
+ return mutex.use(async () => {
100
100
  const isCompilerDownloaded = await this.isCompilerDownloaded(version);
101
101
  if (isCompilerDownloaded === true) {
102
102
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"downloader.js","sourceRoot":"","sources":["../../../../../../../src/internal/builtin-plugins/solidity/build-system/compiler/downloader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"downloader.js","sourceRoot":"","sources":["../../../../../../../src/internal/builtin-plugins/solidity/build-system/compiler/downloader.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.8",
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": {
@@ -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
- }
@@ -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) {
@@ -177,6 +177,7 @@ async function sendSerializedEnvelopeToSentryBackend(
177
177
  .filter(Boolean)
178
178
  .join(", ");
179
179
 
180
+ // eslint-disable-next-line no-restricted-globals -- TODO: determine whether this should be using undici
180
181
  const res = await fetch(ingestUrl, {
181
182
  method: "POST",
182
183
  headers: {
@@ -5,7 +5,7 @@
5
5
  "description": "A TypeScript Hardhat project using Node Test Runner and Viem",
6
6
  "type": "module",
7
7
  "devDependencies": {
8
- "hardhat": "workspace:^3.1.8",
8
+ "hardhat": "workspace:^3.1.9",
9
9
  "@nomicfoundation/hardhat-toolbox-viem": "workspace:^5.0.2",
10
10
  "@nomicfoundation/hardhat-ignition": "workspace:^3.0.7",
11
11
  "@types/node": "^22.8.5",
@@ -5,7 +5,7 @@
5
5
  "description": "A TypeScript Hardhat project using Mocha and Ethers.js",
6
6
  "type": "module",
7
7
  "devDependencies": {
8
- "hardhat": "workspace:^3.1.8",
8
+ "hardhat": "workspace:^3.1.9",
9
9
  "@nomicfoundation/hardhat-toolbox-mocha-ethers": "workspace:^3.0.2",
10
10
  "@nomicfoundation/hardhat-ethers": "workspace:^4.0.4",
11
11
  "@nomicfoundation/hardhat-ignition": "workspace:^3.0.7",
@@ -25,7 +25,7 @@
25
25
  "@nomicfoundation/hardhat-ignition": "workspace:^3.0.7",
26
26
  "@nomicfoundation/hardhat-ignition-ethers": "workspace:^3.0.7",
27
27
  "@nomicfoundation/hardhat-keystore": "workspace:^3.0.4",
28
- "@nomicfoundation/hardhat-mocha": "workspace:^3.0.9",
28
+ "@nomicfoundation/hardhat-mocha": "workspace:^3.0.10",
29
29
  "@nomicfoundation/hardhat-network-helpers": "workspace:^3.0.3",
30
30
  "@nomicfoundation/hardhat-typechain": "workspace:^3.0.2",
31
31
  "@nomicfoundation/hardhat-verify": "workspace:^3.0.10",
@@ -5,7 +5,7 @@
5
5
  "description": "A minimal Hardhat project",
6
6
  "type": "module",
7
7
  "devDependencies": {
8
- "hardhat": "workspace:^3.1.8",
8
+ "hardhat": "workspace:^3.1.9",
9
9
  "@types/node": "^22.8.5",
10
10
  "typescript": "~5.8.0"
11
11
  }