rocketh 0.17.23 → 0.18.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.
@@ -1,20 +1,3 @@
1
- import type { ChainConfig, ChainInfo, ResolvedUserConfig } from '@rocketh/core/types';
2
- export type ChainType = 'zksync' | 'op-stack' | 'celo' | 'default';
3
- export declare const chainByCanonicalName: {
4
- [canonicalName: string]: ChainInfo;
5
- };
6
- export declare function getDefaultChainInfoByName(name: string): ChainInfo | undefined;
7
- export declare function getDefaultChainInfoFromChainId(id: string | number): {
8
- success: true;
9
- chainInfo: ChainInfo;
10
- } | {
11
- success: false;
12
- error?: string;
13
- };
14
- export declare function getChainConfigFromUserConfigAndDefaultChainInfo(config: ResolvedUserConfig, chainDetails: {
15
- id: number;
16
- chainInfo?: ChainInfo;
17
- canonicalName?: string;
18
- doNotRequireRpcURL?: boolean;
19
- }): ChainConfig;
1
+ import { ChainConfig, EIP1193ProviderWithoutEvents, ResolvedUserConfig } from '../types.js';
2
+ export declare function getChainConfigFromUserConfig(config: ResolvedUserConfig, id: number, provider?: EIP1193ProviderWithoutEvents): ChainConfig;
20
3
  //# sourceMappingURL=chains.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../../src/environment/chains.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACX,WAAW,EACX,SAAS,EAIT,kBAAkB,EAClB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;AAwCnE,eAAO,MAAM,oBAAoB,EAAE;IAAC,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,CAAA;CAAM,CAAC;AAa7E,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAG7E;AAgBD,wBAAgB,8BAA8B,CAC7C,EAAE,EAAE,MAAM,GAAG,MAAM,GACjB;IAAC,OAAO,EAAE,IAAI,CAAC;IAAC,SAAS,EAAE,SAAS,CAAA;CAAC,GAAG;IAAC,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAC,CAY1E;AAED,wBAAgB,+CAA+C,CAC9D,MAAM,EAAE,kBAAkB,EAC1B,YAAY,EAAE;IACb,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC7B,GACC,WAAW,CAoIb"}
1
+ {"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../../src/environment/chains.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,EAIX,4BAA4B,EAC5B,kBAAkB,EAClB,MAAM,aAAa,CAAC;AAErB,wBAAgB,4BAA4B,CAC3C,MAAM,EAAE,kBAAkB,EAC1B,EAAE,EAAE,MAAM,EACV,QAAQ,CAAC,EAAE,4BAA4B,GACrC,WAAW,CAgGb"}
@@ -1,187 +1,84 @@
1
- import * as chains from 'viem/chains';
2
- import { kebabCase } from 'change-case';
3
- const chainTypesByNames = {
4
- base: 'op-stack',
5
- baseGoerli: 'op-stack',
6
- baseSepolia: 'op-stack',
7
- optimism: 'op-stack',
8
- optimismGoerli: 'op-stack',
9
- optimismSepolia: 'op-stack',
10
- pgn: 'op-stack',
11
- pgnTestnet: 'op-stack',
12
- zora: 'op-stack',
13
- zoraSepolia: 'op-stack',
14
- zoraTestnet: 'op-stack',
15
- ancient8: 'op-stack',
16
- ancient8Sepolia: 'op-stack',
17
- celoAlfajores: 'celo',
18
- celo: 'celo',
19
- zkSync: 'zksync',
20
- zkSyncTestnet: 'zksync',
21
- zkSyncSepoliaTestnet: 'zksync',
22
- };
23
- const chainTypes = {};
24
- const chainById = {};
25
- const allChains = { ...(chains.default || chains) };
26
- allChains['localhost'] = { ...allChains['hardhat'], name: 'localhost' };
27
- for (const key of Object.keys(allChains)) {
28
- const chain = allChains[key];
29
- const chainId = chain.id.toString();
30
- const specificChainType = chainTypesByNames[key];
31
- if (specificChainType) {
32
- chainTypes[chainId] = specificChainType;
33
- }
34
- const list = (chainById[chainId] = chainById[chainId] || []);
35
- list.push({ ...chain, chainType: specificChainType });
36
- }
37
- export const chainByCanonicalName = {};
38
- for (const key of Object.keys(allChains)) {
39
- const chain = allChains[key];
40
- const canonicalName = kebabCase(chain.name);
41
- chainByCanonicalName[canonicalName] = chain;
42
- }
43
- function getChainsById(id) {
44
- const chains = chainById['' + id];
45
- return chains;
46
- }
47
- export function getDefaultChainInfoByName(name) {
48
- const chain = chainByCanonicalName[name];
49
- return chain;
50
- }
51
- // function getCanonicalNameFromChainId(id: string | number): string | undefined {
52
- // let defaultChainInfo: ChainInfo | undefined;
53
- // const defaultChainInfos = getChainsById(id);
54
- // if (defaultChainInfos && defaultChainInfos.length > 1) {
55
- // console.error(
56
- // `chainId ${id} refers to different chain, please specific it by name or provide the chainConfig yourself`
57
- // );
58
- // } else {
59
- // defaultChainInfo = defaultChainInfos ? defaultChainInfos[0] : undefined;
60
- // }
61
- // const canonicalName = defaultChainInfo ? kebabCase(defaultChainInfo.name) : undefined;
62
- // return canonicalName;
63
- // }
64
- export function getDefaultChainInfoFromChainId(id) {
65
- let defaultChainInfo;
66
- const defaultChainInfos = getChainsById(id);
67
- if (defaultChainInfos && defaultChainInfos.length > 1) {
68
- return {
69
- success: false,
70
- error: `chainId ${id} refers to different chains, please specify it by name or provide the chainConfig yourself`,
71
- };
72
- }
73
- else {
74
- defaultChainInfo = defaultChainInfos ? defaultChainInfos[0] : undefined;
75
- }
76
- return defaultChainInfo ? { success: true, chainInfo: defaultChainInfo } : { success: false };
77
- }
78
- export function getChainConfigFromUserConfigAndDefaultChainInfo(config, chainDetails) {
79
- const canonicalName = chainDetails?.canonicalName;
80
- let chainInfo = chainDetails?.chainInfo ? { ...chainDetails.chainInfo } : undefined;
81
- if (chainInfo?.id && chainDetails.id != chainInfo.id) {
82
- console.warn(`default chainInfo has a different chainId (${chainInfo.id}) != ${chainDetails.id}, we thus assign it`);
83
- // we ensure the chainInfo has the correct id
84
- chainInfo.id = chainDetails.id;
85
- }
86
- if (canonicalName) {
87
- if (config.chains?.[chainDetails.id] && config.chains?.[canonicalName]) {
88
- throw new Error(`chain should be configured by chainId or name but not both, remove either ${chainDetails.id} or ${canonicalName}`);
89
- }
90
- }
91
- let chainConfig = canonicalName ? config.chains?.[canonicalName] : undefined;
92
- if (!chainConfig) {
93
- chainConfig = config.chains?.[chainDetails.id];
94
- }
95
- if (!chainConfig) {
96
- chainConfig = { info: chainInfo };
97
- }
98
- chainInfo = chainConfig?.info || chainInfo;
99
- // let rpcUrl = process.env['ETH_NODE_URI_' + id];
100
- // if (canonicalName) {
101
- // const fromEnv = process.env['ETH_NODE_URI_' + canonicalName];
102
- // if (fromEnv) {
103
- // rpcUrl = fromEnv;
104
- // }
105
- // }
106
- // if (!rpcUrl) {
107
- // rpcUrl = chainConfig.rpcUrl;
108
- // }
109
- let rpcUrl = chainConfig.rpcUrl;
110
- if (!rpcUrl) {
111
- rpcUrl = chainConfig.info?.rpcUrls.default.http[0];
112
- }
113
- // TODO remove ?
114
- if (!rpcUrl) {
115
- if (chainDetails.id === 31337 || chainDetails.id === 1337) {
116
- rpcUrl = 'http://127.0.0.1:8545';
117
- }
118
- }
119
- if (!chainInfo) {
120
- if (!rpcUrl && !chainDetails.doNotRequireRpcURL) {
121
- throw new Error(`chain with id ${chainDetails.id} has no public info and no rpc url known to fallback on`);
122
- }
123
- else {
124
- console.error(`chain with id ${chainDetails.id} has no public info`);
125
- }
126
- chainInfo = {
127
- id: chainDetails.id,
128
- name: 'unknown',
129
- nativeCurrency: {
130
- name: 'Unknown Currency',
131
- symbol: 'UNKNOWN',
132
- decimals: 18,
133
- },
134
- rpcUrls: {
135
- default: {
136
- http: rpcUrl ? [rpcUrl] : [],
137
- },
138
- },
139
- chainType: 'default',
140
- };
141
- }
142
- const create2Info = {
1
+ export function getChainConfigFromUserConfig(config, id, provider) {
2
+ const chainConfig = config.chains?.[id];
3
+ const defaultCreate2Info = {
143
4
  factory: '0x4e59b44847b379578588920ca78fbf26c0b4956c',
144
5
  deployer: '0x3fab184622dc19b6109349b94811493bf2a45362',
145
6
  funding: '10000000000000000',
146
7
  signedTx: '0xf8a58085174876e800830186a08080b853604580600e600039806000f350fe7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf31ba02222222222222222222222222222222222222222222222222222222222222222a02222222222222222222222222222222222222222222222222222222222222222',
147
8
  };
148
- const create3Info = {
9
+ const defaultCreate3Info = {
149
10
  factory: '0x000000000004d4f168daE7DB3C610F408eE22F57',
150
11
  salt: '0x5361109ca02853ca8e22046b7125306d9ec4ae4cdecc393c567b6be861df3db6',
151
12
  bytecode: '0x6080604052348015600f57600080fd5b506103ca8061001f6000396000f3fe6080604052600436106100295760003560e01c8063360d0fad1461002e5780639881d19514610077575b600080fd5b34801561003a57600080fd5b5061004e610049366004610228565b61008a565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b61004e61008536600461029c565b6100ee565b6040517fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606084901b166020820152603481018290526000906054016040516020818303038152906040528051906020012091506100e78261014c565b9392505050565b6040517fffffffffffffffffffffffffffffffffffffffff0000000000000000000000003360601b166020820152603481018290526000906054016040516020818303038152906040528051906020012091506100e734848461015e565b600061015882306101ce565b92915050565b60006f67363d3d37363d34f03d5260086018f3600052816010806000f58061018e5763301164256000526004601cfd5b8060145261d69460005260016034536017601e20915060008085516020870188855af1823b026101c65763301164256000526004601cfd5b509392505050565b60006040518260005260ff600b53836020527f21c35dbe1b344a2488cf3321d6ce542f8e9f305544ff09e4993a62319a497c1f6040526055600b20601452806040525061d694600052600160345350506017601e20919050565b6000806040838503121561023b57600080fd5b823573ffffffffffffffffffffffffffffffffffffffff8116811461025f57600080fd5b946020939093013593505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080604083850312156102af57600080fd5b823567ffffffffffffffff8111156102c657600080fd5b8301601f810185136102d757600080fd5b803567ffffffffffffffff8111156102f1576102f161026d565b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8501160116810181811067ffffffffffffffff8211171561035d5761035d61026d565b60405281815282820160200187101561037557600080fd5b816020840160208301376000602092820183015296940135945050505056fea264697066735822122059dcc5dc6453397d13ff28021e28472a80a45bbd97f3135f69bd2650773aeb0164736f6c634300081a0033',
152
13
  proxyBytecode: '0x67363d3d37363d34f03d5260086018f3',
153
14
  };
154
- const pollingInterval = chainConfig.pollingInterval || config.defaultPollingInterval;
15
+ const pollingInterval = chainConfig?.pollingInterval || config.defaultPollingInterval;
155
16
  let deterministicDeployment = {
156
17
  create2: (() => {
157
- const deterministicDeployment = chainConfig.deterministicDeployment;
18
+ const deterministicDeployment = chainConfig?.deterministicDeployment;
158
19
  if (!deterministicDeployment) {
159
- return create2Info;
20
+ return defaultCreate2Info;
160
21
  }
161
22
  return 'create2' in deterministicDeployment && deterministicDeployment.create2
162
23
  ? deterministicDeployment.create2
163
24
  : !('create2' in deterministicDeployment) && !('create3' in deterministicDeployment)
164
25
  ? deterministicDeployment
165
- : create2Info;
26
+ : defaultCreate2Info;
166
27
  })(),
167
- create3: chainConfig.deterministicDeployment &&
28
+ create3: chainConfig?.deterministicDeployment &&
168
29
  'create3' in chainConfig.deterministicDeployment &&
169
30
  chainConfig.deterministicDeployment.create3
170
31
  ? chainConfig.deterministicDeployment.create3
171
- : create3Info,
32
+ : defaultCreate3Info,
172
33
  };
173
34
  const defaultTags = [];
174
- if (chainInfo.testnet) {
35
+ if (chainConfig?.info?.testnet) {
175
36
  defaultTags.push('testnet');
176
37
  }
177
- const properties = chainConfig.properties || config.defaultChainProperties || {};
178
- return {
179
- info: { ...chainInfo },
180
- deterministicDeployment,
181
- pollingInterval,
182
- properties,
183
- rpcUrl: rpcUrl || chainInfo.rpcUrls.default.http[0],
184
- tags: chainConfig.tags || [...defaultTags],
38
+ const properties = chainConfig?.properties || config.defaultChainProperties || {};
39
+ if (!chainConfig?.info) {
40
+ console.error(`chain with id ${id} ${chainConfig ? 'has a chain config but' : ''} has no public info`);
41
+ }
42
+ const rpcUrl = chainConfig?.rpcUrl || chainConfig?.info?.rpcUrls.default.http[0];
43
+ const defaultChainInfo = {
44
+ id: id,
45
+ name: 'unknown',
46
+ nativeCurrency: {
47
+ name: 'Unknown Currency',
48
+ symbol: 'UNKNOWN',
49
+ decimals: 18,
50
+ },
51
+ rpcUrls: {
52
+ default: {
53
+ http: rpcUrl ? [rpcUrl] : [],
54
+ },
55
+ },
56
+ chainType: 'default',
185
57
  };
58
+ if (!rpcUrl && provider !== undefined) {
59
+ return {
60
+ info: chainConfig?.info || defaultChainInfo,
61
+ deterministicDeployment,
62
+ pollingInterval,
63
+ properties,
64
+ provider,
65
+ tags: chainConfig?.tags || [...defaultTags],
66
+ autoImpersonate: chainConfig?.autoImpersonate || false,
67
+ };
68
+ }
69
+ else if (rpcUrl) {
70
+ return {
71
+ info: chainConfig?.info || defaultChainInfo,
72
+ deterministicDeployment,
73
+ pollingInterval,
74
+ properties,
75
+ rpcUrl: rpcUrl,
76
+ tags: chainConfig?.tags || [...defaultTags],
77
+ autoImpersonate: chainConfig?.autoImpersonate || false,
78
+ };
79
+ }
80
+ else {
81
+ throw new Error(`chain with id ${id} has no rpc url provided nor any provider to use`);
82
+ }
186
83
  }
187
84
  //# sourceMappingURL=chains.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chains.js","sourceRoot":"","sources":["../../src/environment/chains.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chains.js","sourceRoot":"","sources":["../../src/environment/chains.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import { EIP1193ProviderWithoutEvents } from 'eip-1193';
2
1
  import type { Environment, ExecutionParams, ResolvedExecutionParams, UnknownDeployments, UnresolvedNetworkSpecificData, UnresolvedUnknownNamedAccounts, DeployScriptModule, EnhancedDeployScriptFunction, ResolvedUserConfig, ConfigOverrides, UserConfig, PromptExecutor, DeploymentStore, ModuleObject } from '@rocketh/core/types';
3
2
  /**
4
3
  * Setup function that creates the execute function for deploy scripts. It allow to specify a set of functions that will be available in the environment.
@@ -35,7 +34,8 @@ export declare function setupDeployScripts<Extensions extends Record<string, (en
35
34
  }): DeployScriptModule<NamedAccounts, Data, ArgumentsType, Deployments, Extra>;
36
35
  };
37
36
  export declare function resolveConfig<NamedAccounts extends UnresolvedUnknownNamedAccounts = UnresolvedUnknownNamedAccounts, Data extends UnresolvedNetworkSpecificData = UnresolvedNetworkSpecificData>(configFile: UserConfig, overrides?: ConfigOverrides): ResolvedUserConfig<NamedAccounts, Data>;
38
- export declare function getChainIdForEnvironment(config: ResolvedUserConfig, environmentName: string, provider?: EIP1193ProviderWithoutEvents): Promise<number>;
37
+ export declare function getChainIdForEnvironment(config: ResolvedUserConfig, environmentName: string, executionParams: ExecutionParams): Promise<number>;
38
+ export declare function getChainIdForExecutionParams(config: ResolvedUserConfig, executionParams: ExecutionParams): Promise<number>;
39
39
  export declare function getEnvironmentName(executionParams: ExecutionParams): {
40
40
  name: string;
41
41
  fork: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/executor/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/executor/index.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import { withEnvironment } from '@rocketh/core/environment';
2
- import { getChainConfigFromUserConfigAndDefaultChainInfo, getDefaultChainInfoByName, getDefaultChainInfoFromChainId, } from '../environment/chains.js';
3
2
  import { JSONRPCHTTPProvider } from 'eip-1193-jsonrpc-provider';
4
3
  import { createEnvironment } from '../environment/index.js';
5
4
  import { getRoughGasPriceEstimate } from '../utils/eth.js';
6
5
  import { formatEther } from 'viem';
7
6
  import { logger, spin } from '../internal/logging.js';
7
+ import { getChainConfigFromUserConfig } from '../environment/chains.js';
8
8
  /**
9
9
  * Setup function that creates the execute function for deploy scripts. It allow to specify a set of functions that will be available in the environment.
10
10
  *
@@ -71,44 +71,25 @@ export function resolveConfig(configFile, overrides) {
71
71
  }
72
72
  return config;
73
73
  }
74
- export async function getChainIdForEnvironment(config, environmentName, provider) {
74
+ export async function getChainIdForEnvironment(config, environmentName, executionParams) {
75
+ const provider = executionParams.provider;
75
76
  let chainId;
76
- const chainIdFromProvider = provider ? Number(await provider.request({ method: 'eth_chainId' })) : undefined;
77
77
  if (config?.environments?.[environmentName]?.chain) {
78
- const chainAsNumber = typeof config.environments[environmentName].chain === 'number'
79
- ? config.environments[environmentName].chain
80
- : parseInt(config.environments[environmentName].chain);
81
- if (!isNaN(chainAsNumber)) {
82
- chainId = chainAsNumber;
83
- }
84
- else {
85
- const chainFound = getDefaultChainInfoByName(config.environments[environmentName].chain);
86
- if (chainFound) {
87
- chainId = chainFound.id;
88
- }
89
- else {
90
- throw new Error(`environment ${environmentName} chain id cannot be found, specify it in the rocketh config`);
91
- }
92
- }
93
- }
94
- else {
95
- const chainFound = getDefaultChainInfoByName(environmentName);
96
- if (chainFound) {
97
- chainId = chainFound.id;
98
- }
99
- else {
100
- if (chainIdFromProvider) {
101
- chainId = chainIdFromProvider;
102
- }
103
- else {
104
- throw new Error(`environment ${environmentName} chain id cannot be found, specify it in the rocketh config`);
105
- }
106
- }
78
+ chainId = config.environments[environmentName].chain;
107
79
  }
108
- if (chainIdFromProvider && chainIdFromProvider != chainId) {
80
+ const chainIdFromProvider = provider ? Number(await provider.request({ method: 'eth_chainId' })) : undefined;
81
+ if (chainId && chainIdFromProvider && chainIdFromProvider != chainId) {
109
82
  console.warn(`provider give a different chainId (${chainIdFromProvider}) than the one expected for environment named "${environmentName}" (${chainId})`);
110
83
  }
111
- return chainIdFromProvider || chainId;
84
+ const chainIdToReturn = chainIdFromProvider || chainId;
85
+ if (chainIdToReturn === undefined) {
86
+ throw new Error(`Could not find chainId for environment named "${environmentName}" ${provider ? `` : '(no provider)'}`);
87
+ }
88
+ return chainIdToReturn;
89
+ }
90
+ export async function getChainIdForExecutionParams(config, executionParams) {
91
+ const { name: environmentName } = getEnvironmentName(executionParams);
92
+ return getChainIdForEnvironment(config, environmentName, executionParams);
112
93
  }
113
94
  export function getEnvironmentName(executionParams) {
114
95
  const environmentProvided = executionParams.environment || executionParams.network;
@@ -128,24 +109,7 @@ export function resolveExecutionParams(config, executionParameters, chainId) {
128
109
  const { name: environmentName, fork } = getEnvironmentName(executionParameters);
129
110
  // TODO fork chainId resolution option to keep the network being used
130
111
  const idToFetch = fork ? 31337 : chainId;
131
- let chainInfoFound = getDefaultChainInfoByName(environmentName);
132
- if (!chainInfoFound) {
133
- const result = getDefaultChainInfoFromChainId(idToFetch);
134
- chainInfoFound = result.success ? result.chainInfo : undefined;
135
- if (!result.success && result.error) {
136
- // logger.warn(`could not find chainInfo by name = "${environmentName}"\n ${result.error}`);
137
- }
138
- if (!chainInfoFound) {
139
- // console.log(`could not find chainInfo by chainId = "${idToFetch}"`);
140
- }
141
- }
142
- const defaultChainInfo = chainInfoFound;
143
- const chainConfig = getChainConfigFromUserConfigAndDefaultChainInfo(config, {
144
- id: idToFetch,
145
- chainInfo: defaultChainInfo,
146
- canonicalName: environmentName,
147
- doNotRequireRpcURL: !!executionParameters.provider,
148
- });
112
+ const chainConfig = getChainConfigFromUserConfig(config, idToFetch, executionParameters.provider);
149
113
  let chainInfo = chainConfig.info;
150
114
  const environmentConfig = config?.environments?.[environmentName];
151
115
  const actualChainConfig = environmentConfig?.overrides
@@ -180,11 +144,9 @@ export function resolveExecutionParams(config, executionParameters, chainId) {
180
144
  scripts = [...environmentConfig.scripts];
181
145
  }
182
146
  }
183
- // here we force type actualChainConfig.rpcUrl! as string
184
- // as if provider was not available
185
- // getChainConfigFromUserConfigAndDefaultChainInfo would throw
186
- const provider = executionParameters.provider ||
187
- new JSONRPCHTTPProvider(actualChainConfig.rpcUrl);
147
+ const provider = 'provider' in actualChainConfig
148
+ ? actualChainConfig.provider
149
+ : new JSONRPCHTTPProvider(actualChainConfig.rpcUrl);
188
150
  let saveDeployments = executionParameters.saveDeployments;
189
151
  if (saveDeployments === undefined) {
190
152
  if (!executionParameters.provider) {
@@ -202,8 +164,8 @@ export function resolveExecutionParams(config, executionParameters, chainId) {
202
164
  }
203
165
  // Resolve auto-impersonation flag (priority: params > environment config > global config)
204
166
  let autoImpersonate = executionParameters.autoImpersonate;
205
- if (autoImpersonate === undefined && environmentConfig?.autoImpersonate !== undefined) {
206
- autoImpersonate = environmentConfig.autoImpersonate;
167
+ if (autoImpersonate === undefined && actualChainConfig.autoImpersonate !== undefined) {
168
+ autoImpersonate = actualChainConfig.autoImpersonate;
207
169
  }
208
170
  return {
209
171
  askBeforeProceeding: executionParameters.askBeforeProceeding || false,
@@ -227,7 +189,7 @@ export function resolveExecutionParams(config, executionParameters, chainId) {
227
189
  export async function loadEnvironment(config, executionParams, deploymentStore) {
228
190
  const userConfig = resolveConfig(config, executionParams.config);
229
191
  const { name: environmentName, fork } = getEnvironmentName(executionParams);
230
- const chainId = await getChainIdForEnvironment(userConfig, environmentName, executionParams.provider);
192
+ const chainId = await getChainIdForEnvironment(userConfig, environmentName, executionParams);
231
193
  const resolvedExecutionParams = resolveExecutionParams(userConfig, executionParams, chainId);
232
194
  // console.log(JSON.stringify(resolvedConfig, null, 2));
233
195
  const { external, internal } = await createEnvironment(userConfig, resolvedExecutionParams, deploymentStore);
@@ -238,7 +200,7 @@ export function createExecutor(deploymentStore, promptExecutor) {
238
200
  executionParams = executionParams || {};
239
201
  const resolveduserConfig = resolveConfig(userConfig, executionParams.config);
240
202
  const { name: environmentName, fork } = getEnvironmentName(executionParams);
241
- const chainId = await getChainIdForEnvironment(resolveduserConfig, environmentName, executionParams.provider);
203
+ const chainId = await getChainIdForEnvironment(resolveduserConfig, environmentName, executionParams);
242
204
  const resolvedExecutionParams = resolveExecutionParams(resolveduserConfig, executionParams, chainId);
243
205
  return executeDeployScriptModules(moduleObjects, resolveduserConfig, resolvedExecutionParams, args);
244
206
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/executor/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/executor/index.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { setupDeployScripts, loadEnvironment, resolveConfig, resolveExecutionParams, getChainIdForEnvironment, getEnvironmentName, createExecutor, } from './executor/index.js';
2
2
  export { createEnvironment, loadDeployments } from './environment/index.js';
3
3
  export { enhanceEnvIfNeeded } from '@rocketh/core/environment';
4
- export { getChainConfigFromUserConfigAndDefaultChainInfo, chainByCanonicalName, getDefaultChainInfoByName, getDefaultChainInfoFromChainId, } from './environment/chains.js';
4
+ export { getChainConfigFromUserConfig } from './environment/chains.js';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,wBAAwB,EACxB,kBAAkB,EAClB,cAAc,GACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAC,iBAAiB,EAAE,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAG1E,OAAO,EAAC,kBAAkB,EAAC,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EACN,+CAA+C,EAC/C,oBAAoB,EACpB,yBAAyB,EACzB,8BAA8B,GAC9B,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,wBAAwB,EACxB,kBAAkB,EAClB,cAAc,GACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAC,iBAAiB,EAAE,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAG1E,OAAO,EAAC,kBAAkB,EAAC,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EAAC,4BAA4B,EAAC,MAAM,yBAAyB,CAAC"}
package/dist/index.js CHANGED
@@ -2,5 +2,5 @@ export { setupDeployScripts, loadEnvironment, resolveConfig, resolveExecutionPar
2
2
  export { createEnvironment, loadDeployments } from './environment/index.js';
3
3
  // used by hardhat-deploy and instead of having hardhat-deploy depends on @rocketh/core we export it here as well
4
4
  export { enhanceEnvIfNeeded } from '@rocketh/core/environment';
5
- export { getChainConfigFromUserConfigAndDefaultChainInfo, chainByCanonicalName, getDefaultChainInfoByName, getDefaultChainInfoFromChainId, } from './environment/chains.js';
5
+ export { getChainConfigFromUserConfig } from './environment/chains.js';
6
6
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,wBAAwB,EACxB,kBAAkB,EAClB,cAAc,GACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAC,iBAAiB,EAAE,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAE1E,iHAAiH;AACjH,OAAO,EAAC,kBAAkB,EAAC,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EACN,+CAA+C,EAC/C,oBAAoB,EACpB,yBAAyB,EACzB,8BAA8B,GAC9B,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,wBAAwB,EACxB,kBAAkB,EAClB,cAAc,GACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAC,iBAAiB,EAAE,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAE1E,iHAAiH;AACjH,OAAO,EAAC,kBAAkB,EAAC,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EAAC,4BAA4B,EAAC,MAAM,yBAAyB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rocketh",
3
- "version": "0.17.23",
3
+ "version": "0.18.0",
4
4
  "description": "A framework-agnostic smart contract deployment system for Ethereum-compatible networks.",
5
5
  "keywords": [
6
6
  "rocketh",
@@ -54,7 +54,7 @@
54
54
  "ldenv": "^0.3.16",
55
55
  "named-logs": "^0.4.1",
56
56
  "viem": "^2.45.1",
57
- "@rocketh/core": "0.17.17"
57
+ "@rocketh/core": "0.18.0"
58
58
  },
59
59
  "devDependencies": {
60
60
  "as-soon": "^0.1.5",
@@ -1,194 +1,27 @@
1
- import * as chains from 'viem/chains';
2
- import {kebabCase} from 'change-case';
3
- import type {
1
+ import {
4
2
  ChainConfig,
5
3
  ChainInfo,
6
- ChainUserConfig,
7
4
  Create2DeterministicDeploymentInfo,
8
5
  Create3DeterministicDeploymentInfo,
6
+ EIP1193ProviderWithoutEvents,
9
7
  ResolvedUserConfig,
10
- } from '@rocketh/core/types';
8
+ } from '../types.js';
11
9
 
12
- export type ChainType = 'zksync' | 'op-stack' | 'celo' | 'default';
13
-
14
- const chainTypesByNames: {[chainExportName: string]: ChainType} = {
15
- base: 'op-stack',
16
- baseGoerli: 'op-stack',
17
- baseSepolia: 'op-stack',
18
- optimism: 'op-stack',
19
- optimismGoerli: 'op-stack',
20
- optimismSepolia: 'op-stack',
21
- pgn: 'op-stack',
22
- pgnTestnet: 'op-stack',
23
- zora: 'op-stack',
24
- zoraSepolia: 'op-stack',
25
- zoraTestnet: 'op-stack',
26
- ancient8: 'op-stack',
27
- ancient8Sepolia: 'op-stack',
28
- celoAlfajores: 'celo',
29
- celo: 'celo',
30
- zkSync: 'zksync',
31
- zkSyncTestnet: 'zksync',
32
- zkSyncSepoliaTestnet: 'zksync',
33
- };
34
-
35
- const chainTypes: {[chainId: string]: ChainType} = {};
36
-
37
- const chainById: {[chainId: string]: ChainInfo[]} = {};
38
- const allChains: {[chainExportName: string]: ChainInfo} = {...((chains as any).default || chains)};
39
- allChains['localhost'] = {...allChains['hardhat'], name: 'localhost'};
40
-
41
- for (const key of Object.keys(allChains)) {
42
- const chain = (allChains as any)[key] as ChainInfo;
43
- const chainId = chain.id.toString();
44
- const specificChainType = chainTypesByNames[key];
45
- if (specificChainType) {
46
- chainTypes[chainId] = specificChainType;
47
- }
48
- const list = (chainById[chainId] = chainById[chainId] || []);
49
- list.push({...chain, chainType: specificChainType});
50
- }
51
-
52
- export const chainByCanonicalName: {[canonicalName: string]: ChainInfo} = {};
53
- for (const key of Object.keys(allChains)) {
54
- const chain = (allChains as any)[key] as ChainInfo;
55
- const canonicalName = kebabCase(chain.name);
56
- chainByCanonicalName[canonicalName] = chain;
57
- }
58
-
59
- function getChainsById(id: string | number): ChainInfo[] | undefined {
60
- const chains = chainById['' + id];
61
-
62
- return chains;
63
- }
64
-
65
- export function getDefaultChainInfoByName(name: string): ChainInfo | undefined {
66
- const chain = chainByCanonicalName[name];
67
- return chain;
68
- }
69
-
70
- // function getCanonicalNameFromChainId(id: string | number): string | undefined {
71
- // let defaultChainInfo: ChainInfo | undefined;
72
- // const defaultChainInfos = getChainsById(id);
73
- // if (defaultChainInfos && defaultChainInfos.length > 1) {
74
- // console.error(
75
- // `chainId ${id} refers to different chain, please specific it by name or provide the chainConfig yourself`
76
- // );
77
- // } else {
78
- // defaultChainInfo = defaultChainInfos ? defaultChainInfos[0] : undefined;
79
- // }
80
- // const canonicalName = defaultChainInfo ? kebabCase(defaultChainInfo.name) : undefined;
81
- // return canonicalName;
82
- // }
83
-
84
- export function getDefaultChainInfoFromChainId(
85
- id: string | number,
86
- ): {success: true; chainInfo: ChainInfo} | {success: false; error?: string} {
87
- let defaultChainInfo: ChainInfo | undefined;
88
- const defaultChainInfos = getChainsById(id);
89
- if (defaultChainInfos && defaultChainInfos.length > 1) {
90
- return {
91
- success: false,
92
- error: `chainId ${id} refers to different chains, please specify it by name or provide the chainConfig yourself`,
93
- };
94
- } else {
95
- defaultChainInfo = defaultChainInfos ? defaultChainInfos[0] : undefined;
96
- }
97
- return defaultChainInfo ? {success: true, chainInfo: defaultChainInfo} : {success: false};
98
- }
99
-
100
- export function getChainConfigFromUserConfigAndDefaultChainInfo(
10
+ export function getChainConfigFromUserConfig(
101
11
  config: ResolvedUserConfig,
102
- chainDetails: {
103
- id: number;
104
- chainInfo?: ChainInfo;
105
- canonicalName?: string;
106
- doNotRequireRpcURL?: boolean;
107
- },
12
+ id: number,
13
+ provider?: EIP1193ProviderWithoutEvents,
108
14
  ): ChainConfig {
109
- const canonicalName = chainDetails?.canonicalName;
110
- let chainInfo = chainDetails?.chainInfo ? {...chainDetails.chainInfo} : undefined;
111
- if (chainInfo?.id && chainDetails.id != chainInfo.id) {
112
- console.warn(
113
- `default chainInfo has a different chainId (${chainInfo.id}) != ${chainDetails.id}, we thus assign it`,
114
- );
115
- // we ensure the chainInfo has the correct id
116
- chainInfo.id = chainDetails.id;
117
- }
118
- if (canonicalName) {
119
- if (config.chains?.[chainDetails.id] && config.chains?.[canonicalName]) {
120
- throw new Error(
121
- `chain should be configured by chainId or name but not both, remove either ${chainDetails.id} or ${canonicalName}`,
122
- );
123
- }
124
- }
15
+ const chainConfig = config.chains?.[id];
125
16
 
126
- let chainConfig: ChainUserConfig | undefined = canonicalName ? config.chains?.[canonicalName] : undefined;
127
- if (!chainConfig) {
128
- chainConfig = config.chains?.[chainDetails.id];
129
- }
130
- if (!chainConfig) {
131
- chainConfig = {info: chainInfo};
132
- }
133
-
134
- chainInfo = chainConfig?.info || chainInfo;
135
-
136
- // let rpcUrl = process.env['ETH_NODE_URI_' + id];
137
- // if (canonicalName) {
138
- // const fromEnv = process.env['ETH_NODE_URI_' + canonicalName];
139
- // if (fromEnv) {
140
- // rpcUrl = fromEnv;
141
- // }
142
- // }
143
- // if (!rpcUrl) {
144
- // rpcUrl = chainConfig.rpcUrl;
145
- // }
146
-
147
- let rpcUrl = chainConfig.rpcUrl;
148
-
149
- if (!rpcUrl) {
150
- rpcUrl = chainConfig.info?.rpcUrls.default.http[0];
151
- }
152
-
153
- // TODO remove ?
154
- if (!rpcUrl) {
155
- if (chainDetails.id === 31337 || chainDetails.id === 1337) {
156
- rpcUrl = 'http://127.0.0.1:8545';
157
- }
158
- }
159
-
160
- if (!chainInfo) {
161
- if (!rpcUrl && !chainDetails.doNotRequireRpcURL) {
162
- throw new Error(`chain with id ${chainDetails.id} has no public info and no rpc url known to fallback on`);
163
- } else {
164
- console.error(`chain with id ${chainDetails.id} has no public info`);
165
- }
166
-
167
- chainInfo = {
168
- id: chainDetails.id,
169
- name: 'unknown',
170
- nativeCurrency: {
171
- name: 'Unknown Currency',
172
- symbol: 'UNKNOWN',
173
- decimals: 18,
174
- },
175
- rpcUrls: {
176
- default: {
177
- http: rpcUrl ? [rpcUrl] : [],
178
- },
179
- },
180
- chainType: 'default',
181
- };
182
- }
183
-
184
- const create2Info = {
17
+ const defaultCreate2Info = {
185
18
  factory: '0x4e59b44847b379578588920ca78fbf26c0b4956c',
186
19
  deployer: '0x3fab184622dc19b6109349b94811493bf2a45362',
187
20
  funding: '10000000000000000',
188
21
  signedTx:
189
22
  '0xf8a58085174876e800830186a08080b853604580600e600039806000f350fe7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf31ba02222222222222222222222222222222222222222222222222222222222222222a02222222222222222222222222222222222222222222222222222222222222222',
190
23
  } as const;
191
- const create3Info = {
24
+ const defaultCreate3Info = {
192
25
  factory: '0x000000000004d4f168daE7DB3C610F408eE22F57',
193
26
  salt: '0x5361109ca02853ca8e22046b7125306d9ec4ae4cdecc393c567b6be861df3db6',
194
27
  bytecode:
@@ -196,45 +29,82 @@ export function getChainConfigFromUserConfigAndDefaultChainInfo(
196
29
  proxyBytecode: '0x67363d3d37363d34f03d5260086018f3',
197
30
  } as const;
198
31
 
199
- const pollingInterval = chainConfig.pollingInterval || config.defaultPollingInterval;
32
+ const pollingInterval = chainConfig?.pollingInterval || config.defaultPollingInterval;
200
33
 
201
34
  let deterministicDeployment: {
202
35
  create2: Create2DeterministicDeploymentInfo;
203
36
  create3: Create3DeterministicDeploymentInfo;
204
37
  } = {
205
38
  create2: (() => {
206
- const deterministicDeployment = chainConfig.deterministicDeployment;
39
+ const deterministicDeployment = chainConfig?.deterministicDeployment;
207
40
  if (!deterministicDeployment) {
208
- return create2Info;
41
+ return defaultCreate2Info;
209
42
  }
210
43
 
211
44
  return 'create2' in deterministicDeployment && deterministicDeployment.create2
212
45
  ? deterministicDeployment.create2
213
46
  : !('create2' in deterministicDeployment) && !('create3' in deterministicDeployment)
214
47
  ? (deterministicDeployment as Create2DeterministicDeploymentInfo)
215
- : create2Info;
48
+ : defaultCreate2Info;
216
49
  })(),
217
50
  create3:
218
- chainConfig.deterministicDeployment &&
51
+ chainConfig?.deterministicDeployment &&
219
52
  'create3' in chainConfig.deterministicDeployment &&
220
53
  chainConfig.deterministicDeployment.create3
221
54
  ? chainConfig.deterministicDeployment.create3
222
- : create3Info,
55
+ : defaultCreate3Info,
223
56
  };
224
57
 
225
58
  const defaultTags: string[] = [];
226
- if (chainInfo.testnet) {
59
+ if (chainConfig?.info?.testnet) {
227
60
  defaultTags.push('testnet');
228
61
  }
229
62
 
230
- const properties = chainConfig.properties || config.defaultChainProperties || {};
63
+ const properties = chainConfig?.properties || config.defaultChainProperties || {};
64
+
65
+ if (!chainConfig?.info) {
66
+ console.error(`chain with id ${id} ${chainConfig ? 'has a chain config but' : ''} has no public info`);
67
+ }
231
68
 
232
- return {
233
- info: {...chainInfo},
234
- deterministicDeployment,
235
- pollingInterval,
236
- properties,
237
- rpcUrl: rpcUrl || chainInfo.rpcUrls.default.http[0],
238
- tags: chainConfig.tags || [...defaultTags],
69
+ const rpcUrl = chainConfig?.rpcUrl || chainConfig?.info?.rpcUrls.default.http[0];
70
+
71
+ const defaultChainInfo: ChainInfo = {
72
+ id: id,
73
+ name: 'unknown',
74
+ nativeCurrency: {
75
+ name: 'Unknown Currency',
76
+ symbol: 'UNKNOWN',
77
+ decimals: 18,
78
+ },
79
+ rpcUrls: {
80
+ default: {
81
+ http: rpcUrl ? [rpcUrl] : [],
82
+ },
83
+ },
84
+ chainType: 'default',
239
85
  };
86
+
87
+ if (!rpcUrl && provider !== undefined) {
88
+ return {
89
+ info: chainConfig?.info || defaultChainInfo,
90
+ deterministicDeployment,
91
+ pollingInterval,
92
+ properties,
93
+ provider,
94
+ tags: chainConfig?.tags || [...defaultTags],
95
+ autoImpersonate: chainConfig?.autoImpersonate || false,
96
+ };
97
+ } else if (rpcUrl) {
98
+ return {
99
+ info: chainConfig?.info || defaultChainInfo,
100
+ deterministicDeployment,
101
+ pollingInterval,
102
+ properties,
103
+ rpcUrl: rpcUrl,
104
+ tags: chainConfig?.tags || [...defaultTags],
105
+ autoImpersonate: chainConfig?.autoImpersonate || false,
106
+ };
107
+ } else {
108
+ throw new Error(`chain with id ${id} has no rpc url provided nor any provider to use`);
109
+ }
240
110
  }
@@ -16,18 +16,16 @@ import type {
16
16
  PromptExecutor,
17
17
  DeploymentStore,
18
18
  ModuleObject,
19
+ ChainInfo,
19
20
  } from '@rocketh/core/types';
20
21
  import {withEnvironment} from '@rocketh/core/environment';
21
- import {
22
- getChainConfigFromUserConfigAndDefaultChainInfo,
23
- getDefaultChainInfoByName,
24
- getDefaultChainInfoFromChainId,
25
- } from '../environment/chains.js';
22
+
26
23
  import {JSONRPCHTTPProvider} from 'eip-1193-jsonrpc-provider';
27
24
  import {createEnvironment} from '../environment/index.js';
28
25
  import {getRoughGasPriceEstimate} from '../utils/eth.js';
29
26
  import {formatEther} from 'viem';
30
27
  import {logger, spin} from '../internal/logging.js';
28
+ import {getChainConfigFromUserConfig} from '../environment/chains.js';
31
29
 
32
30
  /**
33
31
  * Setup function that creates the execute function for deploy scripts. It allow to specify a set of functions that will be available in the environment.
@@ -132,43 +130,40 @@ export function resolveConfig<
132
130
  export async function getChainIdForEnvironment(
133
131
  config: ResolvedUserConfig,
134
132
  environmentName: string,
135
- provider?: EIP1193ProviderWithoutEvents,
133
+ executionParams: ExecutionParams,
136
134
  ) {
137
- let chainId: number;
138
- const chainIdFromProvider = provider ? Number(await provider.request({method: 'eth_chainId'})) : undefined;
135
+ const provider = executionParams.provider;
136
+
137
+ let chainId: number | undefined;
138
+
139
139
  if (config?.environments?.[environmentName]?.chain) {
140
- const chainAsNumber =
141
- typeof config.environments[environmentName].chain === 'number'
142
- ? config.environments[environmentName].chain
143
- : parseInt(config.environments[environmentName].chain);
144
- if (!isNaN(chainAsNumber)) {
145
- chainId = chainAsNumber;
146
- } else {
147
- const chainFound = getDefaultChainInfoByName(config.environments[environmentName].chain as string);
148
- if (chainFound) {
149
- chainId = chainFound.id;
150
- } else {
151
- throw new Error(`environment ${environmentName} chain id cannot be found, specify it in the rocketh config`);
152
- }
153
- }
154
- } else {
155
- const chainFound = getDefaultChainInfoByName(environmentName);
156
- if (chainFound) {
157
- chainId = chainFound.id;
158
- } else {
159
- if (chainIdFromProvider) {
160
- chainId = chainIdFromProvider;
161
- } else {
162
- throw new Error(`environment ${environmentName} chain id cannot be found, specify it in the rocketh config`);
163
- }
164
- }
140
+ chainId = config.environments[environmentName].chain;
165
141
  }
166
- if (chainIdFromProvider && chainIdFromProvider != chainId) {
142
+
143
+ const chainIdFromProvider = provider ? Number(await provider.request({method: 'eth_chainId'})) : undefined;
144
+ if (chainId && chainIdFromProvider && chainIdFromProvider != chainId) {
167
145
  console.warn(
168
146
  `provider give a different chainId (${chainIdFromProvider}) than the one expected for environment named "${environmentName}" (${chainId})`,
169
147
  );
170
148
  }
171
- return chainIdFromProvider || chainId;
149
+ const chainIdToReturn = chainIdFromProvider || chainId;
150
+
151
+ if (chainIdToReturn === undefined) {
152
+ throw new Error(
153
+ `Could not find chainId for environment named "${environmentName}" ${provider ? `` : '(no provider)'}`,
154
+ );
155
+ }
156
+
157
+ return chainIdToReturn;
158
+ }
159
+
160
+ export async function getChainIdForExecutionParams(
161
+ config: ResolvedUserConfig,
162
+ executionParams: ExecutionParams,
163
+ ): Promise<number> {
164
+ const {name: environmentName} = getEnvironmentName(executionParams);
165
+
166
+ return getChainIdForEnvironment(config, environmentName, executionParams);
172
167
  }
173
168
 
174
169
  export function getEnvironmentName(executionParams: ExecutionParams): {name: string; fork: boolean} {
@@ -194,25 +189,8 @@ export function resolveExecutionParams<Extra extends Record<string, unknown> = R
194
189
 
195
190
  // TODO fork chainId resolution option to keep the network being used
196
191
  const idToFetch = fork ? 31337 : chainId;
197
- let chainInfoFound = getDefaultChainInfoByName(environmentName);
198
- if (!chainInfoFound) {
199
- const result = getDefaultChainInfoFromChainId(idToFetch);
200
- chainInfoFound = result.success ? result.chainInfo : undefined;
201
- if (!result.success && result.error) {
202
- // logger.warn(`could not find chainInfo by name = "${environmentName}"\n ${result.error}`);
203
- }
204
- if (!chainInfoFound) {
205
- // console.log(`could not find chainInfo by chainId = "${idToFetch}"`);
206
- }
207
- }
208
192
 
209
- const defaultChainInfo = chainInfoFound;
210
- const chainConfig = getChainConfigFromUserConfigAndDefaultChainInfo(config, {
211
- id: idToFetch,
212
- chainInfo: defaultChainInfo,
213
- canonicalName: environmentName,
214
- doNotRequireRpcURL: !!executionParameters.provider,
215
- });
193
+ const chainConfig = getChainConfigFromUserConfig(config, idToFetch, executionParameters.provider);
216
194
 
217
195
  let chainInfo = chainConfig.info;
218
196
  const environmentConfig = config?.environments?.[environmentName];
@@ -251,12 +229,10 @@ export function resolveExecutionParams<Extra extends Record<string, unknown> = R
251
229
  }
252
230
  }
253
231
 
254
- // here we force type actualChainConfig.rpcUrl! as string
255
- // as if provider was not available
256
- // getChainConfigFromUserConfigAndDefaultChainInfo would throw
257
232
  const provider =
258
- executionParameters.provider ||
259
- (new JSONRPCHTTPProvider(actualChainConfig.rpcUrl!) as EIP1193ProviderWithoutEvents);
233
+ 'provider' in actualChainConfig
234
+ ? actualChainConfig.provider
235
+ : (new JSONRPCHTTPProvider(actualChainConfig.rpcUrl) as EIP1193ProviderWithoutEvents);
260
236
 
261
237
  let saveDeployments = executionParameters.saveDeployments;
262
238
 
@@ -275,8 +251,8 @@ export function resolveExecutionParams<Extra extends Record<string, unknown> = R
275
251
 
276
252
  // Resolve auto-impersonation flag (priority: params > environment config > global config)
277
253
  let autoImpersonate = executionParameters.autoImpersonate;
278
- if (autoImpersonate === undefined && environmentConfig?.autoImpersonate !== undefined) {
279
- autoImpersonate = environmentConfig.autoImpersonate;
254
+ if (autoImpersonate === undefined && actualChainConfig.autoImpersonate !== undefined) {
255
+ autoImpersonate = actualChainConfig.autoImpersonate;
280
256
  }
281
257
 
282
258
  return {
@@ -310,7 +286,7 @@ export async function loadEnvironment<
310
286
  ): Promise<Environment<NamedAccounts, Data, UnknownDeployments>> {
311
287
  const userConfig = resolveConfig<NamedAccounts, Data>(config, executionParams.config);
312
288
  const {name: environmentName, fork} = getEnvironmentName(executionParams);
313
- const chainId = await getChainIdForEnvironment(userConfig, environmentName, executionParams.provider);
289
+ const chainId = await getChainIdForEnvironment(userConfig, environmentName, executionParams);
314
290
  const resolvedExecutionParams = resolveExecutionParams(userConfig, executionParams, chainId);
315
291
  // console.log(JSON.stringify(resolvedConfig, null, 2));
316
292
  const {external, internal} = await createEnvironment<NamedAccounts, Data, UnknownDeployments>(
@@ -336,7 +312,7 @@ export function createExecutor(deploymentStore: DeploymentStore, promptExecutor:
336
312
  executionParams = executionParams || {};
337
313
  const resolveduserConfig = resolveConfig<NamedAccounts, Data>(userConfig, executionParams.config);
338
314
  const {name: environmentName, fork} = getEnvironmentName(executionParams);
339
- const chainId = await getChainIdForEnvironment(resolveduserConfig, environmentName, executionParams.provider);
315
+ const chainId = await getChainIdForEnvironment(resolveduserConfig, environmentName, executionParams);
340
316
  const resolvedExecutionParams = resolveExecutionParams(resolveduserConfig, executionParams, chainId);
341
317
  return executeDeployScriptModules<NamedAccounts, Data, ArgumentsType>(
342
318
  moduleObjects,
package/src/index.ts CHANGED
@@ -12,9 +12,4 @@ export {createEnvironment, loadDeployments} from './environment/index.js';
12
12
  // used by hardhat-deploy and instead of having hardhat-deploy depends on @rocketh/core we export it here as well
13
13
  export {enhanceEnvIfNeeded} from '@rocketh/core/environment';
14
14
 
15
- export {
16
- getChainConfigFromUserConfigAndDefaultChainInfo,
17
- chainByCanonicalName,
18
- getDefaultChainInfoByName,
19
- getDefaultChainInfoFromChainId,
20
- } from './environment/chains.js';
15
+ export {getChainConfigFromUserConfig} from './environment/chains.js';