hardhat 2.18.0 → 2.18.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.
@@ -49,6 +49,7 @@ const builtin_tasks_1 = require("../types/builtin-tasks");
49
49
  const contract_names_1 = require("../utils/contract-names");
50
50
  const source_names_1 = require("../utils/source-names");
51
51
  const fs_utils_1 = require("../internal/util/fs-utils");
52
+ const solc_info_1 = require("../internal/solidity/compiler/solc-info");
52
53
  const task_names_1 = require("./task-names");
53
54
  const solidity_files_cache_1 = require("./utils/solidity-files-cache");
54
55
  function isConsoleLogError(error) {
@@ -760,13 +761,28 @@ Read about compiler configuration at https://hardhat.org/config
760
761
  .addParam("quiet", undefined, undefined, config_env_1.types.boolean)
761
762
  .setAction(async ({ compilationJobs }) => {
762
763
  let count = 0;
764
+ const evmVersions = new Set();
765
+ const unknownEvmVersions = new Set();
763
766
  for (const job of compilationJobs) {
764
767
  count += job
765
768
  .getResolvedFiles()
766
769
  .filter((file) => job.emitsArtifacts(file)).length;
770
+ const solcVersion = job.getSolcConfig().version;
771
+ const evmTarget = job.getSolcConfig().settings?.evmVersion ??
772
+ (0, solc_info_1.getEvmVersionFromSolcVersion)(solcVersion);
773
+ if (evmTarget !== undefined) {
774
+ evmVersions.add(evmTarget);
775
+ }
776
+ else {
777
+ unknownEvmVersions.add(`unknown evm version for solc version ${solcVersion}`);
778
+ }
767
779
  }
780
+ const targetVersionsList = Array.from(evmVersions)
781
+ // Alphabetically sort evm versions. The unknown ones are added at the end
782
+ .sort()
783
+ .concat(Array.from(unknownEvmVersions).sort());
768
784
  if (count > 0) {
769
- console.log(`Compiled ${count} Solidity ${(0, strings_1.pluralize)(count, "file")} successfully`);
785
+ console.log(`Compiled ${count} Solidity ${(0, strings_1.pluralize)(count, "file")} successfully (evm ${(0, strings_1.pluralize)(targetVersionsList.length, "target", "targets")}: ${targetVersionsList.join(", ")}).`);
770
786
  }
771
787
  });
772
788
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"compile.js","sourceRoot":"","sources":["../src/builtin-tasks/compile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compile.js","sourceRoot":"","sources":["../src/builtin-tasks/compile.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"project-creation.d.ts","sourceRoot":"","sources":["../../src/internal/cli/project-creation.ts"],"names":[],"mappings":"AAmOA,eAAO,MAAM,oBAAoB,+GAIhC,CAAC;AA4FF,wBAAsB,aAAa,kBAoJlC"}
1
+ {"version":3,"file":"project-creation.d.ts","sourceRoot":"","sources":["../../src/internal/cli/project-creation.ts"],"names":[],"mappings":"AA8PA,eAAO,MAAM,oBAAoB,+GAIhC,CAAC;AAsGF,wBAAsB,aAAa,kBAoJlC"}
@@ -46,27 +46,38 @@ var Action;
46
46
  (function (Action) {
47
47
  Action["CREATE_JAVASCRIPT_PROJECT_ACTION"] = "Create a JavaScript project";
48
48
  Action["CREATE_TYPESCRIPT_PROJECT_ACTION"] = "Create a TypeScript project";
49
+ Action["CREATE_TYPESCRIPT_VIEM_PROJECT_ACTION"] = "Create a TypeScript project (with Viem)";
49
50
  Action["CREATE_EMPTY_HARDHAT_CONFIG_ACTION"] = "Create an empty hardhat.config.js";
50
51
  Action["QUIT_ACTION"] = "Quit";
51
52
  })(Action || (Action = {}));
52
53
  const HARDHAT_PACKAGE_NAME = "hardhat";
53
- const PROJECT_DEPENDENCIES = {
54
+ const PROJECT_DEPENDENCIES = {};
55
+ const ETHERS_PROJECT_DEPENDENCIES = {
54
56
  "@nomicfoundation/hardhat-toolbox": "^3.0.0",
55
57
  };
58
+ const VIEM_PROJECT_DEPENDENCIES = {
59
+ "@nomicfoundation/hardhat-toolbox-viem": "^1.0.0",
60
+ };
56
61
  const PEER_DEPENDENCIES = {
57
62
  hardhat: "^2.14.0",
58
63
  "@nomicfoundation/hardhat-network-helpers": "^1.0.0",
59
- "@nomicfoundation/hardhat-chai-matchers": "^2.0.0",
60
- "@nomicfoundation/hardhat-ethers": "^3.0.0",
61
64
  "@nomicfoundation/hardhat-verify": "^1.0.0",
62
65
  chai: "^4.2.0",
63
- ethers: "^6.4.0",
64
66
  "hardhat-gas-reporter": "^1.0.8",
65
67
  "solidity-coverage": "^0.8.0",
68
+ };
69
+ const ETHERS_PEER_DEPENDENCIES = {
70
+ "@nomicfoundation/hardhat-chai-matchers": "^2.0.0",
71
+ "@nomicfoundation/hardhat-ethers": "^3.0.0",
72
+ ethers: "^6.4.0",
66
73
  "@typechain/hardhat": "^8.0.0",
67
74
  typechain: "^8.1.0",
68
75
  "@typechain/ethers-v6": "^0.4.0",
69
76
  };
77
+ const VIEM_PEER_DEPENDENCIES = {
78
+ "@nomicfoundation/hardhat-viem": "^1.0.0",
79
+ viem: "^1.15.1",
80
+ };
70
81
  const TYPESCRIPT_DEPENDENCIES = {};
71
82
  const TYPESCRIPT_PEER_DEPENDENCIES = {
72
83
  "@types/chai": "^4.2.0",
@@ -75,6 +86,13 @@ const TYPESCRIPT_PEER_DEPENDENCIES = {
75
86
  "ts-node": ">=8.0.0",
76
87
  typescript: ">=4.5.0",
77
88
  };
89
+ const TYPESCRIPT_ETHERS_PEER_DEPENDENCIES = {
90
+ typescript: ">=4.5.0",
91
+ };
92
+ const TYPESCRIPT_VIEM_PEER_DEPENDENCIES = {
93
+ "@types/chai-as-promised": "^7.1.6",
94
+ typescript: "~5.0.4",
95
+ };
78
96
  // generated with the "colossal" font
79
97
  function printAsciiLogo() {
80
98
  console.log(chalk_1.default.blue("888 888 888 888 888"));
@@ -106,6 +124,9 @@ async function copySampleProject(projectRoot, projectType, isEsm) {
106
124
  if (isEsm) {
107
125
  (0, errors_1.assertHardhatInvariant)(false, "Shouldn't try to create a TypeScript project in an ESM based project");
108
126
  }
127
+ else if (projectType === Action.CREATE_TYPESCRIPT_VIEM_PROJECT_ACTION) {
128
+ sampleProjectName = "typescript-viem";
129
+ }
109
130
  else {
110
131
  sampleProjectName = "typescript";
111
132
  }
@@ -189,7 +210,16 @@ async function getAction(isEsm) {
189
210
  type: "select",
190
211
  message: "What do you want to do?",
191
212
  initial: 0,
192
- choices: Object.values(Action).map((a) => {
213
+ choices: Object.values(Action)
214
+ .filter((a) => {
215
+ if (isEsm && a === Action.CREATE_TYPESCRIPT_VIEM_PROJECT_ACTION) {
216
+ // we omit the viem option for ESM projects to avoid showing
217
+ // two disabled options
218
+ return false;
219
+ }
220
+ return true;
221
+ })
222
+ .map((a) => {
193
223
  let message;
194
224
  if (isEsm) {
195
225
  if (a === Action.CREATE_EMPTY_HARDHAT_CONFIG_ACTION) {
@@ -423,9 +453,10 @@ async function getDependencies(projectType) {
423
453
  const shouldInstallPeerDependencies = (await isYarnProject()) ||
424
454
  (await isPnpmProject()) ||
425
455
  !(await doesNpmAutoInstallPeerDependencies());
426
- const shouldInstallTypescriptDependencies = projectType === Action.CREATE_TYPESCRIPT_PROJECT_ACTION;
456
+ const shouldInstallTypescriptDependencies = projectType === Action.CREATE_TYPESCRIPT_PROJECT_ACTION ||
457
+ projectType === Action.CREATE_TYPESCRIPT_VIEM_PROJECT_ACTION;
427
458
  const shouldInstallTypescriptPeerDependencies = shouldInstallTypescriptDependencies && shouldInstallPeerDependencies;
428
- return {
459
+ const commonDependencies = {
429
460
  [HARDHAT_PACKAGE_NAME]: `^${(await (0, packageInfo_1.getPackageJson)()).version}`,
430
461
  ...PROJECT_DEPENDENCIES,
431
462
  ...(shouldInstallPeerDependencies ? PEER_DEPENDENCIES : {}),
@@ -434,5 +465,28 @@ async function getDependencies(projectType) {
434
465
  ? TYPESCRIPT_PEER_DEPENDENCIES
435
466
  : {}),
436
467
  };
468
+ // At the moment, the default toolbox is the ethers based toolbox
469
+ const shouldInstallDefaultToolbox = projectType !== Action.CREATE_TYPESCRIPT_VIEM_PROJECT_ACTION;
470
+ const ethersToolboxDependencies = {
471
+ ...ETHERS_PROJECT_DEPENDENCIES,
472
+ ...(shouldInstallPeerDependencies ? ETHERS_PEER_DEPENDENCIES : {}),
473
+ ...(shouldInstallTypescriptPeerDependencies
474
+ ? TYPESCRIPT_ETHERS_PEER_DEPENDENCIES
475
+ : {}),
476
+ };
477
+ const viemToolboxDependencies = {
478
+ ...VIEM_PROJECT_DEPENDENCIES,
479
+ ...(shouldInstallPeerDependencies ? VIEM_PEER_DEPENDENCIES : {}),
480
+ ...(shouldInstallTypescriptPeerDependencies
481
+ ? TYPESCRIPT_VIEM_PEER_DEPENDENCIES
482
+ : {}),
483
+ };
484
+ const toolboxDependencies = shouldInstallDefaultToolbox
485
+ ? ethersToolboxDependencies
486
+ : viemToolboxDependencies;
487
+ return {
488
+ ...commonDependencies,
489
+ ...toolboxDependencies,
490
+ };
437
491
  }
438
492
  //# sourceMappingURL=project-creation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"project-creation.js","sourceRoot":"","sources":["../../src/internal/cli/project-creation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project-creation.js","sourceRoot":"","sources":["../../src/internal/cli/project-creation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function getEvmVersionFromSolcVersion(solcVersion: string): string | undefined;
2
+ //# sourceMappingURL=solc-info.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solc-info.d.ts","sourceRoot":"","sources":["../../../src/internal/solidity/compiler/solc-info.ts"],"names":[],"mappings":"AA8DA,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,MAAM,GAClB,MAAM,GAAG,SAAS,CAEpB"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getEvmVersionFromSolcVersion = void 0;
4
+ const defaultEvmTargets = {
5
+ "0.5.1": "byzantium",
6
+ "0.5.2": "byzantium",
7
+ "0.5.3": "byzantium",
8
+ "0.5.4": "byzantium",
9
+ "0.5.5": "petersburg",
10
+ "0.5.6": "petersburg",
11
+ "0.5.7": "petersburg",
12
+ "0.5.8": "petersburg",
13
+ "0.5.9": "petersburg",
14
+ "0.5.10": "petersburg",
15
+ "0.5.11": "petersburg",
16
+ "0.5.12": "petersburg",
17
+ "0.5.13": "petersburg",
18
+ "0.5.14": "istanbul",
19
+ "0.5.15": "istanbul",
20
+ "0.5.16": "istanbul",
21
+ "0.5.17": "istanbul",
22
+ "0.6.0": "istanbul",
23
+ "0.6.1": "istanbul",
24
+ "0.6.2": "istanbul",
25
+ "0.6.3": "istanbul",
26
+ "0.6.4": "istanbul",
27
+ "0.6.5": "istanbul",
28
+ "0.6.6": "istanbul",
29
+ "0.6.7": "istanbul",
30
+ "0.6.8": "istanbul",
31
+ "0.6.9": "istanbul",
32
+ "0.6.10": "istanbul",
33
+ "0.6.11": "istanbul",
34
+ "0.6.12": "istanbul",
35
+ "0.7.0": "istanbul",
36
+ "0.7.1": "istanbul",
37
+ "0.7.2": "istanbul",
38
+ "0.7.3": "istanbul",
39
+ "0.7.4": "istanbul",
40
+ "0.7.5": "istanbul",
41
+ "0.7.6": "istanbul",
42
+ "0.8.0": "istanbul",
43
+ "0.8.1": "istanbul",
44
+ "0.8.2": "istanbul",
45
+ "0.8.3": "istanbul",
46
+ "0.8.4": "istanbul",
47
+ "0.8.5": "berlin",
48
+ "0.8.6": "berlin",
49
+ "0.8.7": "london",
50
+ "0.8.8": "london",
51
+ "0.8.9": "london",
52
+ "0.8.10": "london",
53
+ "0.8.11": "london",
54
+ "0.8.12": "london",
55
+ "0.8.13": "london",
56
+ "0.8.14": "london",
57
+ "0.8.15": "london",
58
+ "0.8.16": "london",
59
+ "0.8.17": "london",
60
+ "0.8.18": "paris",
61
+ "0.8.19": "paris",
62
+ "0.8.20": "shanghai",
63
+ "0.8.21": "shanghai",
64
+ };
65
+ function getEvmVersionFromSolcVersion(solcVersion) {
66
+ return defaultEvmTargets[solcVersion];
67
+ }
68
+ exports.getEvmVersionFromSolcVersion = getEvmVersionFromSolcVersion;
69
+ //# sourceMappingURL=solc-info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solc-info.js","sourceRoot":"","sources":["../../../src/internal/solidity/compiler/solc-info.ts"],"names":[],"mappings":";;;AAAA,MAAM,iBAAiB,GAA8B;IACnD,OAAO,EAAE,WAAW;IACpB,OAAO,EAAE,WAAW;IACpB,OAAO,EAAE,WAAW;IACpB,OAAO,EAAE,WAAW;IACpB,OAAO,EAAE,YAAY;IACrB,OAAO,EAAE,YAAY;IACrB,OAAO,EAAE,YAAY;IACrB,OAAO,EAAE,YAAY;IACrB,OAAO,EAAE,YAAY;IACrB,QAAQ,EAAE,YAAY;IACtB,QAAQ,EAAE,YAAY;IACtB,QAAQ,EAAE,YAAY;IACtB,QAAQ,EAAE,YAAY;IACtB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,QAAQ;IACjB,OAAO,EAAE,QAAQ;IACjB,OAAO,EAAE,QAAQ;IACjB,OAAO,EAAE,QAAQ;IACjB,OAAO,EAAE,QAAQ;IACjB,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;CACrB,CAAC;AAEF,SAAgB,4BAA4B,CAC1C,WAAmB;IAEnB,OAAO,iBAAiB,CAAC,WAAW,CAAC,CAAC;AACxC,CAAC;AAJD,oEAIC"}
@@ -62,7 +62,7 @@ async function download(url, filePath, timeoutMillis = 10000, extraHeaders = {})
62
62
  },
63
63
  });
64
64
  if (response.statusCode >= 200 && response.statusCode <= 299) {
65
- const responseBody = await response.body.arrayBuffer();
65
+ const responseBody = Buffer.from(await response.body.arrayBuffer());
66
66
  const tmpFilePath = resolveTempFileName(filePath);
67
67
  await fs_extra_1.default.ensureDir(path_1.default.dirname(filePath));
68
68
  await fs_extra_1.default.writeFile(tmpFilePath, responseBody);
@@ -1 +1 @@
1
- {"version":3,"file":"download.js","sourceRoot":"","sources":["../../src/internal/util/download.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,wDAA+B;AAC/B,gDAAwB;AAExB,+CAAkD;AAClD,mCAAyC;AAEzC,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEhC,SAAS,mBAAmB,CAAC,QAAgB;IAC3C,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,cAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAEhD,OAAO,cAAI,CAAC,MAAM,CAAC;QACjB,GAAG;QACH,GAAG;QACH,IAAI,EAAE,GAAG,gBAAgB,GAAG,IAAI,EAAE;KACnC,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,QAAQ,CAC5B,GAAW,EACX,QAAgB,EAChB,aAAa,GAAG,KAAK,EACrB,eAA2C,EAAE;IAE7C,MAAM,EAAE,mBAAmB,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,wDAAa,QAAQ,GAAC,CAAC;IAE5E,IAAI,UAAsB,CAAC;IAC3B,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,IAAA,sBAAc,EAAC,GAAG,CAAC,EAAE;QAC/D,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;KACrD;SAAM;QACL,UAAU,GAAG,mBAAmB,EAAE,CAAC;KACpC;IAED,MAAM,cAAc,GAAG,IAAA,+BAAiB,GAAE,CAAC;IAE3C,gBAAgB;IAChB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE;QAClC,UAAU;QACV,cAAc,EAAE,aAAa;QAC7B,eAAe,EAAE,EAAE;QACnB,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,GAAG,YAAY;YACf,YAAY,EAAE,WAAW,cAAc,EAAE;SAC1C;KACF,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;QAC5D,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACvD,MAAM,WAAW,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,kBAAO,CAAC,SAAS,CAAC,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEhD,MAAM,kBAAO,CAAC,SAAS,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACnD,OAAO,kBAAO,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;KACjE;IACD,oEAAoE;IACpE,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAExC,sFAAsF;IACtF,MAAM,IAAI,KAAK,CACb,sBAAsB,GAAG,MAAM,QAAQ,CAAC,UAAU,cAAc,IAAI,EAAE,CACvE,CAAC;AACJ,CAAC;AA5CD,4BA4CC"}
1
+ {"version":3,"file":"download.js","sourceRoot":"","sources":["../../src/internal/util/download.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,wDAA+B;AAC/B,gDAAwB;AAExB,+CAAkD;AAClD,mCAAyC;AAEzC,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEhC,SAAS,mBAAmB,CAAC,QAAgB;IAC3C,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,cAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAEhD,OAAO,cAAI,CAAC,MAAM,CAAC;QACjB,GAAG;QACH,GAAG;QACH,IAAI,EAAE,GAAG,gBAAgB,GAAG,IAAI,EAAE;KACnC,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,QAAQ,CAC5B,GAAW,EACX,QAAgB,EAChB,aAAa,GAAG,KAAK,EACrB,eAA2C,EAAE;IAE7C,MAAM,EAAE,mBAAmB,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,wDAAa,QAAQ,GAAC,CAAC;IAE5E,IAAI,UAAsB,CAAC;IAC3B,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,IAAA,sBAAc,EAAC,GAAG,CAAC,EAAE;QAC/D,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;KACrD;SAAM;QACL,UAAU,GAAG,mBAAmB,EAAE,CAAC;KACpC;IAED,MAAM,cAAc,GAAG,IAAA,+BAAiB,GAAE,CAAC;IAE3C,gBAAgB;IAChB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE;QAClC,UAAU;QACV,cAAc,EAAE,aAAa;QAC7B,eAAe,EAAE,EAAE;QACnB,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,GAAG,YAAY;YACf,YAAY,EAAE,WAAW,cAAc,EAAE;SAC1C;KACF,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;QAC5D,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QACpE,MAAM,WAAW,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,kBAAO,CAAC,SAAS,CAAC,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEhD,MAAM,kBAAO,CAAC,SAAS,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACnD,OAAO,kBAAO,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;KACjE;IACD,oEAAoE;IACpE,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAExC,sFAAsF;IACtF,MAAM,IAAI,KAAK,CACb,sBAAsB,GAAG,MAAM,QAAQ,CAAC,UAAU,cAAc,IAAI,EAAE,CACvE,CAAC;AACJ,CAAC;AA5CD,4BA4CC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hardhat",
3
- "version": "2.18.0",
3
+ "version": "2.18.2",
4
4
  "author": "Nomic Labs LLC",
5
5
  "license": "MIT",
6
6
  "homepage": "https://hardhat.org",
@@ -0,0 +1,11 @@
1
+ # License
2
+
3
+ This is free and unencumbered software released into the public domain.
4
+
5
+ Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means.
6
+
7
+ In jurisdictions that recognize copyright laws, the author or authors of this software dedicate any and all copyright interest in the software to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this software under copyright law.
8
+
9
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
10
+
11
+ For more information, please refer to [https://unlicense.org](https://unlicense.org)
@@ -0,0 +1,13 @@
1
+ # Sample Hardhat Project
2
+
3
+ This project demonstrates a basic Hardhat use case. It comes with a sample contract, a test for that contract, and a script that deploys that contract.
4
+
5
+ Try running some of the following tasks:
6
+
7
+ ```shell
8
+ npx hardhat help
9
+ npx hardhat test
10
+ REPORT_GAS=true npx hardhat test
11
+ npx hardhat node
12
+ npx hardhat run scripts/deploy.ts
13
+ ```
@@ -0,0 +1,34 @@
1
+ // SPDX-License-Identifier: UNLICENSED
2
+ pragma solidity ^0.8.9;
3
+
4
+ // Uncomment this line to use console.log
5
+ // import "hardhat/console.sol";
6
+
7
+ contract Lock {
8
+ uint public unlockTime;
9
+ address payable public owner;
10
+
11
+ event Withdrawal(uint amount, uint when);
12
+
13
+ constructor(uint _unlockTime) payable {
14
+ require(
15
+ block.timestamp < _unlockTime,
16
+ "Unlock time should be in the future"
17
+ );
18
+
19
+ unlockTime = _unlockTime;
20
+ owner = payable(msg.sender);
21
+ }
22
+
23
+ function withdraw() public {
24
+ // Uncomment this line, and the import of "hardhat/console.sol", to print a log in your terminal
25
+ // console.log("Unlock time is %o and block timestamp is %o", unlockTime, block.timestamp);
26
+
27
+ require(block.timestamp >= unlockTime, "You can't withdraw yet");
28
+ require(msg.sender == owner, "You aren't the owner");
29
+
30
+ emit Withdrawal(address(this).balance, block.timestamp);
31
+
32
+ owner.transfer(address(this).balance);
33
+ }
34
+ }
@@ -0,0 +1,8 @@
1
+ import { HardhatUserConfig } from "hardhat/config";
2
+ import "@nomicfoundation/hardhat-toolbox-viem";
3
+
4
+ const config: HardhatUserConfig = {
5
+ solidity: "0.8.19",
6
+ };
7
+
8
+ export default config;
@@ -0,0 +1,26 @@
1
+ import { formatEther, parseEther } from "viem";
2
+ import hre from "hardhat";
3
+
4
+ async function main() {
5
+ const currentTimestampInSeconds = Math.round(Date.now() / 1000);
6
+ const unlockTime = BigInt(currentTimestampInSeconds + 60);
7
+
8
+ const lockedAmount = parseEther("0.001");
9
+
10
+ const lock = await hre.viem.deployContract("Lock", [unlockTime], {
11
+ value: lockedAmount,
12
+ });
13
+
14
+ console.log(
15
+ `Lock with ${formatEther(
16
+ lockedAmount
17
+ )}ETH and unlock timestamp ${unlockTime} deployed to ${lock.address}`
18
+ );
19
+ }
20
+
21
+ // We recommend this pattern to be able to use async/await everywhere
22
+ // and properly handle errors.
23
+ main().catch((error) => {
24
+ console.error(error);
25
+ process.exitCode = 1;
26
+ });
@@ -0,0 +1,132 @@
1
+ import {
2
+ time,
3
+ loadFixture,
4
+ } from "@nomicfoundation/hardhat-toolbox-viem/network-helpers";
5
+ import { expect } from "chai";
6
+ import hre from "hardhat";
7
+ import { getAddress, parseGwei } from "viem";
8
+
9
+ describe("Lock", function () {
10
+ // We define a fixture to reuse the same setup in every test.
11
+ // We use loadFixture to run this setup once, snapshot that state,
12
+ // and reset Hardhat Network to that snapshot in every test.
13
+ async function deployOneYearLockFixture() {
14
+ const ONE_YEAR_IN_SECS = 365 * 24 * 60 * 60;
15
+
16
+ const lockedAmount = parseGwei("1");
17
+ const unlockTime = BigInt((await time.latest()) + ONE_YEAR_IN_SECS);
18
+
19
+ // Contracts are deployed using the first signer/account by default
20
+ const [owner, otherAccount] = await hre.viem.getWalletClients();
21
+
22
+ const lock = await hre.viem.deployContract("Lock", [unlockTime], {
23
+ value: lockedAmount,
24
+ });
25
+
26
+ const publicClient = await hre.viem.getPublicClient();
27
+
28
+ return {
29
+ lock,
30
+ unlockTime,
31
+ lockedAmount,
32
+ owner,
33
+ otherAccount,
34
+ publicClient,
35
+ };
36
+ }
37
+
38
+ describe("Deployment", function () {
39
+ it("Should set the right unlockTime", async function () {
40
+ const { lock, unlockTime } = await loadFixture(deployOneYearLockFixture);
41
+
42
+ expect(await lock.read.unlockTime()).to.equal(unlockTime);
43
+ });
44
+
45
+ it("Should set the right owner", async function () {
46
+ const { lock, owner } = await loadFixture(deployOneYearLockFixture);
47
+
48
+ expect(await lock.read.owner()).to.equal(getAddress(owner.account.address));
49
+ });
50
+
51
+ it("Should receive and store the funds to lock", async function () {
52
+ const { lock, lockedAmount, publicClient } = await loadFixture(
53
+ deployOneYearLockFixture
54
+ );
55
+
56
+ expect(
57
+ await publicClient.getBalance({
58
+ address: lock.address,
59
+ })
60
+ ).to.equal(lockedAmount);
61
+ });
62
+
63
+ it("Should fail if the unlockTime is not in the future", async function () {
64
+ // We don't use the fixture here because we want a different deployment
65
+ const latestTime = BigInt(await time.latest());
66
+ await expect(
67
+ hre.viem.deployContract("Lock", [latestTime], {
68
+ value: 1n,
69
+ })
70
+ ).to.be.rejectedWith("Unlock time should be in the future");
71
+ });
72
+ });
73
+
74
+ describe("Withdrawals", function () {
75
+ describe("Validations", function () {
76
+ it("Should revert with the right error if called too soon", async function () {
77
+ const { lock } = await loadFixture(deployOneYearLockFixture);
78
+
79
+ await expect(lock.write.withdraw()).to.be.rejectedWith(
80
+ "You can't withdraw yet"
81
+ );
82
+ });
83
+
84
+ it("Should revert with the right error if called from another account", async function () {
85
+ const { lock, unlockTime, otherAccount } = await loadFixture(
86
+ deployOneYearLockFixture
87
+ );
88
+
89
+ // We can increase the time in Hardhat Network
90
+ await time.increaseTo(unlockTime);
91
+
92
+ // We retrieve the contract with a different account to send a transaction
93
+ const lockAsOtherAccount = await hre.viem.getContractAt(
94
+ "Lock",
95
+ lock.address,
96
+ { walletClient: otherAccount }
97
+ );
98
+ await expect(lockAsOtherAccount.write.withdraw()).to.be.rejectedWith(
99
+ "You aren't the owner"
100
+ );
101
+ });
102
+
103
+ it("Shouldn't fail if the unlockTime has arrived and the owner calls it", async function () {
104
+ const { lock, unlockTime } = await loadFixture(
105
+ deployOneYearLockFixture
106
+ );
107
+
108
+ // Transactions are sent using the first signer by default
109
+ await time.increaseTo(unlockTime);
110
+
111
+ await expect(lock.write.withdraw()).to.be.fulfilled;
112
+ });
113
+ });
114
+
115
+ describe("Events", function () {
116
+ it("Should emit an event on withdrawals", async function () {
117
+ const { lock, unlockTime, lockedAmount, publicClient } =
118
+ await loadFixture(deployOneYearLockFixture);
119
+
120
+ await time.increaseTo(unlockTime);
121
+
122
+ const hash = await lock.write.withdraw();
123
+ await publicClient.waitForTransactionReceipt({ hash });
124
+
125
+ // get the withdrawal events in the latest block
126
+ const withdrawalEvents = await lock.getEvents.Withdrawal()
127
+ expect(withdrawalEvents).to.have.lengthOf(1);
128
+ expect(withdrawalEvents[0].args.amount).to.equal(lockedAmount);
129
+ });
130
+ });
131
+ });
132
+ });
@@ -0,0 +1,11 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "es2020",
4
+ "module": "commonjs",
5
+ "esModuleInterop": true,
6
+ "forceConsistentCasingInFileNames": true,
7
+ "strict": true,
8
+ "skipLibCheck": true,
9
+ "resolveJsonModule": true
10
+ }
11
+ }
@@ -40,6 +40,7 @@ import { getFullyQualifiedName } from "../utils/contract-names";
40
40
  import { localPathToSourceName } from "../utils/source-names";
41
41
 
42
42
  import { getAllFilesMatching } from "../internal/util/fs-utils";
43
+ import { getEvmVersionFromSolcVersion } from "../internal/solidity/compiler/solc-info";
43
44
  import {
44
45
  TASK_COMPILE,
45
46
  TASK_COMPILE_GET_COMPILATION_TASKS,
@@ -81,14 +82,9 @@ import {
81
82
  SolidityFilesCache,
82
83
  } from "./utils/solidity-files-cache";
83
84
 
84
- type ArtifactsEmittedPerFile = Array<{
85
- file: taskTypes.ResolvedFile;
86
- artifactsEmitted: string[];
87
- }>;
88
-
89
85
  type ArtifactsEmittedPerJob = Array<{
90
86
  compilationJob: CompilationJob;
91
- artifactsEmittedPerFile: ArtifactsEmittedPerFile;
87
+ artifactsEmittedPerFile: taskTypes.ArtifactsEmittedPerFile;
92
88
  }>;
93
89
 
94
90
  function isConsoleLogError(error: any): boolean {
@@ -853,7 +849,7 @@ subtask(TASK_COMPILE_SOLIDITY_EMIT_ARTIFACTS)
853
849
  },
854
850
  { artifacts, run }
855
851
  ): Promise<{
856
- artifactsEmittedPerFile: ArtifactsEmittedPerFile;
852
+ artifactsEmittedPerFile: taskTypes.ArtifactsEmittedPerFile;
857
853
  }> => {
858
854
  const pathToBuildInfo = await artifacts.saveBuildInfo(
859
855
  compilationJob.getSolcConfig().version,
@@ -862,7 +858,7 @@ subtask(TASK_COMPILE_SOLIDITY_EMIT_ARTIFACTS)
862
858
  output
863
859
  );
864
860
 
865
- const artifactsEmittedPerFile: ArtifactsEmittedPerFile =
861
+ const artifactsEmittedPerFile: taskTypes.ArtifactsEmittedPerFile =
866
862
  await Promise.all(
867
863
  compilationJob
868
864
  .getResolvedFiles()
@@ -990,7 +986,7 @@ subtask(TASK_COMPILE_SOLIDITY_COMPILE_JOB)
990
986
  },
991
987
  { run }
992
988
  ): Promise<{
993
- artifactsEmittedPerFile: ArtifactsEmittedPerFile;
989
+ artifactsEmittedPerFile: taskTypes.ArtifactsEmittedPerFile;
994
990
  compilationJob: taskTypes.CompilationJob;
995
991
  input: CompilerInput;
996
992
  output: CompilerOutput;
@@ -1291,15 +1287,43 @@ subtask(TASK_COMPILE_SOLIDITY_LOG_COMPILATION_RESULT)
1291
1287
  .setAction(
1292
1288
  async ({ compilationJobs }: { compilationJobs: CompilationJob[] }) => {
1293
1289
  let count = 0;
1290
+ const evmVersions = new Set<string>();
1291
+ const unknownEvmVersions = new Set<string>();
1292
+
1294
1293
  for (const job of compilationJobs) {
1295
1294
  count += job
1296
1295
  .getResolvedFiles()
1297
1296
  .filter((file) => job.emitsArtifacts(file)).length;
1297
+
1298
+ const solcVersion = job.getSolcConfig().version;
1299
+ const evmTarget =
1300
+ job.getSolcConfig().settings?.evmVersion ??
1301
+ getEvmVersionFromSolcVersion(solcVersion);
1302
+
1303
+ if (evmTarget !== undefined) {
1304
+ evmVersions.add(evmTarget);
1305
+ } else {
1306
+ unknownEvmVersions.add(
1307
+ `unknown evm version for solc version ${solcVersion}`
1308
+ );
1309
+ }
1298
1310
  }
1299
1311
 
1312
+ const targetVersionsList = Array.from(evmVersions)
1313
+ // Alphabetically sort evm versions. The unknown ones are added at the end
1314
+ .sort()
1315
+ .concat(Array.from(unknownEvmVersions).sort());
1316
+
1300
1317
  if (count > 0) {
1301
1318
  console.log(
1302
- `Compiled ${count} Solidity ${pluralize(count, "file")} successfully`
1319
+ `Compiled ${count} Solidity ${pluralize(
1320
+ count,
1321
+ "file"
1322
+ )} successfully (evm ${pluralize(
1323
+ targetVersionsList.length,
1324
+ "target",
1325
+ "targets"
1326
+ )}: ${targetVersionsList.join(", ")}).`
1303
1327
  );
1304
1328
  }
1305
1329
  }
@@ -30,35 +30,51 @@ import { Dependencies, PackageManager } from "./types";
30
30
  enum Action {
31
31
  CREATE_JAVASCRIPT_PROJECT_ACTION = "Create a JavaScript project",
32
32
  CREATE_TYPESCRIPT_PROJECT_ACTION = "Create a TypeScript project",
33
+ CREATE_TYPESCRIPT_VIEM_PROJECT_ACTION = "Create a TypeScript project (with Viem)",
33
34
  CREATE_EMPTY_HARDHAT_CONFIG_ACTION = "Create an empty hardhat.config.js",
34
35
  QUIT_ACTION = "Quit",
35
36
  }
36
37
 
37
38
  type SampleProjectTypeCreationAction =
38
39
  | Action.CREATE_JAVASCRIPT_PROJECT_ACTION
39
- | Action.CREATE_TYPESCRIPT_PROJECT_ACTION;
40
+ | Action.CREATE_TYPESCRIPT_PROJECT_ACTION
41
+ | Action.CREATE_TYPESCRIPT_VIEM_PROJECT_ACTION;
40
42
 
41
43
  const HARDHAT_PACKAGE_NAME = "hardhat";
42
44
 
43
- const PROJECT_DEPENDENCIES: Dependencies = {
45
+ const PROJECT_DEPENDENCIES: Dependencies = {};
46
+
47
+ const ETHERS_PROJECT_DEPENDENCIES: Dependencies = {
44
48
  "@nomicfoundation/hardhat-toolbox": "^3.0.0",
45
49
  };
46
50
 
51
+ const VIEM_PROJECT_DEPENDENCIES: Dependencies = {
52
+ "@nomicfoundation/hardhat-toolbox-viem": "^1.0.0",
53
+ };
54
+
47
55
  const PEER_DEPENDENCIES: Dependencies = {
48
56
  hardhat: "^2.14.0",
49
57
  "@nomicfoundation/hardhat-network-helpers": "^1.0.0",
50
- "@nomicfoundation/hardhat-chai-matchers": "^2.0.0",
51
- "@nomicfoundation/hardhat-ethers": "^3.0.0",
52
58
  "@nomicfoundation/hardhat-verify": "^1.0.0",
53
59
  chai: "^4.2.0",
54
- ethers: "^6.4.0",
55
60
  "hardhat-gas-reporter": "^1.0.8",
56
61
  "solidity-coverage": "^0.8.0",
62
+ };
63
+
64
+ const ETHERS_PEER_DEPENDENCIES: Dependencies = {
65
+ "@nomicfoundation/hardhat-chai-matchers": "^2.0.0",
66
+ "@nomicfoundation/hardhat-ethers": "^3.0.0",
67
+ ethers: "^6.4.0",
57
68
  "@typechain/hardhat": "^8.0.0",
58
69
  typechain: "^8.1.0",
59
70
  "@typechain/ethers-v6": "^0.4.0",
60
71
  };
61
72
 
73
+ const VIEM_PEER_DEPENDENCIES: Dependencies = {
74
+ "@nomicfoundation/hardhat-viem": "^1.0.0",
75
+ viem: "^1.15.1",
76
+ };
77
+
62
78
  const TYPESCRIPT_DEPENDENCIES: Dependencies = {};
63
79
 
64
80
  const TYPESCRIPT_PEER_DEPENDENCIES: Dependencies = {
@@ -69,6 +85,15 @@ const TYPESCRIPT_PEER_DEPENDENCIES: Dependencies = {
69
85
  typescript: ">=4.5.0",
70
86
  };
71
87
 
88
+ const TYPESCRIPT_ETHERS_PEER_DEPENDENCIES: Dependencies = {
89
+ typescript: ">=4.5.0",
90
+ };
91
+
92
+ const TYPESCRIPT_VIEM_PEER_DEPENDENCIES: Dependencies = {
93
+ "@types/chai-as-promised": "^7.1.6",
94
+ typescript: "~5.0.4",
95
+ };
96
+
72
97
  // generated with the "colossal" font
73
98
  function printAsciiLogo() {
74
99
  console.log(
@@ -130,6 +155,8 @@ async function copySampleProject(
130
155
  false,
131
156
  "Shouldn't try to create a TypeScript project in an ESM based project"
132
157
  );
158
+ } else if (projectType === Action.CREATE_TYPESCRIPT_VIEM_PROJECT_ACTION) {
159
+ sampleProjectName = "typescript-viem";
133
160
  } else {
134
161
  sampleProjectName = "typescript";
135
162
  }
@@ -262,26 +289,36 @@ async function getAction(isEsm: boolean): Promise<Action> {
262
289
  type: "select",
263
290
  message: "What do you want to do?",
264
291
  initial: 0,
265
- choices: Object.values(Action).map((a: Action) => {
266
- let message: string;
267
- if (isEsm) {
268
- if (a === Action.CREATE_EMPTY_HARDHAT_CONFIG_ACTION) {
269
- message = a.replace(".js", ".cjs");
270
- } else if (a === Action.CREATE_TYPESCRIPT_PROJECT_ACTION) {
271
- message = `${a} (not available for ESM projects)`;
292
+ choices: Object.values(Action)
293
+ .filter((a: Action) => {
294
+ if (isEsm && a === Action.CREATE_TYPESCRIPT_VIEM_PROJECT_ACTION) {
295
+ // we omit the viem option for ESM projects to avoid showing
296
+ // two disabled options
297
+ return false;
298
+ }
299
+
300
+ return true;
301
+ })
302
+ .map((a: Action) => {
303
+ let message: string;
304
+ if (isEsm) {
305
+ if (a === Action.CREATE_EMPTY_HARDHAT_CONFIG_ACTION) {
306
+ message = a.replace(".js", ".cjs");
307
+ } else if (a === Action.CREATE_TYPESCRIPT_PROJECT_ACTION) {
308
+ message = `${a} (not available for ESM projects)`;
309
+ } else {
310
+ message = a;
311
+ }
272
312
  } else {
273
313
  message = a;
274
314
  }
275
- } else {
276
- message = a;
277
- }
278
-
279
- return {
280
- name: a,
281
- message,
282
- value: a,
283
- };
284
- }),
315
+
316
+ return {
317
+ name: a,
318
+ message,
319
+ value: a,
320
+ };
321
+ }),
285
322
  },
286
323
  ]);
287
324
 
@@ -588,12 +625,13 @@ async function getDependencies(
588
625
  !(await doesNpmAutoInstallPeerDependencies());
589
626
 
590
627
  const shouldInstallTypescriptDependencies =
591
- projectType === Action.CREATE_TYPESCRIPT_PROJECT_ACTION;
628
+ projectType === Action.CREATE_TYPESCRIPT_PROJECT_ACTION ||
629
+ projectType === Action.CREATE_TYPESCRIPT_VIEM_PROJECT_ACTION;
592
630
 
593
631
  const shouldInstallTypescriptPeerDependencies =
594
632
  shouldInstallTypescriptDependencies && shouldInstallPeerDependencies;
595
633
 
596
- return {
634
+ const commonDependencies: Dependencies = {
597
635
  [HARDHAT_PACKAGE_NAME]: `^${(await getPackageJson()).version}`,
598
636
  ...PROJECT_DEPENDENCIES,
599
637
  ...(shouldInstallPeerDependencies ? PEER_DEPENDENCIES : {}),
@@ -602,4 +640,33 @@ async function getDependencies(
602
640
  ? TYPESCRIPT_PEER_DEPENDENCIES
603
641
  : {}),
604
642
  };
643
+
644
+ // At the moment, the default toolbox is the ethers based toolbox
645
+ const shouldInstallDefaultToolbox =
646
+ projectType !== Action.CREATE_TYPESCRIPT_VIEM_PROJECT_ACTION;
647
+
648
+ const ethersToolboxDependencies: Dependencies = {
649
+ ...ETHERS_PROJECT_DEPENDENCIES,
650
+ ...(shouldInstallPeerDependencies ? ETHERS_PEER_DEPENDENCIES : {}),
651
+ ...(shouldInstallTypescriptPeerDependencies
652
+ ? TYPESCRIPT_ETHERS_PEER_DEPENDENCIES
653
+ : {}),
654
+ };
655
+
656
+ const viemToolboxDependencies: Dependencies = {
657
+ ...VIEM_PROJECT_DEPENDENCIES,
658
+ ...(shouldInstallPeerDependencies ? VIEM_PEER_DEPENDENCIES : {}),
659
+ ...(shouldInstallTypescriptPeerDependencies
660
+ ? TYPESCRIPT_VIEM_PEER_DEPENDENCIES
661
+ : {}),
662
+ };
663
+
664
+ const toolboxDependencies: Dependencies = shouldInstallDefaultToolbox
665
+ ? ethersToolboxDependencies
666
+ : viemToolboxDependencies;
667
+
668
+ return {
669
+ ...commonDependencies,
670
+ ...toolboxDependencies,
671
+ };
605
672
  }
@@ -0,0 +1,67 @@
1
+ const defaultEvmTargets: { [key: string]: string } = {
2
+ "0.5.1": "byzantium",
3
+ "0.5.2": "byzantium",
4
+ "0.5.3": "byzantium",
5
+ "0.5.4": "byzantium",
6
+ "0.5.5": "petersburg",
7
+ "0.5.6": "petersburg",
8
+ "0.5.7": "petersburg",
9
+ "0.5.8": "petersburg",
10
+ "0.5.9": "petersburg",
11
+ "0.5.10": "petersburg",
12
+ "0.5.11": "petersburg",
13
+ "0.5.12": "petersburg",
14
+ "0.5.13": "petersburg",
15
+ "0.5.14": "istanbul",
16
+ "0.5.15": "istanbul",
17
+ "0.5.16": "istanbul",
18
+ "0.5.17": "istanbul",
19
+ "0.6.0": "istanbul",
20
+ "0.6.1": "istanbul",
21
+ "0.6.2": "istanbul",
22
+ "0.6.3": "istanbul",
23
+ "0.6.4": "istanbul",
24
+ "0.6.5": "istanbul",
25
+ "0.6.6": "istanbul",
26
+ "0.6.7": "istanbul",
27
+ "0.6.8": "istanbul",
28
+ "0.6.9": "istanbul",
29
+ "0.6.10": "istanbul",
30
+ "0.6.11": "istanbul",
31
+ "0.6.12": "istanbul",
32
+ "0.7.0": "istanbul",
33
+ "0.7.1": "istanbul",
34
+ "0.7.2": "istanbul",
35
+ "0.7.3": "istanbul",
36
+ "0.7.4": "istanbul",
37
+ "0.7.5": "istanbul",
38
+ "0.7.6": "istanbul",
39
+ "0.8.0": "istanbul",
40
+ "0.8.1": "istanbul",
41
+ "0.8.2": "istanbul",
42
+ "0.8.3": "istanbul",
43
+ "0.8.4": "istanbul",
44
+ "0.8.5": "berlin",
45
+ "0.8.6": "berlin",
46
+ "0.8.7": "london",
47
+ "0.8.8": "london",
48
+ "0.8.9": "london",
49
+ "0.8.10": "london",
50
+ "0.8.11": "london",
51
+ "0.8.12": "london",
52
+ "0.8.13": "london",
53
+ "0.8.14": "london",
54
+ "0.8.15": "london",
55
+ "0.8.16": "london",
56
+ "0.8.17": "london",
57
+ "0.8.18": "paris",
58
+ "0.8.19": "paris",
59
+ "0.8.20": "shanghai",
60
+ "0.8.21": "shanghai",
61
+ };
62
+
63
+ export function getEvmVersionFromSolcVersion(
64
+ solcVersion: string
65
+ ): string | undefined {
66
+ return defaultEvmTargets[solcVersion];
67
+ }
@@ -48,7 +48,7 @@ export async function download(
48
48
  });
49
49
 
50
50
  if (response.statusCode >= 200 && response.statusCode <= 299) {
51
- const responseBody = await response.body.arrayBuffer();
51
+ const responseBody = Buffer.from(await response.body.arrayBuffer());
52
52
  const tmpFilePath = resolveTempFileName(filePath);
53
53
  await fsExtra.ensureDir(path.dirname(filePath));
54
54
 
@@ -15,6 +15,11 @@ export interface ResolvedFile {
15
15
  getVersionedName(): string;
16
16
  }
17
17
 
18
+ export type ArtifactsEmittedPerFile = Array<{
19
+ file: ResolvedFile;
20
+ artifactsEmitted: string[];
21
+ }>;
22
+
18
23
  /**
19
24
  * Information about an npm library.
20
25
  */
@@ -11,6 +11,10 @@ export interface ResolvedFile {
11
11
  contentHash: string;
12
12
  getVersionedName(): string;
13
13
  }
14
+ export type ArtifactsEmittedPerFile = Array<{
15
+ file: ResolvedFile;
16
+ artifactsEmitted: string[];
17
+ }>;
14
18
  /**
15
19
  * Information about an npm library.
16
20
  */
@@ -1 +1 @@
1
- {"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../src/types/builtin-tasks/compile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,WAAW,CAAC;IAGrB,oBAAoB,EAAE,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,IAAI,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC;IAC5C,cAAc,IAAI,OAAO,CAAC;IAC1B,KAAK,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAAC;IAC7C,gBAAgB,IAAI,YAAY,EAAE,CAAC;IACnC,aAAa,IAAI,UAAU,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,sBAAsB,IAAI,eAAe,EAAE,CAAC;IAC5C,eAAe,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,EAAE,CAAC;IACpD,gBAAgB,IAAI,YAAY,EAAE,CAAC;IACnC,yBAAyB,CAAC,IAAI,EAAE,YAAY,GAAG,oBAAoB,EAAE,CAAC;CACvE;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,YAAY,CAAC;IAEzB;;;OAGG;IACH,IAAI,EAAE,YAAY,EAAE,CAAC;CACtB;AAED;;;;;GAKG;AACH,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,MAAM,EAAE,2BAA2B,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,iCAAiC,CAAC;IAC1C,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAED,oBAAY,iCAAiC;IAC3C,WAAW,UAAU;IACrB,gCAAgC,qCAAqC;IACrE,mCAAmC,wCAAwC;IAC3E,kCAAkC,uCAAuC;IACzE,oCAAoC,yCAAyC;CAC9E;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;CACnB"}
1
+ {"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../src/types/builtin-tasks/compile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,WAAW,CAAC;IAGrB,oBAAoB,EAAE,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,IAAI,MAAM,CAAC;CAC5B;AAED,MAAM,MAAM,uBAAuB,GAAG,KAAK,CAAC;IAC1C,IAAI,EAAE,YAAY,CAAC;IACnB,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC;IAC5C,cAAc,IAAI,OAAO,CAAC;IAC1B,KAAK,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAAC;IAC7C,gBAAgB,IAAI,YAAY,EAAE,CAAC;IACnC,aAAa,IAAI,UAAU,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,sBAAsB,IAAI,eAAe,EAAE,CAAC;IAC5C,eAAe,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,EAAE,CAAC;IACpD,gBAAgB,IAAI,YAAY,EAAE,CAAC;IACnC,yBAAyB,CAAC,IAAI,EAAE,YAAY,GAAG,oBAAoB,EAAE,CAAC;CACvE;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,YAAY,CAAC;IAEzB;;;OAGG;IACH,IAAI,EAAE,YAAY,EAAE,CAAC;CACtB;AAED;;;;;GAKG;AACH,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,MAAM,EAAE,2BAA2B,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,iCAAiC,CAAC;IAC1C,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAED,oBAAY,iCAAiC;IAC3C,WAAW,UAAU;IACrB,gCAAgC,qCAAqC;IACrE,mCAAmC,wCAAwC;IAC3E,kCAAkC,uCAAuC;IACzE,oCAAoC,yCAAyC;CAC9E;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;CACnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/types/builtin-tasks/compile.ts"],"names":[],"mappings":";;;AAyFA,IAAY,iCAMX;AAND,WAAY,iCAAiC;IAC3C,0DAAqB,CAAA;IACrB,0GAAqE,CAAA;IACrE,gHAA2E,CAAA;IAC3E,8GAAyE,CAAA;IACzE,kHAA6E,CAAA;AAC/E,CAAC,EANW,iCAAiC,GAAjC,yCAAiC,KAAjC,yCAAiC,QAM5C"}
1
+ {"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/types/builtin-tasks/compile.ts"],"names":[],"mappings":";;;AA8FA,IAAY,iCAMX;AAND,WAAY,iCAAiC;IAC3C,0DAAqB,CAAA;IACrB,0GAAqE,CAAA;IACrE,gHAA2E,CAAA;IAC3E,8GAAyE,CAAA;IACzE,kHAA6E,CAAA;AAC/E,CAAC,EANW,iCAAiC,GAAjC,yCAAiC,KAAjC,yCAAiC,QAM5C"}