hardhat 2.16.1 → 2.17.1
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/.eslintrc.js +34 -3
- package/builtin-tasks/compile.js +2 -2
- package/builtin-tasks/compile.js.map +1 -1
- package/builtin-tasks/flatten.js +132 -6
- package/builtin-tasks/flatten.js.map +1 -1
- package/builtin-tasks/node.js +1 -1
- package/builtin-tasks/node.js.map +1 -1
- package/builtin-tasks/run.js +1 -1
- package/builtin-tasks/run.js.map +1 -1
- package/builtin-tasks/task-names.d.ts +1 -0
- package/builtin-tasks/task-names.d.ts.map +1 -1
- package/builtin-tasks/task-names.js +3 -2
- package/builtin-tasks/task-names.js.map +1 -1
- package/builtin-tasks/utils/solidity-files-cache.js +3 -3
- package/builtin-tasks/utils/solidity-files-cache.js.map +1 -1
- package/builtin-tasks/utils/watch.d.ts +1 -1
- package/builtin-tasks/utils/watch.d.ts.map +1 -1
- package/console.sol +1192 -1171
- package/internal/artifacts.d.ts +1 -2
- package/internal/artifacts.d.ts.map +1 -1
- package/internal/artifacts.js +3 -11
- package/internal/artifacts.js.map +1 -1
- package/internal/cli/ArgumentsParser.js +1 -1
- package/internal/cli/ArgumentsParser.js.map +1 -1
- package/internal/cli/analytics.d.ts +1 -1
- package/internal/cli/analytics.d.ts.map +1 -1
- package/internal/cli/analytics.js +30 -8
- package/internal/cli/analytics.js.map +1 -1
- package/internal/cli/bootstrap.js +3 -3
- package/internal/cli/bootstrap.js.map +1 -1
- package/internal/cli/constants.d.ts +2 -0
- package/internal/cli/constants.d.ts.map +1 -0
- package/internal/cli/constants.js +5 -0
- package/internal/cli/constants.js.map +1 -0
- package/internal/cli/project-creation.d.ts +1 -1
- package/internal/cli/project-creation.js +4 -4
- package/internal/cli/project-creation.js.map +1 -1
- package/internal/cli/prompt.js +2 -2
- package/internal/cli/prompt.js.map +1 -1
- package/internal/cli/types.d.ts +1 -1
- package/internal/cli/types.d.ts.map +1 -1
- package/internal/context.d.ts +1 -1
- package/internal/context.d.ts.map +1 -1
- package/internal/core/config/config-loading.js +2 -2
- package/internal/core/config/config-loading.js.map +1 -1
- package/internal/core/errors.js +17 -17
- package/internal/core/errors.js.map +1 -1
- package/internal/core/jsonrpc/types/access-list.d.ts +2 -2
- package/internal/core/jsonrpc/types/access-list.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/input/blockTag.d.ts +4 -4
- package/internal/core/jsonrpc/types/input/blockTag.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/input/callRequest.d.ts +1 -1
- package/internal/core/jsonrpc/types/input/callRequest.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/input/debugTraceTransaction.d.ts +3 -1
- package/internal/core/jsonrpc/types/input/debugTraceTransaction.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/input/debugTraceTransaction.js +1 -0
- package/internal/core/jsonrpc/types/input/debugTraceTransaction.js.map +1 -1
- package/internal/core/jsonrpc/types/input/filterRequest.d.ts +2 -2
- package/internal/core/jsonrpc/types/input/filterRequest.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/input/hardhat-network.d.ts +3 -3
- package/internal/core/jsonrpc/types/input/hardhat-network.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/input/logAddress.d.ts +2 -2
- package/internal/core/jsonrpc/types/input/logAddress.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/input/logTopics.d.ts +2 -2
- package/internal/core/jsonrpc/types/input/logTopics.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/input/solc.d.ts +2 -2
- package/internal/core/jsonrpc/types/input/solc.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/input/subscribeRequest.d.ts +1 -1
- package/internal/core/jsonrpc/types/input/subscribeRequest.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/input/transactionRequest.d.ts +1 -1
- package/internal/core/jsonrpc/types/input/transactionRequest.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/input/validation.js +1 -1
- package/internal/core/jsonrpc/types/input/validation.js.map +1 -1
- package/internal/core/jsonrpc/types/output/block.d.ts +2 -2
- package/internal/core/jsonrpc/types/output/block.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/output/decodeJsonRpcResponse.js +1 -1
- package/internal/core/jsonrpc/types/output/decodeJsonRpcResponse.js.map +1 -1
- package/internal/core/jsonrpc/types/output/log.d.ts +1 -1
- package/internal/core/jsonrpc/types/output/log.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/output/receipt.d.ts +1 -1
- package/internal/core/jsonrpc/types/output/receipt.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/output/transaction.d.ts +1 -1
- package/internal/core/jsonrpc/types/output/transaction.d.ts.map +1 -1
- package/internal/core/params/argumentTypes.js +4 -4
- package/internal/core/params/argumentTypes.js.map +1 -1
- package/internal/core/params/env-variables.js +1 -1
- package/internal/core/params/env-variables.js.map +1 -1
- package/internal/core/providers/backwards-compatibility.js +1 -1
- package/internal/core/providers/backwards-compatibility.js.map +1 -1
- package/internal/core/providers/errors.js +12 -12
- package/internal/core/providers/errors.js.map +1 -1
- package/internal/core/providers/gas-providers.js +2 -2
- package/internal/core/providers/gas-providers.js.map +1 -1
- package/internal/core/providers/http.d.ts.map +1 -1
- package/internal/core/providers/http.js +10 -8
- package/internal/core/providers/http.js.map +1 -1
- package/internal/core/providers/lazy-initialization.d.ts +2 -2
- package/internal/core/providers/lazy-initialization.d.ts.map +1 -1
- package/internal/core/providers/wrapper.js +1 -1
- package/internal/core/providers/wrapper.js.map +1 -1
- package/internal/core/runtime-environment.js +2 -2
- package/internal/core/runtime-environment.js.map +1 -1
- package/internal/core/tasks/task-definitions.js +3 -3
- package/internal/core/tasks/task-definitions.js.map +1 -1
- package/internal/hardhat-network/jsonrpc/client.js +3 -3
- package/internal/hardhat-network/jsonrpc/client.js.map +1 -1
- package/internal/hardhat-network/jsonrpc/handler.js +3 -3
- package/internal/hardhat-network/jsonrpc/handler.js.map +1 -1
- package/internal/hardhat-network/provider/BlockchainBase.js +1 -1
- package/internal/hardhat-network/provider/BlockchainBase.js.map +1 -1
- package/internal/hardhat-network/provider/HardhatBlockchain.js +1 -1
- package/internal/hardhat-network/provider/HardhatBlockchain.js.map +1 -1
- package/internal/hardhat-network/provider/MiningTimer.js +1 -1
- package/internal/hardhat-network/provider/MiningTimer.js.map +1 -1
- package/internal/hardhat-network/provider/PoolState.d.ts +4 -4
- package/internal/hardhat-network/provider/PoolState.d.ts.map +1 -1
- package/internal/hardhat-network/provider/TransactionQueue.js +3 -3
- package/internal/hardhat-network/provider/TransactionQueue.js.map +1 -1
- package/internal/hardhat-network/provider/TxPool.js +1 -1
- package/internal/hardhat-network/provider/TxPool.js.map +1 -1
- package/internal/hardhat-network/provider/fork/ForkBlockchain.js +1 -1
- package/internal/hardhat-network/provider/fork/ForkBlockchain.js.map +1 -1
- package/internal/hardhat-network/provider/fork/rpcToTxData.d.ts +6 -1
- package/internal/hardhat-network/provider/fork/rpcToTxData.d.ts.map +1 -1
- package/internal/hardhat-network/provider/fork/rpcToTxData.js.map +1 -1
- package/internal/hardhat-network/provider/modules/debug.d.ts +1 -0
- package/internal/hardhat-network/provider/modules/debug.d.ts.map +1 -1
- package/internal/hardhat-network/provider/modules/debug.js +9 -2
- package/internal/hardhat-network/provider/modules/debug.js.map +1 -1
- package/internal/hardhat-network/provider/modules/eth.js +1 -1
- package/internal/hardhat-network/provider/modules/eth.js.map +1 -1
- package/internal/hardhat-network/provider/modules/evm.js +1 -1
- package/internal/hardhat-network/provider/modules/evm.js.map +1 -1
- package/internal/hardhat-network/provider/modules/hardhat.js +1 -1
- package/internal/hardhat-network/provider/modules/hardhat.js.map +1 -1
- package/internal/hardhat-network/provider/modules/net.js +1 -1
- package/internal/hardhat-network/provider/modules/net.js.map +1 -1
- package/internal/hardhat-network/provider/modules/personal.js +1 -1
- package/internal/hardhat-network/provider/modules/personal.js.map +1 -1
- package/internal/hardhat-network/provider/modules/web3.js +1 -1
- package/internal/hardhat-network/provider/modules/web3.js.map +1 -1
- package/internal/hardhat-network/provider/node-types.d.ts +7 -7
- package/internal/hardhat-network/provider/node-types.d.ts.map +1 -1
- package/internal/hardhat-network/provider/node.js +65 -65
- package/internal/hardhat-network/provider/node.js.map +1 -1
- package/internal/hardhat-network/provider/output.d.ts +2 -2
- package/internal/hardhat-network/provider/output.d.ts.map +1 -1
- package/internal/hardhat-network/provider/output.js +1 -1
- package/internal/hardhat-network/provider/output.js.map +1 -1
- package/internal/hardhat-network/provider/provider.js +1 -1
- package/internal/hardhat-network/provider/provider.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/FakeSenderAccessListEIP2930Transaction.js +12 -12
- package/internal/hardhat-network/provider/transactions/FakeSenderAccessListEIP2930Transaction.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/FakeSenderEIP1559Transaction.js +11 -11
- package/internal/hardhat-network/provider/transactions/FakeSenderEIP1559Transaction.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/FakeSenderTransaction.js +12 -12
- package/internal/hardhat-network/provider/transactions/FakeSenderTransaction.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.js +13 -13
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP2930Transaction.js +13 -13
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP2930Transaction.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidTransaction.js +6 -6
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidTransaction.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidUnknownTypeTransaction.js +7 -7
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidUnknownTypeTransaction.js.map +1 -1
- package/internal/hardhat-network/provider/utils/assertions.js +1 -1
- package/internal/hardhat-network/provider/utils/assertions.js.map +1 -1
- package/internal/hardhat-network/provider/utils/makeForkClient.d.ts +1 -0
- package/internal/hardhat-network/provider/utils/makeForkClient.d.ts.map +1 -1
- package/internal/hardhat-network/provider/utils/makeForkClient.js +9 -3
- package/internal/hardhat-network/provider/utils/makeForkClient.js.map +1 -1
- package/internal/hardhat-network/provider/utils/reorganizeTransactionsLists.js +1 -1
- package/internal/hardhat-network/provider/utils/reorganizeTransactionsLists.js.map +1 -1
- package/internal/hardhat-network/stack-traces/compiler-to-model.js +1 -1
- package/internal/hardhat-network/stack-traces/compiler-to-model.js.map +1 -1
- package/internal/hardhat-network/stack-traces/consoleLogger.d.ts +3 -2
- package/internal/hardhat-network/stack-traces/consoleLogger.d.ts.map +1 -1
- package/internal/hardhat-network/stack-traces/consoleLogger.js +20 -1
- package/internal/hardhat-network/stack-traces/consoleLogger.js.map +1 -1
- package/internal/hardhat-network/stack-traces/constants.d.ts +1 -1
- package/internal/hardhat-network/stack-traces/constants.js +1 -1
- package/internal/hardhat-network/stack-traces/contracts-identifier.js +5 -5
- package/internal/hardhat-network/stack-traces/contracts-identifier.js.map +1 -1
- package/internal/hardhat-network/stack-traces/error-inferrer.js +1 -1
- package/internal/hardhat-network/stack-traces/error-inferrer.js.map +1 -1
- package/internal/hardhat-network/stack-traces/message-trace.d.ts +4 -4
- package/internal/hardhat-network/stack-traces/message-trace.d.ts.map +1 -1
- package/internal/hardhat-network/stack-traces/model.js +6 -6
- package/internal/hardhat-network/stack-traces/model.js.map +1 -1
- package/internal/hardhat-network/stack-traces/solidity-errors.js +2 -2
- package/internal/hardhat-network/stack-traces/solidity-errors.js.map +1 -1
- package/internal/hardhat-network/stack-traces/solidity-stack-trace.d.ts +2 -2
- package/internal/hardhat-network/stack-traces/solidity-stack-trace.d.ts.map +1 -1
- package/internal/hardhat-network/stack-traces/solidityTracer.d.ts.map +1 -1
- package/internal/hardhat-network/stack-traces/solidityTracer.js +2 -1
- package/internal/hardhat-network/stack-traces/solidityTracer.js.map +1 -1
- package/internal/hardhat-network/stack-traces/vm-tracer.js +1 -1
- package/internal/hardhat-network/stack-traces/vm-tracer.js.map +1 -1
- package/internal/sentry/reporter.js +12 -12
- package/internal/sentry/reporter.js.map +1 -1
- package/internal/solidity/compiler/downloader.js +11 -11
- package/internal/solidity/compiler/downloader.js.map +1 -1
- package/internal/solidity/dependencyGraph.js +5 -5
- package/internal/solidity/dependencyGraph.js.map +1 -1
- package/internal/solidity/parse.js +1 -1
- package/internal/solidity/parse.js.map +1 -1
- package/internal/solidity/resolver.js +2 -2
- package/internal/solidity/resolver.js.map +1 -1
- package/internal/util/caller-package.d.ts.map +1 -1
- package/internal/util/caller-package.js +5 -1
- package/internal/util/caller-package.js.map +1 -1
- package/internal/util/ci-detection.d.ts.map +1 -1
- package/internal/util/ci-detection.js +2 -2
- package/internal/util/ci-detection.js.map +1 -1
- package/internal/util/download.js +1 -1
- package/internal/util/download.js.map +1 -1
- package/internal/util/fs-utils.js +10 -10
- package/internal/util/fs-utils.js.map +1 -1
- package/internal/util/jsonrpc.d.ts +1 -1
- package/internal/util/jsonrpc.d.ts.map +1 -1
- package/internal/util/jsonrpc.js +1 -1
- package/internal/util/jsonrpc.js.map +1 -1
- package/internal/util/unsafe.d.ts +1 -1
- package/internal/util/unsafe.d.ts.map +1 -1
- package/internal/util/unsafe.js.map +1 -1
- package/internal/vendor/await-semaphore/index.js +1 -1
- package/internal/vendor/await-semaphore/index.js.map +1 -1
- package/package.json +9 -12
- package/sample-projects/javascript/hardhat.config.js +1 -1
- package/sample-projects/javascript-esm/hardhat.config.cjs +1 -1
- package/sample-projects/typescript/hardhat.config.ts +1 -1
- package/src/builtin-tasks/compile.ts +2 -2
- package/src/builtin-tasks/flatten.ts +229 -20
- package/src/builtin-tasks/node.ts +1 -1
- package/src/builtin-tasks/run.ts +1 -1
- package/src/builtin-tasks/task-names.ts +2 -0
- package/src/internal/artifacts.ts +3 -11
- package/src/internal/cli/analytics.ts +2 -2
- package/src/internal/cli/bootstrap.ts +2 -2
- package/src/internal/cli/constants.ts +1 -0
- package/src/internal/cli/project-creation.ts +4 -4
- package/src/internal/cli/prompt.ts +2 -2
- package/src/internal/core/config/config-loading.ts +2 -2
- package/src/internal/core/jsonrpc/types/input/debugTraceTransaction.ts +1 -0
- package/src/internal/core/jsonrpc/types/input/validation.ts +1 -1
- package/src/internal/core/jsonrpc/types/output/decodeJsonRpcResponse.ts +1 -1
- package/src/internal/core/params/argumentTypes.ts +4 -4
- package/src/internal/core/params/env-variables.ts +1 -1
- package/src/internal/core/providers/backwards-compatibility.ts +1 -1
- package/src/internal/core/providers/gas-providers.ts +1 -1
- package/src/internal/core/providers/http.ts +11 -8
- package/src/internal/core/providers/wrapper.ts +1 -1
- package/src/internal/core/runtime-environment.ts +1 -1
- package/src/internal/hardhat-network/jsonrpc/client.ts +3 -3
- package/src/internal/hardhat-network/jsonrpc/handler.ts +3 -3
- package/src/internal/hardhat-network/provider/BlockchainBase.ts +1 -1
- package/src/internal/hardhat-network/provider/HardhatBlockchain.ts +1 -1
- package/src/internal/hardhat-network/provider/MiningTimer.ts +1 -1
- package/src/internal/hardhat-network/provider/TransactionQueue.ts +3 -3
- package/src/internal/hardhat-network/provider/TxPool.ts +1 -1
- package/src/internal/hardhat-network/provider/fork/ForkBlockchain.ts +1 -1
- package/src/internal/hardhat-network/provider/fork/ForkStateManager.ts +1 -1
- package/src/internal/hardhat-network/provider/fork/rpcToTxData.ts +10 -1
- package/src/internal/hardhat-network/provider/modules/debug.ts +22 -3
- package/src/internal/hardhat-network/provider/modules/eth.ts +1 -1
- package/src/internal/hardhat-network/provider/modules/evm.ts +1 -1
- package/src/internal/hardhat-network/provider/modules/hardhat.ts +1 -1
- package/src/internal/hardhat-network/provider/modules/net.ts +1 -1
- package/src/internal/hardhat-network/provider/modules/personal.ts +1 -1
- package/src/internal/hardhat-network/provider/modules/web3.ts +1 -1
- package/src/internal/hardhat-network/provider/node.ts +3 -3
- package/src/internal/hardhat-network/provider/output.ts +1 -1
- package/src/internal/hardhat-network/provider/provider.ts +1 -1
- package/src/internal/hardhat-network/provider/transactions/FakeSenderAccessListEIP2930Transaction.ts +1 -1
- package/src/internal/hardhat-network/provider/transactions/FakeSenderEIP1559Transaction.ts +1 -1
- package/src/internal/hardhat-network/provider/transactions/FakeSenderTransaction.ts +1 -1
- package/src/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.ts +1 -1
- package/src/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP2930Transaction.ts +1 -1
- package/src/internal/hardhat-network/provider/transactions/ReadOnlyValidTransaction.ts +1 -1
- package/src/internal/hardhat-network/provider/transactions/ReadOnlyValidUnknownTypeTransaction.ts +1 -1
- package/src/internal/hardhat-network/provider/utils/assertions.ts +1 -1
- package/src/internal/hardhat-network/provider/utils/makeForkClient.ts +11 -2
- package/src/internal/hardhat-network/provider/utils/reorganizeTransactionsLists.ts +1 -1
- package/src/internal/hardhat-network/stack-traces/compiler-to-model.ts +1 -1
- package/src/internal/hardhat-network/stack-traces/consoleLogger.ts +26 -1
- package/src/internal/hardhat-network/stack-traces/constants.ts +1 -1
- package/src/internal/hardhat-network/stack-traces/error-inferrer.ts +1 -1
- package/src/internal/hardhat-network/stack-traces/model.ts +1 -1
- package/src/internal/hardhat-network/stack-traces/solidity-errors.ts +2 -2
- package/src/internal/hardhat-network/stack-traces/solidityTracer.ts +4 -1
- package/src/internal/hardhat-network/stack-traces/vm-debug-tracer.ts +1 -1
- package/src/internal/hardhat-network/stack-traces/vm-tracer.ts +1 -1
- package/src/internal/solidity/parse.ts +1 -1
- package/src/internal/solidity/resolver.ts +2 -2
- package/src/internal/util/caller-package.ts +7 -1
- package/src/internal/util/ci-detection.ts +3 -1
- package/src/internal/util/download.ts +1 -1
- package/src/internal/util/fs-utils.ts +10 -10
- package/src/internal/util/jsonrpc.ts +1 -1
- package/src/internal/util/unsafe.ts +1 -1
- package/src/internal/vendor/await-semaphore/index.ts +1 -1
- package/src/utils/source-names.ts +2 -2
- package/types/config.d.ts +10 -10
- package/types/config.d.ts.map +1 -1
- package/types/experimental.d.ts +2 -2
- package/types/experimental.d.ts.map +1 -1
- package/types/runtime.d.ts +6 -6
- package/types/runtime.d.ts.map +1 -1
- package/utils/source-names.js +2 -2
- package/utils/source-names.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fs-utils.js","sourceRoot":"","sources":["../../src/internal/util/fs-utils.ts"],"names":[],"mappings":";;;;;;AAAA,2DAAqC;AACrC,4CAAoB;AACpB,gDAAwB;AACxB,2CAA6C;AAE7C,6EAA6E;AAC7E,8DAA8D;AAC9D,MAAa,qBAAsB,SAAQ,oBAAW;CAAG;AAAzD,sDAAyD;AAEzD,MAAa,iBAAkB,SAAQ,oBAAW;IAChD,YAAY,QAAgB,EAAE,MAAc;QAC1C,KAAK,CAAC,QAAQ,QAAQ,YAAY,EAAE,MAAM,CAAC,CAAC;IAC9C,CAAC;CACF;AAJD,8CAIC;AACD,MAAa,qBAAsB,SAAQ,oBAAW;IACpD,YAAY,QAAgB,EAAE,MAAa;QACzC,KAAK,CAAC,qBAAqB,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC;IACjD,CAAC;CACF;AAJD,sDAIC;AAED;;;;GAIG;AACI,KAAK,UAAU,WAAW,CAAC,YAAoB;IACpD,IAAI;QACF,yCAAyC;QACzC,2CAA2C;QAC3C,OAAO,MAAM,kBAAU,CAAC,QAAQ,CAAC,cAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;KAChE;IAAC,OAAO,CAAM,EAAE;QACf,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE;YACvB,
|
|
1
|
+
{"version":3,"file":"fs-utils.js","sourceRoot":"","sources":["../../src/internal/util/fs-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,7 +18,7 @@ export interface FailedJsonRpcResponse {
|
|
|
18
18
|
data?: any;
|
|
19
19
|
};
|
|
20
20
|
}
|
|
21
|
-
export
|
|
21
|
+
export type JsonRpcResponse = SuccessfulJsonRpcResponse | FailedJsonRpcResponse;
|
|
22
22
|
export declare function parseJsonResponse(text: string): JsonRpcResponse | JsonRpcResponse[];
|
|
23
23
|
export declare function isValidJsonRequest(payload: any): boolean;
|
|
24
24
|
export declare function isValidJsonResponse(payload: any): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsonrpc.d.ts","sourceRoot":"","sources":["../../src/internal/util/jsonrpc.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,GAAG,EAAE,CAAC;IACd,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,MAAM,EAAE,GAAG,CAAC;CACb;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,GAAG,CAAC;KACZ,CAAC;CACH;AAED,
|
|
1
|
+
{"version":3,"file":"jsonrpc.d.ts","sourceRoot":"","sources":["../../src/internal/util/jsonrpc.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,GAAG,EAAE,CAAC;IACd,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,MAAM,EAAE,GAAG,CAAC;CACb;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,GAAG,CAAC;KACZ,CAAC;CACH;AAED,MAAM,MAAM,eAAe,GAAG,yBAAyB,GAAG,qBAAqB,CAAC;AAEhF,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,GACX,eAAe,GAAG,eAAe,EAAE,CAoBrC;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAkBxD;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,GAAG,WAgC/C;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,eAAe,GACvB,OAAO,IAAI,yBAAyB,CAEtC"}
|
package/internal/util/jsonrpc.js
CHANGED
|
@@ -11,7 +11,7 @@ function parseJsonResponse(text) {
|
|
|
11
11
|
if (!isValidJsonResponse(response)) {
|
|
12
12
|
// We are sending the proper error inside the catch part of the statement.
|
|
13
13
|
// We just need to raise anything here.
|
|
14
|
-
// eslint-disable-next-line @
|
|
14
|
+
// eslint-disable-next-line @nomicfoundation/hardhat-internal-rules/only-hardhat-error
|
|
15
15
|
throw new Error();
|
|
16
16
|
}
|
|
17
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsonrpc.js","sourceRoot":"","sources":["../../src/internal/util/jsonrpc.ts"],"names":[],"mappings":";;;AAAA,2CAA8C;AAC9C,qDAA6C;AA2B7C,SAAgB,iBAAiB,CAC/B,IAAY;IAEZ,IAAI;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE9B,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;YAChC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE;gBAClC,0EAA0E;gBAC1E,uCAAuC;gBACvC,
|
|
1
|
+
{"version":3,"file":"jsonrpc.js","sourceRoot":"","sources":["../../src/internal/util/jsonrpc.ts"],"names":[],"mappings":";;;AAAA,2CAA8C;AAC9C,qDAA6C;AA2B7C,SAAgB,iBAAiB,CAC/B,IAAY;IAEZ,IAAI;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE9B,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;YAChC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE;gBAClC,0EAA0E;gBAC1E,uCAAuC;gBACvC,sFAAsF;gBACtF,MAAM,IAAI,KAAK,EAAE,CAAC;aACnB;SACF;QAED,OAAO,IAAI,CAAC;KACb;IAAC,MAAM;QACN,MAAM,IAAI,qBAAY,CAAC,oBAAM,CAAC,OAAO,CAAC,qBAAqB,EAAE;YAC3D,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;KACJ;AACH,CAAC;AAtBD,8CAsBC;AAED,SAAgB,kBAAkB,CAAC,OAAY;IAC7C,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,EAAE;QAC7B,OAAO,KAAK,CAAC;KACd;IAED,IAAI,OAAO,OAAO,CAAC,EAAE,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,EAAE,KAAK,QAAQ,EAAE;QACpE,OAAO,KAAK,CAAC;KACd;IAED,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE;QACtC,OAAO,KAAK,CAAC;KACd;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAClE,OAAO,KAAK,CAAC;KACd;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAlBD,gDAkBC;AAED,SAAgB,mBAAmB,CAAC,OAAY;IAC9C,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,EAAE;QAC7B,OAAO,KAAK,CAAC;KACd;IAED,IACE,OAAO,OAAO,CAAC,EAAE,KAAK,QAAQ;QAC9B,OAAO,OAAO,CAAC,EAAE,KAAK,QAAQ;QAC9B,OAAO,CAAC,EAAE,KAAK,IAAI,EACnB;QACA,OAAO,KAAK,CAAC;KACd;IAED,IAAI,OAAO,CAAC,EAAE,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE;QACtD,OAAO,KAAK,CAAC;KACd;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE;QAC/D,OAAO,KAAK,CAAC;KACd;IAED,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE;QAC/B,IAAI,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;YAC1C,OAAO,KAAK,CAAC;SACd;QAED,IAAI,OAAO,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE;YAC7C,OAAO,KAAK,CAAC;SACd;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAhCD,kDAgCC;AAED,SAAgB,wBAAwB,CACtC,OAAwB;IAExB,OAAO,QAAQ,IAAI,OAAO,CAAC;AAC7B,CAAC;AAJD,4DAIC"}
|
|
@@ -7,5 +7,5 @@ export declare const unsafeObjectKeys: <T>(o: T) => Extract<keyof T, string>[];
|
|
|
7
7
|
* This function is a typed version of `Object.entries`. Note that it's type
|
|
8
8
|
* unsafe. You have to be sure that `o` has exactly the same keys as `T`.
|
|
9
9
|
*/
|
|
10
|
-
export declare function unsafeObjectEntries<T>(o: T): [keyof T, T[keyof T]][];
|
|
10
|
+
export declare function unsafeObjectEntries<T extends object>(o: T): [keyof T, T[keyof T]][];
|
|
11
11
|
//# sourceMappingURL=unsafe.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unsafe.d.ts","sourceRoot":"","sources":["../../src/internal/util/unsafe.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,gBAAgB,yCAEO,CAAC;AAErC;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"unsafe.d.ts","sourceRoot":"","sources":["../../src/internal/util/unsafe.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,gBAAgB,yCAEO,CAAC;AAErC;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC,2BAEzD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unsafe.js","sourceRoot":"","sources":["../../src/internal/util/unsafe.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACU,QAAA,gBAAgB,GAAG,MAAM,CAAC,IAEH,CAAC;AAErC;;;GAGG;AACH,SAAgB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"unsafe.js","sourceRoot":"","sources":["../../src/internal/util/unsafe.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACU,QAAA,gBAAgB,GAAG,MAAM,CAAC,IAEH,CAAC;AAErC;;;GAGG;AACH,SAAgB,mBAAmB,CAAmB,CAAI;IACxD,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAiC,CAAC;AAC3D,CAAC;AAFD,kDAEC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// which is distributed under this license: https://github.com/notenoughneon/await-semaphore/blob/f117a6b59324038c9e8ee04c70c328215a727812/LICENSE
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.Mutex = exports.Semaphore = void 0;
|
|
6
|
-
/* eslint-disable @
|
|
6
|
+
/* eslint-disable @nomicfoundation/hardhat-internal-rules/only-hardhat-error */
|
|
7
7
|
class Semaphore {
|
|
8
8
|
constructor(count) {
|
|
9
9
|
this._tasks = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/internal/vendor/await-semaphore/index.ts"],"names":[],"mappings":";AAAA,oHAAoH;AACpH,kJAAkJ;;;AAElJ
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/internal/vendor/await-semaphore/index.ts"],"names":[],"mappings":";AAAA,oHAAoH;AACpH,kJAAkJ;;;AAElJ,+EAA+E;AAE/E,MAAa,SAAS;IAIpB,YAAY,KAAa;QAFjB,WAAM,GAAsB,EAAE,CAAC;QAGrC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,OAAO,CAAa,CAAC,GAAG,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,GAAG,EAAE;gBAChB,IAAI,QAAQ,GAAG,KAAK,CAAC;gBACrB,GAAG,CAAC,GAAG,EAAE;oBACP,IAAI,CAAC,QAAQ,EAAE;wBACb,QAAQ,GAAG,IAAI,CAAC;wBAChB,IAAI,CAAC,KAAK,EAAE,CAAC;wBACb,IAAI,CAAC,MAAM,EAAE,CAAC;qBACf;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE;gBAC3D,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;aAC1C;iBAAM;gBACL,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;aACtC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,GAAG,CAAI,CAAmB;QAC/B,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YACrC,OAAO,CAAC,EAAE;iBACP,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;gBACZ,OAAO,EAAE,CAAC;gBACV,OAAO,GAAG,CAAC;YACb,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACb,OAAO,EAAE,CAAC;gBACV,MAAM,GAAG,CAAC;YACZ,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,MAAM;QACZ,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5C,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACjC,IAAI,IAAI,KAAK,SAAS,EAAE;gBACtB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;aAC7D;YAED,IAAI,EAAE,CAAC;SACR;IACH,CAAC;CACF;AAtDD,8BAsDC;AAED,MAAa,KAAM,SAAQ,SAAS;IAClC;QACE,KAAK,CAAC,CAAC,CAAC,CAAC;IACX,CAAC;CACF;AAJD,sBAIC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hardhat",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.17.1",
|
|
4
4
|
"author": "Nomic Labs LLC",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://hardhat.org",
|
|
@@ -22,9 +22,6 @@
|
|
|
22
22
|
"bin": {
|
|
23
23
|
"hardhat": "internal/cli/bootstrap.js"
|
|
24
24
|
},
|
|
25
|
-
"engines": {
|
|
26
|
-
"node": ">=14.0.0"
|
|
27
|
-
},
|
|
28
25
|
"scripts": {
|
|
29
26
|
"lint": "yarn prettier --check && yarn eslint",
|
|
30
27
|
"lint:fix": "yarn prettier --write && yarn eslint --fix",
|
|
@@ -56,7 +53,8 @@
|
|
|
56
53
|
"console.sol"
|
|
57
54
|
],
|
|
58
55
|
"devDependencies": {
|
|
59
|
-
"@
|
|
56
|
+
"@nomicfoundation/eslint-plugin-hardhat-internal-rules": "^1.0.0",
|
|
57
|
+
"@nomicfoundation/eslint-plugin-slow-imports": "^1.0.0",
|
|
60
58
|
"@types/async-eventemitter": "^0.2.1",
|
|
61
59
|
"@types/bn.js": "^5.1.0",
|
|
62
60
|
"@types/chai": "^4.2.0",
|
|
@@ -69,21 +67,21 @@
|
|
|
69
67
|
"@types/keccak": "^3.0.1",
|
|
70
68
|
"@types/lodash": "^4.14.123",
|
|
71
69
|
"@types/mocha": ">=9.1.0",
|
|
72
|
-
"@types/node": "^
|
|
70
|
+
"@types/node": "^16.0.0",
|
|
73
71
|
"@types/resolve": "^1.17.1",
|
|
74
72
|
"@types/semver": "^6.0.2",
|
|
75
73
|
"@types/sinon": "^9.0.8",
|
|
76
74
|
"@types/uuid": "^8.3.1",
|
|
77
75
|
"@types/ws": "^7.2.1",
|
|
78
|
-
"@typescript-eslint/eslint-plugin": "5.
|
|
79
|
-
"@typescript-eslint/parser": "5.
|
|
76
|
+
"@typescript-eslint/eslint-plugin": "5.61.0",
|
|
77
|
+
"@typescript-eslint/parser": "5.61.0",
|
|
80
78
|
"bignumber.js": "^9.0.2",
|
|
81
79
|
"bn.js": "^5.1.0",
|
|
82
80
|
"chai": "^4.2.0",
|
|
83
81
|
"chai-as-promised": "^7.1.1",
|
|
84
|
-
"eslint": "^
|
|
82
|
+
"eslint": "^8.44.0",
|
|
85
83
|
"eslint-config-prettier": "8.3.0",
|
|
86
|
-
"eslint-plugin-import": "2.
|
|
84
|
+
"eslint-plugin-import": "2.27.5",
|
|
87
85
|
"eslint-plugin-no-only-tests": "3.0.0",
|
|
88
86
|
"eslint-plugin-prettier": "3.4.0",
|
|
89
87
|
"ethers": "^6.1.0",
|
|
@@ -94,7 +92,7 @@
|
|
|
94
92
|
"sinon": "^9.0.0",
|
|
95
93
|
"time-require": "^0.1.2",
|
|
96
94
|
"ts-node": "^10.8.0",
|
|
97
|
-
"typescript": "~
|
|
95
|
+
"typescript": "~5.0.0"
|
|
98
96
|
},
|
|
99
97
|
"dependencies": {
|
|
100
98
|
"@ethersproject/abi": "^5.1.2",
|
|
@@ -113,7 +111,6 @@
|
|
|
113
111
|
"@sentry/node": "^5.18.1",
|
|
114
112
|
"@types/bn.js": "^5.1.0",
|
|
115
113
|
"@types/lru-cache": "^5.1.0",
|
|
116
|
-
"abort-controller": "^3.0.0",
|
|
117
114
|
"adm-zip": "^0.4.16",
|
|
118
115
|
"aggregate-error": "^3.0.0",
|
|
119
116
|
"ansi-escapes": "^4.3.0",
|
|
@@ -454,7 +454,7 @@ subtask(TASK_COMPILE_SOLIDITY_COMPILE_JOBS)
|
|
|
454
454
|
return { artifactsEmittedPerJob };
|
|
455
455
|
} catch (e) {
|
|
456
456
|
if (!(e instanceof AggregateError)) {
|
|
457
|
-
// eslint-disable-next-line @
|
|
457
|
+
// eslint-disable-next-line @nomicfoundation/hardhat-internal-rules/only-hardhat-error
|
|
458
458
|
throw e;
|
|
459
459
|
}
|
|
460
460
|
|
|
@@ -465,7 +465,7 @@ subtask(TASK_COMPILE_SOLIDITY_COMPILE_JOBS)
|
|
|
465
465
|
ERRORS.BUILTIN_TASKS.COMPILE_FAILURE
|
|
466
466
|
)
|
|
467
467
|
) {
|
|
468
|
-
// eslint-disable-next-line @
|
|
468
|
+
// eslint-disable-next-line @nomicfoundation/hardhat-internal-rules/only-hardhat-error
|
|
469
469
|
throw error;
|
|
470
470
|
}
|
|
471
471
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import chalk from "chalk";
|
|
1
2
|
import { subtask, task, types } from "../internal/core/config/config-env";
|
|
2
3
|
import { HardhatError } from "../internal/core/errors";
|
|
3
4
|
import { ERRORS } from "../internal/core/errors-list";
|
|
@@ -13,8 +14,23 @@ import {
|
|
|
13
14
|
TASK_FLATTEN,
|
|
14
15
|
TASK_FLATTEN_GET_DEPENDENCY_GRAPH,
|
|
15
16
|
TASK_FLATTEN_GET_FLATTENED_SOURCE,
|
|
17
|
+
TASK_FLATTEN_GET_FLATTENED_SOURCE_AND_METADATA,
|
|
16
18
|
} from "./task-names";
|
|
17
19
|
|
|
20
|
+
interface FlattenMetadata {
|
|
21
|
+
filesWithoutLicenses: string[];
|
|
22
|
+
pragmaDirective: string;
|
|
23
|
+
filesWithoutPragmaDirectives: string[];
|
|
24
|
+
filesWithDifferentPragmaDirectives: string[];
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
// Match every group where a SPDX license is defined. The first captured group is the license.
|
|
28
|
+
const SPDX_LICENSES_REGEX =
|
|
29
|
+
/^(?:\/\/|\/\*)\s*SPDX-License-Identifier:\s*([a-zA-Z\d+.-]+).*/gm;
|
|
30
|
+
// Match every group where a pragma directive is defined. The first captured group is the pragma directive.
|
|
31
|
+
const PRAGMA_DIRECTIVES_REGEX =
|
|
32
|
+
/^(?: |\t)*(pragma\s*abicoder\s*v(1|2)|pragma\s*experimental\s*ABIEncoderV2)\s*;/gim;
|
|
33
|
+
|
|
18
34
|
function getSortedFiles(dependenciesGraph: DependencyGraph) {
|
|
19
35
|
const tsort = require("tsort");
|
|
20
36
|
const graph = tsort();
|
|
@@ -58,7 +74,7 @@ function getSortedFiles(dependenciesGraph: DependencyGraph) {
|
|
|
58
74
|
}
|
|
59
75
|
}
|
|
60
76
|
|
|
61
|
-
// eslint-disable-next-line @
|
|
77
|
+
// eslint-disable-next-line @nomicfoundation/hardhat-internal-rules/only-hardhat-error
|
|
62
78
|
throw error;
|
|
63
79
|
}
|
|
64
80
|
}
|
|
@@ -71,34 +87,187 @@ function getFileWithoutImports(resolvedFile: ResolvedFile) {
|
|
|
71
87
|
.trim();
|
|
72
88
|
}
|
|
73
89
|
|
|
90
|
+
function getLicensesInfo(sortedFiles: ResolvedFile[]): [string[], string[]] {
|
|
91
|
+
const licenses: Set<string> = new Set();
|
|
92
|
+
const filesWithoutLicenses: Set<string> = new Set();
|
|
93
|
+
|
|
94
|
+
for (const file of sortedFiles) {
|
|
95
|
+
const matches = [...file.content.rawContent.matchAll(SPDX_LICENSES_REGEX)];
|
|
96
|
+
|
|
97
|
+
if (matches.length === 0) {
|
|
98
|
+
filesWithoutLicenses.add(file.sourceName);
|
|
99
|
+
continue;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
for (const groups of matches) {
|
|
103
|
+
licenses.add(groups[1]);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
// Sort alphabetically
|
|
108
|
+
return [Array.from(licenses).sort(), Array.from(filesWithoutLicenses).sort()];
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
function getLicensesHeader(licenses: string[]): string {
|
|
112
|
+
return licenses.length <= 0
|
|
113
|
+
? ""
|
|
114
|
+
: `\n\n// SPDX-License-Identifier: ${licenses.join(" AND ")}`;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
function removeUnnecessarySpaces(str: string): string {
|
|
118
|
+
return str.replace(/\s+/g, " ").trim();
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
function getPragmaAbicoderDirectiveInfo(
|
|
122
|
+
sortedFiles: ResolvedFile[]
|
|
123
|
+
): [string, string[], string[]] {
|
|
124
|
+
let directive = "";
|
|
125
|
+
const directivesByImportance = [
|
|
126
|
+
"pragma abicoder v1",
|
|
127
|
+
"pragma experimental ABIEncoderV2",
|
|
128
|
+
"pragma abicoder v2",
|
|
129
|
+
];
|
|
130
|
+
const filesWithoutPragmaDirectives: Set<string> = new Set();
|
|
131
|
+
const filesWithMostImportantDirective: Array<[string, string]> = []; // Every array element has the structure: [ fileName, fileMostImportantDirective ]
|
|
132
|
+
|
|
133
|
+
for (const file of sortedFiles) {
|
|
134
|
+
const matches = [
|
|
135
|
+
...file.content.rawContent.matchAll(PRAGMA_DIRECTIVES_REGEX),
|
|
136
|
+
];
|
|
137
|
+
|
|
138
|
+
if (matches.length === 0) {
|
|
139
|
+
filesWithoutPragmaDirectives.add(file.sourceName);
|
|
140
|
+
continue;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
let fileMostImportantDirective = "";
|
|
144
|
+
for (const groups of matches) {
|
|
145
|
+
const normalizedPragma = removeUnnecessarySpaces(groups[1]);
|
|
146
|
+
|
|
147
|
+
// Update the most important pragma directive among all the files
|
|
148
|
+
if (
|
|
149
|
+
directivesByImportance.indexOf(normalizedPragma) >
|
|
150
|
+
directivesByImportance.indexOf(directive)
|
|
151
|
+
) {
|
|
152
|
+
directive = normalizedPragma;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
// Update the most important pragma directive for the current file
|
|
156
|
+
if (
|
|
157
|
+
directivesByImportance.indexOf(normalizedPragma) >
|
|
158
|
+
directivesByImportance.indexOf(fileMostImportantDirective)
|
|
159
|
+
) {
|
|
160
|
+
fileMostImportantDirective = normalizedPragma;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
// Add in the array the most important directive for the current file
|
|
165
|
+
filesWithMostImportantDirective.push([
|
|
166
|
+
file.sourceName,
|
|
167
|
+
fileMostImportantDirective,
|
|
168
|
+
]);
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
// Add to the array the files that have a pragma directive which is not the same as the main one that
|
|
172
|
+
// is going to be used in the flatten file
|
|
173
|
+
const filesWithDifferentPragmaDirectives = filesWithMostImportantDirective
|
|
174
|
+
.filter(([, fileDirective]) => fileDirective !== directive)
|
|
175
|
+
.map(([fileName]) => fileName);
|
|
176
|
+
|
|
177
|
+
// Sort alphabetically
|
|
178
|
+
return [
|
|
179
|
+
directive,
|
|
180
|
+
Array.from(filesWithoutPragmaDirectives).sort(),
|
|
181
|
+
filesWithDifferentPragmaDirectives.sort(),
|
|
182
|
+
];
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
function getPragmaAbicoderDirectiveHeader(pragmaDirective: string): string {
|
|
186
|
+
return pragmaDirective === "" ? "" : `\n\n${pragmaDirective};`;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
function replaceLicenses(file: string): string {
|
|
190
|
+
return file.replaceAll(
|
|
191
|
+
SPDX_LICENSES_REGEX,
|
|
192
|
+
(...groups) => `// Original license: SPDX_License_Identifier: ${groups[1]}`
|
|
193
|
+
);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
function replacePragmaAbicoderDirectives(file: string): string {
|
|
197
|
+
return file.replaceAll(PRAGMA_DIRECTIVES_REGEX, (...groups) => {
|
|
198
|
+
return `// Original pragma directive: ${removeUnnecessarySpaces(
|
|
199
|
+
groups[1]
|
|
200
|
+
)}`;
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
|
|
74
204
|
subtask(
|
|
75
|
-
|
|
76
|
-
"Returns all contracts and their dependencies flattened"
|
|
205
|
+
TASK_FLATTEN_GET_FLATTENED_SOURCE_AND_METADATA,
|
|
206
|
+
"Returns all contracts and their dependencies flattened. Also return metadata about pragma directives and SPDX licenses"
|
|
77
207
|
)
|
|
78
208
|
.addOptionalParam("files", undefined, undefined, types.any)
|
|
79
|
-
.setAction(
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
{
|
|
83
|
-
)
|
|
209
|
+
.setAction(
|
|
210
|
+
async (
|
|
211
|
+
{ files }: { files?: string[] },
|
|
212
|
+
{ run }
|
|
213
|
+
): Promise<[string, FlattenMetadata | null]> => {
|
|
214
|
+
const dependencyGraph: DependencyGraph = await run(
|
|
215
|
+
TASK_FLATTEN_GET_DEPENDENCY_GRAPH,
|
|
216
|
+
{ files }
|
|
217
|
+
);
|
|
84
218
|
|
|
85
|
-
|
|
219
|
+
let flattened = "";
|
|
86
220
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
221
|
+
if (dependencyGraph.getResolvedFiles().length === 0) {
|
|
222
|
+
return [flattened, null];
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
const packageJson = await getPackageJson();
|
|
226
|
+
flattened += `// Sources flattened with hardhat v${packageJson.version} https://hardhat.org`;
|
|
227
|
+
|
|
228
|
+
const sortedFiles = getSortedFiles(dependencyGraph);
|
|
229
|
+
|
|
230
|
+
const [licenses, filesWithoutLicenses] = getLicensesInfo(sortedFiles);
|
|
231
|
+
const [
|
|
232
|
+
pragmaDirective,
|
|
233
|
+
filesWithoutPragmaDirectives,
|
|
234
|
+
filesWithDifferentPragmaDirectives,
|
|
235
|
+
] = getPragmaAbicoderDirectiveInfo(sortedFiles);
|
|
90
236
|
|
|
91
|
-
|
|
92
|
-
|
|
237
|
+
flattened += getLicensesHeader(licenses);
|
|
238
|
+
flattened += getPragmaAbicoderDirectiveHeader(pragmaDirective);
|
|
93
239
|
|
|
94
|
-
|
|
240
|
+
for (const file of sortedFiles) {
|
|
241
|
+
let tmpFile = getFileWithoutImports(file);
|
|
242
|
+
tmpFile = replaceLicenses(tmpFile);
|
|
243
|
+
tmpFile = replacePragmaAbicoderDirectives(tmpFile);
|
|
95
244
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
245
|
+
flattened += `\n\n// File ${file.getVersionedName()}\n`;
|
|
246
|
+
flattened += `\n${tmpFile}\n`;
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
return [
|
|
250
|
+
flattened.trim(),
|
|
251
|
+
{
|
|
252
|
+
filesWithoutLicenses,
|
|
253
|
+
pragmaDirective,
|
|
254
|
+
filesWithoutPragmaDirectives,
|
|
255
|
+
filesWithDifferentPragmaDirectives,
|
|
256
|
+
},
|
|
257
|
+
];
|
|
99
258
|
}
|
|
259
|
+
);
|
|
100
260
|
|
|
101
|
-
|
|
261
|
+
// The following task is kept for backwards-compatibility reasons
|
|
262
|
+
subtask(
|
|
263
|
+
TASK_FLATTEN_GET_FLATTENED_SOURCE,
|
|
264
|
+
"Returns all contracts and their dependencies flattened"
|
|
265
|
+
)
|
|
266
|
+
.addOptionalParam("files", undefined, undefined, types.any)
|
|
267
|
+
.setAction(async ({ files }: { files?: string[] }, { run }) => {
|
|
268
|
+
return (
|
|
269
|
+
await run(TASK_FLATTEN_GET_FLATTENED_SOURCE_AND_METADATA, { files })
|
|
270
|
+
)[0];
|
|
102
271
|
});
|
|
103
272
|
|
|
104
273
|
subtask(TASK_FLATTEN_GET_DEPENDENCY_GRAPH)
|
|
@@ -135,5 +304,45 @@ task(
|
|
|
135
304
|
types.inputFile
|
|
136
305
|
)
|
|
137
306
|
.setAction(async ({ files }: { files: string[] | undefined }, { run }) => {
|
|
138
|
-
|
|
307
|
+
const [flattenedFile, metadata]: [string, FlattenMetadata | null] =
|
|
308
|
+
await run(TASK_FLATTEN_GET_FLATTENED_SOURCE_AND_METADATA, { files });
|
|
309
|
+
|
|
310
|
+
console.log(flattenedFile);
|
|
311
|
+
|
|
312
|
+
if (metadata === null) return;
|
|
313
|
+
|
|
314
|
+
if (metadata.filesWithoutLicenses.length > 0) {
|
|
315
|
+
console.warn(
|
|
316
|
+
chalk.yellow(
|
|
317
|
+
`\nThe following file(s) do NOT specify SPDX licenses: ${metadata.filesWithoutLicenses.join(
|
|
318
|
+
", "
|
|
319
|
+
)}`
|
|
320
|
+
)
|
|
321
|
+
);
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
if (
|
|
325
|
+
metadata.pragmaDirective !== "" &&
|
|
326
|
+
metadata.filesWithoutPragmaDirectives.length > 0
|
|
327
|
+
) {
|
|
328
|
+
console.warn(
|
|
329
|
+
chalk.yellow(
|
|
330
|
+
`\nPragma abicoder directives are defined in some files, but they are not defined in the following ones: ${metadata.filesWithoutPragmaDirectives.join(
|
|
331
|
+
", "
|
|
332
|
+
)}`
|
|
333
|
+
)
|
|
334
|
+
);
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
if (metadata.filesWithDifferentPragmaDirectives.length > 0) {
|
|
338
|
+
console.warn(
|
|
339
|
+
chalk.yellow(
|
|
340
|
+
`\nThe flattened file is using the pragma abicoder directive '${
|
|
341
|
+
metadata.pragmaDirective
|
|
342
|
+
}' but these files have a different pragma abicoder directive: ${metadata.filesWithDifferentPragmaDirectives.join(
|
|
343
|
+
", "
|
|
344
|
+
)}`
|
|
345
|
+
)
|
|
346
|
+
);
|
|
347
|
+
}
|
|
139
348
|
});
|
|
@@ -374,7 +374,7 @@ task(TASK_NODE, "Starts a JSON-RPC server on top of Hardhat Network")
|
|
|
374
374
|
);
|
|
375
375
|
}
|
|
376
376
|
|
|
377
|
-
// eslint-disable-next-line @
|
|
377
|
+
// eslint-disable-next-line @nomicfoundation/hardhat-internal-rules/only-hardhat-error
|
|
378
378
|
throw error;
|
|
379
379
|
}
|
|
380
380
|
}
|
package/src/builtin-tasks/run.ts
CHANGED
|
@@ -49,7 +49,7 @@ task(TASK_RUN, "Runs a user-defined script after compiling the project")
|
|
|
49
49
|
);
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
-
// eslint-disable-next-line @
|
|
52
|
+
// eslint-disable-next-line @nomicfoundation/hardhat-internal-rules/only-hardhat-error
|
|
53
53
|
throw error;
|
|
54
54
|
}
|
|
55
55
|
}
|
|
@@ -68,6 +68,8 @@ export const TASK_CONSOLE = "console";
|
|
|
68
68
|
export const TASK_FLATTEN = "flatten";
|
|
69
69
|
export const TASK_FLATTEN_GET_FLATTENED_SOURCE =
|
|
70
70
|
"flatten:get-flattened-sources";
|
|
71
|
+
export const TASK_FLATTEN_GET_FLATTENED_SOURCE_AND_METADATA =
|
|
72
|
+
"flatten:get-flattened-sources-and-metadata";
|
|
71
73
|
export const TASK_FLATTEN_GET_DEPENDENCY_GRAPH = "flatten:get-dependency-graph";
|
|
72
74
|
|
|
73
75
|
export const TASK_HELP = "help";
|
|
@@ -444,8 +444,6 @@ export class Artifacts implements IArtifacts {
|
|
|
444
444
|
const buildInfoFile = await this._getBuildInfoFromDebugFile(debugFile);
|
|
445
445
|
if (buildInfoFile !== undefined) {
|
|
446
446
|
return path.resolve(path.dirname(debugFile), buildInfoFile);
|
|
447
|
-
} else {
|
|
448
|
-
return undefined;
|
|
449
447
|
}
|
|
450
448
|
})
|
|
451
449
|
);
|
|
@@ -635,7 +633,7 @@ export class Artifacts implements IArtifacts {
|
|
|
635
633
|
);
|
|
636
634
|
}
|
|
637
635
|
|
|
638
|
-
// eslint-disable-next-line @
|
|
636
|
+
// eslint-disable-next-line @nomicfoundation/hardhat-internal-rules/only-hardhat-error
|
|
639
637
|
throw e;
|
|
640
638
|
}
|
|
641
639
|
}
|
|
@@ -806,7 +804,7 @@ Please replace "${contractName}" for the correct contract name wherever you are
|
|
|
806
804
|
);
|
|
807
805
|
}
|
|
808
806
|
|
|
809
|
-
// eslint-disable-next-line @
|
|
807
|
+
// eslint-disable-next-line @nomicfoundation/hardhat-internal-rules/only-hardhat-error
|
|
810
808
|
throw e;
|
|
811
809
|
}
|
|
812
810
|
}
|
|
@@ -859,20 +857,14 @@ Please replace "${contractName}" for the correct contract name wherever you are
|
|
|
859
857
|
}
|
|
860
858
|
|
|
861
859
|
/**
|
|
862
|
-
* Remove the artifact file
|
|
863
|
-
* info file.
|
|
860
|
+
* Remove the artifact file and its debug file.
|
|
864
861
|
*/
|
|
865
862
|
private async _removeArtifactFiles(artifactPath: string) {
|
|
866
863
|
await fsExtra.remove(artifactPath);
|
|
867
864
|
|
|
868
865
|
const debugFilePath = this._getDebugFilePath(artifactPath);
|
|
869
|
-
const buildInfoPath = await this._getBuildInfoFromDebugFile(debugFilePath);
|
|
870
866
|
|
|
871
867
|
await fsExtra.remove(debugFilePath);
|
|
872
|
-
|
|
873
|
-
if (buildInfoPath !== undefined) {
|
|
874
|
-
await fsExtra.remove(buildInfoPath);
|
|
875
|
-
}
|
|
876
868
|
}
|
|
877
869
|
|
|
878
870
|
/**
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import type { request as RequestT } from "undici";
|
|
2
2
|
|
|
3
|
-
import AbortController from "abort-controller";
|
|
4
3
|
import debug from "debug";
|
|
5
4
|
import os from "os";
|
|
6
|
-
import { v4 as uuid } from "uuid";
|
|
7
5
|
|
|
8
6
|
import { isLocalDev } from "../core/execution-mode";
|
|
9
7
|
import { isRunningOnCiServer } from "../util/ci-detection";
|
|
@@ -129,6 +127,7 @@ export class Analytics {
|
|
|
129
127
|
|
|
130
128
|
private _sendHit(payload: AnalyticsPayload): [AbortAnalytics, Promise<void>] {
|
|
131
129
|
const { request } = require("undici") as { request: typeof RequestT };
|
|
130
|
+
|
|
132
131
|
const eventName = payload.events[0].name;
|
|
133
132
|
log(`Sending hit for ${eventName}`);
|
|
134
133
|
|
|
@@ -171,6 +170,7 @@ async function getClientId() {
|
|
|
171
170
|
(await readFirstLegacyAnalyticsId());
|
|
172
171
|
|
|
173
172
|
if (clientId === undefined) {
|
|
173
|
+
const { v4: uuid } = await import("uuid");
|
|
174
174
|
log("Client Id not found, generating a new one");
|
|
175
175
|
clientId = uuid();
|
|
176
176
|
}
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
import semver from "semver";
|
|
3
3
|
import chalk from "chalk";
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
import { SUPPORTED_NODE_VERSIONS } from "./constants";
|
|
6
6
|
|
|
7
7
|
if (!semver.satisfies(process.version, SUPPORTED_NODE_VERSIONS.join(" || "))) {
|
|
8
8
|
console.warn(
|
|
9
9
|
chalk.yellow.bold(`WARNING:`),
|
|
10
|
-
`You are using
|
|
10
|
+
`You are currently using Node.js ${process.version}, which is not supported by Hardhat. This can lead to unexpected behavior. See https://hardhat.org/nodejs-versions`
|
|
11
11
|
);
|
|
12
12
|
console.log();
|
|
13
13
|
console.log();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const SUPPORTED_NODE_VERSIONS = ["^16.0.0", "^18.0.0", "^20.0.0"];
|