@aztec/aztec 0.0.1-commit.d3ec352c → 0.0.1-commit.e61ad554

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.
Files changed (72) hide show
  1. package/dest/bin/index.js +5 -2
  2. package/dest/cli/aztec_start_action.d.ts +1 -1
  3. package/dest/cli/aztec_start_action.d.ts.map +1 -1
  4. package/dest/cli/aztec_start_action.js +6 -5
  5. package/dest/cli/aztec_start_options.d.ts +1 -1
  6. package/dest/cli/aztec_start_options.d.ts.map +1 -1
  7. package/dest/cli/aztec_start_options.js +16 -27
  8. package/dest/cli/cli.d.ts +1 -1
  9. package/dest/cli/cli.d.ts.map +1 -1
  10. package/dest/cli/cli.js +5 -37
  11. package/dest/cli/cmds/migrate_ha_db.d.ts +3 -0
  12. package/dest/cli/cmds/migrate_ha_db.d.ts.map +1 -0
  13. package/dest/cli/cmds/migrate_ha_db.js +27 -0
  14. package/dest/cli/cmds/start_archiver.d.ts +1 -1
  15. package/dest/cli/cmds/start_archiver.d.ts.map +1 -1
  16. package/dest/cli/cmds/start_archiver.js +11 -13
  17. package/dest/cli/cmds/start_bot.js +1 -1
  18. package/dest/cli/cmds/start_node.js +2 -2
  19. package/dest/cli/cmds/start_p2p_bootstrap.js +1 -1
  20. package/dest/cli/cmds/start_prover_agent.d.ts +1 -1
  21. package/dest/cli/cmds/start_prover_agent.d.ts.map +1 -1
  22. package/dest/cli/cmds/start_prover_agent.js +2 -2
  23. package/dest/cli/cmds/start_prover_broker.js +2 -2
  24. package/dest/cli/cmds/start_prover_node.js +2 -2
  25. package/dest/cli/util.d.ts +5 -5
  26. package/dest/cli/util.d.ts.map +1 -1
  27. package/dest/cli/util.js +3 -3
  28. package/dest/examples/token.js +3 -3
  29. package/dest/examples/util.d.ts +2 -2
  30. package/dest/examples/util.d.ts.map +1 -1
  31. package/dest/local-network/banana_fpc.d.ts +1 -1
  32. package/dest/local-network/banana_fpc.d.ts.map +1 -1
  33. package/dest/local-network/banana_fpc.js +3 -3
  34. package/dest/local-network/local-network.d.ts +10 -13
  35. package/dest/local-network/local-network.d.ts.map +1 -1
  36. package/dest/local-network/local-network.js +36 -25
  37. package/dest/testing/anvil_test_watcher.d.ts +2 -2
  38. package/dest/testing/anvil_test_watcher.d.ts.map +1 -1
  39. package/dest/testing/cheat_codes.d.ts +3 -1
  40. package/dest/testing/cheat_codes.d.ts.map +1 -1
  41. package/dest/testing/epoch_test_settler.d.ts +19 -0
  42. package/dest/testing/epoch_test_settler.d.ts.map +1 -0
  43. package/dest/testing/epoch_test_settler.js +62 -0
  44. package/dest/testing/index.d.ts +2 -1
  45. package/dest/testing/index.d.ts.map +1 -1
  46. package/dest/testing/index.js +1 -0
  47. package/package.json +35 -33
  48. package/scripts/aztec.sh +14 -7
  49. package/src/bin/index.ts +6 -2
  50. package/src/cli/aztec_start_action.ts +5 -4
  51. package/src/cli/aztec_start_options.ts +15 -27
  52. package/src/cli/cli.ts +5 -37
  53. package/src/cli/cmds/migrate_ha_db.ts +43 -0
  54. package/src/cli/cmds/start_archiver.ts +7 -18
  55. package/src/cli/cmds/start_bot.ts +1 -1
  56. package/src/cli/cmds/start_node.ts +2 -2
  57. package/src/cli/cmds/start_p2p_bootstrap.ts +1 -1
  58. package/src/cli/cmds/start_prover_agent.ts +2 -10
  59. package/src/cli/cmds/start_prover_broker.ts +2 -2
  60. package/src/cli/cmds/start_prover_node.ts +2 -2
  61. package/src/cli/util.ts +7 -7
  62. package/src/examples/token.ts +3 -5
  63. package/src/examples/util.ts +1 -1
  64. package/src/local-network/banana_fpc.ts +11 -7
  65. package/src/local-network/local-network.ts +67 -69
  66. package/src/testing/anvil_test_watcher.ts +1 -1
  67. package/src/testing/epoch_test_settler.ts +71 -0
  68. package/src/testing/index.ts +1 -0
  69. package/dest/cli/cmds/start_blob_sink.d.ts +0 -3
  70. package/dest/cli/cmds/start_blob_sink.d.ts.map +0 -1
  71. package/dest/cli/cmds/start_blob_sink.js +0 -33
  72. package/src/cli/cmds/start_blob_sink.ts +0 -57
@@ -1,8 +1,9 @@
1
1
  import { type ArchiverConfig, archiverConfigMappings } from '@aztec/archiver/config';
2
- import { sequencerClientConfigMappings } from '@aztec/aztec-node/config';
3
- import { blobSinkConfigMappings } from '@aztec/blob-sink/server';
2
+ import { blobClientConfigMapping } from '@aztec/blob-client/client/config';
4
3
  import { botConfigMappings } from '@aztec/bot/config';
5
- import { l1ContractAddressesMapping, l1ContractsConfigMappings, l1ReaderConfigMappings } from '@aztec/ethereum';
4
+ import { l1ContractsConfigMappings } from '@aztec/ethereum/config';
5
+ import { l1ContractAddressesMapping } from '@aztec/ethereum/l1-contract-addresses';
6
+ import { l1ReaderConfigMappings } from '@aztec/ethereum/l1-reader';
6
7
  import { getKeys } from '@aztec/foundation/collection';
7
8
  import {
8
9
  type ConfigMapping,
@@ -14,12 +15,13 @@ import {
14
15
  import { dataConfigMappings } from '@aztec/kv-store/config';
15
16
  import { sharedNodeConfigMappings } from '@aztec/node-lib/config';
16
17
  import { bootnodeConfigMappings, p2pConfigMappings } from '@aztec/p2p/config';
17
- import { proverAgentConfigMappings, proverBrokerConfigMappings } from '@aztec/prover-client/broker';
18
+ import { proverAgentConfigMappings, proverBrokerConfigMappings } from '@aztec/prover-client/broker/config';
18
19
  import { proverNodeConfigMappings } from '@aztec/prover-node/config';
19
20
  import { allPxeConfigMappings } from '@aztec/pxe/config';
20
- import { chainConfigMappings } from '@aztec/stdlib/config';
21
- import { telemetryClientConfigMappings } from '@aztec/telemetry-client';
22
- import { worldStateConfigMappings } from '@aztec/world-state';
21
+ import { sequencerClientConfigMappings } from '@aztec/sequencer-client/config';
22
+ import { chainConfigMappings, nodeRpcConfigMappings } from '@aztec/stdlib/config';
23
+ import { telemetryClientConfigMappings } from '@aztec/telemetry-client/config';
24
+ import { worldStateConfigMappings } from '@aztec/world-state/config';
23
25
 
24
26
  import { DefaultMnemonic } from '../mnemonic.js';
25
27
 
@@ -124,14 +126,6 @@ export const aztecStartOptions: { [key: string]: AztecStartOption[] } = {
124
126
  defaultValue: DefaultMnemonic,
125
127
  env: 'MNEMONIC',
126
128
  },
127
- {
128
- flag: '--local-network.deployAztecContractsSalt <value>',
129
- description:
130
- 'Numeric salt for deploying L1 Aztec contracts before starting the local network. Needs mnemonic or private key to be set.',
131
- env: 'DEPLOY_AZTEC_CONTRACTS_SALT',
132
- defaultValue: undefined,
133
- parseVal: (val: string) => (val ? parseInt(val) : undefined),
134
- },
135
129
  ],
136
130
  API: [
137
131
  {
@@ -154,14 +148,16 @@ export const aztecStartOptions: { [key: string]: AztecStartOption[] } = {
154
148
  defaultValue: '',
155
149
  env: 'API_PREFIX',
156
150
  },
151
+ configToFlag('--rpcMaxBatchSize', nodeRpcConfigMappings.rpcMaxBatchSize),
152
+ configToFlag('--rpcMaxBodySize', nodeRpcConfigMappings.rpcMaxBodySize),
157
153
  ],
158
154
  ETHEREUM: [
159
155
  configToFlag('--l1-chain-id', l1ReaderConfigMappings.l1ChainId),
160
156
  // Do not set default for CLI: keep undefined unless provided via flag or env
161
157
  configToFlag('--l1-rpc-urls', { ...l1ReaderConfigMappings.l1RpcUrls, defaultValue: undefined }),
162
- configToFlag('--l1-consensus-host-urls', blobSinkConfigMappings.l1ConsensusHostUrls),
163
- configToFlag('--l1-consensus-host-api-keys', blobSinkConfigMappings.l1ConsensusHostApiKeys),
164
- configToFlag('--l1-consensus-host-api-key-headers', blobSinkConfigMappings.l1ConsensusHostApiKeyHeaders),
158
+ configToFlag('--l1-consensus-host-urls', blobClientConfigMapping.l1ConsensusHostUrls),
159
+ configToFlag('--l1-consensus-host-api-keys', blobClientConfigMapping.l1ConsensusHostApiKeys),
160
+ configToFlag('--l1-consensus-host-api-key-headers', blobClientConfigMapping.l1ConsensusHostApiKeyHeaders),
165
161
  ],
166
162
  'L1 CONTRACTS': [
167
163
  configToFlag('--registry-address', l1ContractAddressesMapping.registryAddress),
@@ -208,21 +204,13 @@ export const aztecStartOptions: { [key: string]: AztecStartOption[] } = {
208
204
  'sequencer',
209
205
  omitConfigMappings(sequencerClientConfigMappings, [
210
206
  'fakeProcessingDelayPerTxMs',
207
+ 'fakeThrowAfterProcessingTxCount',
211
208
  'skipCollectingAttestations',
212
209
  'skipInvalidateBlockAsProposer',
213
210
  'blobSinkMapSizeKb',
214
211
  ]),
215
212
  ),
216
213
  ],
217
- 'BLOB SINK': [
218
- {
219
- flag: '--blob-sink',
220
- description: 'Starts Aztec Blob Sink with options',
221
- defaultValue: undefined,
222
- env: undefined,
223
- },
224
- ...getOptions('blobSink', blobSinkConfigMappings),
225
- ],
226
214
  'PROVER NODE': [
227
215
  {
228
216
  flag: '--prover-node',
package/src/cli/cli.ts CHANGED
@@ -35,44 +35,12 @@ export function injectAztecCommands(program: Command, userLog: LogFn, debugLogge
35
35
  program.addHelpText(
36
36
  'after',
37
37
  `
38
+ Additional commands:
38
39
 
39
- Additional commands:
40
-
41
- init [folder] [options]: creates a new Noir project
42
- Options:
43
- --name <name> Name of the package
44
- --contract Use a contract template (default)
45
- --lib Use a library template
46
- --bin Use a binary template
47
- Examples:
48
- $ aztec init # creates a contract project in current directory
49
- $ aztec init --lib # creates a library project
50
-
51
- new <path> [options]: creates a new Noir project in a new directory
52
- Options:
53
- --name <name> Name of the package
54
- --contract Use a contract template (default)
55
- --lib Use a library template
56
- --bin Use a binary template
57
- Examples:
58
- $ aztec new my-project # creates a contract project in ./my-project
59
- $ aztec new my-lib --lib # creates a library project in ./my-lib
60
-
61
- compile [options]: compiles Aztec Noir contracts
62
- Compiles contracts with nargo compile and then postprocesses them to generate Aztec-specific artifacts including:
63
- - Transpiled contract artifacts
64
- - Verification keys
65
- The compiled contracts will be placed in the target/ directory by default.
66
- Supports standard nargo compile options.
67
-
68
- test [options]: starts a dockerized TXE node via
69
- $ aztec start --txe
70
- then runs
71
- $ aztec test --silence-warnings --oracle-resolver=<TXE_ADDRESS> [options]
72
-
73
- preload-crs: Downloads and caches the Common Reference String (CRS) data required for zero-knowledge proofs.
74
- Example:
75
- $ aztec preload-crs # preloads CRS data
40
+ init [folder] [options] creates a new Aztec Noir project.
41
+ new <path> [options] creates a new Aztec Noir project in a new directory.
42
+ compile [options] compiles Aztec Noir contracts.
43
+ test [options] starts a TXE and runs "nargo test" using it as the oracle resolver.
76
44
  `,
77
45
  );
78
46
  }
@@ -0,0 +1,43 @@
1
+ import { runMigrations } from '@aztec/validator-ha-signer/migrations';
2
+
3
+ import type { Command } from 'commander';
4
+
5
+ export function injectMigrateCommand(program: Command, log: (msg: string) => void): Command {
6
+ const migrateCommand = program.command('migrate-ha-db').description('Run validator-ha-signer database migrations');
7
+
8
+ migrateCommand
9
+ .command('up')
10
+ .description('Apply pending migrations')
11
+ .requiredOption('--database-url <string>', 'PostgreSQL connection string', process.env.DATABASE_URL)
12
+ .option('--verbose', 'Enable verbose output', false)
13
+ .action(async options => {
14
+ const migrations = await runMigrations(options.databaseUrl, {
15
+ direction: 'up',
16
+ verbose: options.verbose,
17
+ });
18
+ if (migrations.length > 0) {
19
+ log(`Applied migrations: ${migrations.join(', ')}`);
20
+ } else {
21
+ log('No migrations to apply - schema is up to date');
22
+ }
23
+ });
24
+
25
+ migrateCommand
26
+ .command('down')
27
+ .description('Rollback the last migration')
28
+ .requiredOption('--database-url <string>', 'PostgreSQL connection string', process.env.DATABASE_URL)
29
+ .option('--verbose', 'Enable verbose output', false)
30
+ .action(async options => {
31
+ const migrations = await runMigrations(options.databaseUrl, {
32
+ direction: 'down',
33
+ verbose: options.verbose,
34
+ });
35
+ if (migrations.length > 0) {
36
+ log(`Rolled back migrations: ${migrations.join(', ')}`);
37
+ } else {
38
+ log('No migrations to rollback');
39
+ }
40
+ });
41
+
42
+ return program;
43
+ }
@@ -1,16 +1,9 @@
1
- import {
2
- Archiver,
3
- type ArchiverConfig,
4
- KVArchiverDataStore,
5
- archiverConfigMappings,
6
- getArchiverConfigFromEnv,
7
- } from '@aztec/archiver';
1
+ import { type ArchiverConfig, archiverConfigMappings, createArchiver, getArchiverConfigFromEnv } from '@aztec/archiver';
8
2
  import { createLogger } from '@aztec/aztec.js/log';
9
- import { type BlobSinkConfig, blobSinkConfigMapping, createBlobSinkClient } from '@aztec/blob-sink/client';
3
+ import { type BlobClientConfig, blobClientConfigMapping, createBlobClient } from '@aztec/blob-client/client';
10
4
  import { getL1Config } from '@aztec/cli/config';
11
5
  import type { NamespacedApiHandlers } from '@aztec/foundation/json-rpc/server';
12
6
  import { type DataStoreConfig, dataConfigMappings } from '@aztec/kv-store/config';
13
- import { createStore } from '@aztec/kv-store/lmdb-v2';
14
7
  import { ArchiverApiSchema } from '@aztec/stdlib/interfaces/server';
15
8
  import { getConfigEnvVars as getTelemetryClientConfig, initTelemetryClient } from '@aztec/telemetry-client';
16
9
 
@@ -25,9 +18,9 @@ export async function startArchiver(
25
18
  services: NamespacedApiHandlers,
26
19
  ): Promise<{ config: ArchiverConfig & DataStoreConfig }> {
27
20
  const envConfig = getArchiverConfigFromEnv();
28
- const cliOptions = extractRelevantOptions<ArchiverConfig & DataStoreConfig & BlobSinkConfig>(
21
+ const cliOptions = extractRelevantOptions<ArchiverConfig & DataStoreConfig & BlobClientConfig>(
29
22
  options,
30
- { ...archiverConfigMappings, ...dataConfigMappings, ...blobSinkConfigMapping },
23
+ { ...archiverConfigMappings, ...dataConfigMappings, ...blobClientConfigMapping },
31
24
  'archiver',
32
25
  );
33
26
 
@@ -47,13 +40,9 @@ export async function startArchiver(
47
40
  archiverConfig.l1Contracts = addresses;
48
41
  archiverConfig = { ...archiverConfig, ...l1Config };
49
42
 
50
- const storeLog = createLogger('archiver:lmdb');
51
- const store = await createStore('archiver', KVArchiverDataStore.SCHEMA_VERSION, archiverConfig, storeLog);
52
- const archiverStore = new KVArchiverDataStore(store, archiverConfig.maxLogs);
53
-
54
- const telemetry = initTelemetryClient(getTelemetryClientConfig());
55
- const blobSinkClient = createBlobSinkClient(archiverConfig, { logger: createLogger('archiver:blob-sink:client') });
56
- const archiver = await Archiver.createAndSync(archiverConfig, archiverStore, { telemetry, blobSinkClient }, true);
43
+ const telemetry = await initTelemetryClient(getTelemetryClientConfig());
44
+ const blobClient = createBlobClient(archiverConfig, { logger: createLogger('archiver:blob-client:client') });
45
+ const archiver = await createArchiver(archiverConfig, { telemetry, blobClient }, { blockUntilSync: true });
57
46
  services.archiver = [archiver, ArchiverApiSchema];
58
47
  signalHandlers.push(archiver.stop);
59
48
 
@@ -40,7 +40,7 @@ export async function startBot(
40
40
  const pxeConfig = extractRelevantOptions<PXEConfig & CliPXEOptions>(options, allPxeConfigMappings, 'pxe');
41
41
  const wallet = await TestWallet.create(aztecNode, pxeConfig);
42
42
 
43
- const telemetry = initTelemetryClient(getTelemetryClientConfig());
43
+ const telemetry = await initTelemetryClient(getTelemetryClientConfig());
44
44
  await addBot(options, signalHandlers, services, wallet, aztecNode, telemetry, undefined);
45
45
  }
46
46
 
@@ -3,7 +3,7 @@ import { type AztecNodeConfig, aztecNodeConfigMappings, getConfigEnvVars } from
3
3
  import { Fr } from '@aztec/aztec.js/fields';
4
4
  import { getSponsoredFPCAddress } from '@aztec/cli/cli-utils';
5
5
  import { getL1Config } from '@aztec/cli/config';
6
- import { getPublicClient } from '@aztec/ethereum';
6
+ import { getPublicClient } from '@aztec/ethereum/client';
7
7
  import { SecretValue } from '@aztec/foundation/config';
8
8
  import type { NamespacedApiHandlers } from '@aztec/foundation/json-rpc/server';
9
9
  import type { LogFn } from '@aztec/foundation/log';
@@ -117,7 +117,7 @@ export async function startNode(
117
117
  }
118
118
 
119
119
  const telemetryConfig = extractRelevantOptions<TelemetryClientConfig>(options, telemetryClientConfigMappings, 'tel');
120
- const telemetry = initTelemetryClient(telemetryConfig);
120
+ const telemetry = await initTelemetryClient(telemetryConfig);
121
121
 
122
122
  // Create and start Aztec Node
123
123
  const node = await createAztecNode(nodeConfig, { telemetry }, { prefilledPublicData });
@@ -25,7 +25,7 @@ export async function startP2PBootstrap(
25
25
  userLog(`Starting P2P bootstrap node with config: ${jsonStringify(safeConfig)}`);
26
26
 
27
27
  const telemetryConfig = extractRelevantOptions<TelemetryClientConfig>(options, telemetryClientConfigMappings, 'tel');
28
- const telemetryClient = initTelemetryClient(telemetryConfig);
28
+ const telemetryClient = await initTelemetryClient(telemetryConfig);
29
29
 
30
30
  const store = await createStore('p2p-bootstrap', 1, config, createLogger('p2p:bootstrap:store'));
31
31
  const node = new BootstrapNode(store, telemetryClient);
@@ -53,20 +53,12 @@ export async function startProverAgent(
53
53
  );
54
54
  const broker = createProvingJobBrokerClient(config.proverBrokerUrl, getVersions(), fetch);
55
55
 
56
- const telemetry = initTelemetryClient(extractRelevantOptions(options, telemetryClientConfigMappings, 'tel'));
56
+ const telemetry = await initTelemetryClient(extractRelevantOptions(options, telemetryClientConfigMappings, 'tel'));
57
57
  const prover = await buildServerCircuitProver(config, telemetry);
58
58
  const proofStore = new InlineProofStore();
59
59
  const agents = times(
60
60
  config.proverAgentCount,
61
- () =>
62
- new ProvingAgent(
63
- broker,
64
- proofStore,
65
- prover,
66
- config.proverAgentProofTypes,
67
- config.proverAgentPollIntervalMs,
68
- telemetry,
69
- ),
61
+ () => new ProvingAgent(broker, proofStore, prover, config.proverAgentProofTypes, config.proverAgentPollIntervalMs),
70
62
  );
71
63
 
72
64
  // expose all agents as individual services
@@ -1,5 +1,5 @@
1
1
  import { getL1Config } from '@aztec/cli/config';
2
- import { getPublicClient } from '@aztec/ethereum';
2
+ import { getPublicClient } from '@aztec/ethereum/client';
3
3
  import type { NamespacedApiHandlers } from '@aztec/foundation/json-rpc/server';
4
4
  import type { LogFn } from '@aztec/foundation/log';
5
5
  import {
@@ -45,7 +45,7 @@ export async function startProverBroker(
45
45
  config.l1Contracts = addresses;
46
46
  config.rollupVersion = rollupConfig.rollupVersion;
47
47
 
48
- const client = initTelemetryClient(getTelemetryClientConfig());
48
+ const client = await initTelemetryClient(getTelemetryClientConfig());
49
49
  const broker = await createAndStartProvingBroker(config, client);
50
50
 
51
51
  if (options.autoUpdate !== 'disabled' && options.autoUpdateUrl) {
@@ -2,7 +2,7 @@ import { getInitialTestAccountsData } from '@aztec/accounts/testing';
2
2
  import { Fr } from '@aztec/aztec.js/fields';
3
3
  import { getSponsoredFPCAddress } from '@aztec/cli/cli-utils';
4
4
  import { getL1Config } from '@aztec/cli/config';
5
- import { getPublicClient } from '@aztec/ethereum';
5
+ import { getPublicClient } from '@aztec/ethereum/client';
6
6
  import type { NamespacedApiHandlers } from '@aztec/foundation/json-rpc/server';
7
7
  import { Agent, makeUndiciFetch } from '@aztec/foundation/json-rpc/undici';
8
8
  import type { LogFn } from '@aztec/foundation/log';
@@ -67,7 +67,7 @@ export async function startProverNode(
67
67
  );
68
68
  }
69
69
 
70
- const telemetry = initTelemetryClient(extractRelevantOptions(options, telemetryClientConfigMappings, 'tel'));
70
+ const telemetry = await initTelemetryClient(extractRelevantOptions(options, telemetryClientConfigMappings, 'tel'));
71
71
 
72
72
  let broker: ProvingJobBroker;
73
73
  if (proverConfig.proverBrokerUrl) {
package/src/cli/util.ts CHANGED
@@ -1,14 +1,13 @@
1
1
  import type { AztecNodeConfig } from '@aztec/aztec-node';
2
- import { EthAddress } from '@aztec/aztec.js/addresses';
3
- import { Fr } from '@aztec/aztec.js/fields';
4
- import { AccountManager } from '@aztec/aztec.js/wallet';
5
- import type { ViemClient } from '@aztec/ethereum';
2
+ import type { AccountManager } from '@aztec/aztec.js/wallet';
3
+ import type { ViemClient } from '@aztec/ethereum/types';
6
4
  import type { ConfigMappingsType } from '@aztec/foundation/config';
5
+ import { Fr } from '@aztec/foundation/curves/bn254';
6
+ import { EthAddress } from '@aztec/foundation/eth-address';
7
7
  import { type LogFn, createLogger } from '@aztec/foundation/log';
8
8
  import type { SharedNodeConfig } from '@aztec/node-lib/config';
9
9
  import type { ProverConfig } from '@aztec/stdlib/interfaces/server';
10
- import { UpdateChecker } from '@aztec/stdlib/update-checker';
11
- import { getTelemetryClient } from '@aztec/telemetry-client';
10
+ import { getTelemetryClient } from '@aztec/telemetry-client/start';
12
11
  import type { TestWallet } from '@aztec/test-wallet/server';
13
12
 
14
13
  import chalk from 'chalk';
@@ -37,7 +36,7 @@ export function shutdown(logFn: LogFn, exitCode: ExitCode, cb?: Array<() => Prom
37
36
 
38
37
  logFn('Shutting down...', { exitCode });
39
38
  if (cb) {
40
- shutdownPromise = Promise.allSettled(cb).then(() => process.exit(exitCode));
39
+ shutdownPromise = Promise.allSettled(cb.map(fn => fn())).then(() => process.exit(exitCode));
41
40
  } else {
42
41
  // synchronously shuts down the process
43
42
  // no need to set shutdownPromise on this branch of the if statement because no more code will be executed
@@ -312,6 +311,7 @@ export async function setupUpdateMonitor(
312
311
  updateNodeConfig?: (config: object) => Promise<void>,
313
312
  ) {
314
313
  const logger = createLogger('update-check');
314
+ const { UpdateChecker } = await import('@aztec/stdlib/update-checker');
315
315
  const checker = await UpdateChecker.new({
316
316
  baseURL: updatesLocation,
317
317
  publicClient,
@@ -32,14 +32,12 @@ async function main() {
32
32
  logger.info(`Fetched Alice and Bob accounts: ${alice.toString()}, ${bob.toString()}`);
33
33
 
34
34
  logger.info('Deploying Token...');
35
- const token = await TokenContract.deploy(wallet, alice, 'TokenName', 'TokenSymbol', 18)
36
- .send({ from: alice })
37
- .deployed();
35
+ const token = await TokenContract.deploy(wallet, alice, 'TokenName', 'TokenSymbol', 18).send({ from: alice });
38
36
  logger.info('Token deployed');
39
37
 
40
38
  // Mint tokens to Alice
41
39
  logger.info(`Minting ${ALICE_MINT_BALANCE} more coins to Alice...`);
42
- await token.methods.mint_to_private(alice, ALICE_MINT_BALANCE).send({ from: alice }).wait();
40
+ await token.methods.mint_to_private(alice, ALICE_MINT_BALANCE).send({ from: alice });
43
41
 
44
42
  logger.info(`${ALICE_MINT_BALANCE} tokens were successfully minted by Alice and transferred to private`);
45
43
 
@@ -48,7 +46,7 @@ async function main() {
48
46
 
49
47
  // We will now transfer tokens from Alice to Bob
50
48
  logger.info(`Transferring ${TRANSFER_AMOUNT} tokens from Alice to Bob...`);
51
- await token.methods.transfer(bob, TRANSFER_AMOUNT).send({ from: alice }).wait();
49
+ await token.methods.transfer(bob, TRANSFER_AMOUNT).send({ from: alice });
52
50
 
53
51
  // Check the new balances
54
52
  const aliceBalance = await token.methods.balance_of_private(alice).simulate({ from: alice });
@@ -1,5 +1,5 @@
1
1
  import { EthAddress } from '@aztec/aztec.js/addresses';
2
- import type { ExtendedViemWalletClient } from '@aztec/ethereum';
2
+ import type { ExtendedViemWalletClient } from '@aztec/ethereum/types';
3
3
  import { jsonStringify } from '@aztec/foundation/json-rpc';
4
4
 
5
5
  import type { Abi, Narrow } from 'abitype';
@@ -1,6 +1,6 @@
1
1
  import { type InitialAccountData, getInitialTestAccountsData } from '@aztec/accounts/testing';
2
2
  import type { Wallet } from '@aztec/aztec.js/wallet';
3
- import { Fr } from '@aztec/foundation/fields';
3
+ import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import type { LogFn } from '@aztec/foundation/log';
5
5
  import { FPCContract } from '@aztec/noir-contracts.js/FPC';
6
6
  import { TokenContract } from '@aztec/noir-contracts.js/Token';
@@ -49,12 +49,16 @@ export async function setupBananaFPC(initialAccounts: InitialAccountData[], wall
49
49
  const bananaCoinAddress = await getBananaCoinAddress(initialAccounts);
50
50
  const admin = getBananaAdmin(initialAccounts);
51
51
  const [bananaCoin, fpc] = await Promise.all([
52
- TokenContract.deploy(wallet, admin, bananaCoinArgs.name, bananaCoinArgs.symbol, bananaCoinArgs.decimal)
53
- .send({ from: admin, contractAddressSalt: BANANA_COIN_SALT, universalDeploy: true })
54
- .deployed(),
55
- FPCContract.deploy(wallet, bananaCoinAddress, admin)
56
- .send({ from: admin, contractAddressSalt: BANANA_FPC_SALT, universalDeploy: true })
57
- .deployed(),
52
+ TokenContract.deploy(wallet, admin, bananaCoinArgs.name, bananaCoinArgs.symbol, bananaCoinArgs.decimal).send({
53
+ from: admin,
54
+ contractAddressSalt: BANANA_COIN_SALT,
55
+ universalDeploy: true,
56
+ }),
57
+ FPCContract.deploy(wallet, bananaCoinAddress, admin).send({
58
+ from: admin,
59
+ contractAddressSalt: BANANA_FPC_SALT,
60
+ universalDeploy: true,
61
+ }),
58
62
  ]);
59
63
 
60
64
  log(`BananaCoin: ${bananaCoin.address}`);