hardhat 2.24.0 → 2.24.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.
- package/internal/cli/constants.d.ts.map +1 -1
- package/internal/cli/constants.js +7 -1
- package/internal/cli/constants.js.map +1 -1
- package/internal/core/config/config-loading.d.ts.map +1 -1
- package/internal/core/config/config-loading.js +1 -0
- package/internal/core/config/config-loading.js.map +1 -1
- package/internal/core/providers/http.d.ts.map +1 -1
- package/internal/core/providers/http.js +4 -0
- package/internal/core/providers/http.js.map +1 -1
- package/internal/solidity/compiler/index.d.ts +15 -0
- package/internal/solidity/compiler/index.d.ts.map +1 -1
- package/internal/solidity/compiler/index.js +69 -35
- package/internal/solidity/compiler/index.js.map +1 -1
- package/package.json +1 -1
- package/src/internal/cli/constants.ts +7 -1
- package/src/internal/core/config/config-loading.ts +1 -0
- package/src/internal/core/providers/http.ts +9 -0
- package/src/internal/solidity/compiler/index.ts +86 -47
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/internal/cli/constants.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/internal/cli/constants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,uBAAuB,UAKnC,CAAC"}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SUPPORTED_NODE_VERSIONS = void 0;
|
|
4
|
-
|
|
4
|
+
// TODO: Remove 18 on June 30, 2025
|
|
5
|
+
exports.SUPPORTED_NODE_VERSIONS = [
|
|
6
|
+
"^18.0.0",
|
|
7
|
+
"^20.0.0",
|
|
8
|
+
"^22.0.0",
|
|
9
|
+
"^24.0.0",
|
|
10
|
+
];
|
|
5
11
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/internal/cli/constants.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/internal/cli/constants.ts"],"names":[],"mappings":";;;AAAA,mCAAmC;AACtB,QAAA,uBAAuB,GAAG;IACrC,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;CACV,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-loading.d.ts","sourceRoot":"","sources":["../../../src/internal/core/config/config-loading.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,UAAU,EACX,MAAM,gBAAgB,CAAC;AAaxB,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,
|
|
1
|
+
{"version":3,"file":"config-loading.d.ts","sourceRoot":"","sources":["../../../src/internal/core/config/config-loading.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,UAAU,EACX,MAAM,gBAAgB,CAAC;AAaxB,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,CAwBzD;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,UAU/D;AAED,wBAAgB,kBAAkB,CAChC,gBAAgB,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAC5C,EACE,sBAA8B,EAC9B,0BAAkC,GACnC,GAAE;IACD,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,0BAA0B,CAAC,EAAE,OAAO,CAAC;CAItC,GACA;IAAE,cAAc,EAAE,aAAa,CAAC;IAAC,UAAU,EAAE,iBAAiB,CAAA;CAAE,CAiElE;AAiCD;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,QAmExE;AA6GD,wBAAgB,sBAAsB,CACpC,cAAc,EAAE,aAAa,CAAC,UAAU,CAAC,GACxC,UAAU,EAAE,CAId"}
|
|
@@ -28,6 +28,7 @@ function importCsjOrEsModule(filePath) {
|
|
|
28
28
|
// because Hardhat configs can only be CJS but a .js extension will be interpreted as ESM.
|
|
29
29
|
// The kind of error we get in these cases depends on the Node.js version.
|
|
30
30
|
const node20Heuristic = e.code === "ERR_REQUIRE_ESM";
|
|
31
|
+
// Also works for node v24
|
|
31
32
|
const node22Heuristic = e.message === "module is not defined" ||
|
|
32
33
|
e.message === "require is not defined";
|
|
33
34
|
if (node20Heuristic || node22Heuristic) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-loading.js","sourceRoot":"","sources":["../../../src/internal/core/config/config-loading.ts"],"names":[],"mappings":";;;;;;AAEA,4DAAoC;AACpC,kDAA0B;AAC1B,wDAA+B;AAC/B,gDAAwB;AACxB,oDAA4B;AAQ5B,2CAA+C;AAC/C,wDAAgE;AAChE,sCAAyC;AACzC,gDAAwC;AACxC,4DAAyD;AAEzD,4EAAgG;AAChG,2DAAoD;AACpD,qDAAwD;AAExD,MAAM,GAAG,GAAG,IAAA,eAAK,EAAC,qBAAqB,CAAC,CAAC;AAEzC,SAAgB,mBAAmB,CAAC,QAAgB;IAClD,IAAI;QACF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnC,OAAO,QAAQ,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;KACrE;IAAC,OAAO,CAAM,EAAE;QACf,wFAAwF;QACxF,0FAA0F;QAC1F,0EAA0E;QAC1E,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAC;QACrD,MAAM,eAAe,GACnB,CAAC,CAAC,OAAO,KAAK,uBAAuB;YACrC,CAAC,CAAC,OAAO,KAAK,wBAAwB,CAAC;QACzC,IAAI,eAAe,IAAI,eAAe,EAAE;YACtC,MAAM,IAAI,qBAAY,CACpB,oBAAM,CAAC,OAAO,CAAC,8BAA8B,EAC7C,EAAE,EACF,CAAC,CACF,CAAC;SACH;QAED,sFAAsF;QACtF,MAAM,CAAC,CAAC;KACT;AACH,CAAC;
|
|
1
|
+
{"version":3,"file":"config-loading.js","sourceRoot":"","sources":["../../../src/internal/core/config/config-loading.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/internal/core/providers/http.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAKnE,OAAO,EACL,qBAAqB,EAKtB,MAAM,oBAAoB,CAAC;AAQ5B,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,GAAG,GACZ,QAAQ,IAAI,qBAAqB,CAEnC;AASD,qBAAa,YAAa,SAAQ,YAAa,YAAW,eAAe;IAOrE,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAT3B,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,WAAW,CAAoB;IACvC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,WAAW,CAAqB;gBAGrB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,aAAa,GAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAO,EAC9C,QAAQ,SAAQ,EACjC,MAAM,GAAE,MAAM,CAAC,UAAU,GAAG,SAAqB;IAoCnD,IAAW,GAAG,IAAI,MAAM,CAEvB;IAEY,OAAO,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/internal/core/providers/http.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAKnE,OAAO,EACL,qBAAqB,EAKtB,MAAM,oBAAoB,CAAC;AAQ5B,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,GAAG,GACZ,QAAQ,IAAI,qBAAqB,CAEnC;AASD,qBAAa,YAAa,SAAQ,YAAa,YAAW,eAAe;IAOrE,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAT3B,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,WAAW,CAAoB;IACvC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,WAAW,CAAqB;gBAGrB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,aAAa,GAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAO,EAC9C,QAAQ,SAAQ,EACjC,MAAM,GAAE,MAAM,CAAC,UAAU,GAAG,SAAqB;IAoCnD,IAAW,GAAG,IAAI,MAAM,CAEvB;IAEY,OAAO,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;IA+C9D;;OAEG;IACU,SAAS,CACpB,KAAK,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,GAAG,EAAE,CAAA;KAAE,CAAC,GAC9C,OAAO,CAAC,GAAG,EAAE,CAAC;YA4CH,qBAAqB;YAiFrB,MAAM;IASpB,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,qBAAqB;CAmB9B"}
|
|
@@ -88,6 +88,10 @@ class HttpProvider extends events_1.EventEmitter {
|
|
|
88
88
|
const jsonRpcRequest = this._getJsonRpcRequest(args.method, args.params);
|
|
89
89
|
const jsonRpcResponse = await this._fetchJsonRpcResponse(jsonRpcRequest);
|
|
90
90
|
if (isErrorResponse(jsonRpcResponse)) {
|
|
91
|
+
// Handle deprecated eth_accounts method, defaulting to empty array
|
|
92
|
+
if (/the method has been deprecated: eth_accounts/.test(jsonRpcResponse.error.message)) {
|
|
93
|
+
return [];
|
|
94
|
+
}
|
|
91
95
|
const error = new errors_2.ProviderError(jsonRpcResponse.error.message, jsonRpcResponse.error.code);
|
|
92
96
|
error.data = jsonRpcResponse.error.data;
|
|
93
97
|
// eslint-disable-next-line @nomicfoundation/hardhat-internal-rules/only-hardhat-error
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/internal/core/providers/http.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,mCAAsC;AAGtC,+CAGyB;AACzB,gDAM4B;AAC5B,wDAA2D;AAC3D,sCAAyC;AACzC,gDAAwC;AACxC,4CAAkD;AAElD,qCAAyC;AAEzC,SAAgB,eAAe,CAC7B,QAAa;IAEb,OAAO,OAAO,QAAQ,CAAC,KAAK,KAAK,WAAW,CAAC;AAC/C,CAAC;AAJD,0CAIC;AAED,MAAM,WAAW,GAAG,CAAC,CAAC;AACtB,MAAM,uBAAuB,GAAG,CAAC,CAAC;AAElC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAEpC,MAAM,cAAc,GAAG,IAAA,+BAAiB,GAAE,CAAC;AAE3C,MAAa,YAAa,SAAQ,qBAAY;IAM5C,YACmB,IAAY,EACZ,YAAoB,EACpB,gBAA4C,EAAE,EAC9C,WAAW,KAAK,EACjC,SAAwC,SAAS;QAEjD,KAAK,EAAE,CAAC;QANS,SAAI,GAAJ,IAAI,CAAQ;QACZ,iBAAY,GAAZ,YAAY,CAAQ;QACpB,kBAAa,GAAb,aAAa,CAAiC;QAC9C,aAAQ,GAAR,QAAQ,CAAQ;QAT3B,mBAAc,GAAG,CAAC,CAAC;QAczB,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAkB,CAAC;QAEhE,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;YACjC,MAAM,IAAI,qBAAY,CAAC,oBAAM,CAAC,OAAO,CAAC,SAAS,EAAE;gBAC/C,KAAK,EAAE,IAAI,CAAC,IAAI;aACjB,CAAC,CAAC;SACJ;QAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC1B,IAAI,CAAC,WAAW;YACd,GAAG,CAAC,QAAQ,KAAK,EAAE;gBACjB,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,SAAS,MAAM,CAAC,IAAI,CAClB,GAAG,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,EAAE,EACjC,OAAO,CACR,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,IAAI;YACF,IAAI,CAAC,WAAW,GAAG,MAAM,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAElD,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,IAAA,sBAAc,EAAC,GAAG,CAAC,MAAM,CAAC,EAAE;gBACtE,IAAI,CAAC,WAAW,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;aAC3D;SACF;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,YAAY,SAAS,IAAI,CAAC,CAAC,OAAO,KAAK,aAAa,EAAE;gBACzD,CAAC,CAAC,OAAO,IAAI,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;aAC/B;YACD,sFAAsF;YACtF,MAAM,CAAC,CAAC;SACT;IACH,CAAC;IAED,IAAW,GAAG;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAsB;QACzC,sEAAsE;QACtE,yEAAyE;QACzE,IAAI,IAAI,CAAC,MAAM,KAAK,gCAAgC,EAAE;YACpD,MAAM,KAAK,GAAG,IAAI,sBAAa,CAC7B,uDAAuD,EACvD,CAAC,KAAK,CACP,CAAC;YACF,sFAAsF;YACtF,MAAM,KAAK,CAAC;SACb;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAC5C,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAe,CACrB,CAAC;QACF,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;QAEzE,IAAI,eAAe,CAAC,eAAe,CAAC,EAAE;YACpC,MAAM,KAAK,GAAG,IAAI,sBAAa,CAC7B,eAAe,CAAC,KAAK,CAAC,OAAO,EAC7B,eAAe,CAAC,KAAK,CAAC,IAAI,CAC3B,CAAC;YACF,KAAK,CAAC,IAAI,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC;YACxC,sFAAsF;YACtF,MAAM,KAAK,CAAC;SACb;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,eAAe,EAAE;YACnC,IAAI,CAAC,IAAI,CAAC,uCAA2B,CAAC,CAAC;SACxC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,YAAY,EAAE;YAChC,IAAI,CAAC,IAAI,CAAC,iDAAqC,CAAC,CAAC;SAClD;QAED,OAAO,eAAe,CAAC,MAAM,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,SAAS,CACpB,KAA+C;QAE/C,uEAAuE;QACvE,sEAAsE;QACtE,MAAM,gBAAgB,GAAG,IAAI,sBAAa,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC;QAEpE,qCAAqC;QACrC,MAAM,YAAY,GAA2B,EAAE,CAAC;QAEhD,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAClC,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;YACnE,YAAY,CAAC,cAAc,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;YACpC,OAAO,cAAc,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAEpE,KAAK,MAAM,QAAQ,IAAI,gBAAgB,EAAE;YACvC,IAAI,eAAe,CAAC,QAAQ,CAAC,EAAE;gBAC7B,MAAM,KAAK,GAAG,IAAI,sBAAa,CAC7B,QAAQ,CAAC,KAAK,CAAC,OAAO,EACtB,QAAQ,CAAC,KAAK,CAAC,IAAI,EACnB,gBAAgB,CACjB,CAAC;gBACF,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;gBACjC,sFAAsF;gBACtF,MAAM,KAAK,CAAC;aACb;SACF;QAED,gEAAgE;QAChE,MAAM,SAAS,GAAG,gBAA+C,CAAC;QAElE,mFAAmF;QACnF,MAAM,eAAe,GAAG,SAAS;aAC9B,GAAG,CACF,CAAC,QAAQ,EAAE,EAAE,CACX,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAkB,CAChE;aACA,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC;aAC7C,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;QAE/B,OAAO,eAAe,CAAC;IACzB,CAAC;IAcO,KAAK,CAAC,qBAAqB,CACjC,OAA0C,EAC1C,WAAW,GAAG,CAAC;QAEf,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,wDAAa,QAAQ,GAAC,CAAC;QACxD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE/B,MAAM,OAAO,GAA+B;YAC1C,cAAc,EAAE,kBAAkB;YAClC,YAAY,EAAE,WAAW,cAAc,EAAE;YACzC,GAAG,IAAI,CAAC,aAAa;SACtB,CAAC;QAEF,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE;YAClC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC;SAC1C;QAED,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE;gBACtC,UAAU,EAAE,IAAI,CAAC,WAAW;gBAC5B,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBAC7B,eAAe,EAAE,EAAE;gBACnB,cAAc,EACZ,OAAO,CAAC,GAAG,CAAC,wCAAwC,KAAK,SAAS;oBAChE,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,IAAI,CAAC,QAAQ;gBACnB,OAAO;aACR,CAAC,CAAC;YAEH,IAAI,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EAAE;gBACvC,uEAAuE;gBACvE,oEAAoE;gBACpE,oEAAoE;gBACpE,+CAA+C;gBAC/C,qDAAqD;gBACrD,yDAAyD;gBACzD,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;gBAClE,IAAI,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE;oBACpE,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;iBACzD;gBAED,sFAAsF;gBACtF,MAAM,IAAI,sBAAa,CACrB,yCAAyC,GAAG,CAAC,QAAQ,EAAE,EACvD,CAAC,KAAK,CAAC,sCAAsC;iBAC9C,CAAC;aACH;YAED,OAAO,IAAA,2BAAiB,EAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;SACtD;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE;gBACjC,MAAM,IAAI,qBAAY,CACpB,oBAAM,CAAC,OAAO,CAAC,mBAAmB,EAClC,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,EAC9B,KAAK,CACN,CAAC;aACH;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE;gBACpC,MAAM,IAAI,qBAAY,CAAC,oBAAM,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;aACnE;YAED,sFAAsF;YACtF,MAAM,KAAK,CAAC;SACb;IACH,CAAC;IAEO,KAAK,CAAC,MAAM,CAClB,OAA0C,EAC1C,OAAe,EACf,WAAmB;QAEnB,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC;IAC9D,CAAC;IAEO,kBAAkB,CACxB,MAAc,EACd,SAAgB,EAAE;QAElB,OAAO;YACL,OAAO,EAAE,KAAK;YACd,MAAM;YACN,MAAM;YACN,EAAE,EAAE,IAAI,CAAC,cAAc,EAAE;SAC1B,CAAC;IACJ,CAAC;IAEO,YAAY,CAAC,WAAmB,EAAE,iBAAyB;QACjE,IAAI,WAAW,GAAG,WAAW,EAAE;YAC7B,OAAO,KAAK,CAAC;SACd;QAED,IAAI,iBAAiB,GAAG,uBAAuB,EAAE;YAC/C,OAAO,KAAK,CAAC;SACd;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,oBAAoB,CAAC,QAAwC;QACnE,OAAO,QAAQ,CAAC,UAAU,KAAK,uBAAuB,CAAC;IACzD,CAAC;IAEO,qBAAqB,CAC3B,QAAwC,EACxC,WAAmB;QAEnB,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAE/C,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACpE,2DAA2D;YAC3D,yBAAyB;YACzB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,WAAW,EAAE,uBAAuB,CAAC,CAAC;SAC5D;QAED,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACpC,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE;YACjB,OAAO,SAAS,CAAC;SAClB;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/internal/core/providers/http.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { ExecFileOptions } from "node:child_process";
|
|
1
3
|
import { CompilerInput, CompilerOutput } from "../../../types";
|
|
2
4
|
export interface ICompiler {
|
|
3
5
|
compile(input: CompilerInput): Promise<CompilerOutput>;
|
|
@@ -13,4 +15,17 @@ export declare class NativeCompiler implements ICompiler {
|
|
|
13
15
|
constructor(_pathToSolc: string, _solcVersion?: string | undefined);
|
|
14
16
|
compile(input: CompilerInput): Promise<any>;
|
|
15
17
|
}
|
|
18
|
+
/**
|
|
19
|
+
* Executes a command using execFile, writes provided input to stdin,
|
|
20
|
+
* and returns a Promise that resolves with stdout and stderr.
|
|
21
|
+
*
|
|
22
|
+
* @param {string} file - The file to execute.
|
|
23
|
+
* @param {readonly string[]} args - The arguments to pass to the file.
|
|
24
|
+
* @param {ExecFileOptions} options - The options to pass to the exec function.
|
|
25
|
+
* @returns {Promise<{stdout: string, stderr: string}>}
|
|
26
|
+
*/
|
|
27
|
+
export declare function execFileWithInput(file: string, args: readonly string[], input: string, options?: ExecFileOptions): Promise<{
|
|
28
|
+
stdout: string;
|
|
29
|
+
stderr: string;
|
|
30
|
+
}>;
|
|
16
31
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/internal/solidity/compiler/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAI/D,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CACxD;AAED,qBAAa,QAAS,YAAW,SAAS;IAC5B,OAAO,CAAC,aAAa;gBAAb,aAAa,EAAE,MAAM;IAE5B,OAAO,CAAC,KAAK,EAAE,aAAa;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/internal/solidity/compiler/index.ts"],"names":[],"mappings":";AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAI/D,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CACxD;AAED,qBAAa,QAAS,YAAW,SAAS;IAC5B,OAAO,CAAC,aAAa;gBAAb,aAAa,EAAE,MAAM;IAE5B,OAAO,CAAC,KAAK,EAAE,aAAa;CAqB1C;AAED,qBAAa,cAAe,YAAW,SAAS;IAClC,OAAO,CAAC,WAAW;IAAU,OAAO,CAAC,YAAY,CAAC;gBAA1C,WAAW,EAAE,MAAM,EAAU,YAAY,CAAC,oBAAQ;IAEzD,OAAO,CAAC,KAAK,EAAE,aAAa;CAoC1C;AAED;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAwC7C"}
|
|
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.NativeCompiler = exports.Compiler = void 0;
|
|
29
|
+
exports.execFileWithInput = exports.NativeCompiler = exports.Compiler = void 0;
|
|
30
30
|
const child_process_1 = require("child_process");
|
|
31
31
|
const fs = __importStar(require("fs"));
|
|
32
32
|
const node_os_1 = __importDefault(require("node:os"));
|
|
@@ -40,23 +40,16 @@ class Compiler {
|
|
|
40
40
|
}
|
|
41
41
|
async compile(input) {
|
|
42
42
|
const scriptPath = node_path_1.default.join(__dirname, "./solcjs-runner.js");
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
subprocess.stdin.write(JSON.stringify(input));
|
|
54
|
-
subprocess.stdin.end();
|
|
55
|
-
}
|
|
56
|
-
catch (e) {
|
|
57
|
-
throw new errors_1.HardhatError(errors_list_1.ERRORS.SOLC.SOLCJS_ERROR, { error: e.message }, e);
|
|
58
|
-
}
|
|
59
|
-
});
|
|
43
|
+
let output;
|
|
44
|
+
try {
|
|
45
|
+
const { stdout } = await execFileWithInput(process.execPath, [scriptPath, this._pathToSolcJs], JSON.stringify(input), {
|
|
46
|
+
maxBuffer: 1024 * 1024 * 500,
|
|
47
|
+
});
|
|
48
|
+
output = stdout;
|
|
49
|
+
}
|
|
50
|
+
catch (e) {
|
|
51
|
+
throw new errors_1.HardhatError(errors_list_1.ERRORS.SOLC.SOLCJS_ERROR, {}, e);
|
|
52
|
+
}
|
|
60
53
|
return JSON.parse(output);
|
|
61
54
|
}
|
|
62
55
|
}
|
|
@@ -83,25 +76,66 @@ class NativeCompiler {
|
|
|
83
76
|
args.push(tmpFolder);
|
|
84
77
|
}
|
|
85
78
|
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
process.stdin.write(JSON.stringify(input));
|
|
97
|
-
process.stdin.end();
|
|
98
|
-
}
|
|
99
|
-
catch (e) {
|
|
100
|
-
throw new errors_1.HardhatError(errors_list_1.ERRORS.SOLC.CANT_RUN_NATIVE_COMPILER, {}, e);
|
|
101
|
-
}
|
|
102
|
-
});
|
|
79
|
+
let output;
|
|
80
|
+
try {
|
|
81
|
+
const { stdout } = await execFileWithInput(this._pathToSolc, args, JSON.stringify(input), {
|
|
82
|
+
maxBuffer: 1024 * 1024 * 500,
|
|
83
|
+
});
|
|
84
|
+
output = stdout;
|
|
85
|
+
}
|
|
86
|
+
catch (e) {
|
|
87
|
+
throw new errors_1.HardhatError(errors_list_1.ERRORS.SOLC.CANT_RUN_NATIVE_COMPILER, {}, e);
|
|
88
|
+
}
|
|
103
89
|
return JSON.parse(output);
|
|
104
90
|
}
|
|
105
91
|
}
|
|
106
92
|
exports.NativeCompiler = NativeCompiler;
|
|
93
|
+
/**
|
|
94
|
+
* Executes a command using execFile, writes provided input to stdin,
|
|
95
|
+
* and returns a Promise that resolves with stdout and stderr.
|
|
96
|
+
*
|
|
97
|
+
* @param {string} file - The file to execute.
|
|
98
|
+
* @param {readonly string[]} args - The arguments to pass to the file.
|
|
99
|
+
* @param {ExecFileOptions} options - The options to pass to the exec function.
|
|
100
|
+
* @returns {Promise<{stdout: string, stderr: string}>}
|
|
101
|
+
*/
|
|
102
|
+
async function execFileWithInput(file, args, input, options = {}) {
|
|
103
|
+
return new Promise((resolve, reject) => {
|
|
104
|
+
const child = (0, child_process_1.execFile)(file, args, options, (error, stdout, stderr) => {
|
|
105
|
+
// `error` is any execution error. e.g. command not found, non-zero exit code, etc.
|
|
106
|
+
if (error !== null) {
|
|
107
|
+
reject(error);
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
resolve({ stdout, stderr });
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
// This could be triggered if node fails to spawn the child process
|
|
114
|
+
child.on("error", (err) => {
|
|
115
|
+
reject(err);
|
|
116
|
+
});
|
|
117
|
+
const stdin = child.stdin;
|
|
118
|
+
if (stdin !== null) {
|
|
119
|
+
stdin.on("error", (err) => {
|
|
120
|
+
// This captures EPIPE error
|
|
121
|
+
reject(err);
|
|
122
|
+
});
|
|
123
|
+
child.once("spawn", () => {
|
|
124
|
+
if (!stdin.writable || child.killed) {
|
|
125
|
+
return reject(new Error("Failed to write to unwritable stdin"));
|
|
126
|
+
}
|
|
127
|
+
stdin.write(input, (error) => {
|
|
128
|
+
if (error !== null && error !== undefined) {
|
|
129
|
+
reject(error);
|
|
130
|
+
}
|
|
131
|
+
stdin.end();
|
|
132
|
+
});
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
reject(new Error("No stdin on child process"));
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
exports.execFileWithInput = execFileWithInput;
|
|
107
141
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/internal/solidity/compiler/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAyC;AACzC,uCAAyB;AACzB,sDAAyB;AACzB,0DAA6B;AAC7B,+CAAiC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/internal/solidity/compiler/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -33,6 +33,7 @@ export function importCsjOrEsModule(filePath: string): any {
|
|
|
33
33
|
// because Hardhat configs can only be CJS but a .js extension will be interpreted as ESM.
|
|
34
34
|
// The kind of error we get in these cases depends on the Node.js version.
|
|
35
35
|
const node20Heuristic = e.code === "ERR_REQUIRE_ESM";
|
|
36
|
+
// Also works for node v24
|
|
36
37
|
const node22Heuristic =
|
|
37
38
|
e.message === "module is not defined" ||
|
|
38
39
|
e.message === "require is not defined";
|
|
@@ -104,6 +104,15 @@ export class HttpProvider extends EventEmitter implements EIP1193Provider {
|
|
|
104
104
|
const jsonRpcResponse = await this._fetchJsonRpcResponse(jsonRpcRequest);
|
|
105
105
|
|
|
106
106
|
if (isErrorResponse(jsonRpcResponse)) {
|
|
107
|
+
// Handle deprecated eth_accounts method, defaulting to empty array
|
|
108
|
+
if (
|
|
109
|
+
/the method has been deprecated: eth_accounts/.test(
|
|
110
|
+
jsonRpcResponse.error.message
|
|
111
|
+
)
|
|
112
|
+
) {
|
|
113
|
+
return [];
|
|
114
|
+
}
|
|
115
|
+
|
|
107
116
|
const error = new ProviderError(
|
|
108
117
|
jsonRpcResponse.error.message,
|
|
109
118
|
jsonRpcResponse.error.code
|
|
@@ -3,6 +3,7 @@ import * as fs from "fs";
|
|
|
3
3
|
import os from "node:os";
|
|
4
4
|
import path from "node:path";
|
|
5
5
|
import * as semver from "semver";
|
|
6
|
+
import { ExecFileOptions } from "node:child_process";
|
|
6
7
|
import { CompilerInput, CompilerOutput } from "../../../types";
|
|
7
8
|
import { HardhatError } from "../../core/errors";
|
|
8
9
|
import { ERRORS } from "../../core/errors-list";
|
|
@@ -17,32 +18,21 @@ export class Compiler implements ICompiler {
|
|
|
17
18
|
public async compile(input: CompilerInput) {
|
|
18
19
|
const scriptPath = path.join(__dirname, "./solcjs-runner.js");
|
|
19
20
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
subprocess.stdin!.write(JSON.stringify(input));
|
|
37
|
-
subprocess.stdin!.end();
|
|
38
|
-
} catch (e: any) {
|
|
39
|
-
throw new HardhatError(
|
|
40
|
-
ERRORS.SOLC.SOLCJS_ERROR,
|
|
41
|
-
{ error: e.message },
|
|
42
|
-
e
|
|
43
|
-
);
|
|
44
|
-
}
|
|
45
|
-
});
|
|
21
|
+
let output: string;
|
|
22
|
+
try {
|
|
23
|
+
const { stdout } = await execFileWithInput(
|
|
24
|
+
process.execPath,
|
|
25
|
+
[scriptPath, this._pathToSolcJs],
|
|
26
|
+
JSON.stringify(input),
|
|
27
|
+
{
|
|
28
|
+
maxBuffer: 1024 * 1024 * 500,
|
|
29
|
+
}
|
|
30
|
+
);
|
|
31
|
+
|
|
32
|
+
output = stdout;
|
|
33
|
+
} catch (e: any) {
|
|
34
|
+
throw new HardhatError(ERRORS.SOLC.SOLCJS_ERROR, {}, e);
|
|
35
|
+
}
|
|
46
36
|
|
|
47
37
|
return JSON.parse(output);
|
|
48
38
|
}
|
|
@@ -69,29 +59,78 @@ export class NativeCompiler implements ICompiler {
|
|
|
69
59
|
}
|
|
70
60
|
}
|
|
71
61
|
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
return reject(err);
|
|
83
|
-
}
|
|
84
|
-
resolve(stdout);
|
|
85
|
-
}
|
|
86
|
-
);
|
|
62
|
+
let output: string;
|
|
63
|
+
try {
|
|
64
|
+
const { stdout } = await execFileWithInput(
|
|
65
|
+
this._pathToSolc,
|
|
66
|
+
args,
|
|
67
|
+
JSON.stringify(input),
|
|
68
|
+
{
|
|
69
|
+
maxBuffer: 1024 * 1024 * 500,
|
|
70
|
+
}
|
|
71
|
+
);
|
|
87
72
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
}
|
|
93
|
-
});
|
|
73
|
+
output = stdout;
|
|
74
|
+
} catch (e: any) {
|
|
75
|
+
throw new HardhatError(ERRORS.SOLC.CANT_RUN_NATIVE_COMPILER, {}, e);
|
|
76
|
+
}
|
|
94
77
|
|
|
95
78
|
return JSON.parse(output);
|
|
96
79
|
}
|
|
97
80
|
}
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Executes a command using execFile, writes provided input to stdin,
|
|
84
|
+
* and returns a Promise that resolves with stdout and stderr.
|
|
85
|
+
*
|
|
86
|
+
* @param {string} file - The file to execute.
|
|
87
|
+
* @param {readonly string[]} args - The arguments to pass to the file.
|
|
88
|
+
* @param {ExecFileOptions} options - The options to pass to the exec function.
|
|
89
|
+
* @returns {Promise<{stdout: string, stderr: string}>}
|
|
90
|
+
*/
|
|
91
|
+
export async function execFileWithInput(
|
|
92
|
+
file: string,
|
|
93
|
+
args: readonly string[],
|
|
94
|
+
input: string,
|
|
95
|
+
options: ExecFileOptions = {}
|
|
96
|
+
): Promise<{ stdout: string; stderr: string }> {
|
|
97
|
+
return new Promise((resolve, reject) => {
|
|
98
|
+
const child = execFile(file, args, options, (error, stdout, stderr) => {
|
|
99
|
+
// `error` is any execution error. e.g. command not found, non-zero exit code, etc.
|
|
100
|
+
if (error !== null) {
|
|
101
|
+
reject(error);
|
|
102
|
+
} else {
|
|
103
|
+
resolve({ stdout, stderr });
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
|
|
107
|
+
// This could be triggered if node fails to spawn the child process
|
|
108
|
+
child.on("error", (err) => {
|
|
109
|
+
reject(err);
|
|
110
|
+
});
|
|
111
|
+
|
|
112
|
+
const stdin = child.stdin;
|
|
113
|
+
|
|
114
|
+
if (stdin !== null) {
|
|
115
|
+
stdin.on("error", (err) => {
|
|
116
|
+
// This captures EPIPE error
|
|
117
|
+
reject(err);
|
|
118
|
+
});
|
|
119
|
+
|
|
120
|
+
child.once("spawn", () => {
|
|
121
|
+
if (!stdin.writable || child.killed) {
|
|
122
|
+
return reject(new Error("Failed to write to unwritable stdin"));
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
stdin.write(input, (error) => {
|
|
126
|
+
if (error !== null && error !== undefined) {
|
|
127
|
+
reject(error);
|
|
128
|
+
}
|
|
129
|
+
stdin.end();
|
|
130
|
+
});
|
|
131
|
+
});
|
|
132
|
+
} else {
|
|
133
|
+
reject(new Error("No stdin on child process"));
|
|
134
|
+
}
|
|
135
|
+
});
|
|
136
|
+
}
|