@aztec/ethereum 0.32.1 → 0.34.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.
|
@@ -10,7 +10,7 @@ import { createPublicClient, createWalletClient, getAddress, getContract, http,
|
|
|
10
10
|
* @returns A list of ETH addresses of the deployed contracts.
|
|
11
11
|
*/
|
|
12
12
|
export const deployL1Contracts = async (rpcUrl, account, chain, logger, contractsToDeploy) => {
|
|
13
|
-
logger('Deploying contracts...');
|
|
13
|
+
logger.debug('Deploying contracts...');
|
|
14
14
|
const walletClient = createWalletClient({
|
|
15
15
|
account,
|
|
16
16
|
chain,
|
|
@@ -21,11 +21,11 @@ export const deployL1Contracts = async (rpcUrl, account, chain, logger, contract
|
|
|
21
21
|
transport: http(rpcUrl),
|
|
22
22
|
});
|
|
23
23
|
const registryAddress = await deployL1Contract(walletClient, publicClient, contractsToDeploy.registry.contractAbi, contractsToDeploy.registry.contractBytecode);
|
|
24
|
-
logger(`Deployed Registry at ${registryAddress}`);
|
|
24
|
+
logger.info(`Deployed Registry at ${registryAddress}`);
|
|
25
25
|
const availabilityOracleAddress = await deployL1Contract(walletClient, publicClient, contractsToDeploy.availabilityOracle.contractAbi, contractsToDeploy.availabilityOracle.contractBytecode);
|
|
26
|
-
logger(`Deployed AvailabilityOracle at ${availabilityOracleAddress}`);
|
|
26
|
+
logger.info(`Deployed AvailabilityOracle at ${availabilityOracleAddress}`);
|
|
27
27
|
const rollupAddress = await deployL1Contract(walletClient, publicClient, contractsToDeploy.rollup.contractAbi, contractsToDeploy.rollup.contractBytecode, [getAddress(registryAddress.toString()), getAddress(availabilityOracleAddress.toString())]);
|
|
28
|
-
logger(`Deployed Rollup at ${rollupAddress}`);
|
|
28
|
+
logger.info(`Deployed Rollup at ${rollupAddress}`);
|
|
29
29
|
// Inbox and Outbox are immutable and are deployed from Rollup's constructor so we just fetch them from the contract.
|
|
30
30
|
let inboxAddress;
|
|
31
31
|
{
|
|
@@ -36,7 +36,7 @@ export const deployL1Contracts = async (rpcUrl, account, chain, logger, contract
|
|
|
36
36
|
});
|
|
37
37
|
inboxAddress = EthAddress.fromString((await rollup.read.INBOX([])));
|
|
38
38
|
}
|
|
39
|
-
logger(`Inbox available at ${inboxAddress}`);
|
|
39
|
+
logger.info(`Inbox available at ${inboxAddress}`);
|
|
40
40
|
let outboxAddress;
|
|
41
41
|
{
|
|
42
42
|
const rollup = getContract({
|
|
@@ -46,7 +46,7 @@ export const deployL1Contracts = async (rpcUrl, account, chain, logger, contract
|
|
|
46
46
|
});
|
|
47
47
|
outboxAddress = EthAddress.fromString((await rollup.read.OUTBOX([])));
|
|
48
48
|
}
|
|
49
|
-
logger(`Outbox available at ${outboxAddress}`);
|
|
49
|
+
logger.info(`Outbox available at ${outboxAddress}`);
|
|
50
50
|
// We need to call a function on the registry to set the various contract addresses.
|
|
51
51
|
const registryContract = getContract({
|
|
52
52
|
address: getAddress(registryAddress.toString()),
|
|
@@ -56,10 +56,10 @@ export const deployL1Contracts = async (rpcUrl, account, chain, logger, contract
|
|
|
56
56
|
await registryContract.write.upgrade([getAddress(rollupAddress.toString()), getAddress(inboxAddress.toString()), getAddress(outboxAddress.toString())], { account });
|
|
57
57
|
// this contract remains uninitialized because at this point we don't know the address of the gas token on L2
|
|
58
58
|
const gasTokenAddress = await deployL1Contract(walletClient, publicClient, contractsToDeploy.gasToken.contractAbi, contractsToDeploy.gasToken.contractBytecode);
|
|
59
|
-
logger(`Deployed Gas Token at ${gasTokenAddress}`);
|
|
59
|
+
logger.info(`Deployed Gas Token at ${gasTokenAddress}`);
|
|
60
60
|
// this contract remains uninitialized because at this point we don't know the address of the gas token on L2
|
|
61
61
|
const gasPortalAddress = await deployL1Contract(walletClient, publicClient, contractsToDeploy.gasPortal.contractAbi, contractsToDeploy.gasPortal.contractBytecode);
|
|
62
|
-
logger(`Deployed Gas Portal at ${gasPortalAddress}`);
|
|
62
|
+
logger.info(`Deployed Gas Portal at ${gasPortalAddress}`);
|
|
63
63
|
const l1Contracts = {
|
|
64
64
|
availabilityOracleAddress,
|
|
65
65
|
rollupAddress,
|
|
@@ -91,7 +91,7 @@ export async function deployL1Contract(walletClient, publicClient, abi, bytecode
|
|
|
91
91
|
bytecode,
|
|
92
92
|
args,
|
|
93
93
|
});
|
|
94
|
-
const receipt = await publicClient.waitForTransactionReceipt({ hash });
|
|
94
|
+
const receipt = await publicClient.waitForTransactionReceipt({ hash, pollingInterval: 100 });
|
|
95
95
|
const contractAddress = receipt.contractAddress;
|
|
96
96
|
if (!contractAddress) {
|
|
97
97
|
throw new Error(`No contract address found in receipt: ${JSON.stringify(receipt)}`);
|
|
@@ -99,4 +99,4 @@ export async function deployL1Contract(walletClient, publicClient, abi, bytecode
|
|
|
99
99
|
return EthAddress.fromString(receipt.contractAddress);
|
|
100
100
|
}
|
|
101
101
|
// docs:end:deployL1Contract
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95X2wxX2NvbnRyYWN0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kZXBsb3lfbDFfY29udHJhY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUkzRCxPQUFPLEVBT0wsa0JBQWtCLEVBQ2xCLGtCQUFrQixFQUNsQixVQUFVLEVBQ1YsV0FBVyxFQUNYLElBQUksR0FDTCxNQUFNLE1BQU0sQ0FBQztBQXVFZDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEtBQUssRUFDcEMsTUFBYyxFQUNkLE9BQXNDLEVBQ3RDLEtBQVksRUFDWixNQUFtQixFQUNuQixpQkFBbUQsRUFDdkIsRUFBRTtJQUM5QixNQUFNLENBQUMsS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFFdkMsTUFBTSxZQUFZLEdBQUcsa0JBQWtCLENBQUM7UUFDdEMsT0FBTztRQUNQLEtBQUs7UUFDTCxTQUFTLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQztLQUN4QixDQUFDLENBQUM7SUFDSCxNQUFNLFlBQVksR0FBRyxrQkFBa0IsQ0FBQztRQUN0QyxLQUFLO1FBQ0wsU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUM7S0FDeEIsQ0FBQyxDQUFDO0lBRUgsTUFBTSxlQUFlLEdBQUcsTUFBTSxnQkFBZ0IsQ0FDNUMsWUFBWSxFQUNaLFlBQVksRUFDWixpQkFBaUIsQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUN0QyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQzVDLENBQUM7SUFDRixNQUFNLENBQUMsSUFBSSxDQUFDLHdCQUF3QixlQUFlLEVBQUUsQ0FBQyxDQUFDO0lBRXZELE1BQU0seUJBQXlCLEdBQUcsTUFBTSxnQkFBZ0IsQ0FDdEQsWUFBWSxFQUNaLFlBQVksRUFDWixpQkFBaUIsQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQ2hE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
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import { type EthAddress } from '@aztec/foundation/eth-address';
|
|
2
|
+
/**
|
|
3
|
+
* The names of the current L1 contract addresses.
|
|
4
|
+
* NOTE: When changing this list, make sure to update CLI & CI scripts accordingly.
|
|
5
|
+
* For reference: https://github.com/AztecProtocol/aztec-packages/pull/5553
|
|
6
|
+
*/
|
|
2
7
|
export declare const l1ContractsNames: readonly ["availabilityOracleAddress", "rollupAddress", "registryAddress", "inboxAddress", "outboxAddress", "gasTokenAddress", "gasPortalAddress"];
|
|
3
8
|
/**
|
|
4
9
|
* Provides the directory of current L1 contract addresses
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"l1_contract_addresses.d.ts","sourceRoot":"","sources":["../src/l1_contract_addresses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,eAAO,MAAM,gBAAgB,oJAQnB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;KAC/B,CAAC,IAAI,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,GAAG,UAAU;CACrD,CAAC"}
|
|
1
|
+
{"version":3,"file":"l1_contract_addresses.d.ts","sourceRoot":"","sources":["../src/l1_contract_addresses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,oJAQnB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;KAC/B,CAAC,IAAI,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,GAAG,UAAU;CACrD,CAAC"}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The names of the current L1 contract addresses.
|
|
3
|
+
* NOTE: When changing this list, make sure to update CLI & CI scripts accordingly.
|
|
4
|
+
* For reference: https://github.com/AztecProtocol/aztec-packages/pull/5553
|
|
5
|
+
*/
|
|
1
6
|
export const l1ContractsNames = [
|
|
2
7
|
'availabilityOracleAddress',
|
|
3
8
|
'rollupAddress',
|
|
@@ -7,4 +12,4 @@ export const l1ContractsNames = [
|
|
|
7
12
|
'gasTokenAddress',
|
|
8
13
|
'gasPortalAddress',
|
|
9
14
|
];
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfY29udHJhY3RfYWRkcmVzc2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2wxX2NvbnRyYWN0X2FkZHJlc3Nlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUc7SUFDOUIsMkJBQTJCO0lBQzNCLGVBQWU7SUFDZixpQkFBaUI7SUFDakIsY0FBYztJQUNkLGVBQWU7SUFDZixpQkFBaUI7SUFDakIsa0JBQWtCO0NBQ1YsQ0FBQyJ9
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/ethereum",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.34.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": "./dest/index.js",
|
|
6
6
|
"typedocOptions": {
|
|
@@ -18,13 +18,13 @@
|
|
|
18
18
|
"formatting:fix": "run -T eslint --fix ./src && run -T prettier -w ./src",
|
|
19
19
|
"start:dev": "tsc-watch -p tsconfig.json --onSuccess 'yarn start'",
|
|
20
20
|
"start": "node ./dest/index.js",
|
|
21
|
-
"test": "NODE_NO_WARNINGS=1 node --experimental-vm-modules
|
|
21
|
+
"test": "NODE_NO_WARNINGS=1 node --experimental-vm-modules ../node_modules/.bin/jest --passWithNoTests"
|
|
22
22
|
},
|
|
23
23
|
"inherits": [
|
|
24
24
|
"../package.common.json"
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@aztec/foundation": "0.
|
|
27
|
+
"@aztec/foundation": "0.34.0",
|
|
28
28
|
"dotenv": "^16.0.3",
|
|
29
29
|
"tslib": "^2.4.0",
|
|
30
30
|
"viem": "^2.7.15"
|
|
@@ -34,7 +34,6 @@
|
|
|
34
34
|
"@types/jest": "^29.5.0",
|
|
35
35
|
"@types/node": "^18.14.6",
|
|
36
36
|
"jest": "^29.5.0",
|
|
37
|
-
"ts-jest": "^29.1.0",
|
|
38
37
|
"ts-node": "^10.9.1",
|
|
39
38
|
"typescript": "^5.0.4"
|
|
40
39
|
},
|
|
@@ -45,12 +44,19 @@
|
|
|
45
44
|
],
|
|
46
45
|
"types": "./dest/index.d.ts",
|
|
47
46
|
"jest": {
|
|
48
|
-
"preset": "ts-jest/presets/default-esm",
|
|
49
47
|
"moduleNameMapper": {
|
|
50
48
|
"^(\\.{1,2}/.*)\\.[cm]?js$": "$1"
|
|
51
49
|
},
|
|
52
50
|
"testRegex": "./src/.*\\.test\\.(js|mjs|ts)$",
|
|
53
|
-
"rootDir": "./src"
|
|
51
|
+
"rootDir": "./src",
|
|
52
|
+
"transform": {
|
|
53
|
+
"^.+\\.tsx?$": [
|
|
54
|
+
"@swc/jest"
|
|
55
|
+
]
|
|
56
|
+
},
|
|
57
|
+
"extensionsToTreatAsEsm": [
|
|
58
|
+
".ts"
|
|
59
|
+
]
|
|
54
60
|
},
|
|
55
61
|
"engines": {
|
|
56
62
|
"node": ">=18"
|
|
@@ -101,7 +101,7 @@ export const deployL1Contracts = async (
|
|
|
101
101
|
logger: DebugLogger,
|
|
102
102
|
contractsToDeploy: L1ContractArtifactsForDeployment,
|
|
103
103
|
): Promise<DeployL1Contracts> => {
|
|
104
|
-
logger('Deploying contracts...');
|
|
104
|
+
logger.debug('Deploying contracts...');
|
|
105
105
|
|
|
106
106
|
const walletClient = createWalletClient({
|
|
107
107
|
account,
|
|
@@ -119,7 +119,7 @@ export const deployL1Contracts = async (
|
|
|
119
119
|
contractsToDeploy.registry.contractAbi,
|
|
120
120
|
contractsToDeploy.registry.contractBytecode,
|
|
121
121
|
);
|
|
122
|
-
logger(`Deployed Registry at ${registryAddress}`);
|
|
122
|
+
logger.info(`Deployed Registry at ${registryAddress}`);
|
|
123
123
|
|
|
124
124
|
const availabilityOracleAddress = await deployL1Contract(
|
|
125
125
|
walletClient,
|
|
@@ -127,7 +127,7 @@ export const deployL1Contracts = async (
|
|
|
127
127
|
contractsToDeploy.availabilityOracle.contractAbi,
|
|
128
128
|
contractsToDeploy.availabilityOracle.contractBytecode,
|
|
129
129
|
);
|
|
130
|
-
logger(`Deployed AvailabilityOracle at ${availabilityOracleAddress}`);
|
|
130
|
+
logger.info(`Deployed AvailabilityOracle at ${availabilityOracleAddress}`);
|
|
131
131
|
|
|
132
132
|
const rollupAddress = await deployL1Contract(
|
|
133
133
|
walletClient,
|
|
@@ -136,7 +136,7 @@ export const deployL1Contracts = async (
|
|
|
136
136
|
contractsToDeploy.rollup.contractBytecode,
|
|
137
137
|
[getAddress(registryAddress.toString()), getAddress(availabilityOracleAddress.toString())],
|
|
138
138
|
);
|
|
139
|
-
logger(`Deployed Rollup at ${rollupAddress}`);
|
|
139
|
+
logger.info(`Deployed Rollup at ${rollupAddress}`);
|
|
140
140
|
|
|
141
141
|
// Inbox and Outbox are immutable and are deployed from Rollup's constructor so we just fetch them from the contract.
|
|
142
142
|
let inboxAddress!: EthAddress;
|
|
@@ -148,7 +148,7 @@ export const deployL1Contracts = async (
|
|
|
148
148
|
});
|
|
149
149
|
inboxAddress = EthAddress.fromString((await rollup.read.INBOX([])) as any);
|
|
150
150
|
}
|
|
151
|
-
logger(`Inbox available at ${inboxAddress}`);
|
|
151
|
+
logger.info(`Inbox available at ${inboxAddress}`);
|
|
152
152
|
|
|
153
153
|
let outboxAddress!: EthAddress;
|
|
154
154
|
{
|
|
@@ -159,7 +159,7 @@ export const deployL1Contracts = async (
|
|
|
159
159
|
});
|
|
160
160
|
outboxAddress = EthAddress.fromString((await rollup.read.OUTBOX([])) as any);
|
|
161
161
|
}
|
|
162
|
-
logger(`Outbox available at ${outboxAddress}`);
|
|
162
|
+
logger.info(`Outbox available at ${outboxAddress}`);
|
|
163
163
|
|
|
164
164
|
// We need to call a function on the registry to set the various contract addresses.
|
|
165
165
|
const registryContract = getContract({
|
|
@@ -180,7 +180,7 @@ export const deployL1Contracts = async (
|
|
|
180
180
|
contractsToDeploy.gasToken.contractBytecode,
|
|
181
181
|
);
|
|
182
182
|
|
|
183
|
-
logger(`Deployed Gas Token at ${gasTokenAddress}`);
|
|
183
|
+
logger.info(`Deployed Gas Token at ${gasTokenAddress}`);
|
|
184
184
|
|
|
185
185
|
// this contract remains uninitialized because at this point we don't know the address of the gas token on L2
|
|
186
186
|
const gasPortalAddress = await deployL1Contract(
|
|
@@ -190,7 +190,7 @@ export const deployL1Contracts = async (
|
|
|
190
190
|
contractsToDeploy.gasPortal.contractBytecode,
|
|
191
191
|
);
|
|
192
192
|
|
|
193
|
-
logger(`Deployed Gas Portal at ${gasPortalAddress}`);
|
|
193
|
+
logger.info(`Deployed Gas Portal at ${gasPortalAddress}`);
|
|
194
194
|
|
|
195
195
|
const l1Contracts: L1ContractAddresses = {
|
|
196
196
|
availabilityOracleAddress,
|
|
@@ -232,7 +232,7 @@ export async function deployL1Contract(
|
|
|
232
232
|
args,
|
|
233
233
|
});
|
|
234
234
|
|
|
235
|
-
const receipt = await publicClient.waitForTransactionReceipt({ hash });
|
|
235
|
+
const receipt = await publicClient.waitForTransactionReceipt({ hash, pollingInterval: 100 });
|
|
236
236
|
const contractAddress = receipt.contractAddress;
|
|
237
237
|
if (!contractAddress) {
|
|
238
238
|
throw new Error(`No contract address found in receipt: ${JSON.stringify(receipt)}`);
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { type EthAddress } from '@aztec/foundation/eth-address';
|
|
2
2
|
|
|
3
|
+
/**
|
|
4
|
+
* The names of the current L1 contract addresses.
|
|
5
|
+
* NOTE: When changing this list, make sure to update CLI & CI scripts accordingly.
|
|
6
|
+
* For reference: https://github.com/AztecProtocol/aztec-packages/pull/5553
|
|
7
|
+
*/
|
|
3
8
|
export const l1ContractsNames = [
|
|
4
9
|
'availabilityOracleAddress',
|
|
5
10
|
'rollupAddress',
|