Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,9 @@ checkout: &checkout
git fetch --depth 50 --filter=blob:none origin $CIRCLE_SHA1
git checkout FETCH_HEAD
# Initialize submodules recursively
git submodule update --init --recursive build-system yarn-project/foundation
git submodule update --init --recursive circuits build-system yarn-project/foundation
# We have build problems with symlinks in yarn-project. Resolve them.
rm yarn-project/circuits.js && cp -r circuits/ts yarn-project/circuits.js

# Called setup_env to setup a bunch of global variables used throughout the rest of the build process.
# It takes the required CCI environment variables as inputs, and gives them normalised names for the rest of
Expand Down
3 changes: 2 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -124,5 +124,6 @@
},
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
}
},
"cmake.sourceDirectory": "${workspaceFolder}/barretenberg/cpp"
}
8 changes: 4 additions & 4 deletions bootstrap.sh
Original file line number Diff line number Diff line change
Expand Up @@ -41,13 +41,13 @@ yarn install --immutable
cd ..

# make sure to run yarn install from foundation, has its own yarn.lock
pushd yarn-project/foundation >/dev/null
yarn install
popd >/dev/null
cd yarn-project/foundation
yarn install --immutable
cd ../..

# We only bootstrap projects that produce artefacts needed for running end-to-end tests.
PROJECTS=(
# "yarn-project/foundation:yarn build"
"yarn-project/foundation:yarn build"
"yarn-project/ethereum.js:yarn build"
"yarn-project/merkle-tree:yarn build"
"yarn-project/archiver:yarn build"
Expand Down
41 changes: 30 additions & 11 deletions build_manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@
"projectDir": "yarn-project/archiver",
"dockerfile": "archiver/Dockerfile",
"rebuildPatterns": ["^yarn-project/archiver/"],
"dependencies": ["yarn-project-base", "ethereum.js"]
"dependencies": ["yarn-project-base", "ethereum.js", "l1-contracts"]
},
"aztec-cli": {
"buildDir": "yarn-project",
Expand All @@ -59,13 +59,6 @@
"rebuildPatterns": ["^yarn-project/aztec-cli/"],
"dependencies": ["aztec.js"]
},
"aztec-node": {
"buildDir": "yarn-project",
"projectDir": "yarn-project/aztec-node",
"dockerfile": "aztec-node/Dockerfile",
"rebuildPatterns": ["^yarn-project/aztec-node/"],
"dependencies": ["foundation", "p2p", "world-state", "ethereum.js"]
},
"aztec-rpc": {
"buildDir": "yarn-project",
"projectDir": "yarn-project/aztec-rpc",
Expand Down Expand Up @@ -134,7 +127,7 @@
"projectDir": "yarn-project/p2p",
"dockerfile": "p2p/Dockerfile",
"rebuildPatterns": ["^yarn-project/p2p/"],
"dependencies": ["yarn-project-base", "archiver"]
"dependencies": ["yarn-project-base", "archiver", "foundation"]
},
"prover-client": {
"buildDir": "yarn-project",
Expand All @@ -143,18 +136,44 @@
"rebuildPatterns": ["^yarn-project/prover-client/"],
"dependencies": ["yarn-project-base"]
},
"aztec-node": {
"buildDir": "yarn-project",
"projectDir": "yarn-project/aztec-node",
"dockerfile": "aztec-node/Dockerfile",
"rebuildPatterns": ["^yarn-project/aztec-node/"],
"dependencies": [
"yarn-project-base",
"archiver",
"world-state",
"p2p",
"sequencer-client",
"ethereum.js",
"circuits.js"
]
},
"sequencer-client": {
"buildDir": "yarn-project",
"projectDir": "yarn-project/sequencer-client",
"dockerfile": "sequencer-client/Dockerfile",
"rebuildPatterns": ["^yarn-project/sequencer-client/"],
"dependencies": ["yarn-project-base"]
"dependencies": [
"yarn-project-base",
"world-state",
"foundation",
"p2p",
"archiver"
]
},
"world-state": {
"buildDir": "yarn-project",
"projectDir": "yarn-project/world-state",
"dockerfile": "world-state/Dockerfile",
"rebuildPatterns": ["^yarn-project/world-state/"],
"dependencies": ["yarn-project-base", "merkle-tree"]
"dependencies": [
"yarn-project-base",
"merkle-tree",
"archiver",
"foundation"
]
}
}
2 changes: 1 addition & 1 deletion circuits
Submodule circuits updated 651 files
6 changes: 6 additions & 0 deletions yarn-project/.yalc/@aztec/wasm/.eslintrc.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
require('@rushstack/eslint-patch/modern-module-resolution');

module.exports = {
extends: ['@aztec/eslint-config'],
parserOptions: { tsconfigRootDir: __dirname },
};
1 change: 1 addition & 0 deletions yarn-project/.yalc/@aztec/wasm/.tsbuildinfo

Large diffs are not rendered by default.

14 changes: 14 additions & 0 deletions yarn-project/.yalc/@aztec/wasm/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
FROM 278380418400.dkr.ecr.eu-west-2.amazonaws.com/yarn-project-base AS builder

COPY wasm wasm
WORKDIR /usr/src/yarn-project/wasm
RUN yarn build && yarn formatting && yarn test

# Prune dev dependencies. See comment in base image.
RUN yarn cache clean
RUN yarn workspaces focus --production > /dev/null

FROM alpine:latest
COPY --from=builder /usr/src/yarn-project/wasm /usr/src/yarn-project/wasm
WORKDIR /usr/src/yarn-project/wasm
ENTRYPOINT ["yarn"]
6 changes: 6 additions & 0 deletions yarn-project/.yalc/@aztec/wasm/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# wasm

Functionality to:

1. Call WebAssembly functions
2. Create asynchronous workers that host webassembly.
8 changes: 8 additions & 0 deletions yarn-project/.yalc/@aztec/wasm/dest/index.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
export { WebDataStore } from './worker/browser/index.js';
export { NodeDataStore } from './worker/node/index.js';
export { WasmWorker, WorkerPool } from './worker/index.js';
export { WasmModule } from './wasm/index.js';
export { AsyncCallState, AsyncFnState } from './wasm/index.js';
export { DispatchMsg, WorkerListener, TransportServer, NodeListener } from './transport/index.js';
export { Transfer, isTransferDescriptor } from './transport/interface/transferable.js';
//# sourceMappingURL=index.d.ts.map
1 change: 1 addition & 0 deletions yarn-project/.yalc/@aztec/wasm/dest/index.d.ts.map

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions yarn-project/.yalc/@aztec/wasm/dest/index.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

46 changes: 46 additions & 0 deletions yarn-project/.yalc/@aztec/wasm/dest/memory_fifo.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
/**
* A simple fifo queue. It can grow unbounded. It can have multiple producers and consumers.
* Putting an item onto the queue always succeeds, unless either end() or cancel() has been called in which case
* the item being pushed is simply discarded.
*/
export declare class MemoryFifo<T> {
private waiting;
private items;
private flushing;
/**
* Length of queue.
* @returns integer.
*/
length(): number;
/**
* Returns next item within the queue, or blocks until and item has been put into the queue.
* If given a timeout, the promise will reject if no item is received after `timeout` seconds.
* If the queue is flushing, `null` is returned.
* @param timeout - In seconds.
* @returns Promise of result.
*/
get(timeout?: number): Promise<T | null>;
/**
* Put an item onto back of the queue.
* @param item - The item to enqueue.
*/
put(item: T): void;
/**
* Once ended, no further items are added to queue. Consumers will consume remaining items within the queue.
* The queue is not reusable after calling `end()`.
* Any consumers waiting for an item receive null.
*/
end(): void;
/**
* Once cancelled, all items are discarded from the queue, and no further items are added to the queue.
* The queue is not reusable after calling `cancel()`.
* Any consumers waiting for an item receive null.
*/
cancel(): void;
/**
* Helper method that can be used to continously consume and process items on the queue.
* @param handler - The item handler function.
*/
process(handler: (item: T) => Promise<void>): Promise<void>;
}
//# sourceMappingURL=memory_fifo.d.ts.map
1 change: 1 addition & 0 deletions yarn-project/.yalc/@aztec/wasm/dest/memory_fifo.d.ts.map

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

101 changes: 101 additions & 0 deletions yarn-project/.yalc/@aztec/wasm/dest/memory_fifo.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
export * from './worker_connector.js';
export * from './worker_listener.js';
export * from './shared_worker_connector.js';
export * from './shared_worker_listener.js';
//# sourceMappingURL=index.d.ts.map

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
import { Socket } from '../interface/socket.js';
/**
* An implementation of a TransportSocket using MessagePorts.
*/
export declare class MessagePortSocket implements Socket {
private port;
/**
* Create a MessagePortSocket.
* @param port - MessagePort object to wrap.
*/
constructor(port: MessagePort);
/**
* Send a message over our message port.
* @param msg - The message.
* @param transfer - Objects to transfer ownership of.
*/
send(msg: any, transfer?: Transferable[]): Promise<void>;
/**
* Add a message handler.
* @param cb - The handler.
*/
registerHandler(cb: (msg: any) => any): void;
/**
* Close this message port.
*/
close(): void;
}
//# sourceMappingURL=message_port_socket.d.ts.map

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading