hardhat 2.6.8 → 2.8.0
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/builtin-tasks/check.js +1 -1
- package/builtin-tasks/check.js.map +1 -1
- package/builtin-tasks/clean.js +3 -3
- package/builtin-tasks/clean.js.map +1 -1
- package/builtin-tasks/compile.js +48 -48
- package/builtin-tasks/compile.js.map +1 -1
- package/builtin-tasks/console.js +3 -3
- package/builtin-tasks/console.js.map +1 -1
- package/builtin-tasks/flatten.js +8 -6
- package/builtin-tasks/flatten.js.map +1 -1
- package/builtin-tasks/help.js +2 -2
- package/builtin-tasks/help.js.map +1 -1
- package/builtin-tasks/node.js +21 -15
- package/builtin-tasks/node.js.map +1 -1
- package/builtin-tasks/run.js +11 -7
- package/builtin-tasks/run.js.map +1 -1
- package/builtin-tasks/test.js +11 -11
- package/builtin-tasks/test.js.map +1 -1
- package/builtin-tasks/utils/solidity-files-cache.js +1 -1
- package/builtin-tasks/utils/solidity-files-cache.js.map +1 -1
- package/builtin-tasks/utils/watch.d.ts.map +1 -1
- package/builtin-tasks/utils/watch.js +4 -2
- package/builtin-tasks/utils/watch.js.map +1 -1
- package/internal/artifacts.d.ts +49 -0
- package/internal/artifacts.d.ts.map +1 -1
- package/internal/artifacts.js +204 -68
- package/internal/artifacts.js.map +1 -1
- package/internal/cli/analytics.js +11 -10
- package/internal/cli/analytics.js.map +1 -1
- package/internal/cli/autocomplete.js +7 -7
- package/internal/cli/autocomplete.js.map +1 -1
- package/internal/cli/bootstrap.js +2 -2
- package/internal/cli/bootstrap.js.map +1 -1
- package/internal/cli/cli.js +16 -16
- package/internal/cli/cli.js.map +1 -1
- package/internal/cli/project-creation.js +13 -13
- package/internal/cli/project-creation.js.map +1 -1
- package/internal/constants.d.ts +2 -0
- package/internal/constants.d.ts.map +1 -1
- package/internal/constants.js +4 -1
- package/internal/constants.js.map +1 -1
- package/internal/context.d.ts +1 -2
- package/internal/context.d.ts.map +1 -1
- package/internal/context.js +3 -3
- package/internal/context.js.map +1 -1
- package/internal/core/config/config-loading.d.ts.map +1 -1
- package/internal/core/config/config-loading.js +21 -7
- package/internal/core/config/config-loading.js.map +1 -1
- package/internal/core/config/config-resolution.d.ts.map +1 -1
- package/internal/core/config/config-resolution.js +50 -12
- package/internal/core/config/config-resolution.js.map +1 -1
- package/internal/core/config/config-validation.d.ts +1 -0
- package/internal/core/config/config-validation.d.ts.map +1 -1
- package/internal/core/config/config-validation.js +151 -38
- package/internal/core/config/config-validation.js.map +1 -1
- package/internal/core/config/default-config.d.ts.map +1 -1
- package/internal/core/config/default-config.js +66 -2
- package/internal/core/config/default-config.js.map +1 -1
- package/internal/core/errors-list.js +2 -2
- package/internal/core/errors-list.js.map +1 -1
- package/internal/core/errors.js +3 -3
- package/internal/core/errors.js.map +1 -1
- package/internal/core/execution-mode.js +2 -2
- package/internal/core/execution-mode.js.map +1 -1
- package/internal/core/jsonrpc/types/access-list.d.ts +0 -1
- package/internal/core/jsonrpc/types/access-list.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/access-list.js +1 -1
- package/internal/core/jsonrpc/types/access-list.js.map +1 -1
- package/internal/core/jsonrpc/types/base-types.js +9 -9
- package/internal/core/jsonrpc/types/base-types.js.map +1 -1
- package/internal/core/jsonrpc/types/input/blockTag.d.ts +3 -4
- package/internal/core/jsonrpc/types/input/blockTag.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/input/blockTag.js +3 -3
- package/internal/core/jsonrpc/types/input/blockTag.js.map +1 -1
- package/internal/core/jsonrpc/types/input/callRequest.d.ts +0 -1
- package/internal/core/jsonrpc/types/input/callRequest.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/input/callRequest.js +9 -9
- package/internal/core/jsonrpc/types/input/callRequest.js.map +1 -1
- package/internal/core/jsonrpc/types/input/debugTraceTransaction.js +4 -4
- package/internal/core/jsonrpc/types/input/debugTraceTransaction.js.map +1 -1
- package/internal/core/jsonrpc/types/input/filterRequest.d.ts +0 -1
- package/internal/core/jsonrpc/types/input/filterRequest.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/input/filterRequest.js +2 -2
- package/internal/core/jsonrpc/types/input/filterRequest.js.map +1 -1
- package/internal/core/jsonrpc/types/input/hardhat-network.js +4 -4
- package/internal/core/jsonrpc/types/input/hardhat-network.js.map +1 -1
- package/internal/core/jsonrpc/types/input/logAddress.js +1 -1
- package/internal/core/jsonrpc/types/input/logAddress.js.map +1 -1
- package/internal/core/jsonrpc/types/input/logTopics.js +1 -1
- package/internal/core/jsonrpc/types/input/logTopics.js.map +1 -1
- package/internal/core/jsonrpc/types/input/transactionRequest.d.ts +0 -1
- package/internal/core/jsonrpc/types/input/transactionRequest.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/input/transactionRequest.js +10 -10
- package/internal/core/jsonrpc/types/input/transactionRequest.js.map +1 -1
- package/internal/core/jsonrpc/types/output/block.d.ts +0 -1
- package/internal/core/jsonrpc/types/output/block.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/output/block.js +5 -5
- package/internal/core/jsonrpc/types/output/block.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/log.js +5 -4
- package/internal/core/jsonrpc/types/output/log.js.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/receipt.js +6 -6
- package/internal/core/jsonrpc/types/output/receipt.js.map +1 -1
- package/internal/core/jsonrpc/types/output/transaction.d.ts +0 -1
- package/internal/core/jsonrpc/types/output/transaction.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/output/transaction.js +9 -9
- package/internal/core/jsonrpc/types/output/transaction.js.map +1 -1
- package/internal/core/params/argumentTypes.d.ts.map +1 -1
- package/internal/core/params/argumentTypes.js +25 -13
- package/internal/core/params/argumentTypes.js.map +1 -1
- package/internal/core/params/env-variables.d.ts.map +1 -1
- package/internal/core/params/env-variables.js +9 -5
- package/internal/core/params/env-variables.js.map +1 -1
- package/internal/core/params/hardhat-params.js +2 -2
- package/internal/core/params/hardhat-params.js.map +1 -1
- package/internal/core/project-structure.js +1 -1
- package/internal/core/project-structure.js.map +1 -1
- package/internal/core/providers/accounts.d.ts.map +1 -1
- package/internal/core/providers/accounts.js +9 -8
- package/internal/core/providers/accounts.js.map +1 -1
- package/internal/core/providers/backwards-compatibility.js.map +1 -1
- package/internal/core/providers/chainId.js +3 -3
- package/internal/core/providers/chainId.js.map +1 -1
- package/internal/core/providers/construction.d.ts.map +1 -1
- package/internal/core/providers/construction.js +6 -4
- package/internal/core/providers/construction.js.map +1 -1
- package/internal/core/providers/gas-providers.d.ts.map +1 -1
- package/internal/core/providers/gas-providers.js +19 -17
- package/internal/core/providers/gas-providers.js.map +1 -1
- package/internal/core/providers/http.js +1 -1
- package/internal/core/providers/http.js.map +1 -1
- package/internal/core/providers/util.js +1 -1
- package/internal/core/providers/util.js.map +1 -1
- package/internal/core/providers/wrapper.d.ts.map +1 -1
- package/internal/core/runtime-environment.d.ts.map +1 -1
- package/internal/core/runtime-environment.js +7 -5
- package/internal/core/runtime-environment.js.map +1 -1
- package/internal/core/typescript-support.d.ts +1 -1
- package/internal/core/typescript-support.d.ts.map +1 -1
- package/internal/core/typescript-support.js +8 -5
- package/internal/core/typescript-support.js.map +1 -1
- package/internal/hardhat-network/jsonrpc/client.d.ts +2 -0
- package/internal/hardhat-network/jsonrpc/client.d.ts.map +1 -1
- package/internal/hardhat-network/jsonrpc/client.js +23 -23
- package/internal/hardhat-network/jsonrpc/client.js.map +1 -1
- package/internal/hardhat-network/jsonrpc/handler.js +16 -8
- package/internal/hardhat-network/jsonrpc/handler.js.map +1 -1
- package/internal/hardhat-network/jsonrpc/server.js +1 -1
- package/internal/hardhat-network/jsonrpc/server.js.map +1 -1
- package/internal/hardhat-network/provider/BlockchainData.d.ts +1 -1
- package/internal/hardhat-network/provider/BlockchainData.js +12 -12
- package/internal/hardhat-network/provider/BlockchainData.js.map +1 -1
- package/internal/hardhat-network/provider/HardhatBlockchain.js +2 -2
- package/internal/hardhat-network/provider/HardhatBlockchain.js.map +1 -1
- package/internal/hardhat-network/provider/HardhatStateManager.js +29 -29
- package/internal/hardhat-network/provider/HardhatStateManager.js.map +1 -1
- package/internal/hardhat-network/provider/PoolState.js +6 -6
- package/internal/hardhat-network/provider/PoolState.js.map +1 -1
- package/internal/hardhat-network/provider/TransactionQueue.d.ts +2 -1
- package/internal/hardhat-network/provider/TransactionQueue.d.ts.map +1 -1
- package/internal/hardhat-network/provider/TransactionQueue.js +16 -2
- package/internal/hardhat-network/provider/TransactionQueue.js.map +1 -1
- package/internal/hardhat-network/provider/TxPool.js +19 -19
- package/internal/hardhat-network/provider/TxPool.js.map +1 -1
- package/internal/hardhat-network/provider/filter.js +3 -3
- package/internal/hardhat-network/provider/filter.js.map +1 -1
- package/internal/hardhat-network/provider/fork/AccountState.js +4 -4
- package/internal/hardhat-network/provider/fork/AccountState.js.map +1 -1
- package/internal/hardhat-network/provider/fork/ForkBlockchain.d.ts.map +1 -1
- package/internal/hardhat-network/provider/fork/ForkBlockchain.js +8 -10
- package/internal/hardhat-network/provider/fork/ForkBlockchain.js.map +1 -1
- package/internal/hardhat-network/provider/fork/ForkStateManager.js +34 -34
- package/internal/hardhat-network/provider/fork/ForkStateManager.js.map +1 -1
- package/internal/hardhat-network/provider/fork/random.d.ts +0 -1
- package/internal/hardhat-network/provider/fork/random.d.ts.map +1 -1
- package/internal/hardhat-network/provider/fork/random.js +13 -8
- package/internal/hardhat-network/provider/fork/random.js.map +1 -1
- package/internal/hardhat-network/provider/fork/rpcToBlockData.js +1 -0
- package/internal/hardhat-network/provider/fork/rpcToBlockData.js.map +1 -1
- package/internal/hardhat-network/provider/fork/rpcToTxData.js.map +1 -1
- package/internal/hardhat-network/provider/modules/debug.js +1 -1
- package/internal/hardhat-network/provider/modules/debug.js.map +1 -1
- package/internal/hardhat-network/provider/modules/eth.d.ts.map +1 -1
- package/internal/hardhat-network/provider/modules/eth.js +86 -84
- package/internal/hardhat-network/provider/modules/eth.js.map +1 -1
- package/internal/hardhat-network/provider/modules/evm.js +9 -9
- package/internal/hardhat-network/provider/modules/evm.js.map +1 -1
- package/internal/hardhat-network/provider/modules/hardhat.d.ts +2 -0
- package/internal/hardhat-network/provider/modules/hardhat.d.ts.map +1 -1
- package/internal/hardhat-network/provider/modules/hardhat.js +25 -15
- package/internal/hardhat-network/provider/modules/hardhat.js.map +1 -1
- package/internal/hardhat-network/provider/modules/logger.d.ts.map +1 -1
- package/internal/hardhat-network/provider/modules/logger.js +30 -25
- package/internal/hardhat-network/provider/modules/logger.js.map +1 -1
- package/internal/hardhat-network/provider/modules/net.js +2 -2
- package/internal/hardhat-network/provider/modules/net.js.map +1 -1
- package/internal/hardhat-network/provider/modules/personal.js +2 -2
- package/internal/hardhat-network/provider/modules/personal.js.map +1 -1
- package/internal/hardhat-network/provider/modules/web3.js +4 -4
- package/internal/hardhat-network/provider/modules/web3.js.map +1 -1
- package/internal/hardhat-network/provider/node-types.d.ts +7 -1
- package/internal/hardhat-network/provider/node-types.d.ts.map +1 -1
- package/internal/hardhat-network/provider/node-types.js.map +1 -1
- package/internal/hardhat-network/provider/node.d.ts +10 -2
- package/internal/hardhat-network/provider/node.d.ts.map +1 -1
- package/internal/hardhat-network/provider/node.js +144 -75
- package/internal/hardhat-network/provider/node.js.map +1 -1
- package/internal/hardhat-network/provider/output.d.ts +1 -1
- package/internal/hardhat-network/provider/output.d.ts.map +1 -1
- package/internal/hardhat-network/provider/output.js +94 -91
- package/internal/hardhat-network/provider/output.js.map +1 -1
- package/internal/hardhat-network/provider/provider.d.ts +7 -3
- package/internal/hardhat-network/provider/provider.d.ts.map +1 -1
- package/internal/hardhat-network/provider/provider.js +11 -4
- package/internal/hardhat-network/provider/provider.js.map +1 -1
- package/internal/hardhat-network/provider/return-data.js +4 -4
- package/internal/hardhat-network/provider/return-data.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/FakeSenderAccessListEIP2930Transaction.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/FakeSenderEIP1559Transaction.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/FakeSenderTransaction.js.map +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.js +1 -1
- package/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.js.map +1 -1
- package/internal/hardhat-network/provider/utils/bnToHex.js +1 -1
- package/internal/hardhat-network/provider/utils/bnToHex.js.map +1 -1
- package/internal/hardhat-network/provider/utils/fork-recomendations-banner.js.map +1 -1
- package/internal/hardhat-network/provider/utils/makeAccount.js +4 -4
- package/internal/hardhat-network/provider/utils/makeAccount.js.map +1 -1
- package/internal/hardhat-network/provider/utils/makeCommon.js +3 -3
- package/internal/hardhat-network/provider/utils/makeCommon.js.map +1 -1
- package/internal/hardhat-network/provider/utils/makeForkClient.js +4 -4
- package/internal/hardhat-network/provider/utils/makeForkClient.js.map +1 -1
- package/internal/hardhat-network/provider/utils/makeStateTrie.js +1 -1
- package/internal/hardhat-network/provider/utils/makeStateTrie.js.map +1 -1
- package/internal/hardhat-network/provider/utils/txMapToArray.js +1 -1
- package/internal/hardhat-network/provider/utils/txMapToArray.js.map +1 -1
- package/internal/hardhat-network/stack-traces/compiler-to-model.js +4 -4
- package/internal/hardhat-network/stack-traces/compiler-to-model.js.map +1 -1
- package/internal/hardhat-network/stack-traces/consoleLogger.js +44 -44
- package/internal/hardhat-network/stack-traces/consoleLogger.js.map +1 -1
- package/internal/hardhat-network/stack-traces/contracts-identifier.js +6 -6
- package/internal/hardhat-network/stack-traces/contracts-identifier.js.map +1 -1
- package/internal/hardhat-network/stack-traces/debug.js +17 -17
- package/internal/hardhat-network/stack-traces/debug.js.map +1 -1
- package/internal/hardhat-network/stack-traces/error-inferrer.js +28 -28
- package/internal/hardhat-network/stack-traces/error-inferrer.js.map +1 -1
- package/internal/hardhat-network/stack-traces/mapped-inlined-internal-functions-heuristics.js +3 -3
- package/internal/hardhat-network/stack-traces/mapped-inlined-internal-functions-heuristics.js.map +1 -1
- package/internal/hardhat-network/stack-traces/model.js +5 -5
- package/internal/hardhat-network/stack-traces/model.js.map +1 -1
- package/internal/hardhat-network/stack-traces/solidity-errors.js +3 -3
- package/internal/hardhat-network/stack-traces/solidity-errors.js.map +1 -1
- package/internal/hardhat-network/stack-traces/solidityTracer.js +10 -10
- package/internal/hardhat-network/stack-traces/solidityTracer.js.map +1 -1
- package/internal/hardhat-network/stack-traces/source-maps.js +7 -7
- package/internal/hardhat-network/stack-traces/source-maps.js.map +1 -1
- package/internal/hardhat-network/stack-traces/vm-debug-tracer.js +5 -5
- package/internal/hardhat-network/stack-traces/vm-debug-tracer.js.map +1 -1
- package/internal/hardhat-network/stack-traces/vm-trace-decoder.js +2 -2
- package/internal/hardhat-network/stack-traces/vm-trace-decoder.js.map +1 -1
- package/internal/hardhat-network/stack-traces/vm-tracer.js +3 -3
- package/internal/hardhat-network/stack-traces/vm-tracer.js.map +1 -1
- package/internal/lib/hardhat-lib.js +3 -3
- package/internal/lib/hardhat-lib.js.map +1 -1
- package/internal/reset.js +1 -1
- package/internal/reset.js.map +1 -1
- package/internal/sentry/anonymizer.js.map +1 -1
- package/internal/sentry/reporter.js +5 -5
- package/internal/sentry/reporter.js.map +1 -1
- package/internal/sentry/subprocess.js +2 -2
- package/internal/sentry/subprocess.js.map +1 -1
- package/internal/sentry/transport.js +1 -1
- package/internal/sentry/transport.js.map +1 -1
- package/internal/solidity/compilation-job.js +4 -4
- package/internal/solidity/compilation-job.js.map +1 -1
- package/internal/solidity/compiler/downloader.d.ts +1 -1
- package/internal/solidity/compiler/downloader.d.ts.map +1 -1
- package/internal/solidity/compiler/downloader.js +21 -7
- package/internal/solidity/compiler/downloader.js.map +1 -1
- package/internal/solidity/compiler/index.js +1 -1
- package/internal/solidity/compiler/index.js.map +1 -1
- package/internal/solidity/dependencyGraph.js +2 -1
- package/internal/solidity/dependencyGraph.js.map +1 -1
- package/internal/solidity/parse.js +3 -2
- package/internal/solidity/parse.js.map +1 -1
- package/internal/solidity/resolver.js +10 -10
- package/internal/solidity/resolver.js.map +1 -1
- package/internal/util/abi-helpers.js +1 -1
- package/internal/util/abi-helpers.js.map +1 -1
- package/internal/util/download.d.ts.map +1 -1
- package/internal/util/download.js +12 -1
- package/internal/util/download.js.map +1 -1
- package/internal/util/global-dir.js +1 -1
- package/internal/util/global-dir.js.map +1 -1
- package/internal/util/hardforks.d.ts +2 -1
- package/internal/util/hardforks.d.ts.map +1 -1
- package/internal/util/hardforks.js +3 -1
- package/internal/util/hardforks.js.map +1 -1
- package/internal/util/jsonrpc.js +1 -1
- package/internal/util/jsonrpc.js.map +1 -1
- package/internal/util/packageInfo.js +1 -1
- package/internal/util/packageInfo.js.map +1 -1
- package/internal/util/scripts-runner.js +3 -3
- package/internal/util/scripts-runner.js.map +1 -1
- package/package.json +13 -13
- package/register.js +7 -7
- package/register.js.map +1 -1
- package/src/builtin-tasks/flatten.ts +4 -2
- package/src/builtin-tasks/node.ts +17 -10
- package/src/builtin-tasks/run.ts +13 -8
- package/src/builtin-tasks/utils/watch.ts +3 -1
- package/src/internal/artifacts.ts +269 -72
- package/src/internal/cli/analytics.ts +1 -1
- package/src/internal/cli/autocomplete.ts +3 -3
- package/src/internal/cli/bootstrap.ts +1 -1
- package/src/internal/cli/cli.ts +2 -2
- package/src/internal/cli/project-creation.ts +2 -2
- package/src/internal/constants.ts +4 -0
- package/src/internal/context.ts +1 -1
- package/src/internal/core/config/config-loading.ts +24 -2
- package/src/internal/core/config/config-resolution.ts +61 -3
- package/src/internal/core/config/config-validation.ts +217 -15
- package/src/internal/core/config/default-config.ts +66 -2
- package/src/internal/core/errors-list.ts +2 -2
- package/src/internal/core/execution-mode.ts +1 -1
- package/src/internal/core/jsonrpc/types/output/log.ts +1 -0
- package/src/internal/core/params/argumentTypes.ts +40 -25
- package/src/internal/core/params/env-variables.ts +13 -8
- package/src/internal/core/params/hardhat-params.ts +2 -2
- package/src/internal/core/providers/accounts.ts +4 -3
- package/src/internal/core/providers/backwards-compatibility.ts +1 -1
- package/src/internal/core/providers/chainId.ts +1 -1
- package/src/internal/core/providers/construction.ts +9 -2
- package/src/internal/core/providers/gas-providers.ts +6 -4
- package/src/internal/core/providers/http.ts +1 -1
- package/src/internal/core/providers/wrapper.ts +1 -1
- package/src/internal/core/runtime-environment.ts +3 -1
- package/src/internal/core/typescript-support.ts +7 -3
- package/src/internal/hardhat-network/jsonrpc/client.ts +2 -2
- package/src/internal/hardhat-network/jsonrpc/handler.ts +12 -2
- package/src/internal/hardhat-network/jsonrpc/server.ts +2 -2
- package/src/internal/hardhat-network/provider/TransactionQueue.ts +31 -4
- package/src/internal/hardhat-network/provider/TxPool.ts +1 -1
- package/src/internal/hardhat-network/provider/fork/ForkBlockchain.ts +2 -4
- package/src/internal/hardhat-network/provider/modules/eth.ts +23 -21
- package/src/internal/hardhat-network/provider/modules/hardhat.ts +15 -1
- package/src/internal/hardhat-network/provider/modules/logger.ts +13 -9
- package/src/internal/hardhat-network/provider/node-types.ts +8 -1
- package/src/internal/hardhat-network/provider/node.ts +156 -29
- package/src/internal/hardhat-network/provider/output.ts +9 -9
- package/src/internal/hardhat-network/provider/provider.ts +12 -2
- package/src/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.ts +1 -1
- package/src/internal/hardhat-network/stack-traces/solidity-errors.ts +1 -1
- package/src/internal/hardhat-network/stack-traces/vm-tracer.ts +3 -3
- package/src/internal/reset.ts +1 -1
- package/src/internal/sentry/subprocess.ts +2 -2
- package/src/internal/solidity/compiler/downloader.ts +27 -12
- package/src/internal/solidity/resolver.ts +1 -1
- package/src/internal/util/abi-helpers.ts +1 -1
- package/src/internal/util/download.ts +17 -1
- package/src/internal/util/hardforks.ts +2 -0
- package/src/internal/util/jsonrpc.ts +1 -1
- package/src/internal/util/packageInfo.ts +1 -1
- package/src/internal/util/scripts-runner.ts +1 -1
- package/src/register.ts +1 -1
- package/src/types/config.ts +42 -0
- package/src/utils/contract-names.ts +112 -0
- package/src/utils/source-names.ts +14 -12
- package/types/config.d.ts +26 -0
- package/types/config.d.ts.map +1 -1
- package/utils/contract-names.d.ts +10 -0
- package/utils/contract-names.d.ts.map +1 -1
- package/utils/contract-names.js +92 -1
- package/utils/contract-names.js.map +1 -1
- package/utils/source-names.d.ts +1 -1
- package/utils/source-names.js +8 -6
- package/utils/source-names.js.map +1 -1
- package/CHANGELOG.md +0 -54
|
@@ -9,6 +9,18 @@ interface FetchOptions {
|
|
|
9
9
|
agent?: undefined | HttpsProxyAgent.HttpsProxyAgent;
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
+
const TEMP_FILE_PREFIX = "tmp-";
|
|
13
|
+
|
|
14
|
+
function resolveTempFileName(filePath: string): string {
|
|
15
|
+
const { dir, ext, name } = path.parse(filePath);
|
|
16
|
+
|
|
17
|
+
return path.format({
|
|
18
|
+
dir,
|
|
19
|
+
ext,
|
|
20
|
+
name: `${TEMP_FILE_PREFIX}${name}`,
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
|
|
12
24
|
export async function download(
|
|
13
25
|
url: string,
|
|
14
26
|
filePath: string,
|
|
@@ -43,8 +55,12 @@ export async function download(
|
|
|
43
55
|
const response = await fetch(url, fetchOptions);
|
|
44
56
|
|
|
45
57
|
if (response.ok && response.body !== null) {
|
|
58
|
+
const tmpFilePath = resolveTempFileName(filePath);
|
|
59
|
+
|
|
46
60
|
await fsExtra.ensureDir(path.dirname(filePath));
|
|
47
|
-
|
|
61
|
+
await streamPipeline(response.body, fs.createWriteStream(tmpFilePath));
|
|
62
|
+
|
|
63
|
+
return fsExtra.move(tmpFilePath, filePath);
|
|
48
64
|
}
|
|
49
65
|
|
|
50
66
|
// Consume the response stream and discard its result
|
|
@@ -13,6 +13,7 @@ export enum HardforkName {
|
|
|
13
13
|
MUIR_GLACIER = "muirGlacier",
|
|
14
14
|
BERLIN = "berlin",
|
|
15
15
|
LONDON = "london",
|
|
16
|
+
ARROW_GLACIER = "arrowGlacier",
|
|
16
17
|
}
|
|
17
18
|
|
|
18
19
|
const HARDFORKS_ORDER: HardforkName[] = [
|
|
@@ -28,6 +29,7 @@ const HARDFORKS_ORDER: HardforkName[] = [
|
|
|
28
29
|
HardforkName.MUIR_GLACIER,
|
|
29
30
|
HardforkName.BERLIN,
|
|
30
31
|
HardforkName.LONDON,
|
|
32
|
+
HardforkName.ARROW_GLACIER,
|
|
31
33
|
];
|
|
32
34
|
|
|
33
35
|
export function getHardforkName(name: string): HardforkName {
|
package/src/register.ts
CHANGED
package/src/types/config.ts
CHANGED
|
@@ -18,6 +18,7 @@ import type { BN } from "ethereumjs-util";
|
|
|
18
18
|
|
|
19
19
|
export interface NetworksUserConfig {
|
|
20
20
|
hardhat?: HardhatNetworkUserConfig;
|
|
21
|
+
|
|
21
22
|
[networkName: string]: NetworkUserConfig | undefined;
|
|
22
23
|
}
|
|
23
24
|
|
|
@@ -25,6 +26,18 @@ export type NetworkUserConfig =
|
|
|
25
26
|
| HardhatNetworkUserConfig
|
|
26
27
|
| HttpNetworkUserConfig;
|
|
27
28
|
|
|
29
|
+
export interface HardforkHistoryUserConfig {
|
|
30
|
+
[hardforkName: string]: number /* block number */;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export interface HardhatNetworkChainUserConfig {
|
|
34
|
+
hardforkHistory?: HardforkHistoryUserConfig;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export interface HardhatNetworkChainsUserConfig {
|
|
38
|
+
[chainId: number]: HardhatNetworkChainUserConfig;
|
|
39
|
+
}
|
|
40
|
+
|
|
28
41
|
export interface HardhatNetworkUserConfig {
|
|
29
42
|
chainId?: number;
|
|
30
43
|
from?: string;
|
|
@@ -43,6 +56,8 @@ export interface HardhatNetworkUserConfig {
|
|
|
43
56
|
initialDate?: string;
|
|
44
57
|
loggingEnabled?: boolean;
|
|
45
58
|
forking?: HardhatNetworkForkingUserConfig;
|
|
59
|
+
coinbase?: string;
|
|
60
|
+
chains?: HardhatNetworkChainsUserConfig;
|
|
46
61
|
}
|
|
47
62
|
|
|
48
63
|
export type HardhatNetworkAccountsUserConfig =
|
|
@@ -95,11 +110,26 @@ export interface HttpNetworkUserConfig {
|
|
|
95
110
|
export interface NetworksConfig {
|
|
96
111
|
hardhat: HardhatNetworkConfig;
|
|
97
112
|
localhost: HttpNetworkConfig;
|
|
113
|
+
|
|
98
114
|
[networkName: string]: NetworkConfig;
|
|
99
115
|
}
|
|
100
116
|
|
|
101
117
|
export type NetworkConfig = HardhatNetworkConfig | HttpNetworkConfig;
|
|
102
118
|
|
|
119
|
+
export type HardforkHistoryConfig = Map<
|
|
120
|
+
/* hardforkName */ string,
|
|
121
|
+
/* blockNumber */ number
|
|
122
|
+
>;
|
|
123
|
+
|
|
124
|
+
export interface HardhatNetworkChainConfig {
|
|
125
|
+
hardforkHistory: HardforkHistoryConfig;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
export type HardhatNetworkChainsConfig = Map<
|
|
129
|
+
/* chainId */ number,
|
|
130
|
+
HardhatNetworkChainConfig
|
|
131
|
+
>;
|
|
132
|
+
|
|
103
133
|
export interface HardhatNetworkConfig {
|
|
104
134
|
chainId: number;
|
|
105
135
|
from?: string;
|
|
@@ -118,6 +148,8 @@ export interface HardhatNetworkConfig {
|
|
|
118
148
|
initialDate: string;
|
|
119
149
|
loggingEnabled: boolean;
|
|
120
150
|
forking?: HardhatNetworkForkingConfig;
|
|
151
|
+
coinbase?: string;
|
|
152
|
+
chains: HardhatNetworkChainsConfig;
|
|
121
153
|
}
|
|
122
154
|
|
|
123
155
|
export type HardhatNetworkAccountsConfig =
|
|
@@ -170,11 +202,21 @@ export interface HttpNetworkHDAccountsConfig {
|
|
|
170
202
|
export interface HardhatNetworkMiningConfig {
|
|
171
203
|
auto: boolean;
|
|
172
204
|
interval: number | [number, number];
|
|
205
|
+
mempool: HardhatNetworkMempoolConfig;
|
|
173
206
|
}
|
|
174
207
|
|
|
175
208
|
export interface HardhatNetworkMiningUserConfig {
|
|
176
209
|
auto?: boolean;
|
|
177
210
|
interval?: number | [number, number];
|
|
211
|
+
mempool?: HardhatNetworkMempoolUserConfig;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
export interface HardhatNetworkMempoolConfig {
|
|
215
|
+
order: string; // Guaranteed at runtime to be have a valid value
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
export interface HardhatNetworkMempoolUserConfig {
|
|
219
|
+
order?: string;
|
|
178
220
|
}
|
|
179
221
|
|
|
180
222
|
// Project paths config
|
|
@@ -56,3 +56,115 @@ export function parseName(name: string): {
|
|
|
56
56
|
|
|
57
57
|
return { sourceName, contractName };
|
|
58
58
|
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Returns the edit-distance between two given strings using Levenshtein distance.
|
|
62
|
+
*
|
|
63
|
+
* @param a First string being compared
|
|
64
|
+
* @param b Second string being compared
|
|
65
|
+
* @returns distance between the two strings (lower number == more similar)
|
|
66
|
+
* @see https://github.com/gustf/js-levenshtein
|
|
67
|
+
* @license MIT - https://github.com/gustf/js-levenshtein/blob/master/LICENSE
|
|
68
|
+
*/
|
|
69
|
+
export function findDistance(a: string, b: string): number {
|
|
70
|
+
function _min(
|
|
71
|
+
_d0: number,
|
|
72
|
+
_d1: number,
|
|
73
|
+
_d2: number,
|
|
74
|
+
_bx: number,
|
|
75
|
+
_ay: number
|
|
76
|
+
): number {
|
|
77
|
+
return _d0 < _d1 || _d2 < _d1
|
|
78
|
+
? _d0 > _d2
|
|
79
|
+
? _d2 + 1
|
|
80
|
+
: _d0 + 1
|
|
81
|
+
: _bx === _ay
|
|
82
|
+
? _d1
|
|
83
|
+
: _d1 + 1;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
if (a === b) {
|
|
87
|
+
return 0;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
if (a.length > b.length) {
|
|
91
|
+
[a, b] = [b, a];
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
let la = a.length;
|
|
95
|
+
let lb = b.length;
|
|
96
|
+
|
|
97
|
+
while (la > 0 && a.charCodeAt(la - 1) === b.charCodeAt(lb - 1)) {
|
|
98
|
+
la--;
|
|
99
|
+
lb--;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
let offset = 0;
|
|
103
|
+
|
|
104
|
+
while (offset < la && a.charCodeAt(offset) === b.charCodeAt(offset)) {
|
|
105
|
+
offset++;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
la -= offset;
|
|
109
|
+
lb -= offset;
|
|
110
|
+
|
|
111
|
+
if (la === 0 || lb < 3) {
|
|
112
|
+
return lb;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
let x = 0;
|
|
116
|
+
let y: number;
|
|
117
|
+
let d0: number;
|
|
118
|
+
let d1: number;
|
|
119
|
+
let d2: number;
|
|
120
|
+
let d3: number;
|
|
121
|
+
let dd: number = 0; // typescript gets angry if we don't assign here
|
|
122
|
+
let dy: number;
|
|
123
|
+
let ay: number;
|
|
124
|
+
let bx0: number;
|
|
125
|
+
let bx1: number;
|
|
126
|
+
let bx2: number;
|
|
127
|
+
let bx3: number;
|
|
128
|
+
|
|
129
|
+
const vector = [];
|
|
130
|
+
|
|
131
|
+
for (y = 0; y < la; y++) {
|
|
132
|
+
vector.push(y + 1);
|
|
133
|
+
vector.push(a.charCodeAt(offset + y));
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
const len = vector.length - 1;
|
|
137
|
+
|
|
138
|
+
for (; x < lb - 3; ) {
|
|
139
|
+
bx0 = b.charCodeAt(offset + (d0 = x));
|
|
140
|
+
bx1 = b.charCodeAt(offset + (d1 = x + 1));
|
|
141
|
+
bx2 = b.charCodeAt(offset + (d2 = x + 2));
|
|
142
|
+
bx3 = b.charCodeAt(offset + (d3 = x + 3));
|
|
143
|
+
dd = x += 4;
|
|
144
|
+
for (y = 0; y < len; y += 2) {
|
|
145
|
+
dy = vector[y];
|
|
146
|
+
ay = vector[y + 1];
|
|
147
|
+
d0 = _min(dy, d0, d1, bx0, ay);
|
|
148
|
+
d1 = _min(d0, d1, d2, bx1, ay);
|
|
149
|
+
d2 = _min(d1, d2, d3, bx2, ay);
|
|
150
|
+
dd = _min(d2, d3, dd, bx3, ay);
|
|
151
|
+
vector[y] = dd;
|
|
152
|
+
d3 = d2;
|
|
153
|
+
d2 = d1;
|
|
154
|
+
d1 = d0;
|
|
155
|
+
d0 = dy;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
for (; x < lb; ) {
|
|
160
|
+
bx0 = b.charCodeAt(offset + (d0 = x));
|
|
161
|
+
dd = ++x;
|
|
162
|
+
for (y = 0; y < len; y += 2) {
|
|
163
|
+
dy = vector[y];
|
|
164
|
+
vector[y] = dd = _min(dy, d0, dd, bx0, vector[y + 1]);
|
|
165
|
+
d0 = dy;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
return dd;
|
|
170
|
+
}
|
|
@@ -179,7 +179,7 @@ function isExplicitRelativePath(sourceName: string): boolean {
|
|
|
179
179
|
}
|
|
180
180
|
|
|
181
181
|
/**
|
|
182
|
-
* This function replaces backslashes (
|
|
182
|
+
* This function replaces backslashes (\\) with slashes (/).
|
|
183
183
|
*
|
|
184
184
|
* Note that a source name must not contain backslashes.
|
|
185
185
|
*/
|
|
@@ -199,17 +199,19 @@ async function getPathTrueCase(fromDir: string, p: string): Promise<string> {
|
|
|
199
199
|
const tcp = await trueCasePath(p, fromDir);
|
|
200
200
|
return normalizeSourceName(path.relative(fromDir, tcp));
|
|
201
201
|
} catch (error) {
|
|
202
|
-
if (
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
202
|
+
if (error instanceof Error) {
|
|
203
|
+
if (
|
|
204
|
+
typeof error.message === "string" &&
|
|
205
|
+
error.message.includes("no matching file exists")
|
|
206
|
+
) {
|
|
207
|
+
throw new HardhatError(
|
|
208
|
+
ERRORS.SOURCE_NAMES.FILE_NOT_FOUND,
|
|
209
|
+
{
|
|
210
|
+
name: p,
|
|
211
|
+
},
|
|
212
|
+
error
|
|
213
|
+
);
|
|
214
|
+
}
|
|
213
215
|
}
|
|
214
216
|
|
|
215
217
|
// eslint-disable-next-line @nomiclabs/hardhat-internal-rules/only-hardhat-error
|
package/types/config.d.ts
CHANGED
|
@@ -5,6 +5,15 @@ export interface NetworksUserConfig {
|
|
|
5
5
|
[networkName: string]: NetworkUserConfig | undefined;
|
|
6
6
|
}
|
|
7
7
|
export declare type NetworkUserConfig = HardhatNetworkUserConfig | HttpNetworkUserConfig;
|
|
8
|
+
export interface HardforkHistoryUserConfig {
|
|
9
|
+
[hardforkName: string]: number;
|
|
10
|
+
}
|
|
11
|
+
export interface HardhatNetworkChainUserConfig {
|
|
12
|
+
hardforkHistory?: HardforkHistoryUserConfig;
|
|
13
|
+
}
|
|
14
|
+
export interface HardhatNetworkChainsUserConfig {
|
|
15
|
+
[chainId: number]: HardhatNetworkChainUserConfig;
|
|
16
|
+
}
|
|
8
17
|
export interface HardhatNetworkUserConfig {
|
|
9
18
|
chainId?: number;
|
|
10
19
|
from?: string;
|
|
@@ -23,6 +32,8 @@ export interface HardhatNetworkUserConfig {
|
|
|
23
32
|
initialDate?: string;
|
|
24
33
|
loggingEnabled?: boolean;
|
|
25
34
|
forking?: HardhatNetworkForkingUserConfig;
|
|
35
|
+
coinbase?: string;
|
|
36
|
+
chains?: HardhatNetworkChainsUserConfig;
|
|
26
37
|
}
|
|
27
38
|
export declare type HardhatNetworkAccountsUserConfig = HardhatNetworkAccountUserConfig[] | HardhatNetworkHDAccountsUserConfig;
|
|
28
39
|
export interface HardhatNetworkAccountUserConfig {
|
|
@@ -67,6 +78,11 @@ export interface NetworksConfig {
|
|
|
67
78
|
[networkName: string]: NetworkConfig;
|
|
68
79
|
}
|
|
69
80
|
export declare type NetworkConfig = HardhatNetworkConfig | HttpNetworkConfig;
|
|
81
|
+
export declare type HardforkHistoryConfig = Map<string, number>;
|
|
82
|
+
export interface HardhatNetworkChainConfig {
|
|
83
|
+
hardforkHistory: HardforkHistoryConfig;
|
|
84
|
+
}
|
|
85
|
+
export declare type HardhatNetworkChainsConfig = Map<number, HardhatNetworkChainConfig>;
|
|
70
86
|
export interface HardhatNetworkConfig {
|
|
71
87
|
chainId: number;
|
|
72
88
|
from?: string;
|
|
@@ -85,6 +101,8 @@ export interface HardhatNetworkConfig {
|
|
|
85
101
|
initialDate: string;
|
|
86
102
|
loggingEnabled: boolean;
|
|
87
103
|
forking?: HardhatNetworkForkingConfig;
|
|
104
|
+
coinbase?: string;
|
|
105
|
+
chains: HardhatNetworkChainsConfig;
|
|
88
106
|
}
|
|
89
107
|
export declare type HardhatNetworkAccountsConfig = HardhatNetworkHDAccountsConfig | HardhatNetworkAccountConfig[];
|
|
90
108
|
export interface HardhatNetworkAccountConfig {
|
|
@@ -126,10 +144,18 @@ export interface HttpNetworkHDAccountsConfig {
|
|
|
126
144
|
export interface HardhatNetworkMiningConfig {
|
|
127
145
|
auto: boolean;
|
|
128
146
|
interval: number | [number, number];
|
|
147
|
+
mempool: HardhatNetworkMempoolConfig;
|
|
129
148
|
}
|
|
130
149
|
export interface HardhatNetworkMiningUserConfig {
|
|
131
150
|
auto?: boolean;
|
|
132
151
|
interval?: number | [number, number];
|
|
152
|
+
mempool?: HardhatNetworkMempoolUserConfig;
|
|
153
|
+
}
|
|
154
|
+
export interface HardhatNetworkMempoolConfig {
|
|
155
|
+
order: string;
|
|
156
|
+
}
|
|
157
|
+
export interface HardhatNetworkMempoolUserConfig {
|
|
158
|
+
order?: string;
|
|
133
159
|
}
|
|
134
160
|
export interface ProjectPathsUserConfig {
|
|
135
161
|
root?: string;
|
package/types/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/types/config.ts"],"names":[],"mappings":";AAcA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAI1C,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/types/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,4 +22,14 @@ export declare function parseName(name: string): {
|
|
|
22
22
|
sourceName?: string;
|
|
23
23
|
contractName: string;
|
|
24
24
|
};
|
|
25
|
+
/**
|
|
26
|
+
* Returns the edit-distance between two given strings using Levenshtein distance.
|
|
27
|
+
*
|
|
28
|
+
* @param a First string being compared
|
|
29
|
+
* @param b Second string being compared
|
|
30
|
+
* @returns distance between the two strings (lower number == more similar)
|
|
31
|
+
* @see https://github.com/gustf/js-levenshtein
|
|
32
|
+
* @license MIT - https://github.com/gustf/js-levenshtein/blob/master/LICENSE
|
|
33
|
+
*/
|
|
34
|
+
export declare function findDistance(a: string, b: string): number;
|
|
25
35
|
//# sourceMappingURL=contract-names.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract-names.d.ts","sourceRoot":"","sources":["../src/utils/contract-names.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GACnB,MAAM,CAER;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,kBAAkB,EAAE,MAAM,GAAG;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB,CAUA;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB,CAWA"}
|
|
1
|
+
{"version":3,"file":"contract-names.d.ts","sourceRoot":"","sources":["../src/utils/contract-names.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GACnB,MAAM,CAER;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,kBAAkB,EAAE,MAAM,GAAG;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB,CAUA;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB,CAWA;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAqGzD"}
|
package/utils/contract-names.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.parseName = exports.parseFullyQualifiedName = exports.isFullyQualifiedName = exports.getFullyQualifiedName = void 0;
|
|
3
|
+
exports.findDistance = exports.parseName = exports.parseFullyQualifiedName = exports.isFullyQualifiedName = exports.getFullyQualifiedName = void 0;
|
|
4
4
|
const errors_1 = require("../internal/core/errors");
|
|
5
5
|
const errors_list_1 = require("../internal/core/errors-list");
|
|
6
6
|
/**
|
|
@@ -45,4 +45,95 @@ function parseName(name) {
|
|
|
45
45
|
return { sourceName, contractName };
|
|
46
46
|
}
|
|
47
47
|
exports.parseName = parseName;
|
|
48
|
+
/**
|
|
49
|
+
* Returns the edit-distance between two given strings using Levenshtein distance.
|
|
50
|
+
*
|
|
51
|
+
* @param a First string being compared
|
|
52
|
+
* @param b Second string being compared
|
|
53
|
+
* @returns distance between the two strings (lower number == more similar)
|
|
54
|
+
* @see https://github.com/gustf/js-levenshtein
|
|
55
|
+
* @license MIT - https://github.com/gustf/js-levenshtein/blob/master/LICENSE
|
|
56
|
+
*/
|
|
57
|
+
function findDistance(a, b) {
|
|
58
|
+
function _min(_d0, _d1, _d2, _bx, _ay) {
|
|
59
|
+
return _d0 < _d1 || _d2 < _d1
|
|
60
|
+
? _d0 > _d2
|
|
61
|
+
? _d2 + 1
|
|
62
|
+
: _d0 + 1
|
|
63
|
+
: _bx === _ay
|
|
64
|
+
? _d1
|
|
65
|
+
: _d1 + 1;
|
|
66
|
+
}
|
|
67
|
+
if (a === b) {
|
|
68
|
+
return 0;
|
|
69
|
+
}
|
|
70
|
+
if (a.length > b.length) {
|
|
71
|
+
[a, b] = [b, a];
|
|
72
|
+
}
|
|
73
|
+
let la = a.length;
|
|
74
|
+
let lb = b.length;
|
|
75
|
+
while (la > 0 && a.charCodeAt(la - 1) === b.charCodeAt(lb - 1)) {
|
|
76
|
+
la--;
|
|
77
|
+
lb--;
|
|
78
|
+
}
|
|
79
|
+
let offset = 0;
|
|
80
|
+
while (offset < la && a.charCodeAt(offset) === b.charCodeAt(offset)) {
|
|
81
|
+
offset++;
|
|
82
|
+
}
|
|
83
|
+
la -= offset;
|
|
84
|
+
lb -= offset;
|
|
85
|
+
if (la === 0 || lb < 3) {
|
|
86
|
+
return lb;
|
|
87
|
+
}
|
|
88
|
+
let x = 0;
|
|
89
|
+
let y;
|
|
90
|
+
let d0;
|
|
91
|
+
let d1;
|
|
92
|
+
let d2;
|
|
93
|
+
let d3;
|
|
94
|
+
let dd = 0; // typescript gets angry if we don't assign here
|
|
95
|
+
let dy;
|
|
96
|
+
let ay;
|
|
97
|
+
let bx0;
|
|
98
|
+
let bx1;
|
|
99
|
+
let bx2;
|
|
100
|
+
let bx3;
|
|
101
|
+
const vector = [];
|
|
102
|
+
for (y = 0; y < la; y++) {
|
|
103
|
+
vector.push(y + 1);
|
|
104
|
+
vector.push(a.charCodeAt(offset + y));
|
|
105
|
+
}
|
|
106
|
+
const len = vector.length - 1;
|
|
107
|
+
for (; x < lb - 3;) {
|
|
108
|
+
bx0 = b.charCodeAt(offset + (d0 = x));
|
|
109
|
+
bx1 = b.charCodeAt(offset + (d1 = x + 1));
|
|
110
|
+
bx2 = b.charCodeAt(offset + (d2 = x + 2));
|
|
111
|
+
bx3 = b.charCodeAt(offset + (d3 = x + 3));
|
|
112
|
+
dd = x += 4;
|
|
113
|
+
for (y = 0; y < len; y += 2) {
|
|
114
|
+
dy = vector[y];
|
|
115
|
+
ay = vector[y + 1];
|
|
116
|
+
d0 = _min(dy, d0, d1, bx0, ay);
|
|
117
|
+
d1 = _min(d0, d1, d2, bx1, ay);
|
|
118
|
+
d2 = _min(d1, d2, d3, bx2, ay);
|
|
119
|
+
dd = _min(d2, d3, dd, bx3, ay);
|
|
120
|
+
vector[y] = dd;
|
|
121
|
+
d3 = d2;
|
|
122
|
+
d2 = d1;
|
|
123
|
+
d1 = d0;
|
|
124
|
+
d0 = dy;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
for (; x < lb;) {
|
|
128
|
+
bx0 = b.charCodeAt(offset + (d0 = x));
|
|
129
|
+
dd = ++x;
|
|
130
|
+
for (y = 0; y < len; y += 2) {
|
|
131
|
+
dy = vector[y];
|
|
132
|
+
vector[y] = dd = _min(dy, d0, dd, bx0, vector[y + 1]);
|
|
133
|
+
d0 = dy;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
return dd;
|
|
137
|
+
}
|
|
138
|
+
exports.findDistance = findDistance;
|
|
48
139
|
//# sourceMappingURL=contract-names.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract-names.js","sourceRoot":"","sources":["../src/utils/contract-names.ts"],"names":[],"mappings":";;;AAAA,oDAAuD;AACvD,8DAAsD;AAEtD;;GAEG;AACH,SAAgB,qBAAqB,CACnC,UAAkB,EAClB,YAAoB;IAEpB,OAAO,GAAG,UAAU,IAAI,YAAY,EAAE,CAAC;AACzC,CAAC;AALD,sDAKC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAAC,IAAY;IAC/C,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC5B,CAAC;AAFD,oDAEC;AAED;;;;GAIG;AACH,SAAgB,uBAAuB,CAAC,kBAA0B;IAIhE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAEnE,IAAI,UAAU,KAAK,SAAS,EAAE;QAC5B,MAAM,IAAI,qBAAY,CAAC,oBAAM,CAAC,cAAc,CAAC,4BAA4B,EAAE;YACzE,IAAI,EAAE,kBAAkB;SACzB,CAAC,CAAC;KACJ;IAED,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;AACtC,CAAC;AAbD,0DAaC;AAED;;GAEG;AACH,SAAgB,SAAS,CAAC,IAAY;IAIpC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE9B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACtB,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;KACnC;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE9D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;AACtC,CAAC;AAdD,8BAcC"}
|
|
1
|
+
{"version":3,"file":"contract-names.js","sourceRoot":"","sources":["../src/utils/contract-names.ts"],"names":[],"mappings":";;;AAAA,oDAAuD;AACvD,8DAAsD;AAEtD;;GAEG;AACH,SAAgB,qBAAqB,CACnC,UAAkB,EAClB,YAAoB;IAEpB,OAAO,GAAG,UAAU,IAAI,YAAY,EAAE,CAAC;AACzC,CAAC;AALD,sDAKC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAAC,IAAY;IAC/C,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC5B,CAAC;AAFD,oDAEC;AAED;;;;GAIG;AACH,SAAgB,uBAAuB,CAAC,kBAA0B;IAIhE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAEnE,IAAI,UAAU,KAAK,SAAS,EAAE;QAC5B,MAAM,IAAI,qBAAY,CAAC,oBAAM,CAAC,cAAc,CAAC,4BAA4B,EAAE;YACzE,IAAI,EAAE,kBAAkB;SACzB,CAAC,CAAC;KACJ;IAED,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;AACtC,CAAC;AAbD,0DAaC;AAED;;GAEG;AACH,SAAgB,SAAS,CAAC,IAAY;IAIpC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE9B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACtB,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;KACnC;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE9D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;AACtC,CAAC;AAdD,8BAcC;AAED;;;;;;;;GAQG;AACH,SAAgB,YAAY,CAAC,CAAS,EAAE,CAAS;IAC/C,SAAS,IAAI,CACX,GAAW,EACX,GAAW,EACX,GAAW,EACX,GAAW,EACX,GAAW;QAEX,OAAO,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG;YAC3B,CAAC,CAAC,GAAG,GAAG,GAAG;gBACT,CAAC,CAAC,GAAG,GAAG,CAAC;gBACT,CAAC,CAAC,GAAG,GAAG,CAAC;YACX,CAAC,CAAC,GAAG,KAAK,GAAG;gBACb,CAAC,CAAC,GAAG;gBACL,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;IACd,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,EAAE;QACX,OAAO,CAAC,CAAC;KACV;IAED,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE;QACvB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;KACjB;IAED,IAAI,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC;IAClB,IAAI,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC;IAElB,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;QAC9D,EAAE,EAAE,CAAC;QACL,EAAE,EAAE,CAAC;KACN;IAED,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,OAAO,MAAM,GAAG,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QACnE,MAAM,EAAE,CAAC;KACV;IAED,EAAE,IAAI,MAAM,CAAC;IACb,EAAE,IAAI,MAAM,CAAC;IAEb,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE;QACtB,OAAO,EAAE,CAAC;KACX;IAED,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,IAAI,CAAS,CAAC;IACd,IAAI,EAAU,CAAC;IACf,IAAI,EAAU,CAAC;IACf,IAAI,EAAU,CAAC;IACf,IAAI,EAAU,CAAC;IACf,IAAI,EAAE,GAAW,CAAC,CAAC,CAAC,gDAAgD;IACpE,IAAI,EAAU,CAAC;IACf,IAAI,EAAU,CAAC;IACf,IAAI,GAAW,CAAC;IAChB,IAAI,GAAW,CAAC;IAChB,IAAI,GAAW,CAAC;IAChB,IAAI,GAAW,CAAC;IAEhB,MAAM,MAAM,GAAG,EAAE,CAAC;IAElB,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;QACvB,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACnB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;KACvC;IAED,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAE9B,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,GAAI;QACnB,GAAG,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QACtC,GAAG,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC1C,GAAG,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC1C,GAAG,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC1C,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QACZ,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE;YAC3B,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACf,EAAE,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACnB,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YAC/B,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YAC/B,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YAC/B,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YAC/B,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;YACf,EAAE,GAAG,EAAE,CAAC;YACR,EAAE,GAAG,EAAE,CAAC;YACR,EAAE,GAAG,EAAE,CAAC;YACR,EAAE,GAAG,EAAE,CAAC;SACT;KACF;IAED,OAAO,CAAC,GAAG,EAAE,GAAI;QACf,GAAG,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QACtC,EAAE,GAAG,EAAE,CAAC,CAAC;QACT,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE;YAC3B,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACf,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACtD,EAAE,GAAG,EAAE,CAAC;SACT;KACF;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AArGD,oCAqGC"}
|
package/utils/source-names.d.ts
CHANGED
|
@@ -47,7 +47,7 @@ export declare function normalizeSourceName(sourceName: string): string;
|
|
|
47
47
|
*/
|
|
48
48
|
export declare function isAbsolutePathSourceName(sourceName: string): boolean;
|
|
49
49
|
/**
|
|
50
|
-
* This function replaces backslashes (
|
|
50
|
+
* This function replaces backslashes (\\) with slashes (/).
|
|
51
51
|
*
|
|
52
52
|
* Note that a source name must not contain backslashes.
|
|
53
53
|
*/
|
package/utils/source-names.js
CHANGED
|
@@ -164,7 +164,7 @@ function isExplicitRelativePath(sourceName) {
|
|
|
164
164
|
return base === "." || base === "..";
|
|
165
165
|
}
|
|
166
166
|
/**
|
|
167
|
-
* This function replaces backslashes (
|
|
167
|
+
* This function replaces backslashes (\\) with slashes (/).
|
|
168
168
|
*
|
|
169
169
|
* Note that a source name must not contain backslashes.
|
|
170
170
|
*/
|
|
@@ -184,11 +184,13 @@ async function getPathTrueCase(fromDir, p) {
|
|
|
184
184
|
return normalizeSourceName(path_1.default.relative(fromDir, tcp));
|
|
185
185
|
}
|
|
186
186
|
catch (error) {
|
|
187
|
-
if (
|
|
188
|
-
error.message
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
187
|
+
if (error instanceof Error) {
|
|
188
|
+
if (typeof error.message === "string" &&
|
|
189
|
+
error.message.includes("no matching file exists")) {
|
|
190
|
+
throw new errors_1.HardhatError(errors_list_1.ERRORS.SOURCE_NAMES.FILE_NOT_FOUND, {
|
|
191
|
+
name: p,
|
|
192
|
+
}, error);
|
|
193
|
+
}
|
|
192
194
|
}
|
|
193
195
|
// eslint-disable-next-line @nomiclabs/hardhat-internal-rules/only-hardhat-error
|
|
194
196
|
throw error;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source-names.js","sourceRoot":"","sources":["../src/utils/source-names.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"source-names.js","sourceRoot":"","sources":["../src/utils/source-names.ts"],"names":[],"mappings":"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"}
|