hardhat 3.14.0 → 3.15.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 (66) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/src/internal/builtin-plugins/solidity/type-extensions.d.ts +2 -2
  3. package/dist/src/internal/builtin-plugins/solidity-test/edr-artifacts.d.ts.map +1 -1
  4. package/dist/src/internal/builtin-plugins/solidity-test/edr-artifacts.js +1 -1
  5. package/dist/src/internal/builtin-plugins/solidity-test/edr-artifacts.js.map +1 -1
  6. package/dist/src/internal/builtin-plugins/solidity-test/formatters.d.ts +6 -1
  7. package/dist/src/internal/builtin-plugins/solidity-test/formatters.d.ts.map +1 -1
  8. package/dist/src/internal/builtin-plugins/solidity-test/formatters.js +41 -0
  9. package/dist/src/internal/builtin-plugins/solidity-test/formatters.js.map +1 -1
  10. package/dist/src/internal/builtin-plugins/solidity-test/helpers.d.ts +16 -3
  11. package/dist/src/internal/builtin-plugins/solidity-test/helpers.d.ts.map +1 -1
  12. package/dist/src/internal/builtin-plugins/solidity-test/helpers.js +45 -2
  13. package/dist/src/internal/builtin-plugins/solidity-test/helpers.js.map +1 -1
  14. package/dist/src/internal/builtin-plugins/solidity-test/runner.d.ts.map +1 -1
  15. package/dist/src/internal/builtin-plugins/solidity-test/runner.js +18 -1
  16. package/dist/src/internal/builtin-plugins/solidity-test/runner.js.map +1 -1
  17. package/dist/src/internal/builtin-plugins/solidity-test/task-action.d.ts.map +1 -1
  18. package/dist/src/internal/builtin-plugins/solidity-test/task-action.js +15 -16
  19. package/dist/src/internal/builtin-plugins/solidity-test/task-action.js.map +1 -1
  20. package/package.json +2 -2
  21. package/src/internal/builtin-plugins/solidity/type-extensions.ts +2 -2
  22. package/src/internal/builtin-plugins/solidity-test/edr-artifacts.ts +1 -1
  23. package/src/internal/builtin-plugins/solidity-test/formatters.ts +60 -1
  24. package/src/internal/builtin-plugins/solidity-test/helpers.ts +56 -4
  25. package/src/internal/builtin-plugins/solidity-test/runner.ts +33 -1
  26. package/src/internal/builtin-plugins/solidity-test/task-action.ts +20 -20
  27. package/templates/01-node-test-runner-viem/contracts/Counter.sol +1 -1
  28. package/templates/01-node-test-runner-viem/contracts/Counter.t.sol +1 -1
  29. package/templates/01-node-test-runner-viem/hardhat.config.ts +2 -2
  30. package/templates/01-node-test-runner-viem/package.json +2 -2
  31. package/templates/02-mocha-ethers/contracts/Counter.sol +1 -1
  32. package/templates/02-mocha-ethers/contracts/Counter.t.sol +1 -1
  33. package/templates/02-mocha-ethers/hardhat.config.ts +2 -2
  34. package/templates/02-mocha-ethers/package.json +2 -2
  35. package/templates/03-minimal/hardhat.config.ts +1 -1
  36. package/templates/03-minimal/package.json +1 -1
  37. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/constants.d.ts +0 -9
  38. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/constants.d.ts.map +0 -1
  39. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/constants.js +0 -24
  40. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/constants.js.map +0 -1
  41. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/helpers.d.ts +0 -24
  42. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/helpers.d.ts.map +0 -1
  43. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/helpers.js +0 -80
  44. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/helpers.js.map +0 -1
  45. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/index.d.ts +0 -13
  46. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/index.d.ts.map +0 -1
  47. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/index.js +0 -146
  48. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/index.js.map +0 -1
  49. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/parsing.d.ts +0 -19
  50. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/parsing.d.ts.map +0 -1
  51. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/parsing.js +0 -134
  52. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/parsing.js.map +0 -1
  53. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/types.d.ts +0 -10
  54. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/types.d.ts.map +0 -1
  55. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/types.js +0 -2
  56. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/types.js.map +0 -1
  57. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/validation.d.ts +0 -13
  58. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/validation.d.ts.map +0 -1
  59. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/validation.js +0 -96
  60. package/dist/src/internal/builtin-plugins/solidity-test/inline-config/validation.js.map +0 -1
  61. package/src/internal/builtin-plugins/solidity-test/inline-config/constants.ts +0 -25
  62. package/src/internal/builtin-plugins/solidity-test/inline-config/helpers.ts +0 -110
  63. package/src/internal/builtin-plugins/solidity-test/inline-config/index.ts +0 -285
  64. package/src/internal/builtin-plugins/solidity-test/inline-config/parsing.ts +0 -187
  65. package/src/internal/builtin-plugins/solidity-test/inline-config/types.ts +0 -9
  66. package/src/internal/builtin-plugins/solidity-test/inline-config/validation.ts +0 -144
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # hardhat
2
2
 
3
+ ## 3.15.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#8457](https://github.com/NomicFoundation/hardhat/pull/8457) [`48286e0`](https://github.com/NomicFoundation/hardhat/commit/48286e0a69b49d814689073ce9897ac1b007ac19) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Improve compilation speed for Solidity test runs by porting inline configuration parsing to Rust.
8
+
9
+ - [#8541](https://github.com/NomicFoundation/hardhat/pull/8541) [`ec737a2`](https://github.com/NomicFoundation/hardhat/commit/ec737a2894162b4e59aa22dc95518deba4027003) Thanks [@kanej](https://github.com/kanej)! - The project templates have been updated to Solidity 0.8.34 and forge-std v1.16.2.
10
+
11
+ ### Patch Changes
12
+
13
+ - [#8578](https://github.com/NomicFoundation/hardhat/pull/8578) [`d88f769`](https://github.com/NomicFoundation/hardhat/commit/d88f76989e90987a5e454c23f0c5f3fa2e07af6d) Thanks [@kanej](https://github.com/kanej)! - Support hyphens in compiler type names.
14
+
3
15
  ## 3.14.0
4
16
 
5
17
  ### Minor Changes
@@ -9,7 +9,7 @@ declare module "../../../types/config.js" {
9
9
  * The types of the values don't matter; we use `true` as a convention.
10
10
  *
11
11
  * By default, only "solc" is provided. Plugins can extend this via
12
- * declaration merging to add new compiler types (e.g. "slangSolx").
12
+ * declaration merging to add new compiler types (e.g. "slang-solx").
13
13
  */
14
14
  interface SolidityCompilerTypeDefinitions {
15
15
  solc: true;
@@ -266,7 +266,7 @@ declare module "../../../types/hooks.js" {
266
266
  /**
267
267
  * Hook to obtain a Compiler instance for a given compiler configuration.
268
268
  * The default handler returns a solc compiler. Plugins can intercept to
269
- * return their own compiler (e.g. SlangSolxCompiler for type: "slangSolx").
269
+ * return their own compiler (e.g. SlangSolxCompiler for type: "slang-solx").
270
270
  *
271
271
  * @param context The hook context.
272
272
  * @param compilerConfig The compiler configuration to get a compiler for.
@@ -1 +1 @@
1
- {"version":3,"file":"edr-artifacts.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/edr-artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAY,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,KAAK,EACV,kBAAkB,IAAI,qBAAqB,EAC3C,QAAQ,IAAI,WAAW,EACxB,MAAM,sBAAsB,CAAC;AAK9B,MAAM,WAAW,kBAAmB,SAAQ,qBAAqB;IAC/D,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,iBAAiB,EAAE,MAC4E,CAAC;AAE7G;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAiC/B;AAED;;;;;GAKG;AACH,wBAAsB,6BAA6B,CACjD,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAwFpC"}
1
+ {"version":3,"file":"edr-artifacts.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/edr-artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAY,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,KAAK,EACV,kBAAkB,IAAI,qBAAqB,EAC3C,QAAQ,IAAI,WAAW,EACxB,MAAM,sBAAsB,CAAC;AAK9B,MAAM,WAAW,kBAAmB,SAAQ,qBAAqB;IAC/D,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,iBAAiB,EAAE,MAC6E,CAAC;AAE9G;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAiC/B;AAED;;;;;GAKG;AACH,wBAAsB,6BAA6B,CACjD,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAwFpC"}
@@ -1,6 +1,6 @@
1
1
  import { assertHardhatInvariant } from "@nomicfoundation/hardhat-errors";
2
2
  import { readBinaryFile } from "@nomicfoundation/hardhat-utils/fs";
3
- export const BUILD_INFO_FORMAT = /^solc-(?<major>\d+)_(?<minor>\d+)_(?<patch>\d+)(?:-(?<compilerType>[a-zA-Z][a-zA-Z0-9]*))?-[0-9a-fA-F]*$/;
3
+ export const BUILD_INFO_FORMAT = /^solc-(?<major>\d+)_(?<minor>\d+)_(?<patch>\d+)(?:-(?<compilerType>[a-zA-Z][a-zA-Z0-9-]*))?-[0-9a-fA-F]*$/;
4
4
  /**
5
5
  * This function returns all the build infos and associated outputs.
6
6
  *
@@ -1 +1 @@
1
- {"version":3,"file":"edr-artifacts.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/edr-artifacts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"edr-artifacts.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/edr-artifacts.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,8 @@
1
- import type { ArtifactId } from "@nomicfoundation/edr";
1
+ import type { ArtifactId, InlineConfigError } from "@nomicfoundation/edr";
2
2
  export declare function formatArtifactId(artifactId: ArtifactId, sourceNameToUserSourceName: Map<string, string>): string;
3
+ /**
4
+ * Formats the inline test configuration problems that EDR reports, one per
5
+ * line, each located at the user-facing path of the source it was found in.
6
+ */
7
+ export declare function formatInlineConfigErrors(errors: InlineConfigError[], sourceNameToUserSourceName: Map<string, string>): string;
3
8
  //# sourceMappingURL=formatters.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"formatters.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/formatters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,UAAU,EACtB,0BAA0B,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9C,MAAM,CAKR"}
1
+ {"version":3,"file":"formatters.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/formatters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAEV,iBAAiB,EAElB,MAAM,sBAAsB,CAAC;AAE9B,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,UAAU,EACtB,0BAA0B,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9C,MAAM,CAKR;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,iBAAiB,EAAE,EAC3B,0BAA0B,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9C,MAAM,CAaR"}
@@ -2,4 +2,45 @@ export function formatArtifactId(artifactId, sourceNameToUserSourceName) {
2
2
  const sourceName = sourceNameToUserSourceName.get(artifactId.source) ?? artifactId.source;
3
3
  return `${sourceName}:${artifactId.name}`;
4
4
  }
5
+ /**
6
+ * Formats the inline test configuration problems that EDR reports, one per
7
+ * line, each located at the user-facing path of the source it was found in.
8
+ */
9
+ export function formatInlineConfigErrors(errors, sourceNameToUserSourceName) {
10
+ return errors
11
+ .map((error) => {
12
+ const sourceName = sourceNameToUserSourceName.get(error.sourceName) ?? error.sourceName;
13
+ if (error.kind === "source") {
14
+ return `- ${sourceName}: ${formatInlineConfigSourceProblem(error.problem)}`;
15
+ }
16
+ return `- ${sourceName}:${error.line}: ${error.contract}.${error.function}: ${formatInlineConfigDirectiveProblem(error.problem)}`;
17
+ })
18
+ .join("\n");
19
+ }
20
+ function formatInlineConfigDirectiveProblem(problem) {
21
+ switch (problem.kind) {
22
+ case "InlineConfigInvalidSyntax":
23
+ return `missing "=" in "${problem.directive}"`;
24
+ case "InlineConfigUnsupportedProfile":
25
+ return `unsupported profile "${problem.profile}". Only the "default" profile is supported`;
26
+ case "InlineConfigInvalidKey":
27
+ return `invalid key "${problem.key}"`;
28
+ case "InlineConfigInvalidKeyForTestType":
29
+ return `key "${problem.key}" is not valid for ${problem.testType} tests`;
30
+ case "InlineConfigInvalidValue":
31
+ return `invalid value "${problem.value}" for key "${problem.key}". Expected a ${problem.expected}`;
32
+ case "InlineConfigDuplicateKey":
33
+ return `duplicate key "${problem.key}"`;
34
+ }
35
+ }
36
+ function formatInlineConfigSourceProblem(problem) {
37
+ switch (problem.kind) {
38
+ case "InlineConfigInvalidSolcVersion":
39
+ return "the Solidity version of this source is not supported by the inline configuration parser";
40
+ case "InlineConfigSourceFileNotFound":
41
+ return `the source file could not be read at "${problem.path}": ${problem.reason}`;
42
+ case "InlineConfigDirectiveLocation":
43
+ return `a directive of ${problem.contract}.${problem.function} could not be located: ${problem.reason}`;
44
+ }
45
+ }
5
46
  //# sourceMappingURL=formatters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/formatters.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB,CAC9B,UAAsB,EACtB,0BAA+C;IAE/C,MAAM,UAAU,GACd,0BAA0B,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC;IAEzE,OAAO,GAAG,UAAU,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;AAC5C,CAAC"}
1
+ {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/formatters.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,gBAAgB,CAC9B,UAAsB,EACtB,0BAA+C;IAE/C,MAAM,UAAU,GACd,0BAA0B,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC;IAEzE,OAAO,GAAG,UAAU,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;AAC5C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CACtC,MAA2B,EAC3B,0BAA+C;IAE/C,OAAO,MAAM;SACV,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACb,MAAM,UAAU,GACd,0BAA0B,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC;QAEvE,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,KAAK,UAAU,KAAK,+BAA+B,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9E,CAAC;QAED,OAAO,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,KAAK,kCAAkC,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;IACpI,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,kCAAkC,CACzC,OAAqC;IAErC,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,2BAA2B;YAC9B,OAAO,mBAAmB,OAAO,CAAC,SAAS,GAAG,CAAC;QACjD,KAAK,gCAAgC;YACnC,OAAO,wBAAwB,OAAO,CAAC,OAAO,4CAA4C,CAAC;QAC7F,KAAK,wBAAwB;YAC3B,OAAO,gBAAgB,OAAO,CAAC,GAAG,GAAG,CAAC;QACxC,KAAK,mCAAmC;YACtC,OAAO,QAAQ,OAAO,CAAC,GAAG,sBAAsB,OAAO,CAAC,QAAQ,QAAQ,CAAC;QAC3E,KAAK,0BAA0B;YAC7B,OAAO,kBAAkB,OAAO,CAAC,KAAK,cAAc,OAAO,CAAC,GAAG,iBAAiB,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrG,KAAK,0BAA0B;YAC7B,OAAO,kBAAkB,OAAO,CAAC,GAAG,GAAG,CAAC;IAC5C,CAAC;AACH,CAAC;AAED,SAAS,+BAA+B,CACtC,OAAkC;IAElC,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,gCAAgC;YACnC,OAAO,yFAAyF,CAAC;QACnG,KAAK,gCAAgC;YACnC,OAAO,yCAAyC,OAAO,CAAC,IAAI,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;QACrF,KAAK,+BAA+B;YAClC,OAAO,kBAAkB,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,0BAA0B,OAAO,CAAC,MAAM,EAAE,CAAC;IAC5G,CAAC;AACH,CAAC"}
@@ -1,6 +1,8 @@
1
+ import type { TestsStream } from "./types.js";
1
2
  import type { ChainType } from "../../../types/network.js";
2
3
  import type { SolidityTestProfileConfig } from "../../../types/test.js";
3
- import type { SolidityTestRunnerConfigArgs, Artifact, ObservabilityConfig, TestFunctionOverride } from "@nomicfoundation/edr";
4
+ import type { SolidityTestRunnerConfigArgs, Artifact, ObservabilityConfig } from "@nomicfoundation/edr";
5
+ import type { Writable } from "node:stream";
4
6
  interface SolidityTestConfigParams {
5
7
  chainType: ChainType;
6
8
  projectRoot: string;
@@ -11,11 +13,22 @@ interface SolidityTestConfigParams {
11
13
  testPattern?: string;
12
14
  excludeTestPattern?: string;
13
15
  generateGasReport: boolean;
14
- testFunctionOverrides?: TestFunctionOverride[];
15
16
  eip712CanonicalTypes?: string[];
17
+ testSourcePaths?: Record<string, string>;
16
18
  }
17
- export declare function solidityTestConfigToSolidityTestRunnerConfigArgs({ chainType, projectRoot, hardfork, config, verbosity, observability, testPattern, excludeTestPattern, generateGasReport, testFunctionOverrides, eip712CanonicalTypes, }: SolidityTestConfigParams): Promise<SolidityTestRunnerConfigArgs>;
19
+ export declare function solidityTestConfigToSolidityTestRunnerConfigArgs({ chainType, projectRoot, hardfork, config, verbosity, observability, testPattern, excludeTestPattern, generateGasReport, eip712CanonicalTypes, testSourcePaths, }: SolidityTestConfigParams): Promise<SolidityTestRunnerConfigArgs>;
18
20
  export declare function isTestSuiteArtifact(artifact: Artifact): boolean;
21
+ /**
22
+ * Writes the test reporter's output to `output` and waits for the test run to
23
+ * complete, returning the error that failed it, if any.
24
+ *
25
+ * @param runStream The runner's stream of test events.
26
+ * @param reporterStream The reporter's stream of output, composed from
27
+ * `runStream`.
28
+ * @param output Where the reporter's output is written to.
29
+ * @returns The error that failed the run, or `undefined` if it succeeded.
30
+ */
31
+ export declare function writeTestRunOutput(runStream: TestsStream, reporterStream: NodeJS.ReadableStream, output: Writable): Promise<unknown>;
19
32
  export declare function warnDeprecatedTestFail(artifact: Artifact, sourceNameToUserSourceName: Map<string, string>): void;
20
33
  export {};
21
34
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/helpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,KAAK,EACV,4BAA4B,EAE5B,QAAQ,EACR,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AA0B9B,UAAU,wBAAwB;IAChC,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,IAAI,CAAC,yBAAyB,EAAE,aAAa,CAAC,CAAC;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,qBAAqB,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAC/C,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;CACjC;AAED,wBAAsB,gDAAgD,CAAC,EACrE,SAAS,EACT,WAAW,EACX,QAAQ,EACR,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,GACrB,EAAE,wBAAwB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAmHlE;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAgB/D;AAED,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,QAAQ,EAClB,0BAA0B,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9C,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,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,KAAK,EACV,4BAA4B,EAE5B,QAAQ,EACR,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA2B5C,UAAU,wBAAwB;IAChC,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,IAAI,CAAC,yBAAyB,EAAE,aAAa,CAAC,CAAC;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1C;AAED,wBAAsB,gDAAgD,CAAC,EACrE,SAAS,EACT,WAAW,EACX,QAAQ,EACR,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,GAChB,EAAE,wBAAwB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAmHlE;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAgB/D;AAED;;;;;;;;;GASG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,WAAW,EACtB,cAAc,EAAE,MAAM,CAAC,cAAc,EACrC,MAAM,EAAE,QAAQ,GACf,OAAO,CAAC,OAAO,CAAC,CAkClB;AAED,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,QAAQ,EAClB,0BAA0B,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9C,IAAI,CAkBN"}
@@ -1,3 +1,4 @@
1
+ import { finished } from "node:stream/promises";
1
2
  import { styleText } from "node:util";
2
3
  import { opGenesisState, l1GenesisState, FsAccessPermission, CollectStackTraces, opHardforkFromString, l1HardforkFromString, } from "@nomicfoundation/edr";
3
4
  import { toBigInt } from "@nomicfoundation/hardhat-utils/bigint";
@@ -8,7 +9,7 @@ import { hardhatHardforkToEdrSpecId } from "../network-manager/edr/utils/convert
8
9
  import { warnIfExperimentalHardfork } from "../network-manager/edr/utils/hardfork.js";
9
10
  import { verbosityToIncludeTraces } from "../network-manager/edr/utils/trace-formatters.js";
10
11
  import { formatArtifactId } from "./formatters.js";
11
- export async function solidityTestConfigToSolidityTestRunnerConfigArgs({ chainType, projectRoot, hardfork, config, verbosity, observability, testPattern, excludeTestPattern, generateGasReport, testFunctionOverrides, eip712CanonicalTypes, }) {
12
+ export async function solidityTestConfigToSolidityTestRunnerConfigArgs({ chainType, projectRoot, hardfork, config, verbosity, observability, testPattern, excludeTestPattern, generateGasReport, eip712CanonicalTypes, testSourcePaths, }) {
12
13
  const fsPermissions = [
13
14
  config.fsPermissions?.readWriteFile?.map((p) => ({
14
15
  access: FsAccessPermission.ReadWriteFile,
@@ -95,8 +96,8 @@ export async function solidityTestConfigToSolidityTestRunnerConfigArgs({ chainTy
95
96
  collectStackTraces: shouldAlwaysCollectStackTraces
96
97
  ? CollectStackTraces.Always
97
98
  : CollectStackTraces.OnFailure,
98
- testFunctionOverrides,
99
99
  eip712CanonicalTypes,
100
+ testSourcePaths,
100
101
  };
101
102
  }
102
103
  export function isTestSuiteArtifact(artifact) {
@@ -113,6 +114,48 @@ export function isTestSuiteArtifact(artifact) {
113
114
  return false;
114
115
  });
115
116
  }
117
+ /**
118
+ * Writes the test reporter's output to `output` and waits for the test run to
119
+ * complete, returning the error that failed it, if any.
120
+ *
121
+ * @param runStream The runner's stream of test events.
122
+ * @param reporterStream The reporter's stream of output, composed from
123
+ * `runStream`.
124
+ * @param output Where the reporter's output is written to.
125
+ * @returns The error that failed the run, or `undefined` if it succeeded.
126
+ */
127
+ export async function writeTestRunOutput(runStream, reporterStream, output) {
128
+ const outputStream = reporterStream.pipe(output);
129
+ // When the runner reports an error it destroys the run stream with it, which
130
+ // also destroys the reporter stream composed from it. `pipe()` neither
131
+ // forwards that error to the output stream nor ends it, so without this
132
+ // listener the reporter stream emits an `error` event with nothing listening,
133
+ // crashing the process, and `finished(outputStream)` below never settles.
134
+ // Attached before any `await` so that it can't miss the event.
135
+ let reporterStreamError;
136
+ reporterStream.on("error", (error) => {
137
+ reporterStreamError = error;
138
+ if (!outputStream.writableEnded) {
139
+ outputStream.end();
140
+ }
141
+ });
142
+ let runError;
143
+ try {
144
+ // NOTE: We're awaiting the original run stream to finish to catch any
145
+ // errors produced by the runner.
146
+ await finished(runStream);
147
+ // We also await the output stream to finish, as we want to wait for it
148
+ // to avoid returning before the whole output was generated.
149
+ await finished(outputStream);
150
+ }
151
+ catch (error) {
152
+ runError = error;
153
+ }
154
+ // Neither await above surfaces an error that reached the reporter stream
155
+ // without failing the run stream, e.g. one thrown by the reporter after the
156
+ // run stream already ended.
157
+ return runError ?? reporterStreamError;
158
+ }
116
159
  export function warnDeprecatedTestFail(artifact, sourceNameToUserSourceName) {
117
160
  const abi = JSON.parse(artifact.contract.abi);
118
161
  abi.forEach(({ type, name }) => {
@@ -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":"runner.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,KAAK,EACV,UAAU,EACV,QAAQ,EACR,4BAA4B,EAC5B,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAY9B;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,GAAG,CACjB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,QAAQ,EAAE,EACrB,YAAY,EAAE,UAAU,EAAE,EAC1B,gBAAgB,EAAE,4BAA4B,EAC9C,aAAa,EAAE,wBAAwB,EACvC,0BAA0B,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9C,WAAW,CAyEb"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,KAAK,EACV,UAAU,EACV,QAAQ,EAER,4BAA4B,EAC5B,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAY9B;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,GAAG,CACjB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,QAAQ,EAAE,EACrB,YAAY,EAAE,UAAU,EAAE,EAC1B,gBAAgB,EAAE,4BAA4B,EAC9C,aAAa,EAAE,wBAAwB,EACvC,0BAA0B,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9C,WAAW,CA2Fb"}
@@ -3,7 +3,7 @@ import { HardhatError } from "@nomicfoundation/hardhat-errors";
3
3
  import { ensureError } from "@nomicfoundation/hardhat-utils/error";
4
4
  import { hardhatChainTypeToEdrChainType } from "../../edr/chain-type.js";
5
5
  import { getGlobalEdrContext } from "../../edr/context.js";
6
- import { formatArtifactId } from "./formatters.js";
6
+ import { formatArtifactId, formatInlineConfigErrors } from "./formatters.js";
7
7
  /**
8
8
  * Run all the given solidity tests and returns the stream of results.
9
9
  *
@@ -64,6 +64,15 @@ export function run(chainType, artifacts, testSuiteIds, testRunnerConfig, tracin
64
64
  }
65
65
  catch (error) {
66
66
  ensureError(error);
67
+ // EDR reports the problems it found in the user's inline test config as
68
+ // an `inlineConfigErrors` property on the error. Report them as a
69
+ // dedicated Hardhat error instead of an unhandled EDR error.
70
+ if (hasInlineConfigErrors(error)) {
71
+ stream.destroy(new HardhatError(HardhatError.ERRORS.CORE.SOLIDITY_TESTS.INVALID_INLINE_CONFIG, {
72
+ errors: formatInlineConfigErrors(error.inlineConfigErrors, sourceNameToUserSourceName),
73
+ }));
74
+ return;
75
+ }
67
76
  stream.destroy(new HardhatError(HardhatError.ERRORS.CORE.SOLIDITY_TESTS
68
77
  .UNHANDLED_EDR_ERROR_SOLIDITY_TESTS, {
69
78
  error: error.message,
@@ -72,4 +81,12 @@ export function run(chainType, artifacts, testSuiteIds, testRunnerConfig, tracin
72
81
  })();
73
82
  return stream;
74
83
  }
84
+ /**
85
+ * EDR attaches the structured inline-config problems to the error that rejects
86
+ * `runSolidityTests`, but as a property of an `Error` rather than a typed
87
+ * error class, so we have to assert their type here.
88
+ */
89
+ function hasInlineConfigErrors(error) {
90
+ return ("inlineConfigErrors" in error && Array.isArray(error.inlineConfigErrors));
91
+ }
75
92
  //# sourceMappingURL=runner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/runner.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAEnE,OAAO,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,GAAG,CACjB,SAAoB,EACpB,SAAqB,EACrB,YAA0B,EAC1B,gBAA8C,EAC9C,aAAuC,EACvC,0BAA+C;IAE/C,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC;QAC1B,UAAU,EAAE,IAAI;QAChB,IAAI,KAAI,CAAC;KACV,CAAC,CAAC;IAEH,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,YAAY,GAAG,KAAK,CAAC;IAEzB,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,gBAAgB,CAAC,EAAE,EAAE,0BAA0B,CAAC,CAAC,CAC3E,CAAC;IAEF,mEAAmE;IACnE,iEAAiE;IACjE,qEAAqE;IACrE,iEAAiE;IACjE,sEAAsE;IACtE,qEAAqE;IACrE,2DAA2D;IAC3D,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,mBAAmB,EAAE,CAAC;YAC/C,MAAM,kBAAkB,GAAG,MAAM,UAAU,CAAC,gBAAgB,CAC1D,8BAA8B,CAAC,SAAS,CAAC,EACzC,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,CAAC,WAAW,EAAE,EAAE;gBACd,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,YAAY;oBAClB,IAAI,EAAE,WAAW;iBACE,CAAC,CAAC;gBACvB,eAAe,CAAC,MAAM,CACpB,gBAAgB,CAAC,WAAW,CAAC,EAAE,EAAE,0BAA0B,CAAC,CAC7D,CAAC;gBACF,IAAI,eAAe,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;oBAC/B,IAAI,YAAY,EAAE,CAAC;wBACjB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACpB,CAAC;gBACH,CAAC;YACH,CAAC,CACF,CAAC;YACF,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,kBAAkB;aACL,CAAC,CAAC;YACvB,YAAY,GAAG,IAAI,CAAC;YAEpB,IAAI,eAAe,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBAC/B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,WAAW,CAAC,KAAK,CAAC,CAAC;YAEnB,MAAM,CAAC,OAAO,CACZ,IAAI,YAAY,CACd,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc;iBACpC,kCAAkC,EACrC;gBACE,KAAK,EAAE,KAAK,CAAC,OAAO;aACrB,CACF,CACF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/runner.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":"AASA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,KAAK,EAGV,WAAW,EACZ,MAAM,sBAAsB,CAAC;AAgC9B,UAAU,mBAAmB;IAC3B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAsB,SAAQ,aAAa;IAC1D,YAAY,EAAE,WAAW,EAAE,CAAC;CAC7B;AAED,QAAA,MAAM,gBAAgB,EAAE,qBAAqB,CAAC,mBAAmB,CAkUhE,CAAC;AAqEF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"task-action.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/task-action.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,KAAK,EAGV,WAAW,EACZ,MAAM,sBAAsB,CAAC;AA8B9B,UAAU,mBAAmB;IAC3B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAsB,SAAQ,aAAa;IAC1D,YAAY,EAAE,WAAW,EAAE,CAAC;CAC7B;AAED,QAAA,MAAM,gBAAgB,EAAE,qBAAqB,CAAC,mBAAmB,CAoUhE,CAAC;AAqEF,eAAe,gBAAgB,CAAC"}
@@ -1,4 +1,3 @@
1
- import { finished } from "node:stream/promises";
2
1
  import { HardhatError } from "@nomicfoundation/hardhat-errors";
3
2
  import { exists } from "@nomicfoundation/hardhat-utils/fs";
4
3
  import { resolveFromRoot } from "@nomicfoundation/hardhat-utils/path";
@@ -12,8 +11,7 @@ import { getGasAnalyticsManager } from "../gas-analytics/helpers/accessors.js";
12
11
  import { edrGasReportToHardhatGasMeasurements } from "../network-manager/edr/utils/convert-to-edr.js";
13
12
  import { buildEdrArtifactsWithMetadata, getBuildInfosAndOutputs, } from "./edr-artifacts.js";
14
13
  import { collectEip712CanonicalTypes } from "./eip712/index.js";
15
- import { isTestSuiteArtifact, warnDeprecatedTestFail, solidityTestConfigToSolidityTestRunnerConfigArgs, } from "./helpers.js";
16
- import { getTestFunctionOverrides } from "./inline-config/index.js";
14
+ import { isTestSuiteArtifact, warnDeprecatedTestFail, solidityTestConfigToSolidityTestRunnerConfigArgs, writeTestRunOutput, } from "./helpers.js";
17
15
  import { testReporter } from "./reporter.js";
18
16
  import { run } from "./runner.js";
19
17
  import { DEFAULT_TEST_PROFILE } from "./test-profiles.js";
@@ -113,6 +111,16 @@ const runSolidityTests = async ({ testFiles, chainType, grep, grepExclude, noCom
113
111
  warnDeprecatedTestFail(edrArtifact, sourceNameToUserSourceName);
114
112
  }
115
113
  const testSuiteIds = testSuiteArtifacts.map(({ edrArtifact }) => edrArtifact.id);
114
+ // Maps each test suite's solc source name to its absolute path on disk, so
115
+ // EDR can read the inline test configuration from the sources. A source
116
+ // without an entry has no inline configuration collected.
117
+ //
118
+ // EDR skips every source that carries no inline config directive, so there's
119
+ // no need to filter these paths here.
120
+ const testSourcePaths = Object.fromEntries(testSuiteArtifacts.map(({ userSourceName, edrArtifact }) => [
121
+ edrArtifact.id.source,
122
+ resolveFromRoot(hre.config.paths.root, userSourceName),
123
+ ]));
116
124
  console.log("Running Solidity tests");
117
125
  console.log();
118
126
  let includesFailures = false;
@@ -139,7 +147,6 @@ const runSolidityTests = async ({ testFiles, chainType, grep, grepExclude, noCom
139
147
  hardfork = networkConfig.hardfork;
140
148
  }
141
149
  }
142
- const testFunctionOverrides = await getTestFunctionOverrides(testSuiteArtifacts, allBuildInfosAndOutputs);
143
150
  const eip712CanonicalTypes = await collectEip712CanonicalTypes(allBuildInfosAndOutputs, sourceNameToUserSourceName, eip712Types);
144
151
  const testRunnerConfig = await solidityTestConfigToSolidityTestRunnerConfigArgs({
145
152
  chainType,
@@ -152,8 +159,8 @@ const runSolidityTests = async ({ testFiles, chainType, grep, grepExclude, noCom
152
159
  excludeTestPattern: grepExclude,
153
160
  generateGasReport: hre.globalOptions.gasStats ||
154
161
  hre.globalOptions.gasStatsJson !== undefined,
155
- testFunctionOverrides,
156
162
  eip712CanonicalTypes,
163
+ testSourcePaths,
157
164
  });
158
165
  const tracingConfig = {
159
166
  buildInfos: allBuildInfosAndOutputs.map(({ buildInfo, output }) => ({
@@ -207,17 +214,9 @@ const runSolidityTests = async ({ testFiles, chainType, grep, grepExclude, noCom
207
214
  }
208
215
  }
209
216
  });
210
- const outputStream = testReporterStream.pipe(createNonClosingWriter(process.stdout));
211
- try {
212
- // NOTE: We're awaiting the original run stream to finish to catch any
213
- // errors produced by the runner.
214
- await finished(runStream);
215
- // We also await the output stream to finish, as we want to wait for it
216
- // to avoid returning before the whole output was generated.
217
- await finished(outputStream);
218
- }
219
- catch (error) {
220
- console.error(error);
217
+ const testRunError = await writeTestRunOutput(runStream, testReporterStream, createNonClosingWriter(process.stdout));
218
+ if (testRunError !== undefined) {
219
+ console.error(testRunError);
221
220
  includesErrors = true;
222
221
  }
223
222
  await hre.hooks.runHandlerChain("test", "onTestWorkerDone", ["solidity"], async () => { });
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hardhat",
3
- "version": "3.14.0",
3
+ "version": "3.15.0",
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://hardhat.org",
6
6
  "repository": {
@@ -77,7 +77,7 @@
77
77
  "@nomicfoundation/hardhat-test-utils": "^2.0.3"
78
78
  },
79
79
  "dependencies": {
80
- "@nomicfoundation/edr": "0.17.0",
80
+ "@nomicfoundation/edr": "0.19.0",
81
81
  "@nomicfoundation/hardhat-errors": "^3.0.17",
82
82
  "@nomicfoundation/hardhat-utils": "^4.1.6",
83
83
  "@nomicfoundation/hardhat-vendored": "^3.0.4",
@@ -20,7 +20,7 @@ declare module "../../../types/config.js" {
20
20
  * The types of the values don't matter; we use `true` as a convention.
21
21
  *
22
22
  * By default, only "solc" is provided. Plugins can extend this via
23
- * declaration merging to add new compiler types (e.g. "slangSolx").
23
+ * declaration merging to add new compiler types (e.g. "slang-solx").
24
24
  */
25
25
  export interface SolidityCompilerTypeDefinitions {
26
26
  solc: true;
@@ -358,7 +358,7 @@ declare module "../../../types/hooks.js" {
358
358
  /**
359
359
  * Hook to obtain a Compiler instance for a given compiler configuration.
360
360
  * The default handler returns a solc compiler. Plugins can intercept to
361
- * return their own compiler (e.g. SlangSolxCompiler for type: "slangSolx").
361
+ * return their own compiler (e.g. SlangSolxCompiler for type: "slang-solx").
362
362
  *
363
363
  * @param context The hook context.
364
364
  * @param compilerConfig The compiler configuration to get a compiler for.
@@ -18,7 +18,7 @@ export interface EdrArtifactWithMetadata {
18
18
  }
19
19
 
20
20
  export const BUILD_INFO_FORMAT: RegExp =
21
- /^solc-(?<major>\d+)_(?<minor>\d+)_(?<patch>\d+)(?:-(?<compilerType>[a-zA-Z][a-zA-Z0-9]*))?-[0-9a-fA-F]*$/;
21
+ /^solc-(?<major>\d+)_(?<minor>\d+)_(?<patch>\d+)(?:-(?<compilerType>[a-zA-Z][a-zA-Z0-9-]*))?-[0-9a-fA-F]*$/;
22
22
 
23
23
  /**
24
24
  * This function returns all the build infos and associated outputs.
@@ -1,4 +1,9 @@
1
- import type { ArtifactId } from "@nomicfoundation/edr";
1
+ import type {
2
+ ArtifactId,
3
+ InlineConfigDirectiveProblem,
4
+ InlineConfigError,
5
+ InlineConfigSourceProblem,
6
+ } from "@nomicfoundation/edr";
2
7
 
3
8
  export function formatArtifactId(
4
9
  artifactId: ArtifactId,
@@ -9,3 +14,57 @@ export function formatArtifactId(
9
14
 
10
15
  return `${sourceName}:${artifactId.name}`;
11
16
  }
17
+
18
+ /**
19
+ * Formats the inline test configuration problems that EDR reports, one per
20
+ * line, each located at the user-facing path of the source it was found in.
21
+ */
22
+ export function formatInlineConfigErrors(
23
+ errors: InlineConfigError[],
24
+ sourceNameToUserSourceName: Map<string, string>,
25
+ ): string {
26
+ return errors
27
+ .map((error) => {
28
+ const sourceName =
29
+ sourceNameToUserSourceName.get(error.sourceName) ?? error.sourceName;
30
+
31
+ if (error.kind === "source") {
32
+ return `- ${sourceName}: ${formatInlineConfigSourceProblem(error.problem)}`;
33
+ }
34
+
35
+ return `- ${sourceName}:${error.line}: ${error.contract}.${error.function}: ${formatInlineConfigDirectiveProblem(error.problem)}`;
36
+ })
37
+ .join("\n");
38
+ }
39
+
40
+ function formatInlineConfigDirectiveProblem(
41
+ problem: InlineConfigDirectiveProblem,
42
+ ): string {
43
+ switch (problem.kind) {
44
+ case "InlineConfigInvalidSyntax":
45
+ return `missing "=" in "${problem.directive}"`;
46
+ case "InlineConfigUnsupportedProfile":
47
+ return `unsupported profile "${problem.profile}". Only the "default" profile is supported`;
48
+ case "InlineConfigInvalidKey":
49
+ return `invalid key "${problem.key}"`;
50
+ case "InlineConfigInvalidKeyForTestType":
51
+ return `key "${problem.key}" is not valid for ${problem.testType} tests`;
52
+ case "InlineConfigInvalidValue":
53
+ return `invalid value "${problem.value}" for key "${problem.key}". Expected a ${problem.expected}`;
54
+ case "InlineConfigDuplicateKey":
55
+ return `duplicate key "${problem.key}"`;
56
+ }
57
+ }
58
+
59
+ function formatInlineConfigSourceProblem(
60
+ problem: InlineConfigSourceProblem,
61
+ ): string {
62
+ switch (problem.kind) {
63
+ case "InlineConfigInvalidSolcVersion":
64
+ return "the Solidity version of this source is not supported by the inline configuration parser";
65
+ case "InlineConfigSourceFileNotFound":
66
+ return `the source file could not be read at "${problem.path}": ${problem.reason}`;
67
+ case "InlineConfigDirectiveLocation":
68
+ return `a directive of ${problem.contract}.${problem.function} could not be located: ${problem.reason}`;
69
+ }
70
+ }