hardhat 2.7.0 → 2.8.1-dev.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 +19 -13
- 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 +12 -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.js +17 -17
- package/internal/artifacts.js.map +1 -1
- package/internal/cli/analytics.js +10 -9
- 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 +18 -16
- package/internal/cli/cli.js.map +1 -1
- package/internal/cli/project-creation.js +14 -14
- package/internal/cli/project-creation.js.map +1 -1
- package/internal/constants.d.ts.map +1 -1
- package/internal/constants.js +1 -0
- 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 +3 -2
- package/internal/core/config/config-loading.d.ts.map +1 -1
- package/internal/core/config/config-loading.js +25 -8
- 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 +29 -12
- package/internal/core/config/config-resolution.js.map +1 -1
- package/internal/core/config/config-validation.d.ts.map +1 -1
- package/internal/core/config/config-validation.js +68 -30
- 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 +59 -1
- package/internal/core/config/default-config.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 +0 -1
- package/internal/core/jsonrpc/types/output/log.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/output/log.js +5 -5
- package/internal/core/jsonrpc/types/output/log.js.map +1 -1
- package/internal/core/jsonrpc/types/output/receipt.d.ts +0 -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/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 +4 -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.js +4 -4
- package/internal/core/typescript-support.js.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.d.ts +1 -1
- package/internal/hardhat-network/jsonrpc/handler.d.ts.map +1 -1
- package/internal/hardhat-network/jsonrpc/handler.js +18 -9
- package/internal/hardhat-network/jsonrpc/handler.js.map +1 -1
- package/internal/hardhat-network/jsonrpc/server.js +3 -3
- 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/PoolState.js +6 -6
- package/internal/hardhat-network/provider/PoolState.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.js +7 -7
- 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.js +16 -16
- 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 +2 -1
- package/internal/hardhat-network/provider/node-types.d.ts.map +1 -1
- package/internal/hardhat-network/provider/node.d.ts +7 -1
- package/internal/hardhat-network/provider/node.d.ts.map +1 -1
- package/internal/hardhat-network/provider/node.js +141 -76
- package/internal/hardhat-network/provider/node.js.map +1 -1
- package/internal/hardhat-network/provider/output.js +87 -87
- package/internal/hardhat-network/provider/output.js.map +1 -1
- package/internal/hardhat-network/provider/provider.d.ts +3 -2
- package/internal/hardhat-network/provider/provider.d.ts.map +1 -1
- package/internal/hardhat-network/provider/provider.js +5 -3
- 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.d.ts +1 -2
- package/internal/hardhat-network/provider/utils/makeCommon.d.ts.map +1 -1
- package/internal/hardhat-network/provider/utils/makeCommon.js +4 -4
- 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 +14 -14
- 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 +15 -8
- package/src/builtin-tasks/run.ts +13 -8
- package/src/builtin-tasks/test.ts +2 -0
- package/src/builtin-tasks/utils/watch.ts +3 -1
- package/src/internal/artifacts.ts +3 -3
- package/src/internal/cli/autocomplete.ts +3 -3
- package/src/internal/cli/bootstrap.ts +1 -1
- package/src/internal/cli/cli.ts +20 -9
- package/src/internal/cli/project-creation.ts +3 -3
- package/src/internal/constants.ts +1 -0
- package/src/internal/context.ts +1 -1
- package/src/internal/core/config/config-loading.ts +33 -3
- package/src/internal/core/config/config-resolution.ts +33 -3
- package/src/internal/core/config/config-validation.ts +70 -0
- package/src/internal/core/config/default-config.ts +59 -1
- package/src/internal/core/errors-list.ts +15 -0
- package/src/internal/core/execution-mode.ts +1 -1
- package/src/internal/core/params/argumentTypes.ts +40 -25
- package/src/internal/core/params/env-variables.ts +13 -8
- 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 +1 -0
- 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 +2 -2
- package/src/internal/hardhat-network/jsonrpc/client.ts +2 -2
- package/src/internal/hardhat-network/jsonrpc/handler.ts +13 -3
- package/src/internal/hardhat-network/jsonrpc/server.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/modules/eth.ts +23 -21
- package/src/internal/hardhat-network/provider/modules/hardhat.ts +1 -1
- package/src/internal/hardhat-network/provider/modules/logger.ts +13 -9
- package/src/internal/hardhat-network/provider/node-types.ts +2 -1
- package/src/internal/hardhat-network/provider/node.ts +149 -31
- package/src/internal/hardhat-network/provider/provider.ts +4 -1
- package/src/internal/hardhat-network/provider/transactions/ReadOnlyValidEIP1559Transaction.ts +1 -1
- package/src/internal/hardhat-network/provider/utils/makeCommon.ts +2 -2
- 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/types/config.ts +28 -0
- package/src/utils/source-names.ts +13 -11
- package/types/config.d.ts +16 -0
- package/types/config.d.ts.map +1 -1
- package/utils/source-names.js +7 -5
- package/utils/source-names.js.map +1 -1
- package/CHANGELOG.md +0 -71
- package/internal/hardhat-network/provider/HardhatStateManager.d.ts +0 -50
- package/internal/hardhat-network/provider/HardhatStateManager.d.ts.map +0 -1
- package/internal/hardhat-network/provider/HardhatStateManager.js +0 -249
- package/internal/hardhat-network/provider/HardhatStateManager.js.map +0 -1
- package/src/internal/hardhat-network/provider/HardhatStateManager.ts +0 -349
|
@@ -24,7 +24,7 @@ class ConsoleLogger {
|
|
|
24
24
|
});
|
|
25
25
|
}
|
|
26
26
|
getExecutionLogs(maybeDecodedMessageTrace) {
|
|
27
|
-
if (message_trace_1.isPrecompileTrace(maybeDecodedMessageTrace)) {
|
|
27
|
+
if ((0, message_trace_1.isPrecompileTrace)(maybeDecodedMessageTrace)) {
|
|
28
28
|
return [];
|
|
29
29
|
}
|
|
30
30
|
const logs = [];
|
|
@@ -33,11 +33,11 @@ class ConsoleLogger {
|
|
|
33
33
|
}
|
|
34
34
|
_collectExecutionLogs(trace, logs) {
|
|
35
35
|
for (const messageTrace of trace.steps) {
|
|
36
|
-
if (message_trace_1.isEvmStep(messageTrace) || message_trace_1.isPrecompileTrace(messageTrace)) {
|
|
36
|
+
if ((0, message_trace_1.isEvmStep)(messageTrace) || (0, message_trace_1.isPrecompileTrace)(messageTrace)) {
|
|
37
37
|
continue;
|
|
38
38
|
}
|
|
39
|
-
if (message_trace_1.isCallTrace(messageTrace) &&
|
|
40
|
-
ethereumjs_util_1.bufferToHex(messageTrace.address) === CONSOLE_ADDRESS.toLowerCase()) {
|
|
39
|
+
if ((0, message_trace_1.isCallTrace)(messageTrace) &&
|
|
40
|
+
(0, ethereumjs_util_1.bufferToHex)(messageTrace.address) === CONSOLE_ADDRESS.toLowerCase()) {
|
|
41
41
|
const log = this._maybeConsoleLog(messageTrace);
|
|
42
42
|
if (log !== undefined) {
|
|
43
43
|
logs.push(log);
|
|
@@ -48,7 +48,7 @@ class ConsoleLogger {
|
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
50
|
_maybeConsoleLog(call) {
|
|
51
|
-
const sig = ethereumjs_util_1.bufferToInt(call.calldata.slice(0, 4));
|
|
51
|
+
const sig = (0, ethereumjs_util_1.bufferToInt)(call.calldata.slice(0, 4));
|
|
52
52
|
const parameters = call.calldata.slice(4);
|
|
53
53
|
const types = this._consoleLogs[sig];
|
|
54
54
|
if (types === undefined) {
|
|
@@ -63,88 +63,88 @@ class ConsoleLogger {
|
|
|
63
63
|
case logger_1.UintTy:
|
|
64
64
|
return new ethereumjs_util_1.BN(data.slice(position, position + REGISTER_SIZE)).toString(10);
|
|
65
65
|
case logger_1.IntTy:
|
|
66
|
-
return ethereumjs_util_1.fromSigned(data.slice(position, position + REGISTER_SIZE)).toString();
|
|
66
|
+
return (0, ethereumjs_util_1.fromSigned)(data.slice(position, position + REGISTER_SIZE)).toString();
|
|
67
67
|
case logger_1.BoolTy:
|
|
68
68
|
if (data[position + 31] !== 0) {
|
|
69
69
|
return "true";
|
|
70
70
|
}
|
|
71
71
|
return "false";
|
|
72
72
|
case logger_1.StringTy:
|
|
73
|
-
const sStart = ethereumjs_util_1.bufferToInt(data.slice(position, position + REGISTER_SIZE));
|
|
74
|
-
const sLen = ethereumjs_util_1.bufferToInt(data.slice(sStart, sStart + REGISTER_SIZE));
|
|
73
|
+
const sStart = (0, ethereumjs_util_1.bufferToInt)(data.slice(position, position + REGISTER_SIZE));
|
|
74
|
+
const sLen = (0, ethereumjs_util_1.bufferToInt)(data.slice(sStart, sStart + REGISTER_SIZE));
|
|
75
75
|
return data
|
|
76
76
|
.slice(sStart + REGISTER_SIZE, sStart + REGISTER_SIZE + sLen)
|
|
77
77
|
.toString();
|
|
78
78
|
case logger_1.AddressTy:
|
|
79
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position + 12, position + REGISTER_SIZE));
|
|
79
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position + 12, position + REGISTER_SIZE));
|
|
80
80
|
case logger_1.BytesTy:
|
|
81
|
-
const bStart = ethereumjs_util_1.bufferToInt(data.slice(position, position + REGISTER_SIZE));
|
|
82
|
-
const bLen = ethereumjs_util_1.bufferToInt(data.slice(bStart, bStart + REGISTER_SIZE));
|
|
83
|
-
return ethereumjs_util_1.bufferToHex(data.slice(bStart + REGISTER_SIZE, bStart + REGISTER_SIZE + bLen));
|
|
81
|
+
const bStart = (0, ethereumjs_util_1.bufferToInt)(data.slice(position, position + REGISTER_SIZE));
|
|
82
|
+
const bLen = (0, ethereumjs_util_1.bufferToInt)(data.slice(bStart, bStart + REGISTER_SIZE));
|
|
83
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(bStart + REGISTER_SIZE, bStart + REGISTER_SIZE + bLen));
|
|
84
84
|
case logger_1.Bytes1Ty:
|
|
85
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 1));
|
|
85
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 1));
|
|
86
86
|
case logger_1.Bytes2Ty:
|
|
87
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 2));
|
|
87
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 2));
|
|
88
88
|
case logger_1.Bytes3Ty:
|
|
89
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 3));
|
|
89
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 3));
|
|
90
90
|
case logger_1.Bytes4Ty:
|
|
91
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 4));
|
|
91
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 4));
|
|
92
92
|
case logger_1.Bytes5Ty:
|
|
93
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 5));
|
|
93
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 5));
|
|
94
94
|
case logger_1.Bytes6Ty:
|
|
95
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 6));
|
|
95
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 6));
|
|
96
96
|
case logger_1.Bytes7Ty:
|
|
97
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 7));
|
|
97
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 7));
|
|
98
98
|
case logger_1.Bytes8Ty:
|
|
99
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 8));
|
|
99
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 8));
|
|
100
100
|
case logger_1.Bytes9Ty:
|
|
101
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 9));
|
|
101
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 9));
|
|
102
102
|
case logger_1.Bytes10Ty:
|
|
103
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 10));
|
|
103
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 10));
|
|
104
104
|
case logger_1.Bytes11Ty:
|
|
105
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 11));
|
|
105
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 11));
|
|
106
106
|
case logger_1.Bytes12Ty:
|
|
107
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 12));
|
|
107
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 12));
|
|
108
108
|
case logger_1.Bytes13Ty:
|
|
109
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 13));
|
|
109
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 13));
|
|
110
110
|
case logger_1.Bytes14Ty:
|
|
111
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 14));
|
|
111
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 14));
|
|
112
112
|
case logger_1.Bytes15Ty:
|
|
113
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 15));
|
|
113
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 15));
|
|
114
114
|
case logger_1.Bytes16Ty:
|
|
115
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 16));
|
|
115
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 16));
|
|
116
116
|
case logger_1.Bytes17Ty:
|
|
117
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 17));
|
|
117
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 17));
|
|
118
118
|
case logger_1.Bytes18Ty:
|
|
119
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 18));
|
|
119
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 18));
|
|
120
120
|
case logger_1.Bytes19Ty:
|
|
121
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 19));
|
|
121
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 19));
|
|
122
122
|
case logger_1.Bytes20Ty:
|
|
123
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 20));
|
|
123
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 20));
|
|
124
124
|
case logger_1.Bytes21Ty:
|
|
125
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 21));
|
|
125
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 21));
|
|
126
126
|
case logger_1.Bytes22Ty:
|
|
127
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 22));
|
|
127
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 22));
|
|
128
128
|
case logger_1.Bytes23Ty:
|
|
129
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 23));
|
|
129
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 23));
|
|
130
130
|
case logger_1.Bytes24Ty:
|
|
131
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 24));
|
|
131
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 24));
|
|
132
132
|
case logger_1.Bytes25Ty:
|
|
133
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 25));
|
|
133
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 25));
|
|
134
134
|
case logger_1.Bytes26Ty:
|
|
135
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 26));
|
|
135
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 26));
|
|
136
136
|
case logger_1.Bytes27Ty:
|
|
137
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 27));
|
|
137
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 27));
|
|
138
138
|
case logger_1.Bytes28Ty:
|
|
139
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 28));
|
|
139
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 28));
|
|
140
140
|
case logger_1.Bytes29Ty:
|
|
141
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 29));
|
|
141
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 29));
|
|
142
142
|
case logger_1.Bytes30Ty:
|
|
143
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 30));
|
|
143
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 30));
|
|
144
144
|
case logger_1.Bytes31Ty:
|
|
145
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 31));
|
|
145
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 31));
|
|
146
146
|
case logger_1.Bytes32Ty:
|
|
147
|
-
return ethereumjs_util_1.bufferToHex(data.slice(position, position + 32));
|
|
147
|
+
return (0, ethereumjs_util_1.bufferToHex)(data.slice(position, position + 32));
|
|
148
148
|
default:
|
|
149
149
|
return "";
|
|
150
150
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consoleLogger.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/consoleLogger.ts"],"names":[],"mappings":";;;;;;AAAA,qDAA2E;AAC3E,gDAAwB;AAExB,qCAwCkB;AAClB,mDAOyB;AAEzB,MAAM,eAAe,GAAG,4CAA4C,CAAC,CAAC,uBAAuB;AAC7F,MAAM,aAAa,GAAG,EAAE,CAAC;AAUzB,MAAa,aAAa;IAKxB;QAJiB,iBAAY,GAEzB,EAAE,CAAC;QAGL,IAAI,CAAC,YAAY,GAAG,oBAAW,CAAC;IAClC,CAAC;IAEM,cAAc,CAAC,wBAAsC;QAC1D,OAAO,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACjE,IAAI,GAAG,KAAK,SAAS,EAAE;gBACrB,OAAO,EAAE,CAAC;aACX;YAED,OAAO,cAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,gBAAgB,CACrB,wBAAsC;QAEtC,IAAI,iCAAiB,
|
|
1
|
+
{"version":3,"file":"consoleLogger.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/consoleLogger.ts"],"names":[],"mappings":"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"}
|
|
@@ -77,10 +77,10 @@ class ContractsIdentifier {
|
|
|
77
77
|
this._cache.clear();
|
|
78
78
|
}
|
|
79
79
|
getBytecodeFromMessageTrace(trace) {
|
|
80
|
-
const normalizedCode = library_utils_1.normalizeLibraryRuntimeBytecodeIfNecessary(trace.code);
|
|
80
|
+
const normalizedCode = (0, library_utils_1.normalizeLibraryRuntimeBytecodeIfNecessary)(trace.code);
|
|
81
81
|
let normalizedCodeHex;
|
|
82
82
|
if (this._enableCache) {
|
|
83
|
-
normalizedCodeHex = ethereumjs_util_1.bufferToHex(normalizedCode);
|
|
83
|
+
normalizedCodeHex = (0, ethereumjs_util_1.bufferToHex)(normalizedCode);
|
|
84
84
|
const cached = this._cache.get(normalizedCodeHex);
|
|
85
85
|
if (cached !== undefined) {
|
|
86
86
|
return cached;
|
|
@@ -115,7 +115,7 @@ class ContractsIdentifier {
|
|
|
115
115
|
//
|
|
116
116
|
// We take advantage of this last observation, and just return the bytecode that exactly
|
|
117
117
|
// matched the searchResult (sub)trie that we got.
|
|
118
|
-
if (message_trace_1.isCreateTrace(trace) &&
|
|
118
|
+
if ((0, message_trace_1.isCreateTrace)(trace) &&
|
|
119
119
|
searchResult.match !== undefined &&
|
|
120
120
|
searchResult.match.isDeployment) {
|
|
121
121
|
return searchResult.match;
|
|
@@ -126,8 +126,8 @@ class ContractsIdentifier {
|
|
|
126
126
|
bytecodeWithLibraries.immutableReferences.length === 0) {
|
|
127
127
|
continue;
|
|
128
128
|
}
|
|
129
|
-
const normalizedLibrariesCode = library_utils_1.zeroOutAddresses(code, bytecodeWithLibraries.libraryAddressPositions);
|
|
130
|
-
const normalizedCode = library_utils_1.zeroOutSlices(normalizedLibrariesCode, bytecodeWithLibraries.immutableReferences);
|
|
129
|
+
const normalizedLibrariesCode = (0, library_utils_1.zeroOutAddresses)(code, bytecodeWithLibraries.libraryAddressPositions);
|
|
130
|
+
const normalizedCode = (0, library_utils_1.zeroOutSlices)(normalizedLibrariesCode, bytecodeWithLibraries.immutableReferences);
|
|
131
131
|
const normalizedResult = this._searchBytecode(trace, normalizedCode, false, searchResult, searchResult.depth + 1);
|
|
132
132
|
if (normalizedResult !== undefined) {
|
|
133
133
|
return normalizedResult;
|
|
@@ -158,7 +158,7 @@ class ContractsIdentifier {
|
|
|
158
158
|
if (opcode === opcodes_1.Opcode.REVERT && code[byte + 1] === opcodes_1.Opcode.INVALID) {
|
|
159
159
|
return true;
|
|
160
160
|
}
|
|
161
|
-
byte += opcodes_1.getOpcodeLength(opcode);
|
|
161
|
+
byte += (0, opcodes_1.getOpcodeLength)(opcode);
|
|
162
162
|
}
|
|
163
163
|
return false;
|
|
164
164
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts-identifier.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/contracts-identifier.ts"],"names":[],"mappings":";;;AAAA,qDAA8C;AAE9C,mDAIyB;AACzB,mDAAiE;AAEjE,uCAAoD;AAEpD;;;;GAIG;AACH,MAAM,YAAY;IAahB,YAA4B,KAAa;QAAb,UAAK,GAAL,KAAK,CAAQ;QAJzB,eAAU,GAA8B,IAAI,GAAG,EAAE,CAAC;QAClD,gBAAW,GAAe,EAAE,CAAC;IAGD,CAAC;IAZtC,MAAM,CAAC,cAAc,CAAC,CAAM;QACjC,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,EAAE;YACjC,OAAO,KAAK,CAAC;SACd;QAED,OAAO,YAAY,IAAI,CAAC,CAAC;IAC3B,CAAC;IAQM,GAAG,CAAC,QAAkB;QAC3B,4DAA4D;QAC5D,IAAI,QAAQ,GAAiB,IAAI,CAAC;QAClC,KACE,IAAI,eAAe,GAAG,CAAC,EACvB,eAAe,IAAI,QAAQ,CAAC,cAAc,CAAC,MAAM,EACjD,eAAe,IAAI,CAAC,EACpB;YACA,IAAI,eAAe,KAAK,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE;gBACtD,yFAAyF;gBACzF,4FAA4F;gBAC5F,mEAAmE;gBACnE,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC;gBAC1B,OAAO;aACR;YAED,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;YACtD,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAEpC,IAAI,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC9C,IAAI,SAAS,KAAK,SAAS,EAAE;gBAC3B,SAAS,GAAG,IAAI,YAAY,CAAC,eAAe,CAAC,CAAC;gBAC9C,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;aAC1C;YAED,QAAQ,GAAG,SAAS,CAAC;SACtB;IACH,CAAC;IAED;;;;OAIG;IACI,MAAM,CACX,IAAY,EACZ,kBAA0B,CAAC;QAE3B,IAAI,eAAe,GAAG,IAAI,CAAC,MAAM,EAAE;YACjC,OAAO,SAAS,CAAC;SAClB;QAED,4DAA4D;QAC5D,IAAI,QAAQ,GAAiB,IAAI,CAAC;QAClC,OAAO,eAAe,IAAI,IAAI,CAAC,MAAM,EAAE,eAAe,IAAI,CAAC,EAAE;YAC3D,IAAI,eAAe,KAAK,IAAI,CAAC,MAAM,EAAE;gBACnC,OAAO,QAAQ,CAAC,KAAK,CAAC;aACvB;YAED,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;YAEjE,IAAI,SAAS,KAAK,SAAS,EAAE;gBAC3B,OAAO,QAAQ,CAAC;aACjB;YAED,QAAQ,GAAG,SAAS,CAAC;SACtB;IACH,CAAC;CACF;AAED,MAAa,mBAAmB;IAI9B,YAA6B,eAAe,IAAI;QAAnB,iBAAY,GAAZ,YAAY,CAAO;QAHxC,UAAK,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,WAAM,GAA0B,IAAI,GAAG,EAAE,CAAC;IAEC,CAAC;IAE7C,WAAW,CAAC,QAAkB;QACnC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAEM,2BAA2B,CAChC,KAAsB;QAEtB,MAAM,cAAc,GAAG,0DAA0C,
|
|
1
|
+
{"version":3,"file":"contracts-identifier.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/contracts-identifier.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,10 +9,10 @@ const solidity_stack_trace_1 = require("./solidity-stack-trace");
|
|
|
9
9
|
const MARGIN_SPACE = 6;
|
|
10
10
|
function printMessageTrace(trace, depth = 0) {
|
|
11
11
|
console.log("");
|
|
12
|
-
if (message_trace_1.isCreateTrace(trace)) {
|
|
12
|
+
if ((0, message_trace_1.isCreateTrace)(trace)) {
|
|
13
13
|
printCreateTrace(trace, depth);
|
|
14
14
|
}
|
|
15
|
-
else if (message_trace_1.isPrecompileTrace(trace)) {
|
|
15
|
+
else if ((0, message_trace_1.isPrecompileTrace)(trace)) {
|
|
16
16
|
printPrecompileTrace(trace, depth);
|
|
17
17
|
}
|
|
18
18
|
else {
|
|
@@ -26,19 +26,19 @@ function printCreateTrace(trace, depth) {
|
|
|
26
26
|
console.log(`${margin}Create trace`);
|
|
27
27
|
if (trace.bytecode !== undefined) {
|
|
28
28
|
console.log(`${margin} deploying contract: ${trace.bytecode.contract.location.file.sourceName}:${trace.bytecode.contract.name}`);
|
|
29
|
-
console.log(`${margin} code: ${ethereumjs_util_1.bufferToHex(trace.code)}`);
|
|
29
|
+
console.log(`${margin} code: ${(0, ethereumjs_util_1.bufferToHex)(trace.code)}`);
|
|
30
30
|
}
|
|
31
31
|
else {
|
|
32
|
-
console.log(`${margin} unrecognized deployment code: ${ethereumjs_util_1.bufferToHex(trace.code)}`);
|
|
32
|
+
console.log(`${margin} unrecognized deployment code: ${(0, ethereumjs_util_1.bufferToHex)(trace.code)}`);
|
|
33
33
|
}
|
|
34
34
|
console.log(`${margin} value: ${trace.value.toString(10)}`);
|
|
35
35
|
if (trace.deployedContract !== undefined) {
|
|
36
|
-
console.log(`${margin} contract address: ${ethereumjs_util_1.bufferToHex(trace.deployedContract)}`);
|
|
36
|
+
console.log(`${margin} contract address: ${(0, ethereumjs_util_1.bufferToHex)(trace.deployedContract)}`);
|
|
37
37
|
}
|
|
38
38
|
if (trace.error !== undefined) {
|
|
39
39
|
console.log(`${margin} error: ${trace.error.error}`);
|
|
40
40
|
// The return data is the deployed-bytecode if there was no error, so we don't show it
|
|
41
|
-
console.log(`${margin} returnData: ${ethereumjs_util_1.bufferToHex(trace.returnData)}`);
|
|
41
|
+
console.log(`${margin} returnData: ${(0, ethereumjs_util_1.bufferToHex)(trace.returnData)}`);
|
|
42
42
|
}
|
|
43
43
|
traceSteps(trace, depth);
|
|
44
44
|
}
|
|
@@ -48,11 +48,11 @@ function printPrecompileTrace(trace, depth) {
|
|
|
48
48
|
console.log(`${margin}Precompile trace`);
|
|
49
49
|
console.log(`${margin} precompile number: ${trace.precompile}`);
|
|
50
50
|
console.log(`${margin} value: ${trace.value.toString(10)}`);
|
|
51
|
-
console.log(`${margin} calldata: ${ethereumjs_util_1.bufferToHex(trace.calldata)}`);
|
|
51
|
+
console.log(`${margin} calldata: ${(0, ethereumjs_util_1.bufferToHex)(trace.calldata)}`);
|
|
52
52
|
if (trace.error !== undefined) {
|
|
53
53
|
console.log(`${margin} error: ${trace.error.error}`);
|
|
54
54
|
}
|
|
55
|
-
console.log(`${margin} returnData: ${ethereumjs_util_1.bufferToHex(trace.returnData)}`);
|
|
55
|
+
console.log(`${margin} returnData: ${(0, ethereumjs_util_1.bufferToHex)(trace.returnData)}`);
|
|
56
56
|
}
|
|
57
57
|
exports.printPrecompileTrace = printPrecompileTrace;
|
|
58
58
|
function printCallTrace(trace, depth) {
|
|
@@ -62,15 +62,15 @@ function printCallTrace(trace, depth) {
|
|
|
62
62
|
console.log(`${margin} calling contract: ${trace.bytecode.contract.location.file.sourceName}:${trace.bytecode.contract.name}`);
|
|
63
63
|
}
|
|
64
64
|
else {
|
|
65
|
-
console.log(`${margin} unrecognized contract code: ${ethereumjs_util_1.bufferToHex(trace.code)}`);
|
|
66
|
-
console.log(`${margin} contract: ${ethereumjs_util_1.bufferToHex(trace.address)}`);
|
|
65
|
+
console.log(`${margin} unrecognized contract code: ${(0, ethereumjs_util_1.bufferToHex)(trace.code)}`);
|
|
66
|
+
console.log(`${margin} contract: ${(0, ethereumjs_util_1.bufferToHex)(trace.address)}`);
|
|
67
67
|
}
|
|
68
68
|
console.log(`${margin} value: ${trace.value.toString(10)}`);
|
|
69
|
-
console.log(`${margin} calldata: ${ethereumjs_util_1.bufferToHex(trace.calldata)}`);
|
|
69
|
+
console.log(`${margin} calldata: ${(0, ethereumjs_util_1.bufferToHex)(trace.calldata)}`);
|
|
70
70
|
if (trace.error !== undefined) {
|
|
71
71
|
console.log(`${margin} error: ${trace.error.error}`);
|
|
72
72
|
}
|
|
73
|
-
console.log(`${margin} returnData: ${ethereumjs_util_1.bufferToHex(trace.returnData)}`);
|
|
73
|
+
console.log(`${margin} returnData: ${(0, ethereumjs_util_1.bufferToHex)(trace.returnData)}`);
|
|
74
74
|
traceSteps(trace, depth);
|
|
75
75
|
}
|
|
76
76
|
exports.printCallTrace = printCallTrace;
|
|
@@ -80,7 +80,7 @@ function traceSteps(trace, depth) {
|
|
|
80
80
|
console.log(`${margin} steps:`);
|
|
81
81
|
console.log("");
|
|
82
82
|
for (const step of trace.steps) {
|
|
83
|
-
if (message_trace_1.isEvmStep(step)) {
|
|
83
|
+
if ((0, message_trace_1.isEvmStep)(step)) {
|
|
84
84
|
const pc = step.pc.toString(10).padStart(3, "0").padStart(5);
|
|
85
85
|
if (trace.bytecode !== undefined) {
|
|
86
86
|
const inst = trace.bytecode.getInstruction(step.pc);
|
|
@@ -93,14 +93,14 @@ function traceSteps(trace, depth) {
|
|
|
93
93
|
}
|
|
94
94
|
location += ` - ${inst.location.offset}:${inst.location.length}`;
|
|
95
95
|
}
|
|
96
|
-
if (opcodes_1.isJump(inst.opcode)) {
|
|
96
|
+
if ((0, opcodes_1.isJump)(inst.opcode)) {
|
|
97
97
|
const jump = inst.jumpType !== model_1.JumpType.NOT_JUMP
|
|
98
98
|
? `\x1b[1m(${model_1.JumpType[inst.jumpType]})\x1b[0m`
|
|
99
99
|
: "";
|
|
100
100
|
console.log(`${margin} ${pc} ${opcodes_1.Opcode[inst.opcode]} ${jump}`.padEnd(50), location);
|
|
101
101
|
}
|
|
102
|
-
else if (opcodes_1.isPush(inst.opcode)) {
|
|
103
|
-
console.log(`${margin} ${pc} ${opcodes_1.Opcode[inst.opcode]} ${ethereumjs_util_1.bufferToHex(inst.pushData)}`.padEnd(50), location);
|
|
102
|
+
else if ((0, opcodes_1.isPush)(inst.opcode)) {
|
|
103
|
+
console.log(`${margin} ${pc} ${opcodes_1.Opcode[inst.opcode]} ${(0, ethereumjs_util_1.bufferToHex)(inst.pushData)}`.padEnd(50), location);
|
|
104
104
|
}
|
|
105
105
|
else {
|
|
106
106
|
console.log(`${margin} ${pc} ${opcodes_1.Opcode[inst.opcode]}`.padEnd(50), location);
|
|
@@ -125,7 +125,7 @@ function printStackTrace(trace) {
|
|
|
125
125
|
const withDecodedMessages = trace.map((entry) => entry.type === solidity_stack_trace_1.StackTraceEntryType.REVERT_ERROR
|
|
126
126
|
? Object.assign(Object.assign({}, entry), { message: entry.message.decodeError() }) : entry);
|
|
127
127
|
const withHexAddress = withDecodedMessages.map((entry) => "address" in entry
|
|
128
|
-
? Object.assign(Object.assign({}, entry), { address: ethereumjs_util_1.bufferToHex(entry.address) }) : entry);
|
|
128
|
+
? Object.assign(Object.assign({}, entry), { address: (0, ethereumjs_util_1.bufferToHex)(entry.address) }) : entry);
|
|
129
129
|
const withTextualType = withHexAddress.map((entry) => (Object.assign(Object.assign({}, entry), { type: solidity_stack_trace_1.StackTraceEntryType[entry.type] })));
|
|
130
130
|
const withFlattenedSourceReferences = withTextualType.map((entry) => (Object.assign(Object.assign({}, entry), { sourceReference: flattenSourceReference(entry.sourceReference) })));
|
|
131
131
|
console.log(JSON.stringify(withFlattenedSourceReferences, undefined, 2));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"debug.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/debug.ts"],"names":[],"mappings":";;;AAAA,qDAA8C;AAE9C,mDAQyB;AACzB,mCAAmC;AACnC,uCAAmD;AACnD,iEAIgC;AAEhC,MAAM,YAAY,GAAG,CAAC,CAAC;AAEvB,SAAgB,iBAAiB,CAAC,KAAmB,EAAE,KAAK,GAAG,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,IAAI,6BAAa,
|
|
1
|
+
{"version":3,"file":"debug.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/stack-traces/debug.ts"],"names":[],"mappings":"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"}
|
|
@@ -148,7 +148,7 @@ class ErrorInferrer {
|
|
|
148
148
|
const inferredStacktrace = [...stacktrace];
|
|
149
149
|
// get the instruction before the submessage and add it to the stack trace
|
|
150
150
|
const callStep = trace.steps[lastSubmessageData.stepIndex - 1];
|
|
151
|
-
if (!message_trace_1.isEvmStep(callStep)) {
|
|
151
|
+
if (!(0, message_trace_1.isEvmStep)(callStep)) {
|
|
152
152
|
throw new Error("This should not happen: MessageTrace should be preceded by a EVM step");
|
|
153
153
|
}
|
|
154
154
|
const callInst = trace.bytecode.getInstruction(callStep.pc);
|
|
@@ -188,12 +188,12 @@ class ErrorInferrer {
|
|
|
188
188
|
for (let stepIndex = trace.steps.length - 2; stepIndex >= 0; stepIndex--) {
|
|
189
189
|
const step = trace.steps[stepIndex];
|
|
190
190
|
const nextStep = trace.steps[stepIndex + 1];
|
|
191
|
-
if (!message_trace_1.isEvmStep(step)) {
|
|
191
|
+
if (!(0, message_trace_1.isEvmStep)(step)) {
|
|
192
192
|
return;
|
|
193
193
|
}
|
|
194
194
|
const inst = trace.bytecode.getInstruction(step.pc);
|
|
195
|
-
const isCallOrCreate = opcodes_1.isCall(inst.opcode) || opcodes_1.isCreate(inst.opcode);
|
|
196
|
-
if (isCallOrCreate && message_trace_1.isEvmStep(nextStep)) {
|
|
195
|
+
const isCallOrCreate = (0, opcodes_1.isCall)(inst.opcode) || (0, opcodes_1.isCreate)(inst.opcode);
|
|
196
|
+
if (isCallOrCreate && (0, message_trace_1.isEvmStep)(nextStep)) {
|
|
197
197
|
if (this._isCallFailedError(trace, stepIndex, inst)) {
|
|
198
198
|
const inferredStacktrace = [
|
|
199
199
|
...stacktrace,
|
|
@@ -215,7 +215,7 @@ class ErrorInferrer {
|
|
|
215
215
|
}
|
|
216
216
|
const inferredStacktrace = [...stacktrace];
|
|
217
217
|
if (lastInstruction.location !== undefined &&
|
|
218
|
-
(!message_trace_1.isDecodedCallTrace(trace) || jumpedIntoFunction)) {
|
|
218
|
+
(!(0, message_trace_1.isDecodedCallTrace)(trace) || jumpedIntoFunction)) {
|
|
219
219
|
// There should always be a function here, but that's not the case with optimizations.
|
|
220
220
|
//
|
|
221
221
|
// If this is a create trace, we already checked args and nonpayable failures before
|
|
@@ -238,12 +238,12 @@ class ErrorInferrer {
|
|
|
238
238
|
return customErrorStacktrace;
|
|
239
239
|
}
|
|
240
240
|
if (lastInstruction.location !== undefined &&
|
|
241
|
-
(!message_trace_1.isDecodedCallTrace(trace) || jumpedIntoFunction)) {
|
|
241
|
+
(!(0, message_trace_1.isDecodedCallTrace)(trace) || jumpedIntoFunction)) {
|
|
242
242
|
const failingFunction = lastInstruction.location.getContainingFunction();
|
|
243
243
|
if (failingFunction !== undefined) {
|
|
244
244
|
inferredStacktrace.push(this._instructionWithinFunctionToRevertStackTraceEntry(trace, lastInstruction));
|
|
245
245
|
}
|
|
246
|
-
else if (message_trace_1.isDecodedCallTrace(trace)) {
|
|
246
|
+
else if ((0, message_trace_1.isDecodedCallTrace)(trace)) {
|
|
247
247
|
// This is here because of the optimizations
|
|
248
248
|
inferredStacktrace.push({
|
|
249
249
|
type: solidity_stack_trace_1.StackTraceEntryType.REVERT_ERROR,
|
|
@@ -329,7 +329,7 @@ class ErrorInferrer {
|
|
|
329
329
|
*/
|
|
330
330
|
_checkLastInstruction(trace, stacktrace, functionJumpdests, jumpedIntoFunction) {
|
|
331
331
|
const lastStep = trace.steps[trace.steps.length - 1];
|
|
332
|
-
if (!message_trace_1.isEvmStep(lastStep)) {
|
|
332
|
+
if (!(0, message_trace_1.isEvmStep)(lastStep)) {
|
|
333
333
|
throw new Error("This should not happen: MessageTrace ends with a subtrace");
|
|
334
334
|
}
|
|
335
335
|
const lastInstruction = trace.bytecode.getInstruction(lastStep.pc);
|
|
@@ -337,7 +337,7 @@ class ErrorInferrer {
|
|
|
337
337
|
if (revertOrInvalidStacktrace !== undefined) {
|
|
338
338
|
return revertOrInvalidStacktrace;
|
|
339
339
|
}
|
|
340
|
-
if (message_trace_1.isDecodedCallTrace(trace) && !jumpedIntoFunction) {
|
|
340
|
+
if ((0, message_trace_1.isDecodedCallTrace)(trace) && !jumpedIntoFunction) {
|
|
341
341
|
if (this._hasFailedInsideTheFallbackFunction(trace) ||
|
|
342
342
|
this._hasFailedInsideTheReceiveFunction(trace)) {
|
|
343
343
|
return [
|
|
@@ -395,7 +395,7 @@ class ErrorInferrer {
|
|
|
395
395
|
}
|
|
396
396
|
}
|
|
397
397
|
_checkContractTooLarge(trace) {
|
|
398
|
-
if (message_trace_1.isCreateTrace(trace) && this._isContractTooLargeError(trace)) {
|
|
398
|
+
if ((0, message_trace_1.isCreateTrace)(trace) && this._isContractTooLargeError(trace)) {
|
|
399
399
|
return [
|
|
400
400
|
{
|
|
401
401
|
type: solidity_stack_trace_1.StackTraceEntryType.CONTRACT_TOO_LARGE_ERROR,
|
|
@@ -590,7 +590,7 @@ class ErrorInferrer {
|
|
|
590
590
|
return false;
|
|
591
591
|
}
|
|
592
592
|
const lastStep = trace.steps[trace.steps.length - 1];
|
|
593
|
-
if (!message_trace_1.isEvmStep(lastStep)) {
|
|
593
|
+
if (!(0, message_trace_1.isEvmStep)(lastStep)) {
|
|
594
594
|
return false;
|
|
595
595
|
}
|
|
596
596
|
const lastInst = trace.bytecode.getInstruction(lastStep.pc);
|
|
@@ -601,7 +601,7 @@ class ErrorInferrer {
|
|
|
601
601
|
// eslint-disable-next-line @typescript-eslint/prefer-for-of
|
|
602
602
|
for (let stepIndex = 0; stepIndex < trace.steps.length; stepIndex++) {
|
|
603
603
|
const step = trace.steps[stepIndex];
|
|
604
|
-
if (!message_trace_1.isEvmStep(step)) {
|
|
604
|
+
if (!(0, message_trace_1.isEvmStep)(step)) {
|
|
605
605
|
return false;
|
|
606
606
|
}
|
|
607
607
|
const inst = trace.bytecode.getInstruction(step.pc);
|
|
@@ -610,14 +610,14 @@ class ErrorInferrer {
|
|
|
610
610
|
!constructor.location.equals(inst.location)) {
|
|
611
611
|
return false;
|
|
612
612
|
}
|
|
613
|
-
if (inst.opcode === opcodes_1.Opcode.CODESIZE && message_trace_1.isCreateTrace(trace)) {
|
|
613
|
+
if (inst.opcode === opcodes_1.Opcode.CODESIZE && (0, message_trace_1.isCreateTrace)(trace)) {
|
|
614
614
|
hasReadDeploymentCodeSize = true;
|
|
615
615
|
}
|
|
616
616
|
}
|
|
617
617
|
return hasReadDeploymentCodeSize;
|
|
618
618
|
}
|
|
619
619
|
_getEntryBeforeInitialModifierCallstackEntry(trace) {
|
|
620
|
-
if (message_trace_1.isDecodedCreateTrace(trace)) {
|
|
620
|
+
if ((0, message_trace_1.isDecodedCreateTrace)(trace)) {
|
|
621
621
|
return {
|
|
622
622
|
type: solidity_stack_trace_1.StackTraceEntryType.CALLSTACK_ENTRY,
|
|
623
623
|
sourceReference: this._getConstructorStartSourceReference(trace),
|
|
@@ -643,7 +643,7 @@ class ErrorInferrer {
|
|
|
643
643
|
_getLastSourceReference(trace) {
|
|
644
644
|
for (let i = trace.steps.length - 1; i >= 0; i--) {
|
|
645
645
|
const step = trace.steps[i];
|
|
646
|
-
if (!message_trace_1.isEvmStep(step)) {
|
|
646
|
+
if (!(0, message_trace_1.isEvmStep)(step)) {
|
|
647
647
|
continue;
|
|
648
648
|
}
|
|
649
649
|
const inst = trace.bytecode.getInstruction(step.pc);
|
|
@@ -701,7 +701,7 @@ class ErrorInferrer {
|
|
|
701
701
|
}
|
|
702
702
|
_solidity063MaybeUnmappedRevert(trace) {
|
|
703
703
|
const lastStep = trace.steps[trace.steps.length - 1];
|
|
704
|
-
if (!message_trace_1.isEvmStep(lastStep)) {
|
|
704
|
+
if (!(0, message_trace_1.isEvmStep)(lastStep)) {
|
|
705
705
|
return false;
|
|
706
706
|
}
|
|
707
707
|
const lastInst = trace.bytecode.getInstruction(lastStep.pc);
|
|
@@ -807,7 +807,7 @@ class ErrorInferrer {
|
|
|
807
807
|
}
|
|
808
808
|
return revertFrame;
|
|
809
809
|
}
|
|
810
|
-
if (message_trace_1.isCreateTrace(trace)) {
|
|
810
|
+
if ((0, message_trace_1.isCreateTrace)(trace)) {
|
|
811
811
|
// Solidity is smart enough to stop emitting extra instructions after
|
|
812
812
|
// an unconditional revert happens in a constructor. If this is the case
|
|
813
813
|
// we just return a special error.
|
|
@@ -851,7 +851,7 @@ class ErrorInferrer {
|
|
|
851
851
|
// This error doesn't come from solidity, but actually from the VM.
|
|
852
852
|
// The deployment code executes correctly, but it OOGs.
|
|
853
853
|
const lastStep = trace.steps[trace.steps.length - 1];
|
|
854
|
-
if (!message_trace_1.isEvmStep(lastStep)) {
|
|
854
|
+
if (!(0, message_trace_1.isEvmStep)(lastStep)) {
|
|
855
855
|
return false;
|
|
856
856
|
}
|
|
857
857
|
const lastInst = trace.bytecode.getInstruction(lastStep.pc);
|
|
@@ -888,7 +888,7 @@ class ErrorInferrer {
|
|
|
888
888
|
_getLastInstructionWithValidLocationStepIndex(trace) {
|
|
889
889
|
for (let i = trace.steps.length - 1; i >= 0; i--) {
|
|
890
890
|
const step = trace.steps[i];
|
|
891
|
-
if (!message_trace_1.isEvmStep(step)) {
|
|
891
|
+
if (!(0, message_trace_1.isEvmStep)(step)) {
|
|
892
892
|
return undefined;
|
|
893
893
|
}
|
|
894
894
|
const inst = trace.bytecode.getInstruction(step.pc);
|
|
@@ -904,7 +904,7 @@ class ErrorInferrer {
|
|
|
904
904
|
return undefined;
|
|
905
905
|
}
|
|
906
906
|
const lastLocationStep = trace.steps[lastLocationIndex];
|
|
907
|
-
if (message_trace_1.isEvmStep(lastLocationStep)) {
|
|
907
|
+
if ((0, message_trace_1.isEvmStep)(lastLocationStep)) {
|
|
908
908
|
const lastInstructionWithLocation = trace.bytecode.getInstruction(lastLocationStep.pc);
|
|
909
909
|
return lastInstructionWithLocation;
|
|
910
910
|
}
|
|
@@ -924,7 +924,7 @@ class ErrorInferrer {
|
|
|
924
924
|
}
|
|
925
925
|
// This function is only called after we jumped into the initial function in call traces, so
|
|
926
926
|
// there should always be at least a function jumpdest.
|
|
927
|
-
if (!message_trace_1.isDecodedCreateTrace(trace)) {
|
|
927
|
+
if (!(0, message_trace_1.isDecodedCreateTrace)(trace)) {
|
|
928
928
|
throw new Error("This shouldn't happen: a call trace has no functionJumpdest but has already jumped into a function");
|
|
929
929
|
}
|
|
930
930
|
// If there's no jump dest, we point to the constructor.
|
|
@@ -936,7 +936,7 @@ class ErrorInferrer {
|
|
|
936
936
|
}
|
|
937
937
|
_failsRightAfterCall(trace, callSubtraceStepIndex) {
|
|
938
938
|
const lastStep = trace.steps[trace.steps.length - 1];
|
|
939
|
-
if (!message_trace_1.isEvmStep(lastStep)) {
|
|
939
|
+
if (!(0, message_trace_1.isEvmStep)(lastStep)) {
|
|
940
940
|
return false;
|
|
941
941
|
}
|
|
942
942
|
const lastInst = trace.bytecode.getInstruction(lastStep.pc);
|
|
@@ -955,7 +955,7 @@ class ErrorInferrer {
|
|
|
955
955
|
_isLastLocation(trace, fromStep, location) {
|
|
956
956
|
for (let i = fromStep; i < trace.steps.length; i++) {
|
|
957
957
|
const step = trace.steps[i];
|
|
958
|
-
if (!message_trace_1.isEvmStep(step)) {
|
|
958
|
+
if (!(0, message_trace_1.isEvmStep)(step)) {
|
|
959
959
|
return false;
|
|
960
960
|
}
|
|
961
961
|
const stepInst = trace.bytecode.getInstruction(step.pc);
|
|
@@ -981,11 +981,11 @@ class ErrorInferrer {
|
|
|
981
981
|
return this._failsRightAfterCall(trace, callSubtraceStepIndex);
|
|
982
982
|
}
|
|
983
983
|
_isProxyErrorPropagated(trace, callSubtraceStepIndex) {
|
|
984
|
-
if (!message_trace_1.isDecodedCallTrace(trace)) {
|
|
984
|
+
if (!(0, message_trace_1.isDecodedCallTrace)(trace)) {
|
|
985
985
|
return false;
|
|
986
986
|
}
|
|
987
987
|
const callStep = trace.steps[callSubtraceStepIndex - 1];
|
|
988
|
-
if (!message_trace_1.isEvmStep(callStep)) {
|
|
988
|
+
if (!(0, message_trace_1.isEvmStep)(callStep)) {
|
|
989
989
|
return false;
|
|
990
990
|
}
|
|
991
991
|
const callInst = trace.bytecode.getInstruction(callStep.pc);
|
|
@@ -993,10 +993,10 @@ class ErrorInferrer {
|
|
|
993
993
|
return false;
|
|
994
994
|
}
|
|
995
995
|
const subtrace = trace.steps[callSubtraceStepIndex];
|
|
996
|
-
if (message_trace_1.isEvmStep(subtrace)) {
|
|
996
|
+
if ((0, message_trace_1.isEvmStep)(subtrace)) {
|
|
997
997
|
return false;
|
|
998
998
|
}
|
|
999
|
-
if (message_trace_1.isPrecompileTrace(subtrace)) {
|
|
999
|
+
if ((0, message_trace_1.isPrecompileTrace)(subtrace)) {
|
|
1000
1000
|
return false;
|
|
1001
1001
|
}
|
|
1002
1002
|
// If we can't recognize the implementation we'd better don't consider it as such
|
|
@@ -1011,7 +1011,7 @@ class ErrorInferrer {
|
|
|
1011
1011
|
}
|
|
1012
1012
|
for (let i = callSubtraceStepIndex + 1; i < trace.steps.length; i++) {
|
|
1013
1013
|
const step = trace.steps[i];
|
|
1014
|
-
if (!message_trace_1.isEvmStep(step)) {
|
|
1014
|
+
if (!(0, message_trace_1.isEvmStep)(step)) {
|
|
1015
1015
|
return false;
|
|
1016
1016
|
}
|
|
1017
1017
|
const inst = trace.bytecode.getInstruction(step.pc);
|