hardhat 3.0.0-next.1 → 3.0.0-next.2

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 (32) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.d.ts.map +1 -1
  3. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.js +1 -1
  4. package/dist/src/internal/builtin-plugins/solidity/build-system/build-system.js.map +1 -1
  5. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.d.ts.map +1 -1
  6. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.js +14 -11
  7. package/dist/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.js.map +1 -1
  8. package/dist/src/internal/builtin-plugins/solidity/type-extensions.d.ts +5 -5
  9. package/dist/src/internal/builtin-plugins/solidity/type-extensions.d.ts.map +1 -1
  10. package/dist/src/internal/builtin-plugins/solidity/type-extensions.js.map +1 -1
  11. package/dist/src/internal/builtin-plugins/solidity-test/config.d.ts.map +1 -1
  12. package/dist/src/internal/builtin-plugins/solidity-test/config.js +7 -1
  13. package/dist/src/internal/builtin-plugins/solidity-test/config.js.map +1 -1
  14. package/dist/src/internal/builtin-plugins/solidity-test/reporter.d.ts.map +1 -1
  15. package/dist/src/internal/builtin-plugins/solidity-test/reporter.js +4 -2
  16. package/dist/src/internal/builtin-plugins/solidity-test/reporter.js.map +1 -1
  17. package/dist/src/internal/cli/telemetry/sentry/reporter.js +9 -6
  18. package/dist/src/internal/cli/telemetry/sentry/reporter.js.map +1 -1
  19. package/dist/src/internal/cli/telemetry/sentry/transport.d.ts +3 -1
  20. package/dist/src/internal/cli/telemetry/sentry/transport.d.ts.map +1 -1
  21. package/dist/src/internal/cli/telemetry/sentry/transport.js +34 -11
  22. package/dist/src/internal/cli/telemetry/sentry/transport.js.map +1 -1
  23. package/package.json +9 -8
  24. package/src/internal/builtin-plugins/solidity/build-system/build-system.ts +7 -7
  25. package/src/internal/builtin-plugins/solidity/build-system/compiler/downloader.ts +19 -16
  26. package/src/internal/builtin-plugins/solidity/type-extensions.ts +7 -7
  27. package/src/internal/builtin-plugins/solidity-test/config.ts +10 -1
  28. package/src/internal/builtin-plugins/solidity-test/reporter.ts +4 -2
  29. package/src/internal/cli/telemetry/sentry/reporter.ts +10 -6
  30. package/src/internal/cli/telemetry/sentry/transport.ts +47 -13
  31. package/templates/01-node-test-runner-viem/package.json +7 -7
  32. package/templates/02-mocha-ethers/package.json +9 -9
package/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # hardhat
2
2
 
3
+ ## 3.0.0-next.2
4
+
5
+ ### Patch Changes
6
+
7
+ - aab6d99: Speed up Solidity Tests when forking by setting an rpc cache path ([#6459](https://github.com/NomicFoundation/hardhat/issues/6459))
8
+ - 89f95f9: Added support for the `attach` method in `hardhat-typechain` ([#6315](https://github.com/NomicFoundation/hardhat/issues/6315))
9
+ - 739f6b3: Don't generate `hardhat-typechain` types for Solidity test files ([#6392](https://github.com/NomicFoundation/hardhat/issues/6392))
10
+ - 1e625dc: Fix to ensure we don't generate stack traces if EVM execution is indeterministic.
11
+ - c9d81f9: Fixed errors in compiler list downloads with a synchronization mutex ([#6437](https://github.com/NomicFoundation/hardhat/issues/6437))
12
+
3
13
  ## 3.0.0-next.1
4
14
 
5
15
  ### Patch Changes
@@ -1 +1 @@
1
- {"version":3,"file":"build-system.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/builtin-plugins/solidity/build-system/build-system.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAc,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EACV,mBAAmB,EACnB,YAAY,EACZ,2BAA2B,EAC3B,eAAe,EACf,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,4CAA4C,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACpB,MAAM,2CAA2C,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAuDvE,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,oBAAoB,EAAE,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,qBAAa,iCAAkC,YAAW,mBAAmB;;gBAO/D,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,0BAA0B;IAUtD,gBAAgB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAoBrC,KAAK,CAChB,aAAa,EAAE,MAAM,EAAE,EACvB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,2BAA2B,GAAG,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAmLzD,kBAAkB,CAC7B,aAAa,EAAE,MAAM,EAAE,EACvB,OAAO,CAAC,EAAE,yBAAyB,GAClC,OAAO,CAAC,2BAA2B,GAAG,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IA4GxD,iBAAiB,CAC5B,cAAc,EAAE,cAAc,EAC9B,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,cAAc,CAAC;IAwBb,kBAAkB,CAC7B,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,mBAAmB,EAC1B,kBAAkB,GAAE,OAAe,GAClC,OAAO,CAAC,mBAAmB,CAAC;IA2BlB,aAAa,CACxB,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IA6G5B,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAsFxD,gBAAgB,CAC3B,UAAU,EAAE,iBAAiB,EAC7B,QAAQ,CAAC,EAAE,uBAAuB,GACjC,OAAO,CAAC,cAAc,CAAC;CAsK3B"}
1
+ {"version":3,"file":"build-system.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/builtin-plugins/solidity/build-system/build-system.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAc,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EACV,mBAAmB,EACnB,YAAY,EACZ,2BAA2B,EAC3B,eAAe,EACf,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,4CAA4C,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACpB,MAAM,2CAA2C,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAuDvE,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,oBAAoB,EAAE,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,qBAAa,iCAAkC,YAAW,mBAAmB;;gBAO/D,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,0BAA0B;IAUtD,gBAAgB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAoBrC,KAAK,CAChB,aAAa,EAAE,MAAM,EAAE,EACvB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,2BAA2B,GAAG,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IA4KzD,kBAAkB,CAC7B,aAAa,EAAE,MAAM,EAAE,EACvB,OAAO,CAAC,EAAE,yBAAyB,GAClC,OAAO,CAAC,2BAA2B,GAAG,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IA4GxD,iBAAiB,CAC5B,cAAc,EAAE,cAAc,EAC9B,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,cAAc,CAAC;IAwBb,kBAAkB,CAC7B,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,mBAAmB,EAC1B,kBAAkB,GAAE,OAAe,GAClC,OAAO,CAAC,mBAAmB,CAAC;IA2BlB,aAAa,CACxB,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IA6G5B,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA6FxD,gBAAgB,CAC3B,UAAU,EAAE,iBAAiB,EAC7B,QAAQ,CAAC,EAAE,uBAAuB,GACjC,OAAO,CAAC,cAAc,CAAC;CAsK3B"}
@@ -85,7 +85,6 @@ export class SolidityBuildSystemImplementation {
85
85
  const artifactsPerFile = await this.emitArtifacts(result.compilationJob, result.compilerOutput);
86
86
  contractArtifactsGeneratedByCompilationJob.set(result.compilationJob, artifactsPerFile);
87
87
  }));
88
- await this.#hooks.runHandlerChain("solidity", "onAllArtifactsEmitted", [contractArtifactsGeneratedByCompilationJob], async () => { });
89
88
  }
90
89
  const resultsMap = new Map();
91
90
  for (const result of results) {
@@ -318,6 +317,7 @@ export class SolidityBuildSystemImplementation {
318
317
  .map(([name, _]) => name);
319
318
  const duplicatedContractNamesDeclarationFilePath = path.join(this.#options.artifactsPath, "artifacts.d.ts");
320
319
  await writeUtf8File(duplicatedContractNamesDeclarationFilePath, getDuplicatedContractNamesDeclarationFile(duplicatedNames));
320
+ await this.#hooks.runHandlerChain("solidity", "onCleanUpArtifacts", [artifactPaths], async () => { });
321
321
  }
322
322
  async compileBuildInfo(_buildInfo, _options) {
323
323
  // TODO: Download the buildinfo compiler version
@@ -1 +1 @@
1
- {"version":3,"file":"build-system.js","sourceRoot":"","sources":["../../../../../../src/internal/builtin-plugins/solidity/build-system/build-system.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-system.js","sourceRoot":"","sources":["../../../../../../src/internal/builtin-plugins/solidity/build-system/build-system.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,eAAe,CAAC;AAuB9C,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAUlE,oBAAY,gBAAgB;IAC1B,KAAK,gBAAgB;IACrB,OAAO,kBAAkB;IACzB,KAAK,iBAAiB;IACtB,IAAI,SAAS;CACd;AAkBD;;;;;;;;;;;;;;;;;;;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;IA6BrD;;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;IAkBH,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQvD,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAwCnD,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;CA6LzE"}
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,eAAe,CAAC;AAuB9C,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAUlE,oBAAY,gBAAgB;IAC1B,KAAK,gBAAgB;IACrB,OAAO,kBAAkB;IACzB,KAAK,iBAAiB;IACtB,IAAI,SAAS;CACd;AAkBD;;;;;;;;;;;;;;;;;;;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;IA8BrD;;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;IAwCnD,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;CA6LzE"}
@@ -49,7 +49,8 @@ export class CompilerDownloaderImplementation {
49
49
  #platform;
50
50
  #compilersDir;
51
51
  #downloadFunction;
52
- #mutex = new MultiProcessMutex("compiler-download");
52
+ #mutexCompiler = new MultiProcessMutex("compiler-download");
53
+ #mutexCompilerList = new MultiProcessMutex("compiler-download-list");
53
54
  /**
54
55
  * Use CompilerDownloader.getConcurrencySafeDownloader instead
55
56
  */
@@ -59,16 +60,18 @@ export class CompilerDownloaderImplementation {
59
60
  this.#downloadFunction = downloadFunction;
60
61
  }
61
62
  async updateCompilerListIfNeeded(versions) {
62
- if (await this.#shouldDownloadCompilerList(versions)) {
63
- try {
64
- log(`Downloading the list of solc builds for platform ${this.#platform}`);
65
- await this.#downloadCompilerList();
66
- }
67
- catch (e) {
68
- ensureError(e);
69
- throw new HardhatError(HardhatError.ERRORS.SOLIDITY.VERSION_LIST_DOWNLOAD_FAILED, e);
63
+ await this.#mutexCompilerList.use(async () => {
64
+ if (await this.#shouldDownloadCompilerList(versions)) {
65
+ try {
66
+ log(`Downloading the list of solc builds for platform ${this.#platform}`);
67
+ await this.#downloadCompilerList();
68
+ }
69
+ catch (e) {
70
+ ensureError(e);
71
+ throw new HardhatError(HardhatError.ERRORS.SOLIDITY.VERSION_LIST_DOWNLOAD_FAILED, e);
72
+ }
70
73
  }
71
- }
74
+ });
72
75
  }
73
76
  async isCompilerDownloaded(version) {
74
77
  const build = await this.#getCompilerBuild(version);
@@ -80,7 +83,7 @@ export class CompilerDownloaderImplementation {
80
83
  // This is because the mutex blocks access until a compiler has been fully downloaded, preventing any new process
81
84
  // from checking whether that version of the compiler exists. Without mutex it might incorrectly
82
85
  // return false, indicating that the compiler isn't present, even though it is currently being downloaded.
83
- return this.#mutex.use(async () => {
86
+ return this.#mutexCompiler.use(async () => {
84
87
  const isCompilerDownloaded = await this.isCompilerDownloaded(version);
85
88
  if (isCompilerDownloaded === true) {
86
89
  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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"}
@@ -1,5 +1,4 @@
1
1
  import type { SolidityBuildSystem } from "../../../types/solidity/build-system.js";
2
- import type { CompilationJob } from "../../../types/solidity.js";
3
2
  import "../../../types/config.js";
4
3
  declare module "../../../types/config.js" {
5
4
  type SolidityUserConfig = string | string[] | SingleVersionSolidityUserConfig | MultiVersionSolidityUserConfig | BuildProfilesSolidityUserConfig;
@@ -69,14 +68,15 @@ declare module "../../../types/hooks.js" {
69
68
  }
70
69
  interface SolidityHooks {
71
70
  /**
72
- * Provide a handler for this hook to retrieve all artifacts created by a compilation job.
71
+ * Hook triggered during the cleanup process of Solidity compilation artifacts.
72
+ * This hook runs after unused artifacts and build-info files have been removed.
73
73
  *
74
74
  * @param context The hook context.
75
- * @param artifacts A map of the artifacts created by each compilation job.
75
+ * @param artifactPaths The file paths of artifacts that remain after cleanup.
76
76
  * @param next A function to call the next handler for this hook, or the
77
- * default implementation if there are no more handlers.
77
+ * default implementation if no more handlers exist.
78
78
  */
79
- onAllArtifactsEmitted: (context: HookContext, artifacts: Map<CompilationJob, ReadonlyMap<string, string[]>>, next: (nextContext: HookContext, artifacts: Map<CompilationJob, ReadonlyMap<string, string[]>>) => Promise<void>) => Promise<void>;
79
+ onCleanUpArtifacts: (context: HookContext, artifactPaths: string[], next: (nextContext: HookContext, artifactPaths: string[]) => Promise<void>) => Promise<void>;
80
80
  }
81
81
  }
82
82
  //# sourceMappingURL=type-extensions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-extensions.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity/type-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjE,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;KAChB;IAGD,UAAiB,2BAA4B,SAAQ,cAAc;KAAG;IAEtE,UAAiB,0BAA0B;QACzC,SAAS,EAAE,cAAc,EAAE,CAAC;QAC5B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;KAC5C;IAED,UAAiB,wBAAwB;QACvC,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;QACjC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;KACvB;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;KACf;IAED,UAAiB,0BAA0B;QACzC,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,qBAAqB,EAAE,MAAM,EAAE,CAAC;QAChC,UAAU,EAAE,MAAM,EAAE,CAAC;KACtB;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;;;;;;;WAOG;QACH,qBAAqB,EAAE,CACrB,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,EAC7D,IAAI,EAAE,CACJ,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,KAC1D,OAAO,CAAC,IAAI,CAAC,KACf,OAAO,CAAC,IAAI,CAAC,CAAC;KACpB;CACF"}
1
+ {"version":3,"file":"type-extensions.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity/type-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAEnF,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;KAChB;IAGD,UAAiB,2BAA4B,SAAQ,cAAc;KAAG;IAEtE,UAAiB,0BAA0B;QACzC,SAAS,EAAE,cAAc,EAAE,CAAC;QAC5B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;KAC5C;IAED,UAAiB,wBAAwB;QACvC,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;QACjC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;KACvB;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;KACf;IAED,UAAiB,0BAA0B;QACzC,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,qBAAqB,EAAE,MAAM,EAAE,CAAC;QAChC,UAAU,EAAE,MAAM,EAAE,CAAC;KACtB;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;KACpB;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"type-extensions.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity/type-extensions.ts"],"names":[],"mappings":"AAGA,OAAO,0BAA0B,CAAC;AA4ElC,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":"AAEA,OAAO,0BAA0B,CAAC;AA4ElC,OAAO,uBAAuB,CAAC;AAO/B,OAAO,kCAAkC,CAAC;AAO1C,OAAO,yBAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,yBAAyB,CAAC;AAyGhF,wBAAgB,8BAA8B,CAC5C,UAAU,EAAE,OAAO,GAClB,gCAAgC,EAAE,CAEpC;AAED,wBAAsB,6BAA6B,CACjD,UAAU,EAAE,iBAAiB,EAC7B,cAAc,EAAE,aAAa,GAC5B,OAAO,CAAC,aAAa,CAAC,CAkBxB"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,yBAAyB,CAAC;AA2GhF,wBAAgB,8BAA8B,CAC5C,UAAU,EAAE,OAAO,GAClB,gCAAgC,EAAE,CAEpC;AAED,wBAAsB,6BAA6B,CACjD,UAAU,EAAE,iBAAiB,EAC7B,cAAc,EAAE,aAAa,GAC5B,OAAO,CAAC,aAAa,CAAC,CAyBxB"}
@@ -1,3 +1,4 @@
1
+ import path from "node:path";
1
2
  import { isObject } from "@nomicfoundation/hardhat-utils/lang";
2
3
  import { resolveFromRoot } from "@nomicfoundation/hardhat-utils/path";
3
4
  import { conditionalUnionType, unionType, validateUserConfigZodType, } from "@nomicfoundation/hardhat-zod-utils";
@@ -91,6 +92,11 @@ export async function resolveSolidityTestUserConfig(userConfig, resolvedConfig)
91
92
  // TODO: use isObject when the type narrowing issue is fixed
92
93
  testsPath = typeof testsPath === "object" ? testsPath.solidity : testsPath;
93
94
  testsPath ??= "test";
95
+ const defaultRpcCachePath = path.join(resolvedConfig.paths.cache, "edr");
96
+ const solidityTest = {
97
+ rpcCachePath: defaultRpcCachePath,
98
+ ...userConfig.solidityTest,
99
+ };
94
100
  return {
95
101
  ...resolvedConfig,
96
102
  paths: {
@@ -100,7 +106,7 @@ export async function resolveSolidityTestUserConfig(userConfig, resolvedConfig)
100
106
  solidity: resolveFromRoot(resolvedConfig.paths.root, testsPath),
101
107
  },
102
108
  },
103
- solidityTest: userConfig.solidityTest ?? {},
109
+ solidityTest,
104
110
  };
105
111
  }
106
112
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"reporter.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/reporter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAEnB,MAAM,YAAY,CAAC;AAUpB;;;;GAIG;AACH,wBAAuB,YAAY,CACjC,MAAM,EAAE,eAAe,GACtB,kBAAkB,CAyJpB"}
1
+ {"version":3,"file":"reporter.d.ts","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/reporter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAEnB,MAAM,YAAY,CAAC;AAUpB;;;;GAIG;AACH,wBAAuB,YAAY,CACjC,MAAM,EAAE,eAAe,GACtB,kBAAkB,CA2JpB"}
@@ -97,11 +97,13 @@ export async function* testReporter(source) {
97
97
  yield `Reason: ${chalk.grey(failure.reason)}\n`;
98
98
  }
99
99
  const stackTrace = failure.stackTrace();
100
+ // TODO handle `UnexpectedError` and `UnsafeToReplay` variants
100
101
  if (stackTrace !== undefined &&
101
102
  stackTrace !== null &&
102
- stackTrace.length > 0) {
103
+ stackTrace.kind === "StackTrace" &&
104
+ stackTrace.entries.length > 0) {
103
105
  const stackTraceStack = [];
104
- for (const entry of stackTrace.reverse()) {
106
+ for (const entry of stackTrace.entries.reverse()) {
105
107
  const callsite = encodeStackTraceEntry(entry);
106
108
  if (callsite !== undefined) {
107
109
  stackTraceStack.push(` at ${callsite.toString()}`);
@@ -1 +1 @@
1
- {"version":3,"file":"reporter.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/reporter.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,oEAAoE,CAAC;AAE3G,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD;;;;GAIG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,YAAY,CACjC,MAAuB;IAEvB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,IAAI,WAAW,GAAG,EAAE,CAAC;IAErB,MAAM,QAAQ,GAAiB,EAAE,CAAC;IAElC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACjC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,cAAc,CAAC,CAAC,CAAC;gBACpB,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;gBACpC,MAAM,cAAc,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC;gBAEtD,IAAI,cAAc,KAAK,CAAC,EAAE,CAAC;oBACzB,SAAS;gBACX,CAAC;gBAED,IAAI,iBAAiB,GAAG,CAAC,CAAC;gBAC1B,IAAI,iBAAiB,GAAG,CAAC,CAAC;gBAC1B,IAAI,iBAAiB,GAAG,CAAC,CAAC;gBAC1B,MAAM,aAAa,GAAG,WAAW,CAAC,UAAU,CAAC;gBAE7C,MAAM,OAAO,WAAW,CAAC,WAAW,CAAC,MAAM,cAAc,gBAAgB,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC;gBAE9F,IAAI,WAAW,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpC,KAAK,MAAM,OAAO,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;wBAC3C,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,EAAE,CAAC,IAAI,CAAC;oBACpE,CAAC;gBACH,CAAC;gBAED,sEAAsE;gBACtE,8CAA8C;gBAC9C,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;oBAC3D,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;oBAC7B,MAAM,MAAM,GAAe,UAAU,CAAC,MAAM,CAAC;oBAC7C,MAAM,OAAO,GAAG;wBACd,CAAC,UAAU,EAAE,GAAG,UAAU,CAAC,UAAU,KAAK,CAAC;wBAC3C,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;qBACnC;yBACE,GAAG,CACF,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf,GAAG,GAAG,KAAK,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CACxE;yBACA,IAAI,CAAC,IAAI,CAAC,CAAC;oBAEd,QAAQ,MAAM,EAAE,CAAC;wBACf,KAAK,SAAS,CAAC,CAAC,CAAC;4BACf,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,OAAO,GAAG,CAAC,IAAI,CAAC;4BAC5E,iBAAiB,EAAE,CAAC;4BACpB,MAAM;wBACR,CAAC;wBACD,KAAK,SAAS,CAAC,CAAC,CAAC;4BACf,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;4BAC1B,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,QAAQ,CAAC,MAAM,GAAG,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,OAAO,GAAG,CAAC,IAAI,CAAC;4BAC9F,iBAAiB,EAAE,CAAC;4BACpB,MAAM;wBACR,CAAC;wBACD,KAAK,SAAS,CAAC,CAAC,CAAC;4BACf,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,IAAI,CAAC;4BAC9C,iBAAiB,EAAE,CAAC;4BACpB,MAAM;wBACR,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,MAAM,YAAY,GAAG,GAAG,cAAc,WAAW,iBAAiB,YAAY,iBAAiB,YAAY,iBAAiB,UAAU,CAAC;gBACvI,MAAM,YAAY,GAAG,aAAa,aAAa,KAAK,CAAC;gBAErD,IAAI,iBAAiB,KAAK,CAAC,EAAE,CAAC;oBAC5B,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,KAAK,YAAY,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,YAAY,GAAG,CAAC,IAAI,CAAC;gBAC7G,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,YAAY,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,YAAY,GAAG,CAAC,IAAI,CAAC;gBAC3G,CAAC;gBACD,MAAM,IAAI,CAAC;gBAEX,YAAY,IAAI,cAAc,CAAC;gBAC/B,eAAe,IAAI,iBAAiB,CAAC;gBACrC,eAAe,IAAI,iBAAiB,CAAC;gBACrC,eAAe,IAAI,iBAAiB,CAAC;gBACrC,WAAW,IAAI,aAAa,CAAC;gBAE7B,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,GAAG,YAAY,WAAW,eAAe,YAAY,eAAe,YAAY,eAAe,UAAU,CAAC;IAC7H,MAAM,UAAU,GAAG,aAAa,WAAW,KAAK,CAAC;IACjD,IAAI,eAAe,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,GAAG,CAAC,IAAI,CAAC;IACrG,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,GAAG,CAAC,IAAI,CAAC;IACvG,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;YAClD,MAAM,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,IAAI,CAAC;YAEhF,IACE,OAAO,CAAC,MAAM,KAAK,SAAS;gBAC5B,OAAO,CAAC,MAAM,KAAK,IAAI;gBACvB,OAAO,CAAC,MAAM,KAAK,EAAE,EACrB,CAAC;gBACD,MAAM,WAAW,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;YAClD,CAAC;YAED,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;YACxC,IACE,UAAU,KAAK,SAAS;gBACxB,UAAU,KAAK,IAAI;gBACnB,UAAU,CAAC,MAAM,GAAG,CAAC,EACrB,CAAC;gBACD,MAAM,eAAe,GAAa,EAAE,CAAC;gBACrC,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;oBACzC,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;oBAC9C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;wBAC3B,eAAe,CAAC,IAAI,CAAC,QAAQ,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;oBACtD,CAAC;gBACH,CAAC;gBAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/B,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;gBACtD,CAAC;YACH,CAAC;YAED,IACE,OAAO,CAAC,WAAW,KAAK,SAAS;gBACjC,OAAO,CAAC,WAAW,KAAK,IAAI;gBAC5B,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAC9B,CAAC;gBACD,MAAM,kBAAkB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;YAClG,CAAC;YAED,IACE,OAAO,CAAC,cAAc,KAAK,SAAS;gBACpC,OAAO,CAAC,cAAc,KAAK,IAAI,EAC/B,CAAC;gBACD,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC;oBAC3D,CAAC,CAAC,OAAO,CAAC,cAAc;oBACxB,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBAE7B,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;oBAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,GAAG,CAChD,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf,KAAK,GAAG,KAAK,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAC1E,CAAC;oBACF,MAAM,oBAAoB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;gBAC/D,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"reporter.js","sourceRoot":"","sources":["../../../../../src/internal/builtin-plugins/solidity-test/reporter.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import debug from "debug";
4
4
  import { ProviderError, UnknownError, } from "../../../builtin-plugins/network-manager/provider-errors.js";
5
5
  import { getHardhatVersion } from "../../../utils/package.js";
6
6
  import { isTelemetryAllowed } from "../telemetry-permissions.js";
7
- import { getSubprocessTransport } from "./transport.js";
7
+ import { makeSubprocessTransport } from "./transport.js";
8
8
  const log = debug("hardhat:cli:telemetry:sentry:reporter");
9
9
  // export const SENTRY_DSN =
10
10
  // "https://d578a176729662a28e7a8da268d36912@o385026.ingest.us.sentry.io/4507685793103872"; // DEV
@@ -39,15 +39,18 @@ class Reporter {
39
39
  return this.#instance;
40
40
  }
41
41
  log("Initializing Reporter instance");
42
- const { Integrations, init, setExtra } = await import("@sentry/node");
43
- const linkedErrorsIntegration = new Integrations.LinkedErrors({
42
+ const { init, setExtra, linkedErrorsIntegration, contextLinesIntegration } = await import("@sentry/node");
43
+ const linkedErrorsIntegrationInstance = linkedErrorsIntegration({
44
44
  key: "cause",
45
45
  });
46
- const transport = await getSubprocessTransport();
46
+ const contextLinesIntegrationInstance = contextLinesIntegration();
47
47
  init({
48
48
  dsn: SENTRY_DSN,
49
- transport,
50
- integrations: () => [linkedErrorsIntegration],
49
+ transport: makeSubprocessTransport,
50
+ integrations: () => [
51
+ linkedErrorsIntegrationInstance,
52
+ contextLinesIntegrationInstance,
53
+ ],
51
54
  });
52
55
  setExtra("nodeVersion", process.version);
53
56
  setExtra("hardhatVersion", await getHardhatVersion());
@@ -1 +1 @@
1
- {"version":3,"file":"reporter.js","sourceRoot":"","sources":["../../../../../../src/internal/cli/telemetry/sentry/reporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reporter.js","sourceRoot":"","sources":["../../../../../../src/internal/cli/telemetry/sentry/reporter.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,4 @@
1
- export declare function getSubprocessTransport(): Promise<any>;
1
+ import type { BaseTransportOptions, Transport } from "@sentry/core";
2
+ export declare function makeSubprocessTransport(options: BaseTransportOptions): Transport;
3
+ export declare function ensureString(input: string | Uint8Array): string;
2
4
  //# sourceMappingURL=transport.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/cli/telemetry/sentry/transport.ts"],"names":[],"mappings":"AASA,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,GAAG,CAAC,CAoD3D"}
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/cli/telemetry/sentry/transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,SAAS,EAGV,MAAM,cAAc,CAAC;AAQtB,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,oBAAoB,GAC5B,SAAS,CAwEX;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAM/D"}
@@ -1,13 +1,24 @@
1
1
  import { spawnDetachedSubProcess } from "@nomicfoundation/hardhat-utils/subprocess";
2
+ import { createTransport } from "@sentry/node";
2
3
  import debug from "debug";
3
4
  const log = debug("hardhat:cli:telemetry:sentry:transport");
4
- // This class is wrapped in a function to avoid having to
5
- // import @sentry/node just for the BaseTransport base class
6
- export async function getSubprocessTransport() {
7
- const { Status, Transports } = await import("@sentry/node");
8
- class SubprocessTransport extends Transports.BaseTransport {
9
- async sendEvent(event) {
10
- // Be aware that any error thrown here will not be propagated to the main process
5
+ export function makeSubprocessTransport(options) {
6
+ async function makeRequest(request) {
7
+ // Any error thrown here will not be propagated to the main process
8
+ try {
9
+ // From Sentry v7 onwards, the handler receives Envelopes instead of Events.
10
+ // We extract the Event from the Envelope by iterating over the newline-separated objects
11
+ const body = ensureString(request.body);
12
+ const event = body
13
+ .split("\n")
14
+ .map((result) => JSON.parse(result))
15
+ .find((e) => e.event_id !== undefined && e.timestamp !== undefined);
16
+ if (event === undefined) {
17
+ log(`No event found in the request body: ${body}`);
18
+ return {
19
+ statusCode: 200,
20
+ };
21
+ }
11
22
  const extra = event.extra ?? {};
12
23
  const { configPath } = extra;
13
24
  log("Processing event");
@@ -36,11 +47,23 @@ export async function getSubprocessTransport() {
36
47
  }
37
48
  await spawnDetachedSubProcess(subprocessFile, args, env);
38
49
  log("Exception sent to detached subprocess");
39
- return {
40
- status: Status.Success,
41
- };
42
50
  }
51
+ catch (error) {
52
+ log("Error sending event to subprocess", error);
53
+ }
54
+ return {
55
+ statusCode: 200,
56
+ };
57
+ }
58
+ // `createTransport` takes care of rate limiting and flushing
59
+ return createTransport(options, makeRequest);
60
+ }
61
+ export function ensureString(input) {
62
+ if (typeof input === "string") {
63
+ return input;
64
+ }
65
+ else {
66
+ return new TextDecoder().decode(input);
43
67
  }
44
- return SubprocessTransport;
45
68
  }
46
69
  //# sourceMappingURL=transport.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../../../../src/internal/cli/telemetry/sentry/transport.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,GAAG,GAAG,KAAK,CAAC,wCAAwC,CAAC,CAAC;AAE5D,yDAAyD;AACzD,4DAA4D;AAC5D,MAAM,CAAC,KAAK,UAAU,sBAAsB;IAC1C,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;IAE5D,MAAM,mBAAoB,SAAQ,UAAU,CAAC,aAAa;QACxC,KAAK,CAAC,SAAS,CAAC,KAAY;YAC1C,iFAAiF;YAEjF,MAAM,KAAK,GAA4B,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;YACzD,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;YAE7B,GAAG,CAAC,kBAAkB,CAAC,CAAC;YAExB,yDAAyD;YACzD,OAAO,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC;YAC/B,0CAA0C;YAC1C,OAAO,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC;YAE5B,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAE9C,sIAAsI;YACtI,yBAAyB;YACzB,4GAA4G;YAC5G,+GAA+G;YAC/G,MAAM,OAAO,GACX,OAAO,CAAC,GAAG,CAAC,mCAAmC,KAAK,SAAS;gBAC3D,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,IAAI,CAAC;YACX,MAAM,cAAc,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,eAAe,OAAO,EAAE,CAAC;YAEtE,MAAM,GAAG,GAA2B,EAAE,CAAC;YACvC,IAAI,OAAO,CAAC,GAAG,CAAC,mCAAmC,KAAK,SAAS,EAAE,CAAC;gBAClE,8BAA8B;gBAC9B,GAAG,CAAC,mCAAmC;oBACrC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC;YACpD,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC;YAC/B,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACxB,CAAC;YAED,MAAM,uBAAuB,CAAC,cAAc,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;YAEzD,GAAG,CAAC,uCAAuC,CAAC,CAAC;YAE7C,OAAO;gBACL,MAAM,EAAE,MAAM,CAAC,OAAO;aACvB,CAAC;QACJ,CAAC;KACF;IAED,OAAO,mBAAmB,CAAC;AAC7B,CAAC"}
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.0.0-next.1",
3
+ "version": "3.0.0-next.2",
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": {
@@ -51,7 +51,7 @@
51
51
  ],
52
52
  "devDependencies": {
53
53
  "@eslint-community/eslint-plugin-eslint-comments": "^4.3.0",
54
- "@nomicfoundation/hardhat-node-test-reporter": "^3.0.0-next.1",
54
+ "@nomicfoundation/hardhat-node-test-reporter": "^3.0.0-next.2",
55
55
  "@types/adm-zip": "^0.5.5",
56
56
  "@types/debug": "^4.1.7",
57
57
  "@types/node": "^20.14.9",
@@ -69,16 +69,17 @@
69
69
  "rimraf": "^5.0.5",
70
70
  "typescript": "~5.5.0",
71
71
  "typescript-eslint": "7.7.1",
72
- "@nomicfoundation/hardhat-test-utils": "^3.0.0-next.1"
72
+ "@nomicfoundation/hardhat-test-utils": "^3.0.0-next.2"
73
73
  },
74
74
  "dependencies": {
75
- "@ignored/edr": "0.8.0-alpha.2",
75
+ "@ignored/edr": "0.10.0-alpha.1",
76
76
  "@ignored/edr-optimism": "0.6.5-alpha.3",
77
- "@nomicfoundation/hardhat-errors": "^3.0.0-next.1",
78
- "@nomicfoundation/hardhat-utils": "^3.0.0-next.1",
79
- "@nomicfoundation/hardhat-zod-utils": "^3.0.0-next.1",
77
+ "@nomicfoundation/hardhat-errors": "^3.0.0-next.2",
78
+ "@nomicfoundation/hardhat-utils": "^3.0.0-next.2",
79
+ "@nomicfoundation/hardhat-zod-utils": "^3.0.0-next.2",
80
80
  "@nomicfoundation/solidity-analyzer": "^0.1.1",
81
- "@sentry/node": "^5.18.1",
81
+ "@sentry/core": "^9.4.0",
82
+ "@sentry/node": "^9.4.0",
82
83
  "adm-zip": "^0.4.16",
83
84
  "chalk": "^5.3.0",
84
85
  "debug": "^4.3.2",
@@ -217,13 +217,6 @@ export class SolidityBuildSystemImplementation implements SolidityBuildSystem {
217
217
  );
218
218
  }),
219
219
  );
220
-
221
- await this.#hooks.runHandlerChain(
222
- "solidity",
223
- "onAllArtifactsEmitted",
224
- [contractArtifactsGeneratedByCompilationJob],
225
- async () => {},
226
- );
227
220
  }
228
221
 
229
222
  const resultsMap: Map<string, FileBuildResult> = new Map();
@@ -663,6 +656,13 @@ export class SolidityBuildSystemImplementation implements SolidityBuildSystem {
663
656
  duplicatedContractNamesDeclarationFilePath,
664
657
  getDuplicatedContractNamesDeclarationFile(duplicatedNames),
665
658
  );
659
+
660
+ await this.#hooks.runHandlerChain(
661
+ "solidity",
662
+ "onCleanUpArtifacts",
663
+ [artifactPaths],
664
+ async () => {},
665
+ );
666
666
  }
667
667
 
668
668
  public async compileBuildInfo(
@@ -138,7 +138,8 @@ export class CompilerDownloaderImplementation implements CompilerDownloader {
138
138
  readonly #compilersDir: string;
139
139
  readonly #downloadFunction: typeof download;
140
140
 
141
- readonly #mutex = new MultiProcessMutex("compiler-download");
141
+ readonly #mutexCompiler = new MultiProcessMutex("compiler-download");
142
+ readonly #mutexCompilerList = new MultiProcessMutex("compiler-download-list");
142
143
 
143
144
  /**
144
145
  * Use CompilerDownloader.getConcurrencySafeDownloader instead
@@ -156,21 +157,23 @@ export class CompilerDownloaderImplementation implements CompilerDownloader {
156
157
  public async updateCompilerListIfNeeded(
157
158
  versions: Set<string>,
158
159
  ): Promise<void> {
159
- if (await this.#shouldDownloadCompilerList(versions)) {
160
- try {
161
- log(
162
- `Downloading the list of solc builds for platform ${this.#platform}`,
163
- );
164
- await this.#downloadCompilerList();
165
- } catch (e) {
166
- ensureError(e);
167
-
168
- throw new HardhatError(
169
- HardhatError.ERRORS.SOLIDITY.VERSION_LIST_DOWNLOAD_FAILED,
170
- e,
171
- );
160
+ await this.#mutexCompilerList.use(async () => {
161
+ if (await this.#shouldDownloadCompilerList(versions)) {
162
+ try {
163
+ log(
164
+ `Downloading the list of solc builds for platform ${this.#platform}`,
165
+ );
166
+ await this.#downloadCompilerList();
167
+ } catch (e) {
168
+ ensureError(e);
169
+
170
+ throw new HardhatError(
171
+ HardhatError.ERRORS.SOLIDITY.VERSION_LIST_DOWNLOAD_FAILED,
172
+ e,
173
+ );
174
+ }
172
175
  }
173
- }
176
+ });
174
177
  }
175
178
 
176
179
  public async isCompilerDownloaded(version: string): Promise<boolean> {
@@ -186,7 +189,7 @@ export class CompilerDownloaderImplementation implements CompilerDownloader {
186
189
  // This is because the mutex blocks access until a compiler has been fully downloaded, preventing any new process
187
190
  // from checking whether that version of the compiler exists. Without mutex it might incorrectly
188
191
  // return false, indicating that the compiler isn't present, even though it is currently being downloaded.
189
- return this.#mutex.use(async () => {
192
+ return this.#mutexCompiler.use(async () => {
190
193
  const isCompilerDownloaded = await this.isCompilerDownloaded(version);
191
194
 
192
195
  if (isCompilerDownloaded === true) {
@@ -1,5 +1,4 @@
1
1
  import type { SolidityBuildSystem } from "../../../types/solidity/build-system.js";
2
- import type { CompilationJob } from "../../../types/solidity.js";
3
2
 
4
3
  import "../../../types/config.js";
5
4
  declare module "../../../types/config.js" {
@@ -99,19 +98,20 @@ declare module "../../../types/hooks.js" {
99
98
 
100
99
  export interface SolidityHooks {
101
100
  /**
102
- * Provide a handler for this hook to retrieve all artifacts created by a compilation job.
101
+ * Hook triggered during the cleanup process of Solidity compilation artifacts.
102
+ * This hook runs after unused artifacts and build-info files have been removed.
103
103
  *
104
104
  * @param context The hook context.
105
- * @param artifacts A map of the artifacts created by each compilation job.
105
+ * @param artifactPaths The file paths of artifacts that remain after cleanup.
106
106
  * @param next A function to call the next handler for this hook, or the
107
- * default implementation if there are no more handlers.
107
+ * default implementation if no more handlers exist.
108
108
  */
109
- onAllArtifactsEmitted: (
109
+ onCleanUpArtifacts: (
110
110
  context: HookContext,
111
- artifacts: Map<CompilationJob, ReadonlyMap<string, string[]>>,
111
+ artifactPaths: string[],
112
112
  next: (
113
113
  nextContext: HookContext,
114
- artifacts: Map<CompilationJob, ReadonlyMap<string, string[]>>,
114
+ artifactPaths: string[],
115
115
  ) => Promise<void>,
116
116
  ) => Promise<void>;
117
117
  }
@@ -2,6 +2,8 @@ import type { HardhatUserConfig } from "../../../config.js";
2
2
  import type { HardhatConfig } from "../../../types/config.js";
3
3
  import type { HardhatUserConfigValidationError } from "../../../types/hooks.js";
4
4
 
5
+ import path from "node:path";
6
+
5
7
  import { isObject } from "@nomicfoundation/hardhat-utils/lang";
6
8
  import { resolveFromRoot } from "@nomicfoundation/hardhat-utils/path";
7
9
  import {
@@ -121,6 +123,13 @@ export async function resolveSolidityTestUserConfig(
121
123
  testsPath = typeof testsPath === "object" ? testsPath.solidity : testsPath;
122
124
  testsPath ??= "test";
123
125
 
126
+ const defaultRpcCachePath = path.join(resolvedConfig.paths.cache, "edr");
127
+
128
+ const solidityTest = {
129
+ rpcCachePath: defaultRpcCachePath,
130
+ ...userConfig.solidityTest,
131
+ };
132
+
124
133
  return {
125
134
  ...resolvedConfig,
126
135
  paths: {
@@ -130,6 +139,6 @@ export async function resolveSolidityTestUserConfig(
130
139
  solidity: resolveFromRoot(resolvedConfig.paths.root, testsPath),
131
140
  },
132
141
  },
133
- solidityTest: userConfig.solidityTest ?? {},
142
+ solidityTest,
134
143
  };
135
144
  }
@@ -128,13 +128,15 @@ export async function* testReporter(
128
128
  }
129
129
 
130
130
  const stackTrace = failure.stackTrace();
131
+ // TODO handle `UnexpectedError` and `UnsafeToReplay` variants
131
132
  if (
132
133
  stackTrace !== undefined &&
133
134
  stackTrace !== null &&
134
- stackTrace.length > 0
135
+ stackTrace.kind === "StackTrace" &&
136
+ stackTrace.entries.length > 0
135
137
  ) {
136
138
  const stackTraceStack: string[] = [];
137
- for (const entry of stackTrace.reverse()) {
139
+ for (const entry of stackTrace.entries.reverse()) {
138
140
  const callsite = encodeStackTraceEntry(entry);
139
141
  if (callsite !== undefined) {
140
142
  stackTraceStack.push(` at ${callsite.toString()}`);
@@ -12,7 +12,7 @@ import {
12
12
  import { getHardhatVersion } from "../../../utils/package.js";
13
13
  import { isTelemetryAllowed } from "../telemetry-permissions.js";
14
14
 
15
- import { getSubprocessTransport } from "./transport.js";
15
+ import { makeSubprocessTransport } from "./transport.js";
16
16
 
17
17
  const log = debug("hardhat:cli:telemetry:sentry:reporter");
18
18
 
@@ -63,18 +63,22 @@ class Reporter {
63
63
 
64
64
  log("Initializing Reporter instance");
65
65
 
66
- const { Integrations, init, setExtra } = await import("@sentry/node");
66
+ const { init, setExtra, linkedErrorsIntegration, contextLinesIntegration } =
67
+ await import("@sentry/node");
67
68
 
68
- const linkedErrorsIntegration = new Integrations.LinkedErrors({
69
+ const linkedErrorsIntegrationInstance = linkedErrorsIntegration({
69
70
  key: "cause",
70
71
  });
71
72
 
72
- const transport = await getSubprocessTransport();
73
+ const contextLinesIntegrationInstance = contextLinesIntegration();
73
74
 
74
75
  init({
75
76
  dsn: SENTRY_DSN,
76
- transport,
77
- integrations: () => [linkedErrorsIntegration],
77
+ transport: makeSubprocessTransport,
78
+ integrations: () => [
79
+ linkedErrorsIntegrationInstance,
80
+ contextLinesIntegrationInstance,
81
+ ],
78
82
  });
79
83
 
80
84
  setExtra("nodeVersion", process.version);
@@ -1,18 +1,41 @@
1
- import type { Event, Response } from "@sentry/node";
1
+ import type {
2
+ BaseTransportOptions,
3
+ Transport,
4
+ TransportMakeRequestResponse,
5
+ TransportRequest,
6
+ } from "@sentry/core";
2
7
 
3
8
  import { spawnDetachedSubProcess } from "@nomicfoundation/hardhat-utils/subprocess";
9
+ import { createTransport, type Event } from "@sentry/node";
4
10
  import debug from "debug";
5
11
 
6
12
  const log = debug("hardhat:cli:telemetry:sentry:transport");
7
13
 
8
- // This class is wrapped in a function to avoid having to
9
- // import @sentry/node just for the BaseTransport base class
10
- export async function getSubprocessTransport(): Promise<any> {
11
- const { Status, Transports } = await import("@sentry/node");
14
+ export function makeSubprocessTransport(
15
+ options: BaseTransportOptions,
16
+ ): Transport {
17
+ async function makeRequest(
18
+ request: TransportRequest,
19
+ ): Promise<TransportMakeRequestResponse> {
20
+ // Any error thrown here will not be propagated to the main process
21
+ try {
22
+ // From Sentry v7 onwards, the handler receives Envelopes instead of Events.
23
+ // We extract the Event from the Envelope by iterating over the newline-separated objects
24
+ const body = ensureString(request.body);
25
+ const event: Event = body
26
+ .split("\n")
27
+ .map((result) => JSON.parse(result))
28
+ .find(
29
+ (e: any) => e.event_id !== undefined && e.timestamp !== undefined,
30
+ );
12
31
 
13
- class SubprocessTransport extends Transports.BaseTransport {
14
- public override async sendEvent(event: Event): Promise<Response> {
15
- // Be aware that any error thrown here will not be propagated to the main process
32
+ if (event === undefined) {
33
+ log(`No event found in the request body: ${body}`);
34
+
35
+ return {
36
+ statusCode: 200,
37
+ };
38
+ }
16
39
 
17
40
  const extra: { configPath?: string } = event.extra ?? {};
18
41
  const { configPath } = extra;
@@ -51,12 +74,23 @@ export async function getSubprocessTransport(): Promise<any> {
51
74
  await spawnDetachedSubProcess(subprocessFile, args, env);
52
75
 
53
76
  log("Exception sent to detached subprocess");
54
-
55
- return {
56
- status: Status.Success,
57
- };
77
+ } catch (error) {
78
+ log("Error sending event to subprocess", error);
58
79
  }
80
+
81
+ return {
82
+ statusCode: 200,
83
+ };
59
84
  }
60
85
 
61
- return SubprocessTransport;
86
+ // `createTransport` takes care of rate limiting and flushing
87
+ return createTransport(options, makeRequest);
88
+ }
89
+
90
+ export function ensureString(input: string | Uint8Array): string {
91
+ if (typeof input === "string") {
92
+ return input;
93
+ } else {
94
+ return new TextDecoder().decode(input);
95
+ }
62
96
  }
@@ -5,13 +5,13 @@
5
5
  "description": "A TypeScript Hardhat project using Node Test Runner and Viem",
6
6
  "type": "module",
7
7
  "devDependencies": {
8
- "hardhat": "workspace:^3.0.0-next.1",
9
- "@nomicfoundation/hardhat-ignition": "workspace:^3.0.0-next.1",
10
- "@nomicfoundation/hardhat-ignition-viem": "workspace:^3.0.0-next.1",
11
- "@nomicfoundation/hardhat-keystore": "workspace:^3.0.0-next.1",
12
- "@nomicfoundation/hardhat-node-test-runner": "workspace:^3.0.0-next.1",
13
- "@nomicfoundation/hardhat-network-helpers": "workspace:^3.0.0-next.1",
14
- "@nomicfoundation/hardhat-viem": "workspace:^3.0.0-next.1",
8
+ "hardhat": "workspace:^3.0.0-next.2",
9
+ "@nomicfoundation/hardhat-ignition": "workspace:^3.0.0-next.2",
10
+ "@nomicfoundation/hardhat-ignition-viem": "workspace:^3.0.0-next.2",
11
+ "@nomicfoundation/hardhat-keystore": "workspace:^3.0.0-next.2",
12
+ "@nomicfoundation/hardhat-node-test-runner": "workspace:^3.0.0-next.2",
13
+ "@nomicfoundation/hardhat-network-helpers": "workspace:^3.0.0-next.2",
14
+ "@nomicfoundation/hardhat-viem": "workspace:^3.0.0-next.2",
15
15
  "@types/node": "^22.8.5",
16
16
  "forge-std": "foundry-rs/forge-std#v1.9.4",
17
17
  "typescript": "~5.5.0",
@@ -5,15 +5,15 @@
5
5
  "description": "A TypeScript Hardhat project using Mocha and Ethers.js",
6
6
  "type": "module",
7
7
  "devDependencies": {
8
- "hardhat": "workspace:^3.0.0-next.1",
9
- "@nomicfoundation/hardhat-ethers-chai-matchers": "workspace:^3.0.0-next.1",
10
- "@nomicfoundation/hardhat-ethers": "workspace:^4.0.0-next.1",
11
- "@nomicfoundation/hardhat-ignition": "workspace:^3.0.0-next.1",
12
- "@nomicfoundation/hardhat-ignition-ethers": "workspace:^3.0.0-next.1",
13
- "@nomicfoundation/hardhat-keystore": "workspace:^3.0.0-next.1",
14
- "@nomicfoundation/hardhat-mocha": "workspace:^3.0.0-next.1",
15
- "@nomicfoundation/hardhat-network-helpers": "workspace:^3.0.0-next.1",
16
- "@nomicfoundation/hardhat-typechain": "workspace:^3.0.0-next.1",
8
+ "hardhat": "workspace:^3.0.0-next.2",
9
+ "@nomicfoundation/hardhat-ethers-chai-matchers": "workspace:^3.0.0-next.2",
10
+ "@nomicfoundation/hardhat-ethers": "workspace:^4.0.0-next.2",
11
+ "@nomicfoundation/hardhat-ignition": "workspace:^3.0.0-next.2",
12
+ "@nomicfoundation/hardhat-ignition-ethers": "workspace:^3.0.0-next.2",
13
+ "@nomicfoundation/hardhat-keystore": "workspace:^3.0.0-next.2",
14
+ "@nomicfoundation/hardhat-mocha": "workspace:^3.0.0-next.2",
15
+ "@nomicfoundation/hardhat-network-helpers": "workspace:^3.0.0-next.2",
16
+ "@nomicfoundation/hardhat-typechain": "workspace:^3.0.0-next.2",
17
17
  "@types/chai": "^4.2.0",
18
18
  "@types/chai-as-promised": "^8.0.1",
19
19
  "@types/mocha": ">=10.0.10",