hardhat 2.22.17 → 2.22.19

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 (65) hide show
  1. package/builtin-tasks/compile.js +4 -4
  2. package/builtin-tasks/node.js +1 -1
  3. package/builtin-tasks/node.js.map +1 -1
  4. package/internal/cli/cli.js +1 -1
  5. package/internal/cli/cli.js.map +1 -1
  6. package/internal/cli/is-node-version-to-warn-on.d.ts +1 -1
  7. package/internal/cli/is-node-version-to-warn-on.js +1 -1
  8. package/internal/cli/project-creation.js +2 -2
  9. package/internal/core/config/config-loading.d.ts +1 -1
  10. package/internal/core/config/config-loading.d.ts.map +1 -1
  11. package/internal/core/config/config-loading.js +8 -2
  12. package/internal/core/config/config-loading.js.map +1 -1
  13. package/internal/core/config/config-validation.js +1 -1
  14. package/internal/core/config/config-validation.js.map +1 -1
  15. package/internal/core/typescript-support.d.ts +1 -1
  16. package/internal/core/typescript-support.js +1 -1
  17. package/internal/hardhat-network/provider/provider.d.ts +2 -16
  18. package/internal/hardhat-network/provider/provider.d.ts.map +1 -1
  19. package/internal/hardhat-network/provider/provider.js +17 -117
  20. package/internal/hardhat-network/provider/provider.js.map +1 -1
  21. package/internal/hardhat-network/stack-traces/constants.d.ts +0 -1
  22. package/internal/hardhat-network/stack-traces/constants.d.ts.map +1 -1
  23. package/internal/hardhat-network/stack-traces/constants.js +1 -2
  24. package/internal/hardhat-network/stack-traces/constants.js.map +1 -1
  25. package/package.json +4 -4
  26. package/src/builtin-tasks/compile.ts +4 -4
  27. package/src/builtin-tasks/node.ts +1 -1
  28. package/src/internal/cli/cli.ts +1 -1
  29. package/src/internal/cli/is-node-version-to-warn-on.ts +1 -1
  30. package/src/internal/cli/project-creation.ts +2 -2
  31. package/src/internal/core/config/config-loading.ts +9 -2
  32. package/src/internal/core/config/config-validation.ts +1 -1
  33. package/src/internal/core/typescript-support.ts +1 -1
  34. package/src/internal/hardhat-network/provider/provider.ts +20 -163
  35. package/src/internal/hardhat-network/stack-traces/constants.ts +0 -1
  36. package/internal/hardhat-network/stack-traces/compiler-to-model.d.ts +0 -3
  37. package/internal/hardhat-network/stack-traces/compiler-to-model.d.ts.map +0 -1
  38. package/internal/hardhat-network/stack-traces/compiler-to-model.js +0 -7
  39. package/internal/hardhat-network/stack-traces/compiler-to-model.js.map +0 -1
  40. package/internal/hardhat-network/stack-traces/debug.d.ts +0 -3
  41. package/internal/hardhat-network/stack-traces/debug.d.ts.map +0 -1
  42. package/internal/hardhat-network/stack-traces/debug.js +0 -8
  43. package/internal/hardhat-network/stack-traces/debug.js.map +0 -1
  44. package/internal/hardhat-network/stack-traces/message-trace.d.ts +0 -4
  45. package/internal/hardhat-network/stack-traces/message-trace.d.ts.map +0 -1
  46. package/internal/hardhat-network/stack-traces/message-trace.js +0 -3
  47. package/internal/hardhat-network/stack-traces/message-trace.js.map +0 -1
  48. package/internal/hardhat-network/stack-traces/solidityTracer.d.ts +0 -3
  49. package/internal/hardhat-network/stack-traces/solidityTracer.d.ts.map +0 -1
  50. package/internal/hardhat-network/stack-traces/solidityTracer.js +0 -7
  51. package/internal/hardhat-network/stack-traces/solidityTracer.js.map +0 -1
  52. package/internal/hardhat-network/stack-traces/vm-trace-decoder.d.ts +0 -6
  53. package/internal/hardhat-network/stack-traces/vm-trace-decoder.d.ts.map +0 -1
  54. package/internal/hardhat-network/stack-traces/vm-trace-decoder.js +0 -27
  55. package/internal/hardhat-network/stack-traces/vm-trace-decoder.js.map +0 -1
  56. package/internal/hardhat-network/stack-traces/vm-tracer.d.ts +0 -3
  57. package/internal/hardhat-network/stack-traces/vm-tracer.d.ts.map +0 -1
  58. package/internal/hardhat-network/stack-traces/vm-tracer.js +0 -7
  59. package/internal/hardhat-network/stack-traces/vm-tracer.js.map +0 -1
  60. package/src/internal/hardhat-network/stack-traces/compiler-to-model.ts +0 -7
  61. package/src/internal/hardhat-network/stack-traces/debug.ts +0 -7
  62. package/src/internal/hardhat-network/stack-traces/message-trace.ts +0 -12
  63. package/src/internal/hardhat-network/stack-traces/solidityTracer.ts +0 -7
  64. package/src/internal/hardhat-network/stack-traces/vm-trace-decoder.ts +0 -42
  65. package/src/internal/hardhat-network/stack-traces/vm-tracer.ts +0 -7
@@ -1,7 +1,5 @@
1
1
  import type {
2
2
  Artifacts,
3
- CompilerInput,
4
- CompilerOutput,
5
3
  EIP1193Provider,
6
4
  EthSubscription,
7
5
  HardhatNetworkChainsConfig,
@@ -11,31 +9,22 @@ import type {
11
9
  import type {
12
10
  EdrContext,
13
11
  Provider as EdrProviderT,
14
- VmTraceDecoder as VmTraceDecoderT,
15
- VMTracer as VMTracerT,
16
- RawTrace,
17
12
  Response,
18
13
  SubscriptionEvent,
19
14
  HttpHeader,
15
+ TracingConfigWithBuffers,
20
16
  } from "@nomicfoundation/edr";
21
17
  import { Common } from "@nomicfoundation/ethereumjs-common";
22
18
  import picocolors from "picocolors";
23
19
  import debug from "debug";
24
20
  import { EventEmitter } from "events";
25
21
  import fsExtra from "fs-extra";
26
- import * as t from "io-ts";
27
- import semver from "semver";
28
22
 
29
23
  import { requireNapiRsModule } from "../../../common/napi-rs";
30
24
  import {
31
25
  HARDHAT_NETWORK_RESET_EVENT,
32
26
  HARDHAT_NETWORK_REVERT_SNAPSHOT_EVENT,
33
27
  } from "../../constants";
34
- import {
35
- rpcCompilerInput,
36
- rpcCompilerOutput,
37
- } from "../../core/jsonrpc/types/input/solc";
38
- import { validateParams } from "../../core/jsonrpc/types/input/validation";
39
28
  import {
40
29
  InvalidArgumentsError,
41
30
  InvalidInputError,
@@ -43,17 +32,9 @@ import {
43
32
  } from "../../core/providers/errors";
44
33
  import { isErrorResponse } from "../../core/providers/http";
45
34
  import { getHardforkName } from "../../util/hardforks";
46
- import { createModelsAndDecodeBytecodes } from "../stack-traces/compiler-to-model";
47
35
  import { ConsoleLogger } from "../stack-traces/consoleLogger";
48
- import {
49
- VmTraceDecoder,
50
- initializeVmTraceDecoder,
51
- } from "../stack-traces/vm-trace-decoder";
52
- import { FIRST_SOLC_VERSION_SUPPORTED } from "../stack-traces/constants";
53
36
  import { encodeSolidityStackTrace } from "../stack-traces/solidity-errors";
54
37
  import { SolidityStackTrace } from "../stack-traces/solidity-stack-trace";
55
- import { SolidityTracer } from "../stack-traces/solidityTracer";
56
- import { VMTracer } from "../stack-traces/vm-tracer";
57
38
 
58
39
  import { getPackageJson } from "../../util/packageInfo";
59
40
  import {
@@ -168,31 +149,22 @@ export class EdrProviderWrapper
168
149
  // temporarily added to make smock work with HH+EDR
169
150
  private _callOverrideCallback?: CallOverrideCallback;
170
151
 
171
- /** Used for internal stack trace tests. */
172
- private _vmTracer?: VMTracerT;
173
-
174
152
  private constructor(
175
153
  private readonly _provider: EdrProviderT,
176
154
  // we add this for backwards-compatibility with plugins like solidity-coverage
177
155
  private readonly _node: {
178
156
  _vm: MinimalEthereumJsVm;
179
157
  },
180
- private readonly _vmTraceDecoder: VmTraceDecoderT,
181
158
  // The common configuration for EthereumJS VM is not used by EDR, but tests expect it as part of the provider.
182
- private readonly _common: Common,
183
- tracingConfig?: TracingConfig
159
+ private readonly _common: Common
184
160
  ) {
185
161
  super();
186
-
187
- if (tracingConfig !== undefined) {
188
- initializeVmTraceDecoder(this._vmTraceDecoder, tracingConfig);
189
- }
190
162
  }
191
163
 
192
164
  public static async create(
193
165
  config: HardhatNetworkProviderConfig,
194
166
  loggerConfig: LoggerConfig,
195
- tracingConfig?: TracingConfig
167
+ tracingConfig?: TracingConfigWithBuffers
196
168
  ): Promise<EdrProviderWrapper> {
197
169
  const { Provider } = requireNapiRsModule(
198
170
  "@nomicfoundation/edr"
@@ -231,15 +203,13 @@ export class EdrProviderWrapper
231
203
  ? BigInt(Math.floor(config.initialDate.getTime() / 1000))
232
204
  : undefined;
233
205
 
234
- // To accomodate construction ordering, we need an adapter to forward events
206
+ // To accommodate construction ordering, we need an adapter to forward events
235
207
  // from the EdrProvider callback to the wrapper's listener
236
208
  const eventAdapter = new EdrProviderEventAdapter();
237
209
 
238
210
  const printLineFn = loggerConfig.printLineFn ?? printLine;
239
211
  const replaceLastLineFn = loggerConfig.replaceLastLineFn ?? replaceLastLine;
240
212
 
241
- const vmTraceDecoder = new VmTraceDecoder();
242
-
243
213
  const hardforkName = getHardforkName(config.hardfork);
244
214
 
245
215
  const provider = await Provider.withConfig(
@@ -297,15 +267,6 @@ export class EdrProviderWrapper
297
267
  {
298
268
  enable: loggerConfig.enabled,
299
269
  decodeConsoleLogInputsCallback: ConsoleLogger.getDecodedLogs,
300
- getContractAndFunctionNameCallback: (
301
- code: Buffer,
302
- calldata?: Buffer
303
- ) => {
304
- return vmTraceDecoder.getContractAndFunctionNamesForCall(
305
- code,
306
- calldata
307
- );
308
- },
309
270
  printLineCallback: (message: string, replace: boolean) => {
310
271
  if (replace) {
311
272
  replaceLastLineFn(message);
@@ -314,6 +275,7 @@ export class EdrProviderWrapper
314
275
  }
315
276
  },
316
277
  },
278
+ tracingConfig ?? {},
317
279
  (event: SubscriptionEvent) => {
318
280
  eventAdapter.emit("ethEvent", event);
319
281
  }
@@ -327,9 +289,7 @@ export class EdrProviderWrapper
327
289
  const wrapper = new EdrProviderWrapper(
328
290
  provider,
329
291
  minimalEthereumJsNode,
330
- vmTraceDecoder,
331
- common,
332
- tracingConfig
292
+ common
333
293
  );
334
294
 
335
295
  // Pass through all events from the provider
@@ -350,14 +310,9 @@ export class EdrProviderWrapper
350
310
 
351
311
  const params = args.params ?? [];
352
312
 
353
- if (args.method === "hardhat_addCompilationResult") {
354
- return this._addCompilationResultAction(
355
- ...this._addCompilationResultParams(params)
356
- );
357
- } else if (args.method === "hardhat_getStackTraceFailuresCount") {
358
- return this._getStackTraceFailuresCountAction(
359
- ...this._getStackTraceFailuresCountParams(params)
360
- );
313
+ if (args.method === "hardhat_getStackTraceFailuresCount") {
314
+ // stubbed for backwards compatibility
315
+ return 0;
361
316
  }
362
317
 
363
318
  const stringifiedArgs = JSON.stringify({
@@ -378,14 +333,11 @@ export class EdrProviderWrapper
378
333
 
379
334
  const needsTraces =
380
335
  this._node._vm.evm.events.eventNames().length > 0 ||
381
- this._node._vm.events.eventNames().length > 0 ||
382
- this._vmTracer !== undefined;
336
+ this._node._vm.events.eventNames().length > 0;
383
337
 
384
338
  if (needsTraces) {
385
339
  const rawTraces = responseObject.traces;
386
340
  for (const rawTrace of rawTraces) {
387
- this._vmTracer?.observe(rawTrace);
388
-
389
341
  // For other consumers in JS we need to marshall the entire trace over FFI
390
342
  const trace = rawTrace.trace();
391
343
 
@@ -434,13 +386,14 @@ export class EdrProviderWrapper
434
386
  if (isErrorResponse(response)) {
435
387
  let error;
436
388
 
437
- const solidityTrace = responseObject.solidityTrace;
438
- let stackTrace: SolidityStackTrace | undefined;
439
- if (solidityTrace !== null) {
440
- stackTrace = await this._rawTraceToSolidityStackTrace(solidityTrace);
389
+ let stackTrace: SolidityStackTrace | null = null;
390
+ try {
391
+ stackTrace = responseObject.stackTrace();
392
+ } catch (e) {
393
+ log("Failed to get stack trace: %O", e);
441
394
  }
442
395
 
443
- if (stackTrace !== undefined) {
396
+ if (stackTrace !== null) {
444
397
  error = encodeSolidityStackTrace(response.error.message, stackTrace);
445
398
  // Pass data and transaction hash from the original error
446
399
  (error as any).data = response.error.data?.data ?? undefined;
@@ -482,15 +435,6 @@ export class EdrProviderWrapper
482
435
  }
483
436
  }
484
437
 
485
- /**
486
- * Sets a `VMTracer` that observes EVM throughout requests.
487
- *
488
- * Used for internal stack traces integration tests.
489
- */
490
- public setVmTracer(vmTracer?: VMTracerT) {
491
- this._vmTracer = vmTracer;
492
- }
493
-
494
438
  // temporarily added to make smock work with HH+EDR
495
439
  private _setCallOverrideCallback(callback: CallOverrideCallback) {
496
440
  this._callOverrideCallback = callback;
@@ -533,88 +477,6 @@ export class EdrProviderWrapper
533
477
 
534
478
  this.emit("message", message);
535
479
  }
536
-
537
- private _addCompilationResultParams(
538
- params: any[]
539
- ): [string, CompilerInput, CompilerOutput] {
540
- return validateParams(
541
- params,
542
- t.string,
543
- rpcCompilerInput,
544
- rpcCompilerOutput
545
- );
546
- }
547
-
548
- private async _addCompilationResultAction(
549
- solcVersion: string,
550
- compilerInput: CompilerInput,
551
- compilerOutput: CompilerOutput
552
- ): Promise<boolean> {
553
- let bytecodes;
554
- try {
555
- bytecodes = createModelsAndDecodeBytecodes(
556
- solcVersion,
557
- compilerInput,
558
- compilerOutput
559
- );
560
- } catch (error) {
561
- console.warn(
562
- picocolors.yellow(
563
- "The Hardhat Network tracing engine could not be updated. Run Hardhat with --verbose to learn more."
564
- )
565
- );
566
-
567
- log(
568
- "VmTraceDecoder failed to be updated. Please report this to help us improve Hardhat.\n",
569
- error
570
- );
571
-
572
- return false;
573
- }
574
-
575
- for (const bytecode of bytecodes) {
576
- this._vmTraceDecoder.addBytecode(bytecode);
577
- }
578
-
579
- return true;
580
- }
581
-
582
- private _getStackTraceFailuresCountParams(params: any[]): [] {
583
- return validateParams(params);
584
- }
585
-
586
- private _getStackTraceFailuresCountAction(): number {
587
- return this._failedStackTraces;
588
- }
589
-
590
- private async _rawTraceToSolidityStackTrace(
591
- rawTrace: RawTrace
592
- ): Promise<SolidityStackTrace | undefined> {
593
- const vmTracer = new VMTracer();
594
- vmTracer.observe(rawTrace);
595
-
596
- let vmTrace = vmTracer.getLastTopLevelMessageTrace();
597
- const vmTracerError = vmTracer.getLastError();
598
-
599
- if (vmTrace !== undefined) {
600
- vmTrace = this._vmTraceDecoder.tryToDecodeMessageTrace(vmTrace);
601
- }
602
-
603
- try {
604
- if (vmTrace === undefined || vmTracerError !== undefined) {
605
- throw vmTracerError;
606
- }
607
-
608
- const solidityTracer = new SolidityTracer();
609
- return solidityTracer.getStackTrace(vmTrace);
610
- } catch (err) {
611
- this._failedStackTraces += 1;
612
- log(
613
- "Could not generate stack trace. Please report this to help us improve Hardhat.\n",
614
- err
615
- );
616
- }
617
- }
618
480
  }
619
481
 
620
482
  async function clientVersion(edrClientVersion: string): Promise<string> {
@@ -643,19 +505,14 @@ export async function createHardhatNetworkProvider(
643
505
 
644
506
  async function makeTracingConfig(
645
507
  artifacts: Artifacts | undefined
646
- ): Promise<TracingConfig | undefined> {
508
+ ): Promise<TracingConfigWithBuffers | undefined> {
647
509
  if (artifacts !== undefined) {
648
- const buildInfos = [];
649
-
650
510
  const buildInfoFiles = await artifacts.getBuildInfoPaths();
651
511
 
652
512
  try {
653
- for (const buildInfoFile of buildInfoFiles) {
654
- const buildInfo = await fsExtra.readJson(buildInfoFile);
655
- if (semver.gte(buildInfo.solcVersion, FIRST_SOLC_VERSION_SUPPORTED)) {
656
- buildInfos.push(buildInfo);
657
- }
658
- }
513
+ const buildInfos = await Promise.all(
514
+ buildInfoFiles.map((filePath) => fsExtra.readFile(filePath))
515
+ );
659
516
 
660
517
  return {
661
518
  buildInfos,
@@ -1,2 +1 @@
1
1
  export const SUPPORTED_SOLIDITY_VERSION_RANGE = "<=0.8.28";
2
- export const FIRST_SOLC_VERSION_SUPPORTED = "0.5.1";
@@ -1,3 +0,0 @@
1
- declare const createModelsAndDecodeBytecodes: typeof import("@nomicfoundation/edr").createModelsAndDecodeBytecodes;
2
- export { createModelsAndDecodeBytecodes };
3
- //# sourceMappingURL=compiler-to-model.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"compiler-to-model.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/compiler-to-model.ts"],"names":[],"mappings":"AAEA,QAAA,MAAQ,8BAA8B,sEAEI,CAAC;AAE3C,OAAO,EAAE,8BAA8B,EAAE,CAAC"}
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createModelsAndDecodeBytecodes = void 0;
4
- const napi_rs_1 = require("../../../common/napi-rs");
5
- const { createModelsAndDecodeBytecodes } = (0, napi_rs_1.requireNapiRsModule)("@nomicfoundation/edr");
6
- exports.createModelsAndDecodeBytecodes = createModelsAndDecodeBytecodes;
7
- //# sourceMappingURL=compiler-to-model.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"compiler-to-model.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/compiler-to-model.ts"],"names":[],"mappings":";;;AAAA,qDAA8D;AAE9D,MAAM,EAAE,8BAA8B,EAAE,GAAG,IAAA,6BAAmB,EAC5D,sBAAsB,CACkB,CAAC;AAElC,wEAA8B"}
@@ -1,3 +0,0 @@
1
- declare const printMessageTrace: typeof import("@nomicfoundation/edr").printMessageTrace, printStackTrace: typeof import("@nomicfoundation/edr").printStackTrace;
2
- export { printMessageTrace, printStackTrace };
3
- //# sourceMappingURL=debug.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/debug.ts"],"names":[],"mappings":"AAEA,QAAA,MAAQ,iBAAiB,2DAAE,eAAe,uDAEA,CAAC;AAE3C,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,CAAC"}
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.printStackTrace = exports.printMessageTrace = void 0;
4
- const napi_rs_1 = require("../../../common/napi-rs");
5
- const { printMessageTrace, printStackTrace } = (0, napi_rs_1.requireNapiRsModule)("@nomicfoundation/edr");
6
- exports.printMessageTrace = printMessageTrace;
7
- exports.printStackTrace = printStackTrace;
8
- //# sourceMappingURL=debug.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"debug.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/debug.ts"],"names":[],"mappings":";;;AAAA,qDAA8D;AAE9D,MAAM,EAAE,iBAAiB,EAAE,eAAe,EAAE,GAAG,IAAA,6BAAmB,EAChE,sBAAsB,CACkB,CAAC;AAElC,8CAAiB;AAAE,0CAAe"}
@@ -1,4 +0,0 @@
1
- import type { PrecompileMessageTrace, CreateMessageTrace, CallMessageTrace } from "@nomicfoundation/edr";
2
- export type { PrecompileMessageTrace, CreateMessageTrace, CallMessageTrace };
3
- export type MessageTrace = CreateMessageTrace | CallMessageTrace | PrecompileMessageTrace;
4
- //# sourceMappingURL=message-trace.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"message-trace.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/message-trace.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,CAAC;AAE7E,MAAM,MAAM,YAAY,GACpB,kBAAkB,GAClB,gBAAgB,GAChB,sBAAsB,CAAC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=message-trace.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"message-trace.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/message-trace.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- declare const SolidityTracer: typeof import("@nomicfoundation/edr").SolidityTracer;
2
- export { SolidityTracer };
3
- //# sourceMappingURL=solidityTracer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"solidityTracer.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/solidityTracer.ts"],"names":[],"mappings":"AAEA,QAAA,MAAQ,cAAc,sDAEoB,CAAC;AAE3C,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SolidityTracer = void 0;
4
- const napi_rs_1 = require("../../../common/napi-rs");
5
- const { SolidityTracer } = (0, napi_rs_1.requireNapiRsModule)("@nomicfoundation/edr");
6
- exports.SolidityTracer = SolidityTracer;
7
- //# sourceMappingURL=solidityTracer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"solidityTracer.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/solidityTracer.ts"],"names":[],"mappings":";;;AAAA,qDAA8D;AAE9D,MAAM,EAAE,cAAc,EAAE,GAAG,IAAA,6BAAmB,EAC5C,sBAAsB,CACkB,CAAC;AAElC,wCAAc"}
@@ -1,6 +0,0 @@
1
- import type { VmTraceDecoder as VmTraceDecoderT } from "@nomicfoundation/edr";
2
- import { TracingConfig } from "../provider/node-types";
3
- declare const VmTraceDecoder: typeof VmTraceDecoderT;
4
- declare function initializeVmTraceDecoderWrapper(vmTraceDecoder: VmTraceDecoderT, tracingConfig: TracingConfig): void;
5
- export { VmTraceDecoder, VmTraceDecoderT, initializeVmTraceDecoderWrapper as initializeVmTraceDecoder, };
6
- //# sourceMappingURL=vm-trace-decoder.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vm-trace-decoder.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/vm-trace-decoder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,IAAI,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAI9E,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAKvD,QAAA,MAAQ,cAAc,wBAEoB,CAAC;AAE3C,iBAAS,+BAA+B,CACtC,cAAc,EAAE,eAAe,EAC/B,aAAa,EAAE,aAAa,QAoB7B;AAED,OAAO,EACL,cAAc,EACd,eAAe,EACf,+BAA+B,IAAI,wBAAwB,GAC5D,CAAC"}
@@ -1,27 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.initializeVmTraceDecoder = exports.VmTraceDecoder = void 0;
7
- const picocolors_1 = __importDefault(require("picocolors"));
8
- const debug_1 = __importDefault(require("debug"));
9
- const reporter_1 = require("../../sentry/reporter");
10
- const napi_rs_1 = require("../../../common/napi-rs");
11
- const log = (0, debug_1.default)("hardhat:core:hardhat-network:node");
12
- const { VmTraceDecoder, initializeVmTraceDecoder } = (0, napi_rs_1.requireNapiRsModule)("@nomicfoundation/edr");
13
- exports.VmTraceDecoder = VmTraceDecoder;
14
- function initializeVmTraceDecoderWrapper(vmTraceDecoder, tracingConfig) {
15
- try {
16
- initializeVmTraceDecoder(vmTraceDecoder, tracingConfig);
17
- }
18
- catch (error) {
19
- console.warn(picocolors_1.default.yellow("The Hardhat Network tracing engine could not be initialized. Run Hardhat with --verbose to learn more."));
20
- log("Hardhat Network tracing disabled: VmTraceDecoder failed to be initialized. Please report this to help us improve Hardhat.\n", error);
21
- if (error instanceof Error) {
22
- reporter_1.Reporter.reportError(error);
23
- }
24
- }
25
- }
26
- exports.initializeVmTraceDecoder = initializeVmTraceDecoderWrapper;
27
- //# sourceMappingURL=vm-trace-decoder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vm-trace-decoder.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/vm-trace-decoder.ts"],"names":[],"mappings":";;;;;;AACA,4DAAoC;AACpC,kDAA0B;AAC1B,oDAAiD;AAEjD,qDAA8D;AAE9D,MAAM,GAAG,GAAG,IAAA,eAAK,EAAC,mCAAmC,CAAC,CAAC;AAEvD,MAAM,EAAE,cAAc,EAAE,wBAAwB,EAAE,GAAG,IAAA,6BAAmB,EACtE,sBAAsB,CACkB,CAAC;AA2BzC,wCAAc;AAzBhB,SAAS,+BAA+B,CACtC,cAA+B,EAC/B,aAA4B;IAE5B,IAAI;QACF,wBAAwB,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;KACzD;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,CAAC,IAAI,CACV,oBAAU,CAAC,MAAM,CACf,wGAAwG,CACzG,CACF,CAAC;QAEF,GAAG,CACD,6HAA6H,EAC7H,KAAK,CACN,CAAC;QAEF,IAAI,KAAK,YAAY,KAAK,EAAE;YAC1B,mBAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;SAC7B;KACF;AACH,CAAC;AAKoC,mEAAwB"}
@@ -1,3 +0,0 @@
1
- declare const VmTracer: typeof import("@nomicfoundation/edr").VmTracer;
2
- export { VmTracer as VMTracer };
3
- //# sourceMappingURL=vm-tracer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vm-tracer.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/vm-tracer.ts"],"names":[],"mappings":"AAEA,QAAA,MAAQ,QAAQ,gDAE0B,CAAC;AAE3C,OAAO,EAAE,QAAQ,IAAI,QAAQ,EAAE,CAAC"}
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.VMTracer = void 0;
4
- const napi_rs_1 = require("../../../common/napi-rs");
5
- const { VmTracer } = (0, napi_rs_1.requireNapiRsModule)("@nomicfoundation/edr");
6
- exports.VMTracer = VmTracer;
7
- //# sourceMappingURL=vm-tracer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vm-tracer.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/vm-tracer.ts"],"names":[],"mappings":";;;AAAA,qDAA8D;AAE9D,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAA,6BAAmB,EACtC,sBAAsB,CACkB,CAAC;AAEtB,4BAAQ"}
@@ -1,7 +0,0 @@
1
- import { requireNapiRsModule } from "../../../common/napi-rs";
2
-
3
- const { createModelsAndDecodeBytecodes } = requireNapiRsModule(
4
- "@nomicfoundation/edr"
5
- ) as typeof import("@nomicfoundation/edr");
6
-
7
- export { createModelsAndDecodeBytecodes };
@@ -1,7 +0,0 @@
1
- import { requireNapiRsModule } from "../../../common/napi-rs";
2
-
3
- const { printMessageTrace, printStackTrace } = requireNapiRsModule(
4
- "@nomicfoundation/edr"
5
- ) as typeof import("@nomicfoundation/edr");
6
-
7
- export { printMessageTrace, printStackTrace };
@@ -1,12 +0,0 @@
1
- import type {
2
- PrecompileMessageTrace,
3
- CreateMessageTrace,
4
- CallMessageTrace,
5
- } from "@nomicfoundation/edr";
6
-
7
- export type { PrecompileMessageTrace, CreateMessageTrace, CallMessageTrace };
8
-
9
- export type MessageTrace =
10
- | CreateMessageTrace
11
- | CallMessageTrace
12
- | PrecompileMessageTrace;
@@ -1,7 +0,0 @@
1
- import { requireNapiRsModule } from "../../../common/napi-rs";
2
-
3
- const { SolidityTracer } = requireNapiRsModule(
4
- "@nomicfoundation/edr"
5
- ) as typeof import("@nomicfoundation/edr");
6
-
7
- export { SolidityTracer };
@@ -1,42 +0,0 @@
1
- import type { VmTraceDecoder as VmTraceDecoderT } from "@nomicfoundation/edr";
2
- import picocolors from "picocolors";
3
- import debug from "debug";
4
- import { Reporter } from "../../sentry/reporter";
5
- import { TracingConfig } from "../provider/node-types";
6
- import { requireNapiRsModule } from "../../../common/napi-rs";
7
-
8
- const log = debug("hardhat:core:hardhat-network:node");
9
-
10
- const { VmTraceDecoder, initializeVmTraceDecoder } = requireNapiRsModule(
11
- "@nomicfoundation/edr"
12
- ) as typeof import("@nomicfoundation/edr");
13
-
14
- function initializeVmTraceDecoderWrapper(
15
- vmTraceDecoder: VmTraceDecoderT,
16
- tracingConfig: TracingConfig
17
- ) {
18
- try {
19
- initializeVmTraceDecoder(vmTraceDecoder, tracingConfig);
20
- } catch (error) {
21
- console.warn(
22
- picocolors.yellow(
23
- "The Hardhat Network tracing engine could not be initialized. Run Hardhat with --verbose to learn more."
24
- )
25
- );
26
-
27
- log(
28
- "Hardhat Network tracing disabled: VmTraceDecoder failed to be initialized. Please report this to help us improve Hardhat.\n",
29
- error
30
- );
31
-
32
- if (error instanceof Error) {
33
- Reporter.reportError(error);
34
- }
35
- }
36
- }
37
-
38
- export {
39
- VmTraceDecoder,
40
- VmTraceDecoderT,
41
- initializeVmTraceDecoderWrapper as initializeVmTraceDecoder,
42
- };
@@ -1,7 +0,0 @@
1
- import { requireNapiRsModule } from "../../../common/napi-rs";
2
-
3
- const { VmTracer } = requireNapiRsModule(
4
- "@nomicfoundation/edr"
5
- ) as typeof import("@nomicfoundation/edr");
6
-
7
- export { VmTracer as VMTracer };