hardhat 2.22.5 → 2.22.7

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 (56) hide show
  1. package/internal/cli/bootstrap.js +2 -3
  2. package/internal/cli/bootstrap.js.map +1 -1
  3. package/internal/cli/constants.d.ts.map +1 -1
  4. package/internal/cli/constants.js +1 -1
  5. package/internal/cli/constants.js.map +1 -1
  6. package/internal/cli/is-node-version-to-warn-on.d.ts +13 -0
  7. package/internal/cli/is-node-version-to-warn-on.d.ts.map +1 -0
  8. package/internal/cli/is-node-version-to-warn-on.js +46 -0
  9. package/internal/cli/is-node-version-to-warn-on.js.map +1 -0
  10. package/internal/core/config/default-config.d.ts.map +1 -1
  11. package/internal/core/config/default-config.js +26 -0
  12. package/internal/core/config/default-config.js.map +1 -1
  13. package/internal/core/errors-list.js +1 -1
  14. package/internal/core/errors-list.js.map +1 -1
  15. package/internal/core/providers/construction.d.ts.map +1 -1
  16. package/internal/core/providers/construction.js +1 -0
  17. package/internal/core/providers/construction.js.map +1 -1
  18. package/internal/hardhat-network/provider/provider.d.ts +12 -9
  19. package/internal/hardhat-network/provider/provider.d.ts.map +1 -1
  20. package/internal/hardhat-network/provider/provider.js +27 -26
  21. package/internal/hardhat-network/provider/provider.js.map +1 -1
  22. package/internal/hardhat-network/provider/vm/exit.d.ts +0 -1
  23. package/internal/hardhat-network/provider/vm/exit.d.ts.map +1 -1
  24. package/internal/hardhat-network/provider/vm/exit.js +1 -16
  25. package/internal/hardhat-network/provider/vm/exit.js.map +1 -1
  26. package/internal/hardhat-network/stack-traces/consoleLogger.d.ts +15 -16
  27. package/internal/hardhat-network/stack-traces/consoleLogger.d.ts.map +1 -1
  28. package/internal/hardhat-network/stack-traces/consoleLogger.js +25 -60
  29. package/internal/hardhat-network/stack-traces/consoleLogger.js.map +1 -1
  30. package/internal/hardhat-network/stack-traces/logger.d.ts +2 -598
  31. package/internal/hardhat-network/stack-traces/logger.d.ts.map +1 -1
  32. package/internal/hardhat-network/stack-traces/logger.js +4 -5
  33. package/internal/hardhat-network/stack-traces/logger.js.map +1 -1
  34. package/internal/hardhat-network/stack-traces/message-trace.d.ts +0 -2
  35. package/internal/hardhat-network/stack-traces/message-trace.d.ts.map +1 -1
  36. package/internal/hardhat-network/stack-traces/message-trace.js.map +1 -1
  37. package/internal/hardhat-network/stack-traces/vm-tracer.d.ts +8 -7
  38. package/internal/hardhat-network/stack-traces/vm-tracer.d.ts.map +1 -1
  39. package/internal/hardhat-network/stack-traces/vm-tracer.js +13 -29
  40. package/internal/hardhat-network/stack-traces/vm-tracer.js.map +1 -1
  41. package/package.json +3 -3
  42. package/src/internal/cli/bootstrap.ts +3 -3
  43. package/src/internal/cli/constants.ts +1 -1
  44. package/src/internal/cli/is-node-version-to-warn-on.ts +54 -0
  45. package/src/internal/core/config/default-config.ts +26 -0
  46. package/src/internal/core/errors-list.ts +1 -1
  47. package/src/internal/core/providers/construction.ts +1 -0
  48. package/src/internal/hardhat-network/provider/provider.ts +34 -39
  49. package/src/internal/hardhat-network/provider/vm/exit.ts +1 -21
  50. package/src/internal/hardhat-network/stack-traces/consoleLogger.ts +32 -94
  51. package/src/internal/hardhat-network/stack-traces/logger.ts +3 -4
  52. package/src/internal/hardhat-network/stack-traces/message-trace.ts +0 -2
  53. package/src/internal/hardhat-network/stack-traces/vm-tracer.ts +13 -26
  54. package/src/types/config.ts +2 -0
  55. package/types/config.d.ts +2 -0
  56. package/types/config.d.ts.map +1 -1
@@ -21,6 +21,7 @@ class Exit {
21
21
  case 0 /* SuccessReason.Stop */:
22
22
  case 1 /* SuccessReason.Return */:
23
23
  case 2 /* SuccessReason.SelfDestruct */:
24
+ case 3 /* SuccessReason.EofReturnContract */:
24
25
  return new Exit(ExitCode.SUCCESS);
25
26
  }
26
27
  const _exhaustiveCheck = reason;
@@ -76,22 +77,6 @@ class Exit {
76
77
  }
77
78
  const _exhaustiveCheck = this.kind;
78
79
  }
79
- getEdrExceptionalHalt() {
80
- const { ExceptionalHalt } = (0, napi_rs_1.requireNapiRsModule)("@nomicfoundation/edr");
81
- switch (this.kind) {
82
- case ExitCode.OUT_OF_GAS:
83
- return 0 /* ExceptionalHalt.OutOfGas */;
84
- case ExitCode.INVALID_OPCODE:
85
- return 1 /* ExceptionalHalt.OpcodeNotFound */;
86
- case ExitCode.CODESIZE_EXCEEDS_MAXIMUM:
87
- return 11 /* ExceptionalHalt.CreateContractSizeLimit */;
88
- case ExitCode.CREATE_COLLISION:
89
- return 8 /* ExceptionalHalt.CreateCollision */;
90
- default:
91
- // eslint-disable-next-line @nomicfoundation/hardhat-internal-rules/only-hardhat-error
92
- throw new Error(`Unmatched exit code: ${this.kind}`);
93
- }
94
- }
95
80
  }
96
81
  exports.Exit = Exit;
97
82
  //# sourceMappingURL=exit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exit.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/vm/exit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exit.js","sourceRoot":"","sources":["../../../../src/internal/hardhat-network/provider/vm/exit.ts"],"names":[],"mappings":";;;AAEA,wDAAiE;AAEjE,IAAY,QAUX;AAVD,WAAY,QAAQ;IAClB,6CAAO,CAAA;IACP,2CAAM,CAAA;IACN,mDAAU,CAAA;IACV,2DAAc,CAAA;IACd,2DAAc,CAAA;IACd,6DAAe,CAAA;IACf,+EAAwB,CAAA;IACxB,+DAAgB,CAAA;IAChB,qEAAmB,CAAA;AACrB,CAAC,EAVW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAUnB;AAED,MAAa,IAAI;IACR,MAAM,CAAC,oBAAoB,CAAC,MAAqB;QACtD,MAAM,EAAE,aAAa,EAAE,GAAG,IAAA,6BAAmB,EAC3C,sBAAsB,CACkB,CAAC;QAE3C,QAAQ,MAAM,EAAE;YACd,gCAAwB;YACxB,kCAA0B;YAC1B,wCAAgC;YAChC;gBACE,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;SACrC;QAED,MAAM,gBAAgB,GAAU,MAAM,CAAC;IACzC,CAAC;IAEM,MAAM,CAAC,sBAAsB,CAAC,IAAqB;QACxD,MAAM,EAAE,eAAe,EAAE,GAAG,IAAA,6BAAmB,EAC7C,sBAAsB,CACkB,CAAC;QAE3C,QAAQ,IAAI,EAAE;YACZ;gBACE,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAEvC,4CAAoC;YACpC,6CAAqC;YACrC,8DAA8D;YAC9D;gBACE,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;YAE3C;gBACE,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;YAE5C;gBACE,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;YAE7C;gBACE,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;YAErD,OAAO,CAAC,CAAC;gBACP,sFAAsF;gBACtF,MAAM,IAAI,KAAK,CAAC,mCAAmC,IAAI,EAAE,CAAC,CAAC;aAC5D;SACF;IACH,CAAC;IAED,YAAmB,IAAc;QAAd,SAAI,GAAJ,IAAI,CAAU;IAAG,CAAC;IAE9B,OAAO;QACZ,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,OAAO,CAAC;IACxC,CAAC;IAEM,SAAS;QACd,QAAQ,IAAI,CAAC,IAAI,EAAE;YACjB,KAAK,QAAQ,CAAC,OAAO;gBACnB,OAAO,SAAS,CAAC;YACnB,KAAK,QAAQ,CAAC,MAAM;gBAClB,OAAO,UAAU,CAAC;YACpB,KAAK,QAAQ,CAAC,UAAU;gBACtB,OAAO,YAAY,CAAC;YACtB,KAAK,QAAQ,CAAC,cAAc;gBAC1B,OAAO,gBAAgB,CAAC;YAC1B,KAAK,QAAQ,CAAC,cAAc;gBAC1B,OAAO,gBAAgB,CAAC;YAC1B,KAAK,QAAQ,CAAC,eAAe;gBAC3B,OAAO,iBAAiB,CAAC;YAC3B,KAAK,QAAQ,CAAC,wBAAwB;gBACpC,OAAO,0BAA0B,CAAC;YACpC,KAAK,QAAQ,CAAC,gBAAgB;gBAC5B,OAAO,kBAAkB,CAAC;YAC5B,KAAK,QAAQ,CAAC,mBAAmB;gBAC/B,OAAO,qBAAqB,CAAC;SAChC;QAED,MAAM,gBAAgB,GAAU,IAAI,CAAC,IAAI,CAAC;IAC5C,CAAC;CACF;AA9ED,oBA8EC"}
@@ -1,23 +1,22 @@
1
1
  /// <reference types="node" />
2
- import { MessageTrace } from "./message-trace";
3
- interface ConsoleLogArray extends Array<ConsoleLogEntry> {
4
- }
5
- export type ConsoleLogEntry = string | ConsoleLogArray;
6
- export type ConsoleLogs = ConsoleLogEntry[];
2
+ /** The decoded string representation of the arguments supplied to console.log */
3
+ export type ConsoleLogArgs = string[];
4
+ export type ConsoleLogs = ConsoleLogArgs[];
7
5
  export declare class ConsoleLogger {
8
- private readonly _consoleLogs;
9
- constructor();
10
- getLogMessages(maybeDecodedMessageTrace: MessageTrace): string[];
11
- getExecutionLogs(maybeDecodedMessageTrace: MessageTrace): ConsoleLogs[];
12
- private _collectExecutionLogs;
13
6
  /**
14
7
  * Temporary code to print console.sol messages that come from EDR
15
8
  */
16
- getDecodedLogs(messages: Buffer[]): string[];
17
- private _maybeConsoleLog;
18
- private _replaceNumberFormatSpecifiers;
19
- private _decode;
9
+ static getDecodedLogs(messages: Buffer[]): string[];
10
+ /**
11
+ * Returns a formatted string using the first argument as a `printf`-like
12
+ * format string which can contain zero or more format specifiers.
13
+ *
14
+ * If there are more arguments passed than the number of specifiers, the
15
+ * extra arguments are concatenated to the returned string, separated by spaces.
16
+ */
17
+ static format(args?: ConsoleLogArgs): string;
18
+ private static _maybeConsoleLog;
19
+ /** Decodes parameters from `data` according to `types` into their string representation. */
20
+ private static _decode;
20
21
  }
21
- export declare function consoleLogToString(log: ConsoleLogs): string;
22
- export {};
23
22
  //# sourceMappingURL=consoleLogger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"consoleLogger.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/consoleLogger.ts"],"names":[],"mappings":";AAiDA,OAAO,EAKL,YAAY,EACb,MAAM,iBAAiB,CAAC;AAMzB,UAAU,eAAgB,SAAQ,KAAK,CAAC,eAAe,CAAC;CAAG;AAE3D,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,eAAe,CAAC;AAGvD,MAAM,MAAM,WAAW,GAAG,eAAe,EAAE,CAAC;AAE5C,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAEtB;;IAMA,cAAc,CAAC,wBAAwB,EAAE,YAAY,GAAG,MAAM,EAAE;IAMhE,gBAAgB,CACrB,wBAAwB,EAAE,YAAY,GACrC,WAAW,EAAE;IAUhB,OAAO,CAAC,qBAAqB;IAsB7B;;OAEG;IACI,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;IAanD,OAAO,CAAC,gBAAgB;IAgBxB,OAAO,CAAC,8BAA8B;IAqBtC,OAAO,CAAC,OAAO;CAiHhB;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAW3D"}
1
+ {"version":3,"file":"consoleLogger.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/consoleLogger.ts"],"names":[],"mappings":";AAoDA,iFAAiF;AACjF,MAAM,MAAM,cAAc,GAAG,MAAM,EAAE,CAAC;AACtC,MAAM,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;AAE3C,qBAAa,aAAa;IACxB;;OAEG;WACW,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;IAa1D;;;;;;OAMG;WACW,MAAM,CAAC,IAAI,GAAE,cAAmB,GAAG,MAAM;IAIvD,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAoC/B,4FAA4F;IAC5F,OAAO,CAAC,MAAM,CAAC,OAAO;CAiHvB"}
@@ -3,71 +3,45 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.consoleLogToString = exports.ConsoleLogger = void 0;
6
+ exports.ConsoleLogger = void 0;
7
7
  const ethereumjs_util_1 = require("@nomicfoundation/ethereumjs-util");
8
8
  const util_1 = __importDefault(require("util"));
9
9
  const logger_1 = require("./logger");
10
- const message_trace_1 = require("./message-trace");
11
- const CONSOLE_ADDRESS = "0x000000000000000000636F6e736F6c652e6c6f67"; // toHex("console.log")
12
10
  const REGISTER_SIZE = 32;
13
11
  class ConsoleLogger {
14
- constructor() {
15
- this._consoleLogs = {};
16
- this._consoleLogs = logger_1.ConsoleLogs;
17
- }
18
- getLogMessages(maybeDecodedMessageTrace) {
19
- return this.getExecutionLogs(maybeDecodedMessageTrace).map(consoleLogToString);
20
- }
21
- getExecutionLogs(maybeDecodedMessageTrace) {
22
- if ((0, message_trace_1.isPrecompileTrace)(maybeDecodedMessageTrace)) {
23
- return [];
24
- }
25
- const logs = [];
26
- this._collectExecutionLogs(maybeDecodedMessageTrace, logs);
27
- return logs;
28
- }
29
- _collectExecutionLogs(trace, logs) {
30
- for (const messageTrace of trace.steps) {
31
- if ((0, message_trace_1.isEvmStep)(messageTrace) || (0, message_trace_1.isPrecompileTrace)(messageTrace)) {
32
- continue;
33
- }
34
- if ((0, message_trace_1.isCallTrace)(messageTrace) &&
35
- (0, ethereumjs_util_1.bytesToHex)(messageTrace.address) === CONSOLE_ADDRESS.toLowerCase()) {
36
- const log = this._maybeConsoleLog(Buffer.from(messageTrace.calldata));
37
- if (log !== undefined) {
38
- logs.push(log);
39
- }
40
- continue;
41
- }
42
- this._collectExecutionLogs(messageTrace, logs);
43
- }
44
- }
45
12
  /**
46
13
  * Temporary code to print console.sol messages that come from EDR
47
14
  */
48
- getDecodedLogs(messages) {
15
+ static getDecodedLogs(messages) {
49
16
  const logs = [];
50
17
  for (const message of messages) {
51
- const log = this._maybeConsoleLog(message);
18
+ const log = ConsoleLogger._maybeConsoleLog(message);
52
19
  if (log !== undefined) {
53
- logs.push(consoleLogToString(log));
20
+ logs.push(ConsoleLogger.format(log));
54
21
  }
55
22
  }
56
23
  return logs;
57
24
  }
58
- _maybeConsoleLog(calldata) {
59
- const sig = (0, ethereumjs_util_1.bytesToInt)(calldata.slice(0, 4));
25
+ /**
26
+ * Returns a formatted string using the first argument as a `printf`-like
27
+ * format string which can contain zero or more format specifiers.
28
+ *
29
+ * If there are more arguments passed than the number of specifiers, the
30
+ * extra arguments are concatenated to the returned string, separated by spaces.
31
+ */
32
+ static format(args = []) {
33
+ return util_1.default.format(...args);
34
+ }
35
+ static _maybeConsoleLog(calldata) {
36
+ const selector = (0, ethereumjs_util_1.bytesToInt)(calldata.slice(0, 4));
60
37
  const parameters = calldata.slice(4);
61
- const types = this._consoleLogs[sig];
62
- if (types === undefined) {
38
+ const argTypes = logger_1.CONSOLE_LOG_SIGNATURES[selector];
39
+ if (argTypes === undefined) {
63
40
  return;
64
41
  }
65
- const consoleLogs = this._decode(parameters, types);
66
- this._replaceNumberFormatSpecifiers(consoleLogs);
67
- return consoleLogs;
68
- }
69
- _replaceNumberFormatSpecifiers(consoleLogs) {
42
+ const decodedArgs = ConsoleLogger._decode(parameters, argTypes);
70
43
  /**
44
+ * The first argument is interpreted as the format string, which may need adjusting.
71
45
  * Replace the occurrences of %d and %i with %s. This is necessary because if the arguments passed are numbers,
72
46
  * they could be too large to be formatted as a Number or an Integer, so it is safer to use a String.
73
47
  * %d and %i are replaced only if there is an odd number of % before the d or i.
@@ -79,11 +53,13 @@ class ConsoleLogger {
79
53
  * (?<!%) negative look-behind to make this work.
80
54
  * The (?:) is just to avoid capturing that inner group.
81
55
  */
82
- if (consoleLogs.length > 0 && typeof consoleLogs[0] === "string") {
83
- consoleLogs[0] = consoleLogs[0].replace(/((?<!%)(?:%%)*)(%[di])/g, "$1%s");
56
+ if (decodedArgs.length > 0) {
57
+ decodedArgs[0] = decodedArgs[0].replace(/((?<!%)(?:%%)*)(%[di])/g, "$1%s");
84
58
  }
59
+ return decodedArgs;
85
60
  }
86
- _decode(data, types) {
61
+ /** Decodes parameters from `data` according to `types` into their string representation. */
62
+ static _decode(data, types) {
87
63
  return types.map((type, i) => {
88
64
  const position = i * 32;
89
65
  switch (types[i]) {
@@ -179,15 +155,4 @@ class ConsoleLogger {
179
155
  }
180
156
  }
181
157
  exports.ConsoleLogger = ConsoleLogger;
182
- function consoleLogToString(log) {
183
- if (log === undefined) {
184
- return "";
185
- }
186
- // special case for console.log()
187
- if (log.length === 0) {
188
- return "";
189
- }
190
- return util_1.default.format(log[0], ...log.slice(1));
191
- }
192
- exports.consoleLogToString = consoleLogToString;
193
158
  //# sourceMappingURL=consoleLogger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"consoleLogger.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/consoleLogger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"consoleLogger.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/consoleLogger.ts"],"names":[],"mappings":"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"}