Skip to content
Open
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
19 changes: 19 additions & 0 deletions .github/release-please/config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"bootstrap-sha": "6cc83584123585f9ecaf81d89d605b95432c84d1",
"bump-minor-pre-major": true,
"bump-patch-for-minor-pre-major": true,
"include-component-in-tag": false,
"release-type": "simple",
"packages": {
".": {
"component": "zksync-airbender",
"extra-files": [
{
"type": "toml",
"path": "Cargo.toml",
"jsonpath": "$.workspace.package.version"
}
]
}
}
}
3 changes: 3 additions & 0 deletions .github/release-please/manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
".": "0.4.5"
}
146 changes: 73 additions & 73 deletions .github/workflows/ci.yml

Large diffs are not rendered by default.

47 changes: 47 additions & 0 deletions .github/workflows/publish-crates.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Publish crates

permissions:
contents: write

# Manual workflow to publish crates to crates.io
# can be used in case of failed release-please workflow
# to release crates after a bugfix

on:
workflow_dispatch:
inputs:
run-build:
type: boolean
description: 'Build the workspace before release.'
required: false
default: true
run-tests:
type: boolean
description: 'Run tests before release.'
required: false
default: false
org-owner:
type: string
description: 'Organization to add as owner of the crates.'
required: false
default: 'github:matter-labs:crates-io'

env:
# Use stubs for CUDA during publishing.
ZKSYNC_USE_CUDA_STUBS: 1

jobs:

publish-crates:
name: Publish to crates.io
runs-on: matterlabs-ci-runner-highdisk
steps:
- name: Publish crates
uses: matter-labs/zksync-ci-common/.github/actions/publish-crates@v1
with:
slack_webhook: ${{ secrets.SLACK_WEBHOOK_RELEASES }} # Slack webhook for notifications
cargo_registry_token: ${{ secrets.CRATES_IO_TOKEN }} # Crates.io token for publishing
org_owner: ${{ inputs.org-owner }}
run_build: ${{ inputs.run-build }}
run_tests: ${{ inputs.run-tests }}
gh_token: ${{ secrets.GITHUB_TOKEN }}
35 changes: 35 additions & 0 deletions .github/workflows/release-please.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Release-please

# Give permissions to the release-please to open, update PRs
# and commit to PRs the repository to update Cargo.lock
permissions:
contents: write
pull-requests: write
id-token: write
attestations: write
issues: write # required for release-please labels

# Run the workflow on push to the main branch or manually
on:
push:
branches:
- main
workflow_dispatch:

env:
# Use stubs for CUDA during publishing.
ZKSYNC_USE_CUDA_STUBS: 1

jobs:
# Prepare the release PR with changelog updates and create github releases
release-please:
uses: matter-labs/zksync-ci-common/.github/workflows/release-please.yaml@v1 # use v1 to get bugfixes here instead of SHA
secrets:
slack_webhook: ${{ secrets.SLACK_WEBHOOK_RELEASES }} # Slack webhook for release notifications
cargo_registry_token: ${{ secrets.CRATES_IO_TOKEN }} # Token for publishing to crates.io
gh_token: ${{ secrets.RELEASE_TOKEN }} # GitHub token for creating PRs and releases
with:
config: '.github/release-please/config.json' # Path to the configuration file
manifest: '.github/release-please/manifest.json' # Path to the manifest file
update-cargo-lock: true # Update Cargo.lock file in the release PR
publish-to-crates-io: true # Enable publishing to crates.io
67 changes: 37 additions & 30 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ default-members = [
]

[workspace.package]
version = "0.1.0"
version = "0.4.5"
edition = "2021"
authors = ["The Matter Labs Team <hello@matterlabs.dev>"]
homepage = "https://zksync.io/"
Expand All @@ -102,35 +102,42 @@ keywords = ["blockchain", "zksync", "zk", "risc-v"]
categories = ["cryptography"]

[workspace.dependencies]
field = { path = "./field", default-features = false }
blake2s_u32 = { path = "./blake2s_u32", default-features = false }
trace_holder = { path = "./trace_holder" }
worker = { path = "./worker" }
fft = { path = "./fft" }
prover = { path = "./prover", default-features = false }
cs = { path = "./cs", default-features = false }
transcript = { path = "./transcript", default-features = false }
verifier_generator = { path = "./verifier_generator" }
circuit_common = { path = "./circuit_defs/circuit_common" }
blake2_with_compression = { path = "./circuit_defs/blake2_with_compression" }
bigint_with_control = { path = "./circuit_defs/bigint_with_control" }
risc_v_cycles = { path = "./circuit_defs/risc_v_cycles" }
machine_without_signed_mul_div = { path = "./circuit_defs/machine_without_signed_mul_div" }
reduced_risc_v_machine = { path = "./circuit_defs/reduced_risc_v_machine" }
reduced_risc_v_log_23_machine = { path = "./circuit_defs/reduced_risc_v_log_23_machine" }
final_reduced_risc_v_machine = {path = "./circuit_defs/final_reduced_risc_v_machine"}
trace_and_split = { path = "./circuit_defs/trace_and_split" }
setups = { path = "./circuit_defs/setups" }
# verifier = {path = "./verifier", default-features = false}
verifier_common = { path = "./verifier_common", default-features = false }
# full_statement_verifier = { path = "./full_statement_verifier", default-features = false }
poseidon2 = { path = "./poseidon2", default-features = false }
non_determinism_source = { path = "./non_determinism_source", default-features = false }
risc_v_simulator = { path = "./risc_v_simulator", default-features = false }
execution_utils = { path = "./execution_utils", default-features = false }
witness_eval_generator = { path = "./witness_eval_generator", default-features = false }
gpu_witness_eval_generator = { path = "./gpu_witness_eval_generator" }
gpu_prover = { path = "./gpu_prover" }
field = { package = "airbender_field", version = "0.4.5", path = "./field", default-features = false }
blake2s_u32 = { package = "airbender_blake2s_u32", version = "0.4.5", path = "./blake2s_u32", default-features = false }
trace_holder = { package = "airbender_trace_holder", version = "0.4.5", path = "./trace_holder" }
worker = { package = "airbender_worker", version = "0.4.5", path = "./worker" }
fft = { package = "airbender_fft", version = "0.4.5", path = "./fft" }
prover = { package = "airbender_prover", version = "0.4.5", path = "./prover", default-features = false }
cs = { package = "airbender_cs", version = "0.4.5", path = "./cs", default-features = false }
transcript = { package = "airbender_transcript", version = "0.4.5", path = "./transcript", default-features = false }
verifier_generator = { package = "airbender_verifier_generator", version = "0.4.5", path = "./verifier_generator" }
circuit_common = { package = "airbender_circuit_common", version = "0.4.5", path = "./circuit_defs/circuit_common" }
blake2_with_compression = { package = "airbender_blake2_with_compression", version = "0.4.5", path = "./circuit_defs/blake2_with_compression" }
bigint_with_control = { package = "airbender_bigint_with_control", version = "0.4.5", path = "./circuit_defs/bigint_with_control" }
risc_v_cycles = { package = "airbender_risc_v_cycles", version = "0.4.5", path = "./circuit_defs/risc_v_cycles" }
machine_without_signed_mul_div = { package = "airbender_machine_without_signed_mul_div", version = "0.4.5", path = "./circuit_defs/machine_without_signed_mul_div" }
reduced_risc_v_machine = { package = "airbender_reduced_risc_v_machine", version = "0.4.5", path = "./circuit_defs/reduced_risc_v_machine" }
reduced_risc_v_log_23_machine = { package = "airbender_reduced_risc_v_log_23_machine", version = "0.4.5", path = "./circuit_defs/reduced_risc_v_log_23_machine" }
final_reduced_risc_v_machine = { package = "airbender_final_reduced_risc_v_machine", version = "0.4.5", path = "./circuit_defs/final_reduced_risc_v_machine"}
trace_and_split = { package = "airbender_trace_and_split", version = "0.4.5", path = "./circuit_defs/trace_and_split" }
setups = { package = "airbender_setups", version = "0.4.5", path = "./circuit_defs/setups" }
verifier_common = { package = "airbender_verifier_common", version = "0.4.5", path = "./verifier_common", default-features = false }
poseidon2 = { package = "airbender_poseidon2", version = "0.4.5", path = "./poseidon2", default-features = false }
non_determinism_source = { package = "airbender_non_determinism_source", version = "0.4.5", path = "./non_determinism_source", default-features = false }
risc_v_simulator = { package = "airbender_risc_v_simulator", version = "0.4.5", path = "./risc_v_simulator", default-features = false }
execution_utils = { package = "airbender_execution_utils", version = "0.4.5", path = "./execution_utils", default-features = false }
witness_eval_generator = { package = "airbender_witness_eval_generator", version = "0.4.5", path = "./witness_eval_generator", default-features = false }
gpu_witness_eval_generator = { package = "airbender_gpu_witness_eval_generator", version = "0.4.5", path = "./gpu_witness_eval_generator" }
gpu_prover = { package = "airbender_gpu_prover", version = "0.4.5", path = "./gpu_prover" }
blake2_with_compression_verifier = { package = "airbender_blake2_with_compression_verifier", version = "0.4.5", path = "circuit_defs/blake2_with_compression/verifier", default-features = false }
full_statement_verifier = { package = "airbender_full_statement_verifier", version = "0.4.5", path = "full_statement_verifier" }
risc_v_cycles_verifier = { package = "airbender_risc_v_cycles_verifier", version = "0.4.5", path = "circuit_defs/risc_v_cycles/verifier", default-features = false }
reduced_risc_v_machine_verifier = { package = "airbender_reduced_risc_v_machine_verifier", version = "0.4.5", path = "circuit_defs/reduced_risc_v_machine/verifier", default-features = false }
reduced_risc_v_log_23_machine_verifier = { package = "airbender_reduced_risc_v_log_23_machine_verifier", version = "0.4.5", path = "circuit_defs/reduced_risc_v_log_23_machine/verifier", default-features = false }
final_reduced_risc_v_machine_verifier = { package = "airbender_final_reduced_risc_v_machine_verifier", version = "0.4.5", path = "circuit_defs/final_reduced_risc_v_machine/verifier", default-features = false }
bigint_with_control_verifier = { package = "airbender_bigint_with_control_verifier", version = "0.4.5", path = "circuit_defs/bigint_with_control/verifier", default-features = false }
prover_examples = { package = "airbender_prover_examples", version = "0.4.5", path = "circuit_defs/prover_examples" }
cli = { package = "airbender_cli", version = "0.4.5", path = "tools/cli" }

serde = { version = "1", default-features = false, features = ["derive", "alloc"] }
clap = { version = "4.5.21", features = ["derive"] }
Expand Down
5 changes: 3 additions & 2 deletions blake2s_u32/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "blake2s_u32"
name = "airbender_blake2s_u32"
description = "ZKsync Airbender blake2s on u32 basis"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand All @@ -23,4 +24,4 @@ harness = false
[features]
blake2_with_compression = []

default = []
default = []
5 changes: 3 additions & 2 deletions circuit_defs/bigint_with_control/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "bigint_with_control"
name = "airbender_bigint_with_control"
description = "ZKsync Airbender bigint with control"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand All @@ -13,4 +14,4 @@ categories.workspace = true
prover = { workspace = true, features = ["prover"] }
verifier_generator = { workspace = true }
serde = { workspace = true }
serde_json = "*"
serde_json = "*"
3 changes: 2 additions & 1 deletion circuit_defs/bigint_with_control/verifier/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "bigint_with_control_verifier"
name = "airbender_bigint_with_control_verifier"
description = "ZKsync Airbender bigint_with_control verifier"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand Down
5 changes: 3 additions & 2 deletions circuit_defs/blake2_with_compression/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "blake2_with_compression"
name = "airbender_blake2_with_compression"
description = "ZKsync Airbender blake2s with compression"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand All @@ -13,4 +14,4 @@ categories.workspace = true
prover = { workspace = true, features = ["prover"] }
verifier_generator = { workspace = true }
serde = { workspace = true }
serde_json = "*"
serde_json = "*"
3 changes: 2 additions & 1 deletion circuit_defs/blake2_with_compression/verifier/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "blake2_with_compression_verifier"
name = "airbender_blake2_with_compression_verifier"
description = "ZKsync Airbender blake2_with_compression verifier"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand Down
5 changes: 3 additions & 2 deletions circuit_defs/circuit_common/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "circuit_common"
name = "airbender_circuit_common"
description = "ZKsync Airbender circuit common"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand All @@ -12,4 +13,4 @@ categories.workspace = true
[dependencies]
field = { workspace = true }
fft = { workspace = true }
worker = { workspace = true }
worker = { workspace = true }
5 changes: 3 additions & 2 deletions circuit_defs/final_reduced_risc_v_machine/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "final_reduced_risc_v_machine"
name = "airbender_final_reduced_risc_v_machine"
description = "ZKsync Airbender final reduced RISC-V machine"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand All @@ -14,4 +15,4 @@ prover = { workspace = true, features = ["prover"] }
verifier_generator = { workspace = true }
circuit_common = {workspace = true }
serde = { workspace = true }
serde_json = "*"
serde_json = "*"
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "final_reduced_risc_v_machine_verifier"
name = "airbender_final_reduced_risc_v_machine_verifier"
description = "ZKsync Airbender final_reduced_risc_v_machine verifier"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand Down
3 changes: 2 additions & 1 deletion circuit_defs/machine_without_signed_mul_div/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "machine_without_signed_mul_div"
name = "airbender_machine_without_signed_mul_div"
description = "ZKsync Airbender machine without signed mul/div"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "machine_without_signed_mul_div_verifier"
name = "airbender_machine_without_signed_mul_div_verifier"
description = "ZKsync Airbender machine_without_signed_mul_div verifier"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand Down
5 changes: 3 additions & 2 deletions circuit_defs/prover_examples/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "prover_examples"
name = "airbender_prover_examples"
description = "ZKsync Airbender prover examples"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand Down Expand Up @@ -40,4 +41,4 @@ timing_logs = []

default = ["timing_logs"]

gpu = ["gpu_prover", "nvtx", "cs"]
gpu = ["gpu_prover", "nvtx", "cs"]
5 changes: 3 additions & 2 deletions circuit_defs/reduced_risc_v_log_23_machine/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "reduced_risc_v_log_23_machine"
name = "airbender_reduced_risc_v_log_23_machine"
description = "ZKsync Airbender RISC-V log23 machine"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand All @@ -14,4 +15,4 @@ prover = { workspace = true, features = ["prover"] }
verifier_generator = { workspace = true }
circuit_common = {workspace = true }
serde = { workspace = true }
serde_json = "*"
serde_json = "*"
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "reduced_risc_v_log_23_machine_verifier"
name = "airbender_reduced_risc_v_log_23_machine_verifier"
description = "ZKsync Airbender reduced_risc_v_log_23_machine verifier"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand Down
5 changes: 3 additions & 2 deletions circuit_defs/reduced_risc_v_machine/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "reduced_risc_v_machine"
name = "airbender_reduced_risc_v_machine"
description = "ZKsync Airbender reduced RISC-V machine"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand All @@ -14,4 +15,4 @@ prover = { workspace = true, features = ["prover"] }
verifier_generator = { workspace = true }
circuit_common = {workspace = true }
serde = { workspace = true }
serde_json = "*"
serde_json = "*"
3 changes: 2 additions & 1 deletion circuit_defs/reduced_risc_v_machine/verifier/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "reduced_risc_v_machine_verifier"
name = "airbender_reduced_risc_v_machine_verifier"
description = "ZKsync Airbender reduced_risc_v_machine verifier"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand Down
5 changes: 3 additions & 2 deletions circuit_defs/risc_v_cycles/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "risc_v_cycles"
name = "airbender_risc_v_cycles"
description = "ZKsync Airbender RISC-V cycles"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand All @@ -14,4 +15,4 @@ prover = { workspace = true, features = ["prover"] }
verifier_generator = { workspace = true }
circuit_common = {workspace = true }
serde = { workspace = true }
serde_json = "*"
serde_json = "*"
3 changes: 2 additions & 1 deletion circuit_defs/risc_v_cycles/verifier/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "risc_v_cycles_verifier"
name = "airbender_risc_v_cycles_verifier"
description = "ZKsync Airbender risc_v_cycles verifier"
version.workspace = true
edition.workspace = true
authors.workspace = true
Expand Down
Loading
Loading