hardhat 2.6.5 → 2.7.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/CHANGELOG.md +45 -0
- package/builtin-tasks/compile.js +9 -0
- package/builtin-tasks/compile.js.map +1 -1
- package/builtin-tasks/node.js +26 -9
- package/builtin-tasks/node.js.map +1 -1
- package/internal/artifacts.d.ts +49 -0
- package/internal/artifacts.d.ts.map +1 -1
- package/internal/artifacts.js +191 -55
- package/internal/artifacts.js.map +1 -1
- package/internal/cli/analytics.js +2 -2
- package/internal/cli/analytics.js.map +1 -1
- package/internal/cli/cli.js +3 -1
- package/internal/cli/cli.js.map +1 -1
- package/internal/constants.d.ts +2 -0
- package/internal/constants.d.ts.map +1 -1
- package/internal/constants.js +3 -1
- package/internal/constants.js.map +1 -1
- package/internal/core/config/config-loading.d.ts.map +1 -1
- package/internal/core/config/config-loading.js +16 -2
- 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 +21 -0
- 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 +88 -13
- package/internal/core/config/config-validation.js.map +1 -1
- package/internal/core/config/default-config.d.ts +1 -0
- package/internal/core/config/default-config.d.ts.map +1 -1
- package/internal/core/config/default-config.js +11 -4
- package/internal/core/config/default-config.js.map +1 -1
- package/internal/core/errors-list.d.ts +14 -0
- package/internal/core/errors-list.d.ts.map +1 -1
- package/internal/core/errors-list.js +21 -2
- package/internal/core/errors-list.js.map +1 -1
- package/internal/core/jsonrpc/types/output/log.d.ts +1 -0
- package/internal/core/jsonrpc/types/output/log.d.ts.map +1 -1
- package/internal/core/jsonrpc/types/output/log.js +1 -0
- package/internal/core/jsonrpc/types/output/log.js.map +1 -1
- package/internal/core/jsonrpc/types/output/receipt.d.ts +1 -0
- package/internal/core/jsonrpc/types/output/receipt.d.ts.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/providers/accounts.d.ts.map +1 -1
- package/internal/core/providers/accounts.js +14 -0
- package/internal/core/providers/accounts.js.map +1 -1
- package/internal/core/providers/construction.d.ts.map +1 -1
- package/internal/core/providers/construction.js +4 -2
- 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 +1 -1
- package/internal/core/providers/gas-providers.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 +4 -1
- 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/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/fork/ForkBlockchain.d.ts.map +1 -1
- package/internal/hardhat-network/provider/fork/ForkBlockchain.js +1 -3
- package/internal/hardhat-network/provider/fork/ForkBlockchain.js.map +1 -1
- package/internal/hardhat-network/provider/modules/hardhat.d.ts +3 -0
- package/internal/hardhat-network/provider/modules/hardhat.d.ts.map +1 -1
- package/internal/hardhat-network/provider/modules/hardhat.js +16 -0
- package/internal/hardhat-network/provider/modules/hardhat.js.map +1 -1
- package/internal/hardhat-network/provider/modules/personal.d.ts +9 -0
- package/internal/hardhat-network/provider/modules/personal.d.ts.map +1 -0
- package/internal/hardhat-network/provider/modules/personal.js +31 -0
- package/internal/hardhat-network/provider/modules/personal.js.map +1 -0
- package/internal/hardhat-network/provider/node-types.d.ts +5 -0
- 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 +4 -1
- package/internal/hardhat-network/provider/node.d.ts.map +1 -1
- package/internal/hardhat-network/provider/node.js +42 -17
- 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 +9 -6
- package/internal/hardhat-network/provider/output.js.map +1 -1
- package/internal/hardhat-network/provider/provider.d.ts +6 -2
- package/internal/hardhat-network/provider/provider.d.ts.map +1 -1
- package/internal/hardhat-network/provider/provider.js +12 -2
- package/internal/hardhat-network/provider/provider.js.map +1 -1
- package/internal/hardhat-network/stack-traces/error-inferrer.d.ts.map +1 -1
- package/internal/hardhat-network/stack-traces/error-inferrer.js +14 -0
- package/internal/hardhat-network/stack-traces/error-inferrer.js.map +1 -1
- package/internal/hardhat-network/stack-traces/solidityTracer.d.ts +1 -1
- package/internal/hardhat-network/stack-traces/solidityTracer.js +1 -1
- package/internal/lib/hardhat-lib.d.ts.map +1 -1
- package/internal/lib/hardhat-lib.js +2 -0
- package/internal/lib/hardhat-lib.js.map +1 -1
- package/internal/util/antlr-prototype-pollution-workaround.d.ts +16 -0
- package/internal/util/antlr-prototype-pollution-workaround.d.ts.map +1 -0
- package/internal/util/antlr-prototype-pollution-workaround.js +22 -0
- package/internal/util/antlr-prototype-pollution-workaround.js.map +1 -0
- package/package.json +5 -5
- package/register.js +3 -1
- package/register.js.map +1 -1
- package/src/builtin-tasks/compile.ts +14 -0
- package/src/builtin-tasks/node.ts +41 -9
- package/src/internal/artifacts.ts +268 -71
- package/src/internal/cli/analytics.ts +1 -1
- package/src/internal/cli/cli.ts +4 -1
- package/src/internal/constants.ts +3 -0
- package/src/internal/core/config/config-loading.ts +24 -2
- package/src/internal/core/config/config-resolution.ts +28 -0
- package/src/internal/core/config/config-validation.ts +147 -15
- package/src/internal/core/config/default-config.ts +9 -2
- package/src/internal/core/errors-list.ts +21 -2
- package/src/internal/core/jsonrpc/types/output/log.ts +1 -0
- package/src/internal/core/params/hardhat-params.ts +2 -2
- package/src/internal/core/providers/accounts.ts +19 -0
- package/src/internal/core/providers/construction.ts +8 -2
- package/src/internal/core/providers/gas-providers.ts +1 -1
- package/src/internal/core/typescript-support.ts +5 -1
- package/src/internal/hardhat-network/provider/TransactionQueue.ts +31 -4
- package/src/internal/hardhat-network/provider/fork/ForkBlockchain.ts +1 -3
- package/src/internal/hardhat-network/provider/modules/hardhat.ts +23 -0
- package/src/internal/hardhat-network/provider/modules/personal.ts +39 -0
- package/src/internal/hardhat-network/provider/node-types.ts +6 -0
- package/src/internal/hardhat-network/provider/node.ts +45 -15
- package/src/internal/hardhat-network/provider/output.ts +9 -9
- package/src/internal/hardhat-network/provider/provider.ts +15 -1
- package/src/internal/hardhat-network/stack-traces/error-inferrer.ts +19 -0
- package/src/internal/hardhat-network/stack-traces/solidityTracer.ts +1 -1
- package/src/internal/lib/hardhat-lib.ts +3 -0
- package/src/internal/util/antlr-prototype-pollution-workaround.ts +17 -0
- package/src/register.ts +4 -1
- package/src/types/config.ts +14 -0
- package/src/utils/contract-names.ts +112 -0
- package/src/utils/source-names.ts +1 -1
- package/types/config.d.ts +10 -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 +1 -1
|
@@ -3,6 +3,7 @@ import { Block } from "@ethereumjs/block";
|
|
|
3
3
|
import { RunBlockResult } from "@ethereumjs/vm/dist/runBlock";
|
|
4
4
|
import { BN } from "ethereumjs-util";
|
|
5
5
|
import { BuildInfo } from "../../../types";
|
|
6
|
+
import { HARDHAT_MEMPOOL_SUPPORTED_ORDERS } from "../../constants";
|
|
6
7
|
import { MessageTrace } from "../stack-traces/message-trace";
|
|
7
8
|
import type { ReturnData } from "./return-data";
|
|
8
9
|
export declare type NodeConfig = LocalNodeConfig | ForkedNodeConfig;
|
|
@@ -20,6 +21,8 @@ interface CommonConfig {
|
|
|
20
21
|
initialDate?: Date;
|
|
21
22
|
tracingConfig?: TracingConfig;
|
|
22
23
|
initialBaseFeePerGas?: number;
|
|
24
|
+
mempoolOrder: MempoolOrder;
|
|
25
|
+
coinbase: string;
|
|
23
26
|
}
|
|
24
27
|
export declare type LocalNodeConfig = CommonConfig;
|
|
25
28
|
export interface ForkConfig {
|
|
@@ -34,6 +37,7 @@ export interface TracingConfig {
|
|
|
34
37
|
buildInfos?: BuildInfo[];
|
|
35
38
|
}
|
|
36
39
|
export declare type IntervalMiningConfig = number | [number, number];
|
|
40
|
+
export declare type MempoolOrder = typeof HARDHAT_MEMPOOL_SUPPORTED_ORDERS[number];
|
|
37
41
|
export interface GenesisAccount {
|
|
38
42
|
privateKey: string;
|
|
39
43
|
balance: string | number | BN;
|
|
@@ -87,6 +91,7 @@ export interface Snapshot {
|
|
|
87
91
|
nextBlockTimestamp: BN;
|
|
88
92
|
irregularStatesByBlockNumber: Map<string, Buffer>;
|
|
89
93
|
userProvidedNextBlockBaseFeePerGas: BN | undefined;
|
|
94
|
+
coinbase: string;
|
|
90
95
|
}
|
|
91
96
|
export declare type SendTransactionResult = string | MineBlockResult | MineBlockResult[];
|
|
92
97
|
export interface MineBlockResult {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-types.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/node-types.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,oBAAY,UAAU,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAE5D,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,UAAU,GACjB,MAAM,IAAI,gBAAgB,CAE5B;AAED,UAAU,YAAY;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,EAAE,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"node-types.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/node-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-types.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/node-types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"node-types.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/node-types.ts"],"names":[],"mappings":";;;AAYA,SAAgB,kBAAkB,CAChC,MAAkB;IAElB,OAAO,YAAY,IAAI,MAAM,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC;AACnE,CAAC;AAJD,gDAIC"}
|
|
@@ -10,7 +10,6 @@ import { MessageTrace } from "../stack-traces/message-trace";
|
|
|
10
10
|
import "./ethereumjs-workarounds";
|
|
11
11
|
import { CallParams, EstimateGasResult, FeeHistory, FilterParams, MineBlockResult, NodeConfig, RunCallResult, SendTransactionResult, TransactionParams } from "./node-types";
|
|
12
12
|
import { RpcLogOutput, RpcReceiptOutput } from "./output";
|
|
13
|
-
export declare const COINBASE_ADDRESS: Address;
|
|
14
13
|
export declare class HardhatNode extends EventEmitter {
|
|
15
14
|
private readonly _vm;
|
|
16
15
|
private readonly _stateManager;
|
|
@@ -19,6 +18,8 @@ export declare class HardhatNode extends EventEmitter {
|
|
|
19
18
|
private _automine;
|
|
20
19
|
private _minGasPrice;
|
|
21
20
|
private _blockTimeOffsetSeconds;
|
|
21
|
+
private _mempoolOrder;
|
|
22
|
+
private _coinbase;
|
|
22
23
|
private _forkNetworkId?;
|
|
23
24
|
static create(config: NodeConfig): Promise<[Common, HardhatNode]>;
|
|
24
25
|
private static _validateHardforks;
|
|
@@ -89,6 +90,7 @@ export declare class HardhatNode extends EventEmitter {
|
|
|
89
90
|
addImpersonatedAccount(address: Buffer): true;
|
|
90
91
|
removeImpersonatedAccount(address: Buffer): boolean;
|
|
91
92
|
setAutomine(automine: boolean): void;
|
|
93
|
+
getAutomine(): boolean;
|
|
92
94
|
setBlockGasLimit(gasLimit: BN | number): Promise<void>;
|
|
93
95
|
setMinGasPrice(minGasPrice: BN): Promise<void>;
|
|
94
96
|
dropTransaction(hash: Buffer): Promise<boolean>;
|
|
@@ -98,6 +100,7 @@ export declare class HardhatNode extends EventEmitter {
|
|
|
98
100
|
setStorageAt(address: Address, positionIndex: BN, value: Buffer): Promise<void>;
|
|
99
101
|
traceTransaction(hash: Buffer, config: RpcDebugTracingConfig): Promise<import("./output").RpcDebugTraceOutput>;
|
|
100
102
|
getFeeHistory(blockCount: BN, newestBlock: BN | "pending", rewardPercentiles: number[]): Promise<FeeHistory>;
|
|
103
|
+
setCoinbase(coinbase: Address): Promise<void>;
|
|
101
104
|
private _getGasUsedRatio;
|
|
102
105
|
private _getRewards;
|
|
103
106
|
private _addPendingTransaction;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/node.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAc,MAAM,mBAAmB,CAAC;AACtD,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAIL,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AASxB,OAAO,EACL,OAAO,EACP,EAAE,EAEF,cAAc,EAKf,MAAM,iBAAiB,CAAC;AACzB,OAAO,YAAY,MAAM,QAAQ,CAAC;AAElC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAM/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAiB7F,OAAO,EAGL,YAAY,EACb,MAAM,+BAA+B,CAAC;AAcvC,OAAO,0BAA0B,CAAC;AAOlC,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,UAAU,EACV,YAAY,
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/node.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.HardhatNode =
|
|
6
|
+
exports.HardhatNode = void 0;
|
|
7
7
|
const block_1 = require("@ethereumjs/block");
|
|
8
8
|
const common_1 = __importDefault(require("@ethereumjs/common"));
|
|
9
9
|
const tx_1 = require("@ethereumjs/tx");
|
|
@@ -53,10 +53,9 @@ const putGenesisBlock_1 = require("./utils/putGenesisBlock");
|
|
|
53
53
|
const txMapToArray_1 = require("./utils/txMapToArray");
|
|
54
54
|
const log = debug_1.default("hardhat:core:hardhat-network:node");
|
|
55
55
|
const ethSigUtil = require("eth-sig-util");
|
|
56
|
-
exports.COINBASE_ADDRESS = ethereumjs_util_1.Address.fromString("0xc014ba5ec014ba5ec014ba5ec014ba5ec014ba5e");
|
|
57
56
|
/* eslint-disable @nomiclabs/hardhat-internal-rules/only-hardhat-error */
|
|
58
57
|
class HardhatNode extends events_1.default {
|
|
59
|
-
constructor(_vm, _stateManager, _blockchain, _txPool, _automine, _minGasPrice, _blockTimeOffsetSeconds = new ethereumjs_util_1.BN(0), genesisAccounts, tracingConfig, _forkNetworkId, nextBlockBaseFee) {
|
|
58
|
+
constructor(_vm, _stateManager, _blockchain, _txPool, _automine, _minGasPrice, _blockTimeOffsetSeconds = new ethereumjs_util_1.BN(0), _mempoolOrder, _coinbase, genesisAccounts, tracingConfig, _forkNetworkId, nextBlockBaseFee) {
|
|
60
59
|
super();
|
|
61
60
|
this._vm = _vm;
|
|
62
61
|
this._stateManager = _stateManager;
|
|
@@ -65,6 +64,8 @@ class HardhatNode extends events_1.default {
|
|
|
65
64
|
this._automine = _automine;
|
|
66
65
|
this._minGasPrice = _minGasPrice;
|
|
67
66
|
this._blockTimeOffsetSeconds = _blockTimeOffsetSeconds;
|
|
67
|
+
this._mempoolOrder = _mempoolOrder;
|
|
68
|
+
this._coinbase = _coinbase;
|
|
68
69
|
this._forkNetworkId = _forkNetworkId;
|
|
69
70
|
this._localAccounts = new Map(); // address => private key
|
|
70
71
|
this._impersonatedAccounts = new Set(); // address
|
|
@@ -103,7 +104,7 @@ class HardhatNode extends events_1.default {
|
|
|
103
104
|
}
|
|
104
105
|
}
|
|
105
106
|
static async create(config) {
|
|
106
|
-
const { automine, genesisAccounts, blockGasLimit, allowUnlimitedContractSize, tracingConfig, minGasPrice, } = config;
|
|
107
|
+
const { automine, genesisAccounts, blockGasLimit, allowUnlimitedContractSize, tracingConfig, minGasPrice, mempoolOrder, } = config;
|
|
107
108
|
let common;
|
|
108
109
|
let stateManager;
|
|
109
110
|
let blockchain;
|
|
@@ -164,7 +165,7 @@ class HardhatNode extends events_1.default {
|
|
|
164
165
|
blockchain: blockchain,
|
|
165
166
|
allowUnlimitedContractSize,
|
|
166
167
|
});
|
|
167
|
-
const node = new HardhatNode(vm, stateManager, blockchain, txPool, automine, minGasPrice, initialBlockTimeOffset, genesisAccounts, tracingConfig, forkNetworkId, nextBlockBaseFeePerGas);
|
|
168
|
+
const node = new HardhatNode(vm, stateManager, blockchain, txPool, automine, minGasPrice, initialBlockTimeOffset, mempoolOrder, config.coinbase, genesisAccounts, tracingConfig, forkNetworkId, nextBlockBaseFeePerGas);
|
|
168
169
|
return [common, node];
|
|
169
170
|
}
|
|
170
171
|
static _validateHardforks(forkBlockNumber, common, remoteChainId) {
|
|
@@ -385,7 +386,7 @@ Hardhat Network's forking functionality only works with blocks from at least spu
|
|
|
385
386
|
return new ethereumjs_util_1.BN(default_config_1.HARDHAT_NETWORK_DEFAULT_MAX_PRIORITY_FEE_PER_GAS);
|
|
386
387
|
}
|
|
387
388
|
getCoinbaseAddress() {
|
|
388
|
-
return
|
|
389
|
+
return ethereumjs_util_1.Address.fromString(this._coinbase);
|
|
389
390
|
}
|
|
390
391
|
async getStorageAt(address, positionIndex, blockNumberOrPending) {
|
|
391
392
|
const key = positionIndex.toArrayLike(Buffer, "be", 32);
|
|
@@ -492,6 +493,7 @@ Hardhat Network's forking functionality only works with blocks from at least spu
|
|
|
492
493
|
nextBlockTimestamp: this.getNextBlockTimestamp(),
|
|
493
494
|
irregularStatesByBlockNumber: this._irregularStatesByBlockNumber,
|
|
494
495
|
userProvidedNextBlockBaseFeePerGas: this.getUserProvidedNextBlockBaseFeePerGas(),
|
|
496
|
+
coinbase: this.getCoinbaseAddress().toString(),
|
|
495
497
|
};
|
|
496
498
|
this._irregularStatesByBlockNumber = new Map(this._irregularStatesByBlockNumber);
|
|
497
499
|
this._snapshots.push(snapshot);
|
|
@@ -528,6 +530,7 @@ Hardhat Network's forking functionality only works with blocks from at least spu
|
|
|
528
530
|
else {
|
|
529
531
|
this._resetUserProvidedNextBlockBaseFeePerGas();
|
|
530
532
|
}
|
|
533
|
+
this._coinbase = snapshot.coinbase;
|
|
531
534
|
// We delete this and the following snapshots, as they can only be used
|
|
532
535
|
// once in Ganache
|
|
533
536
|
this._snapshots.splice(snapshotIndex);
|
|
@@ -650,6 +653,9 @@ Hardhat Network's forking functionality only works with blocks from at least spu
|
|
|
650
653
|
setAutomine(automine) {
|
|
651
654
|
this._automine = automine;
|
|
652
655
|
}
|
|
656
|
+
getAutomine() {
|
|
657
|
+
return this._automine;
|
|
658
|
+
}
|
|
653
659
|
async setBlockGasLimit(gasLimit) {
|
|
654
660
|
this._txPool.setBlockGasLimit(gasLimit);
|
|
655
661
|
await this._txPool.updatePendingAndQueued();
|
|
@@ -809,6 +815,9 @@ Hardhat Network's forking functionality only works with blocks from at least spu
|
|
|
809
815
|
reward: rewardPercentiles.length > 0 ? reward : undefined,
|
|
810
816
|
};
|
|
811
817
|
}
|
|
818
|
+
async setCoinbase(coinbase) {
|
|
819
|
+
this._coinbase = coinbase.toString();
|
|
820
|
+
}
|
|
812
821
|
_getGasUsedRatio(block) {
|
|
813
822
|
const FLOATS_PRECISION = 100000;
|
|
814
823
|
return (block.header.gasUsed
|
|
@@ -824,25 +833,41 @@ Hardhat Network's forking functionality only works with blocks from at least spu
|
|
|
824
833
|
const receipts = await Promise.all(block.transactions
|
|
825
834
|
.map((tx) => tx.hash())
|
|
826
835
|
.map((hash) => this.getTransactionReceipt(hash)));
|
|
827
|
-
const
|
|
828
|
-
.map((r) =>
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
836
|
+
const effectiveGasRewardAndGas = receipts
|
|
837
|
+
.map((r, i) => {
|
|
838
|
+
var _a;
|
|
839
|
+
const tx = block.transactions[i];
|
|
840
|
+
const baseFeePerGas = (_a = block.header.baseFeePerGas) !== null && _a !== void 0 ? _a : new ethereumjs_util_1.BN(0);
|
|
841
|
+
// reward = min(maxPriorityFeePerGas, maxFeePerGas - baseFeePerGas)
|
|
842
|
+
let effectiveGasReward;
|
|
843
|
+
if ("maxPriorityFeePerGas" in tx) {
|
|
844
|
+
effectiveGasReward = tx.maxFeePerGas.sub(baseFeePerGas);
|
|
845
|
+
if (tx.maxPriorityFeePerGas.lt(effectiveGasReward)) {
|
|
846
|
+
effectiveGasReward = tx.maxPriorityFeePerGas;
|
|
847
|
+
}
|
|
848
|
+
}
|
|
849
|
+
else {
|
|
850
|
+
effectiveGasReward = tx.gasPrice.sub(baseFeePerGas);
|
|
851
|
+
}
|
|
852
|
+
return {
|
|
853
|
+
effectiveGasReward,
|
|
854
|
+
gasUsed: base_types_1.rpcQuantityToBN(r === null || r === void 0 ? void 0 : r.gasUsed),
|
|
855
|
+
};
|
|
856
|
+
})
|
|
857
|
+
.sort((a, b) => a.effectiveGasReward.cmp(b.effectiveGasReward));
|
|
833
858
|
return rewardPercentiles.map((p) => {
|
|
834
859
|
let gasUsed = new ethereumjs_util_1.BN(0);
|
|
835
860
|
const targetGas = block.header.gasLimit
|
|
836
861
|
.muln(Math.ceil(p * FLOATS_PRECISION))
|
|
837
862
|
.divn(100 * FLOATS_PRECISION);
|
|
838
|
-
for (const values of
|
|
863
|
+
for (const values of effectiveGasRewardAndGas) {
|
|
839
864
|
gasUsed = gasUsed.add(values.gasUsed);
|
|
840
865
|
if (targetGas.lte(gasUsed)) {
|
|
841
|
-
return values.
|
|
866
|
+
return values.effectiveGasReward;
|
|
842
867
|
}
|
|
843
868
|
}
|
|
844
|
-
return
|
|
845
|
-
.
|
|
869
|
+
return effectiveGasRewardAndGas[effectiveGasRewardAndGas.length - 1]
|
|
870
|
+
.effectiveGasReward;
|
|
846
871
|
});
|
|
847
872
|
}
|
|
848
873
|
async _addPendingTransaction(tx) {
|
|
@@ -961,7 +986,7 @@ Hardhat Network's forking functionality only works with blocks from at least spu
|
|
|
961
986
|
const blockGasLimit = this.getBlockGasLimit();
|
|
962
987
|
const minTxFee = this._getMinimalTransactionFee();
|
|
963
988
|
const pendingTxs = this._txPool.getPendingTransactions();
|
|
964
|
-
const transactionQueue = new TransactionQueue_1.TransactionQueue(pendingTxs, headerData.baseFeePerGas);
|
|
989
|
+
const transactionQueue = new TransactionQueue_1.TransactionQueue(pendingTxs, this._mempoolOrder, headerData.baseFeePerGas);
|
|
965
990
|
let tx = transactionQueue.getNextTransaction();
|
|
966
991
|
const results = [];
|
|
967
992
|
const receipts = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/node.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/node.ts"],"names":[],"mappings":"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"}
|
|
@@ -115,7 +115,7 @@ export declare function getRpcTransaction(tx: TypedTransaction, showTransactionT
|
|
|
115
115
|
export declare function getRpcTransaction(tx: TypedTransaction, showTransactionType: boolean, block: "pending"): RpcTransactionOutput;
|
|
116
116
|
export declare function getRpcReceiptOutputsFromLocalBlockExecution(block: Block, runBlockResult: RunBlockResult, showTransactionType: boolean): RpcReceiptOutput[];
|
|
117
117
|
export declare function remoteReceiptToRpcReceiptOutput(receipt: RpcTransactionReceipt, tx: TypedTransaction, showTransactionType: boolean, showEffectiveGasPrice: boolean): RpcReceiptOutput;
|
|
118
|
-
export declare function toRpcLogOutput(log: RpcLog
|
|
118
|
+
export declare function toRpcLogOutput(log: RpcLog): RpcLogOutput;
|
|
119
119
|
export declare function shouldShowTransactionTypeForHardfork(common: Common): boolean;
|
|
120
120
|
export declare function shouldShowEffectiveGasPriceForHardfork(common: Common): boolean;
|
|
121
121
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/output.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../src/internal/hardhat-network/provider/output.ts"],"names":[],"mappings":"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"}
|
|
@@ -95,13 +95,16 @@ function getEffectiveGasPrice(tx, baseFeePerGas) {
|
|
|
95
95
|
}
|
|
96
96
|
function getRpcReceiptOutputsFromLocalBlockExecution(block, runBlockResult, showTransactionType) {
|
|
97
97
|
const receipts = [];
|
|
98
|
-
let
|
|
98
|
+
let blockLogIndex = 0;
|
|
99
99
|
for (let i = 0; i < runBlockResult.results.length; i += 1) {
|
|
100
100
|
const tx = block.transactions[i];
|
|
101
101
|
const { createdAddress, gasUsed } = runBlockResult.results[i];
|
|
102
102
|
const receipt = runBlockResult.receipts[i];
|
|
103
|
-
|
|
104
|
-
|
|
103
|
+
const logs = receipt.logs.map((log) => {
|
|
104
|
+
const result = getRpcLogOutput(log, tx, block, i, blockLogIndex);
|
|
105
|
+
blockLogIndex += 1;
|
|
106
|
+
return result;
|
|
107
|
+
});
|
|
105
108
|
const rpcReceipt = {
|
|
106
109
|
transactionHash: base_types_1.bufferToRpcData(tx.hash()),
|
|
107
110
|
transactionIndex: base_types_1.numberToRpcQuantity(i),
|
|
@@ -109,7 +112,7 @@ function getRpcReceiptOutputsFromLocalBlockExecution(block, runBlockResult, show
|
|
|
109
112
|
blockNumber: base_types_1.numberToRpcQuantity(new ethereumjs_util_1.BN(block.header.number)),
|
|
110
113
|
from: base_types_1.bufferToRpcData(tx.getSenderAddress().toBuffer()),
|
|
111
114
|
to: tx.to === undefined ? null : base_types_1.bufferToRpcData(tx.to.toBuffer()),
|
|
112
|
-
cumulativeGasUsed: base_types_1.numberToRpcQuantity(
|
|
115
|
+
cumulativeGasUsed: base_types_1.numberToRpcQuantity(new ethereumjs_util_1.BN(receipt.gasUsed)),
|
|
113
116
|
gasUsed: base_types_1.numberToRpcQuantity(gasUsed),
|
|
114
117
|
contractAddress: createdAddress !== undefined
|
|
115
118
|
? base_types_1.bufferToRpcData(createdAddress.toBuffer())
|
|
@@ -169,14 +172,14 @@ function remoteReceiptToRpcReceiptOutput(receipt, tx, showTransactionType, showE
|
|
|
169
172
|
};
|
|
170
173
|
}
|
|
171
174
|
exports.remoteReceiptToRpcReceiptOutput = remoteReceiptToRpcReceiptOutput;
|
|
172
|
-
function toRpcLogOutput(log
|
|
175
|
+
function toRpcLogOutput(log) {
|
|
173
176
|
return {
|
|
174
177
|
removed: false,
|
|
175
178
|
address: base_types_1.bufferToRpcData(log.address),
|
|
176
179
|
blockHash: log.blockHash !== null ? base_types_1.bufferToRpcData(log.blockHash) : null,
|
|
177
180
|
blockNumber: log.blockNumber !== null ? base_types_1.numberToRpcQuantity(log.blockNumber) : null,
|
|
178
181
|
data: base_types_1.bufferToRpcData(log.data),
|
|
179
|
-
logIndex:
|
|
182
|
+
logIndex: log.logIndex !== null ? base_types_1.numberToRpcQuantity(log.logIndex) : null,
|
|
180
183
|
transactionIndex: log.transactionIndex !== null
|
|
181
184
|
? base_types_1.numberToRpcQuantity(log.transactionIndex)
|
|
182
185
|
: null,
|