Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: Pass stdin as a ref #183

Merged
merged 1 commit into from
Aug 23, 2024
Merged

fix: Pass stdin as a ref #183

merged 1 commit into from
Aug 23, 2024

Conversation

wwared
Copy link
Contributor

@wwared wwared commented Aug 23, 2024

Fixes #181

CommitteeChangeIn is a large struct (250KB) and passing it by value is enough to cause a stack overflow since initializing the sphinx prover requires a lot of recursive calls while building the recursive verifier programs. Passing it as a reference to prove changes the layout somehow, enough for the stack overflow issue to disappear.

As a rule of thumb, large structs like that shouldn't be passed around by value and it's better to pass by reference to prevent unnecessary implicit copying, but we don't currently have a great way of checking which structs are too large. Besides, this case was only an issue due to the heavy stack usage when initializing the sphinx prover, otherwise 250KB is not that much. To put in perspective, the default stack size is 8MiB, so the struct uses about 3% of the available stack space. I don't know what kind of codegen is leading to the stack overflow happening.

EDIT: Actually, the default stack size seems to be 2MiB for newly spawned threads (and cargo test spawns a new thread I believe?), 8MiB is the default for the main thread only I think, which would explain why the 250KB struct is enough to hit the stack limit when passed by value, if this is happening in a new thread. I didn't try changing RUST_MIN_STACK but that would confirm the issue.

@wwared wwared force-pushed the fix_181 branch 2 times, most recently from cfae9ab to 43ac2cb Compare August 23, 2024 02:17
@wwared wwared marked this pull request as ready for review August 23, 2024 02:41
@wwared wwared enabled auto-merge (squash) August 23, 2024 02:45
Copy link
Contributor

@tchataigner tchataigner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks again

@wwared wwared merged commit 7c8da12 into dev Aug 23, 2024
7 of 13 checks passed
@tchataigner tchataigner deleted the fix_181 branch August 23, 2024 07:57
tchataigner pushed a commit that referenced this pull request Sep 27, 2024
tchataigner added a commit that referenced this pull request Sep 27, 2024
* chore(ethereum): Release `ethereum-v1.1.0`

* fix: Use `Box::pin` for large futures in ethereum's client binary (#177)

* chore: Add `large_futures` clippy lint to xclippy

* fix: Use `Box::pin` to heap allocate large futures

---------

Co-authored-by: wwared <[email protected]>

* refactor: Adapt to Sphinx (Refactor proof handling) (#161)

* refactor: Refactor proof handling across all components

- Update Sphinx dependencies from tag v1.0.0 to branch forward_ports_43 across all components.
- Modification of all instances of `SphinxProof` in favor of `SphinxProofWithPublicValues`.
- Inclusion of the run() method call chained after the `prove` and `execute` functions across system (enacting builder pattern).
- Removal and integration of separate `prove_plonk` and `verify_plonk` functions into main proving and verification functions using the method `.plonk()` where required.
- Direct passing of `stdin` as an argument in the `execute` function across applications.
- Update of the Rust Toolchain from "nightly-2024-07-30" to "nightly-2024-08-13" in both Aptos and Ethereum components.
- Addition of `bytes` function for supporting different proof types in the fixture-generator.
- Updating proof creation and validation in the fixture generation process with revised function calls.
- Revisions in client and server operations to support `SphinxProofWithPublicValues` and updated function calls.
- Update of `tokio` version from `"1.39.0"` to `"1.39.2"` and Hex dependency addition at version `0.4.3`.

* fix: Adapt fixture-generator to prepend vkey hash

* fix: Fix small typo

* chore: Update forge dependencies

* fix: Update Move verifier constants and vkey logic

* chore: clippy

* fix: Fix the script.move version header logic

* chore: Update inclusion fixtures

* chore: Update fixtures

* chore: Update all solidity fixtures

* feat: Update Move codebase

---------

Co-authored-by: wwared <[email protected]>
Co-authored-by: Artem Storozhuk <[email protected]>

* chore: Update dependencies (#178)

* fix: Pass stdin as a ref (#183)

Co-authored-by: wwared <[email protected]>

* chore: Remove superfluous nightly versions (#185)

* chore: Remove superfluous nightly versions

* Use `rust-toolchain.toml` version in CI

* ci: Use custom runner for `bench.yml` (#187)

* ci: Use custom runner for `bench.yml`

* Address review

* Address review

* ci: Fix cycle regression checker (#188)

* ci: Fix cycle regression checker

* Test workflow

* Prep for review

* chore: Update fixtures (#160)

Co-authored-by: tchataigner <[email protected]>

* feat: docker & k8s (#12)

* feat: docker & k8s

Signed-off-by: Thomas Chataigner <[email protected]>

* feat: wip docker

* feat: wip docker flexible lc

* feat: simplify k8s conf

* feat: refactor aptos proof server to one bin

* feat: one server bin eth + k8s aptos

* feat: ethereum client configuration

* chore: lint

* ci: revise docker publish

* refactor: base review integrated

* chore: lint

* refactor: router for proof server + health check

* refactor: ethereum health check

* refactor: probes

* refactor: multiple routes eth proof server

* refactor: fix compilation

* refactor: accept octet stream

* refactor: change handling request proof server

* refactor: all routes working

* refactor: not using serde json

* refactor: only one request

* refactor: health does not count as increment

* fix: fix middleware

* refactor: working aptos proof_server

* chore: use let-else more effectively (#197)

* refactor: replicas

---------

Signed-off-by: Thomas Chataigner <[email protected]>
Co-authored-by: François Garillot <[email protected]>

* chore: Update fixtures (#198)

Co-authored-by: tchataigner <[email protected]>

* chore: Update `ethereum` Rust version to `nightly-2024-08-29` (#199)

* refactor: lint

* chore: Update `ethereum` Rust version to `nightly-2024-08-29`

* chore: authorize too long first paragraph

---------

Co-authored-by: Thomas Chataigner <[email protected]>

* chore: Update fixtures (#203)

Co-authored-by: tchataigner <[email protected]>

* feat: Initial Pact contract (#205)

* wip: Initial pact skeleton

* chore: Add function for inclusion event processing

* chore: Add correct proof version handling

* chore: Refactoring

* chore: Add test.repl

---------

Co-authored-by: wwared <[email protected]>

* chore: Update fixtures (#206)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#208)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#212)

Co-authored-by: tchataigner <[email protected]>

* fix: ethereum lc (#214)

* fix: fix forward endpoint

* fix: fix not used update

* fix: boxed store

* chore: Update fixtures (#215)

Co-authored-by: tchataigner <[email protected]>

* feat: fixture raw proof (#216)

* feat: revamp fixture generate

* feat: generate fixtures

* refactor: add fixture test

* fix: remove proof version check

* chore: Update fixtures (#218)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#222)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#223)

Co-authored-by: tchataigner <[email protected]>

* chore: Update `ethereum` Rust version to `nightly-2024-09-13` (#224)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#229)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#230)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#232)

Co-authored-by: tchataigner <[email protected]>

* feat: helm chart (#228)

* feat: wip helm

* refactor: remove client from dockerfile

* feat: helm icon

* refactor: refactor helm & introduce eksctl conf

* refactor: helm with node selector

* refactor: external IP for cluster

* refactor: use published docker image

* refactor: fix command

* refactor: remove secondary dep

* refactor: proper comp config dockerfile

* refactor: remove not needed file

* refactor: always pull image

* refactor: pull image for docker compose

* refactor: docker compose file

* refactor: proper command

* refactor: liveness & readiness

* refactor: fix middleware

* refactor: pas s rust flags

* fix: fix stack overflow

* fix: stack limit as str & change build target

* refactor: lint

* fix: docker file

* refactor: change target for build

* refactor: idle time limit load balancer + docs

* refactor: lint

* docs: review typo fix

Co-authored-by: Samuel Burnham <[email protected]>

* refactor: integrate review

---------

Co-authored-by: Samuel Burnham <[email protected]>

* chore: Update fixtures (#235)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#238)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#242)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#245)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#248)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#252)

Co-authored-by: tchataigner <[email protected]>

* feat: eth cleanup (#254)

* refactor: makefile 32xl

* docs: update benchamrks + fixed a few commands

* docs: refactor linebreaks

* refactor: latest sphinx + compile programs

* refactor: argumentcomputer

* refactor: xclippy

* fix: deny (#250)

* refactor: fix aptos deps

* ci: Refactor release workflow (#236)

* ci: Refactor release workflow

* Support manual release on `workflow_dispatch`

* Fix token

* refactor: fix fixture generator

* ci: Fix `release-pr.yml` version (#255)

* refactor: deny file

* update licenses (#142)

* update licenses

* Update Rust licenses

* Remove MIT

* Update license

* Update Ethereum license

* rename Yatima -> Argument

* chore: modify forgotten file

---------

Co-authored-by: Samuel Burnham <[email protected]>
Co-authored-by: François Garillot <[email protected]>

---------

Signed-off-by: Thomas Chataigner <[email protected]>
Co-authored-by: tchataigner <[email protected]>
Co-authored-by: wwared <[email protected]>
Co-authored-by: wwared <[email protected]>
Co-authored-by: François Garillot <[email protected]>
Co-authored-by: Artem Storozhuk <[email protected]>
Co-authored-by: Samuel Burnham <[email protected]>
Co-authored-by: tchataigner <[email protected]>
Co-authored-by: argument-ci-bot[bot] <178725181+argument-ci-bot[bot]@users.noreply.github.com>
Co-authored-by: John Chandler Burnham <[email protected]>
Co-authored-by: François Garillot <[email protected]>
tchataigner added a commit that referenced this pull request Sep 28, 2024
* chore(ethereum): Release `ethereum-v1.1.0`

* fix: Use `Box::pin` for large futures in ethereum's client binary (#177)

* chore: Add `large_futures` clippy lint to xclippy

* fix: Use `Box::pin` to heap allocate large futures

---------

Co-authored-by: wwared <[email protected]>

* refactor: Adapt to Sphinx (Refactor proof handling) (#161)

* refactor: Refactor proof handling across all components

- Update Sphinx dependencies from tag v1.0.0 to branch forward_ports_43 across all components.
- Modification of all instances of `SphinxProof` in favor of `SphinxProofWithPublicValues`.
- Inclusion of the run() method call chained after the `prove` and `execute` functions across system (enacting builder pattern).
- Removal and integration of separate `prove_plonk` and `verify_plonk` functions into main proving and verification functions using the method `.plonk()` where required.
- Direct passing of `stdin` as an argument in the `execute` function across applications.
- Update of the Rust Toolchain from "nightly-2024-07-30" to "nightly-2024-08-13" in both Aptos and Ethereum components.
- Addition of `bytes` function for supporting different proof types in the fixture-generator.
- Updating proof creation and validation in the fixture generation process with revised function calls.
- Revisions in client and server operations to support `SphinxProofWithPublicValues` and updated function calls.
- Update of `tokio` version from `"1.39.0"` to `"1.39.2"` and Hex dependency addition at version `0.4.3`.

* fix: Adapt fixture-generator to prepend vkey hash

* fix: Fix small typo

* chore: Update forge dependencies

* fix: Update Move verifier constants and vkey logic

* chore: clippy

* fix: Fix the script.move version header logic

* chore: Update inclusion fixtures

* chore: Update fixtures

* chore: Update all solidity fixtures

* feat: Update Move codebase

---------

Co-authored-by: wwared <[email protected]>
Co-authored-by: Artem Storozhuk <[email protected]>

* chore: Update dependencies (#178)

* fix: Pass stdin as a ref (#183)

Co-authored-by: wwared <[email protected]>

* chore: Remove superfluous nightly versions (#185)

* chore: Remove superfluous nightly versions

* Use `rust-toolchain.toml` version in CI

* ci: Use custom runner for `bench.yml` (#187)

* ci: Use custom runner for `bench.yml`

* Address review

* Address review

* ci: Fix cycle regression checker (#188)

* ci: Fix cycle regression checker

* Test workflow

* Prep for review

* chore: Update fixtures (#160)

Co-authored-by: tchataigner <[email protected]>

* feat: docker & k8s (#12)

* feat: docker & k8s

Signed-off-by: Thomas Chataigner <[email protected]>

* feat: wip docker

* feat: wip docker flexible lc

* feat: simplify k8s conf

* feat: refactor aptos proof server to one bin

* feat: one server bin eth + k8s aptos

* feat: ethereum client configuration

* chore: lint

* ci: revise docker publish

* refactor: base review integrated

* chore: lint

* refactor: router for proof server + health check

* refactor: ethereum health check

* refactor: probes

* refactor: multiple routes eth proof server

* refactor: fix compilation

* refactor: accept octet stream

* refactor: change handling request proof server

* refactor: all routes working

* refactor: not using serde json

* refactor: only one request

* refactor: health does not count as increment

* fix: fix middleware

* refactor: working aptos proof_server

* chore: use let-else more effectively (#197)

* refactor: replicas

---------

Signed-off-by: Thomas Chataigner <[email protected]>
Co-authored-by: François Garillot <[email protected]>

* chore: Update fixtures (#198)

Co-authored-by: tchataigner <[email protected]>

* chore: Update `ethereum` Rust version to `nightly-2024-08-29` (#199)

* refactor: lint

* chore: Update `ethereum` Rust version to `nightly-2024-08-29`

* chore: authorize too long first paragraph

---------

Co-authored-by: Thomas Chataigner <[email protected]>

* chore: Update fixtures (#203)

Co-authored-by: tchataigner <[email protected]>

* feat: Initial Pact contract (#205)

* wip: Initial pact skeleton

* chore: Add function for inclusion event processing

* chore: Add correct proof version handling

* chore: Refactoring

* chore: Add test.repl

---------

Co-authored-by: wwared <[email protected]>

* chore: Update fixtures (#206)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#208)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#212)

Co-authored-by: tchataigner <[email protected]>

* fix: ethereum lc (#214)

* fix: fix forward endpoint

* fix: fix not used update

* fix: boxed store

* chore: Update fixtures (#215)

Co-authored-by: tchataigner <[email protected]>

* feat: fixture raw proof (#216)

* feat: revamp fixture generate

* feat: generate fixtures

* refactor: add fixture test

* fix: remove proof version check

* chore: Update fixtures (#218)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#222)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#223)

Co-authored-by: tchataigner <[email protected]>

* chore: Update `ethereum` Rust version to `nightly-2024-09-13` (#224)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#229)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#230)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#232)

Co-authored-by: tchataigner <[email protected]>

* feat: helm chart (#228)

* feat: wip helm

* refactor: remove client from dockerfile

* feat: helm icon

* refactor: refactor helm & introduce eksctl conf

* refactor: helm with node selector

* refactor: external IP for cluster

* refactor: use published docker image

* refactor: fix command

* refactor: remove secondary dep

* refactor: proper comp config dockerfile

* refactor: remove not needed file

* refactor: always pull image

* refactor: pull image for docker compose

* refactor: docker compose file

* refactor: proper command

* refactor: liveness & readiness

* refactor: fix middleware

* refactor: pas s rust flags

* fix: fix stack overflow

* fix: stack limit as str & change build target

* refactor: lint

* fix: docker file

* refactor: change target for build

* refactor: idle time limit load balancer + docs

* refactor: lint

* docs: review typo fix

Co-authored-by: Samuel Burnham <[email protected]>

* refactor: integrate review

---------

Co-authored-by: Samuel Burnham <[email protected]>

* chore: Update fixtures (#235)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#238)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#242)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#245)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#248)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#252)

Co-authored-by: tchataigner <[email protected]>

* feat: eth cleanup (#254)

* refactor: makefile 32xl

* docs: update benchamrks + fixed a few commands

* docs: refactor linebreaks

* refactor: latest sphinx + compile programs

* refactor: argumentcomputer

* refactor: xclippy

* fix: deny (#250)

* refactor: fix aptos deps

* ci: Refactor release workflow (#236)

* ci: Refactor release workflow

* Support manual release on `workflow_dispatch`

* Fix token

* refactor: fix fixture generator

* ci: Fix `release-pr.yml` version (#255)

* refactor: deny file

* update licenses (#142)

* update licenses

* Update Rust licenses

* Remove MIT

* Update license

* Update Ethereum license

* rename Yatima -> Argument

* chore: modify forgotten file

---------

Co-authored-by: Samuel Burnham <[email protected]>
Co-authored-by: François Garillot <[email protected]>

---------

Signed-off-by: Thomas Chataigner <[email protected]>
Co-authored-by: tchataigner <[email protected]>
Co-authored-by: wwared <[email protected]>
Co-authored-by: wwared <[email protected]>
Co-authored-by: François Garillot <[email protected]>
Co-authored-by: Artem Storozhuk <[email protected]>
Co-authored-by: Samuel Burnham <[email protected]>
Co-authored-by: tchataigner <[email protected]>
Co-authored-by: argument-ci-bot[bot] <178725181+argument-ci-bot[bot]@users.noreply.github.com>
Co-authored-by: John Chandler Burnham <[email protected]>
Co-authored-by: François Garillot <[email protected]>
tchataigner added a commit that referenced this pull request Sep 28, 2024
* chore(ethereum): Release `ethereum-v1.1.0`

* fix: Use `Box::pin` for large futures in ethereum's client binary (#177)

* chore: Add `large_futures` clippy lint to xclippy

* fix: Use `Box::pin` to heap allocate large futures

---------

Co-authored-by: wwared <[email protected]>

* refactor: Adapt to Sphinx (Refactor proof handling) (#161)

* refactor: Refactor proof handling across all components

- Update Sphinx dependencies from tag v1.0.0 to branch forward_ports_43 across all components.
- Modification of all instances of `SphinxProof` in favor of `SphinxProofWithPublicValues`.
- Inclusion of the run() method call chained after the `prove` and `execute` functions across system (enacting builder pattern).
- Removal and integration of separate `prove_plonk` and `verify_plonk` functions into main proving and verification functions using the method `.plonk()` where required.
- Direct passing of `stdin` as an argument in the `execute` function across applications.
- Update of the Rust Toolchain from "nightly-2024-07-30" to "nightly-2024-08-13" in both Aptos and Ethereum components.
- Addition of `bytes` function for supporting different proof types in the fixture-generator.
- Updating proof creation and validation in the fixture generation process with revised function calls.
- Revisions in client and server operations to support `SphinxProofWithPublicValues` and updated function calls.
- Update of `tokio` version from `"1.39.0"` to `"1.39.2"` and Hex dependency addition at version `0.4.3`.

* fix: Adapt fixture-generator to prepend vkey hash

* fix: Fix small typo

* chore: Update forge dependencies

* fix: Update Move verifier constants and vkey logic

* chore: clippy

* fix: Fix the script.move version header logic

* chore: Update inclusion fixtures

* chore: Update fixtures

* chore: Update all solidity fixtures

* feat: Update Move codebase

---------

Co-authored-by: wwared <[email protected]>
Co-authored-by: Artem Storozhuk <[email protected]>

* chore: Update dependencies (#178)

* fix: Pass stdin as a ref (#183)

Co-authored-by: wwared <[email protected]>

* chore: Remove superfluous nightly versions (#185)

* chore: Remove superfluous nightly versions

* Use `rust-toolchain.toml` version in CI

* ci: Use custom runner for `bench.yml` (#187)

* ci: Use custom runner for `bench.yml`

* Address review

* Address review

* ci: Fix cycle regression checker (#188)

* ci: Fix cycle regression checker

* Test workflow

* Prep for review

* chore: Update fixtures (#160)

Co-authored-by: tchataigner <[email protected]>

* feat: docker & k8s (#12)

* feat: docker & k8s

Signed-off-by: Thomas Chataigner <[email protected]>

* feat: wip docker

* feat: wip docker flexible lc

* feat: simplify k8s conf

* feat: refactor aptos proof server to one bin

* feat: one server bin eth + k8s aptos

* feat: ethereum client configuration

* chore: lint

* ci: revise docker publish

* refactor: base review integrated

* chore: lint

* refactor: router for proof server + health check

* refactor: ethereum health check

* refactor: probes

* refactor: multiple routes eth proof server

* refactor: fix compilation

* refactor: accept octet stream

* refactor: change handling request proof server

* refactor: all routes working

* refactor: not using serde json

* refactor: only one request

* refactor: health does not count as increment

* fix: fix middleware

* refactor: working aptos proof_server

* chore: use let-else more effectively (#197)

* refactor: replicas

---------

Signed-off-by: Thomas Chataigner <[email protected]>
Co-authored-by: François Garillot <[email protected]>

* chore: Update fixtures (#198)

Co-authored-by: tchataigner <[email protected]>

* chore: Update `ethereum` Rust version to `nightly-2024-08-29` (#199)

* refactor: lint

* chore: Update `ethereum` Rust version to `nightly-2024-08-29`

* chore: authorize too long first paragraph

---------

Co-authored-by: Thomas Chataigner <[email protected]>

* chore: Update fixtures (#203)

Co-authored-by: tchataigner <[email protected]>

* feat: Initial Pact contract (#205)

* wip: Initial pact skeleton

* chore: Add function for inclusion event processing

* chore: Add correct proof version handling

* chore: Refactoring

* chore: Add test.repl

---------

Co-authored-by: wwared <[email protected]>

* chore: Update fixtures (#206)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#208)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#212)

Co-authored-by: tchataigner <[email protected]>

* fix: ethereum lc (#214)

* fix: fix forward endpoint

* fix: fix not used update

* fix: boxed store

* chore: Update fixtures (#215)

Co-authored-by: tchataigner <[email protected]>

* feat: fixture raw proof (#216)

* feat: revamp fixture generate

* feat: generate fixtures

* refactor: add fixture test

* fix: remove proof version check

* chore: Update fixtures (#218)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#222)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#223)

Co-authored-by: tchataigner <[email protected]>

* chore: Update `ethereum` Rust version to `nightly-2024-09-13` (#224)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#229)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#230)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#232)

Co-authored-by: tchataigner <[email protected]>

* feat: helm chart (#228)

* feat: wip helm

* refactor: remove client from dockerfile

* feat: helm icon

* refactor: refactor helm & introduce eksctl conf

* refactor: helm with node selector

* refactor: external IP for cluster

* refactor: use published docker image

* refactor: fix command

* refactor: remove secondary dep

* refactor: proper comp config dockerfile

* refactor: remove not needed file

* refactor: always pull image

* refactor: pull image for docker compose

* refactor: docker compose file

* refactor: proper command

* refactor: liveness & readiness

* refactor: fix middleware

* refactor: pas s rust flags

* fix: fix stack overflow

* fix: stack limit as str & change build target

* refactor: lint

* fix: docker file

* refactor: change target for build

* refactor: idle time limit load balancer + docs

* refactor: lint

* docs: review typo fix

Co-authored-by: Samuel Burnham <[email protected]>

* refactor: integrate review

---------

Co-authored-by: Samuel Burnham <[email protected]>

* chore: Update fixtures (#235)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#238)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#242)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#245)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#248)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#252)

Co-authored-by: tchataigner <[email protected]>

* feat: eth cleanup (#254)

* refactor: makefile 32xl

* docs: update benchamrks + fixed a few commands

* docs: refactor linebreaks

* refactor: latest sphinx + compile programs

* refactor: argumentcomputer

* refactor: xclippy

* fix: deny (#250)

* refactor: fix aptos deps

* ci: Refactor release workflow (#236)

* ci: Refactor release workflow

* Support manual release on `workflow_dispatch`

* Fix token

* refactor: fix fixture generator

* ci: Fix `release-pr.yml` version (#255)

* refactor: deny file

* update licenses (#142)

* update licenses

* Update Rust licenses

* Remove MIT

* Update license

* Update Ethereum license

* rename Yatima -> Argument

* chore: modify forgotten file

---------

Co-authored-by: Samuel Burnham <[email protected]>
Co-authored-by: François Garillot <[email protected]>

---------

Signed-off-by: Thomas Chataigner <[email protected]>
Co-authored-by: tchataigner <[email protected]>
Co-authored-by: wwared <[email protected]>
Co-authored-by: wwared <[email protected]>
Co-authored-by: François Garillot <[email protected]>
Co-authored-by: Artem Storozhuk <[email protected]>
Co-authored-by: Samuel Burnham <[email protected]>
Co-authored-by: tchataigner <[email protected]>
Co-authored-by: argument-ci-bot[bot] <178725181+argument-ci-bot[bot]@users.noreply.github.com>
Co-authored-by: John Chandler Burnham <[email protected]>
Co-authored-by: François Garillot <[email protected]>
tchataigner added a commit that referenced this pull request Sep 28, 2024
* chore(ethereum): Release `ethereum-v1.1.0`

* fix: Use `Box::pin` for large futures in ethereum's client binary (#177)

* chore: Add `large_futures` clippy lint to xclippy

* fix: Use `Box::pin` to heap allocate large futures

---------

Co-authored-by: wwared <[email protected]>

* refactor: Adapt to Sphinx (Refactor proof handling) (#161)

* refactor: Refactor proof handling across all components

- Update Sphinx dependencies from tag v1.0.0 to branch forward_ports_43 across all components.
- Modification of all instances of `SphinxProof` in favor of `SphinxProofWithPublicValues`.
- Inclusion of the run() method call chained after the `prove` and `execute` functions across system (enacting builder pattern).
- Removal and integration of separate `prove_plonk` and `verify_plonk` functions into main proving and verification functions using the method `.plonk()` where required.
- Direct passing of `stdin` as an argument in the `execute` function across applications.
- Update of the Rust Toolchain from "nightly-2024-07-30" to "nightly-2024-08-13" in both Aptos and Ethereum components.
- Addition of `bytes` function for supporting different proof types in the fixture-generator.
- Updating proof creation and validation in the fixture generation process with revised function calls.
- Revisions in client and server operations to support `SphinxProofWithPublicValues` and updated function calls.
- Update of `tokio` version from `"1.39.0"` to `"1.39.2"` and Hex dependency addition at version `0.4.3`.

* fix: Adapt fixture-generator to prepend vkey hash

* fix: Fix small typo

* chore: Update forge dependencies

* fix: Update Move verifier constants and vkey logic

* chore: clippy

* fix: Fix the script.move version header logic

* chore: Update inclusion fixtures

* chore: Update fixtures

* chore: Update all solidity fixtures

* feat: Update Move codebase

---------

Co-authored-by: wwared <[email protected]>
Co-authored-by: Artem Storozhuk <[email protected]>

* chore: Update dependencies (#178)

* fix: Pass stdin as a ref (#183)

Co-authored-by: wwared <[email protected]>

* chore: Remove superfluous nightly versions (#185)

* chore: Remove superfluous nightly versions

* Use `rust-toolchain.toml` version in CI

* ci: Use custom runner for `bench.yml` (#187)

* ci: Use custom runner for `bench.yml`

* Address review

* Address review

* ci: Fix cycle regression checker (#188)

* ci: Fix cycle regression checker

* Test workflow

* Prep for review

* chore: Update fixtures (#160)

Co-authored-by: tchataigner <[email protected]>

* feat: docker & k8s (#12)

* feat: docker & k8s

Signed-off-by: Thomas Chataigner <[email protected]>

* feat: wip docker

* feat: wip docker flexible lc

* feat: simplify k8s conf

* feat: refactor aptos proof server to one bin

* feat: one server bin eth + k8s aptos

* feat: ethereum client configuration

* chore: lint

* ci: revise docker publish

* refactor: base review integrated

* chore: lint

* refactor: router for proof server + health check

* refactor: ethereum health check

* refactor: probes

* refactor: multiple routes eth proof server

* refactor: fix compilation

* refactor: accept octet stream

* refactor: change handling request proof server

* refactor: all routes working

* refactor: not using serde json

* refactor: only one request

* refactor: health does not count as increment

* fix: fix middleware

* refactor: working aptos proof_server

* chore: use let-else more effectively (#197)

* refactor: replicas

---------

Signed-off-by: Thomas Chataigner <[email protected]>
Co-authored-by: François Garillot <[email protected]>

* chore: Update fixtures (#198)

Co-authored-by: tchataigner <[email protected]>

* chore: Update `ethereum` Rust version to `nightly-2024-08-29` (#199)

* refactor: lint

* chore: Update `ethereum` Rust version to `nightly-2024-08-29`

* chore: authorize too long first paragraph

---------

Co-authored-by: Thomas Chataigner <[email protected]>

* chore: Update fixtures (#203)

Co-authored-by: tchataigner <[email protected]>

* feat: Initial Pact contract (#205)

* wip: Initial pact skeleton

* chore: Add function for inclusion event processing

* chore: Add correct proof version handling

* chore: Refactoring

* chore: Add test.repl

---------

Co-authored-by: wwared <[email protected]>

* chore: Update fixtures (#206)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#208)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#212)

Co-authored-by: tchataigner <[email protected]>

* fix: ethereum lc (#214)

* fix: fix forward endpoint

* fix: fix not used update

* fix: boxed store

* chore: Update fixtures (#215)

Co-authored-by: tchataigner <[email protected]>

* feat: fixture raw proof (#216)

* feat: revamp fixture generate

* feat: generate fixtures

* refactor: add fixture test

* fix: remove proof version check

* chore: Update fixtures (#218)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#222)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#223)

Co-authored-by: tchataigner <[email protected]>

* chore: Update `ethereum` Rust version to `nightly-2024-09-13` (#224)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#229)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#230)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#232)

Co-authored-by: tchataigner <[email protected]>

* feat: helm chart (#228)

* feat: wip helm

* refactor: remove client from dockerfile

* feat: helm icon

* refactor: refactor helm & introduce eksctl conf

* refactor: helm with node selector

* refactor: external IP for cluster

* refactor: use published docker image

* refactor: fix command

* refactor: remove secondary dep

* refactor: proper comp config dockerfile

* refactor: remove not needed file

* refactor: always pull image

* refactor: pull image for docker compose

* refactor: docker compose file

* refactor: proper command

* refactor: liveness & readiness

* refactor: fix middleware

* refactor: pas s rust flags

* fix: fix stack overflow

* fix: stack limit as str & change build target

* refactor: lint

* fix: docker file

* refactor: change target for build

* refactor: idle time limit load balancer + docs

* refactor: lint

* docs: review typo fix

Co-authored-by: Samuel Burnham <[email protected]>

* refactor: integrate review

---------

Co-authored-by: Samuel Burnham <[email protected]>

* chore: Update fixtures (#235)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#238)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#242)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#245)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#248)

Co-authored-by: tchataigner <[email protected]>

* chore: Update fixtures (#252)

Co-authored-by: tchataigner <[email protected]>

* feat: eth cleanup (#254)

* refactor: makefile 32xl

* docs: update benchamrks + fixed a few commands

* docs: refactor linebreaks

* refactor: latest sphinx + compile programs

* refactor: argumentcomputer

* refactor: xclippy

* fix: deny (#250)

* refactor: fix aptos deps

* ci: Refactor release workflow (#236)

* ci: Refactor release workflow

* Support manual release on `workflow_dispatch`

* Fix token

* refactor: fix fixture generator

* ci: Fix `release-pr.yml` version (#255)

* refactor: deny file

* update licenses (#142)

* update licenses

* Update Rust licenses

* Remove MIT

* Update license

* Update Ethereum license

* rename Yatima -> Argument

* chore: modify forgotten file

---------

Co-authored-by: Samuel Burnham <[email protected]>
Co-authored-by: François Garillot <[email protected]>

---------

Signed-off-by: Thomas Chataigner <[email protected]>
Co-authored-by: tchataigner <[email protected]>
Co-authored-by: wwared <[email protected]>
Co-authored-by: wwared <[email protected]>
Co-authored-by: François Garillot <[email protected]>
Co-authored-by: Artem Storozhuk <[email protected]>
Co-authored-by: Samuel Burnham <[email protected]>
Co-authored-by: tchataigner <[email protected]>
Co-authored-by: argument-ci-bot[bot] <178725181+argument-ci-bot[bot]@users.noreply.github.com>
Co-authored-by: John Chandler Burnham <[email protected]>
Co-authored-by: François Garillot <[email protected]>
tchataigner added a commit that referenced this pull request Sep 28, 2024
* chore(ethereum): Release `ethereum-v1.1.0`

* fix: Use `Box::pin` for large futures in ethereum's client binary (#177)

* chore: Add `large_futures` clippy lint to xclippy

* fix: Use `Box::pin` to heap allocate large futures

---------



* refactor: Adapt to Sphinx (Refactor proof handling) (#161)

* refactor: Refactor proof handling across all components

- Update Sphinx dependencies from tag v1.0.0 to branch forward_ports_43 across all components.
- Modification of all instances of `SphinxProof` in favor of `SphinxProofWithPublicValues`.
- Inclusion of the run() method call chained after the `prove` and `execute` functions across system (enacting builder pattern).
- Removal and integration of separate `prove_plonk` and `verify_plonk` functions into main proving and verification functions using the method `.plonk()` where required.
- Direct passing of `stdin` as an argument in the `execute` function across applications.
- Update of the Rust Toolchain from "nightly-2024-07-30" to "nightly-2024-08-13" in both Aptos and Ethereum components.
- Addition of `bytes` function for supporting different proof types in the fixture-generator.
- Updating proof creation and validation in the fixture generation process with revised function calls.
- Revisions in client and server operations to support `SphinxProofWithPublicValues` and updated function calls.
- Update of `tokio` version from `"1.39.0"` to `"1.39.2"` and Hex dependency addition at version `0.4.3`.

* fix: Adapt fixture-generator to prepend vkey hash

* fix: Fix small typo

* chore: Update forge dependencies

* fix: Update Move verifier constants and vkey logic

* chore: clippy

* fix: Fix the script.move version header logic

* chore: Update inclusion fixtures

* chore: Update fixtures

* chore: Update all solidity fixtures

* feat: Update Move codebase

---------




* chore: Update dependencies (#178)

* fix: Pass stdin as a ref (#183)



* chore: Remove superfluous nightly versions (#185)

* chore: Remove superfluous nightly versions

* Use `rust-toolchain.toml` version in CI

* ci: Use custom runner for `bench.yml` (#187)

* ci: Use custom runner for `bench.yml`

* Address review

* Address review

* ci: Fix cycle regression checker (#188)

* ci: Fix cycle regression checker

* Test workflow

* Prep for review

* chore: Update fixtures (#160)



* feat: docker & k8s (#12)

* feat: docker & k8s



* feat: wip docker

* feat: wip docker flexible lc

* feat: simplify k8s conf

* feat: refactor aptos proof server to one bin

* feat: one server bin eth + k8s aptos

* feat: ethereum client configuration

* chore: lint

* ci: revise docker publish

* refactor: base review integrated

* chore: lint

* refactor: router for proof server + health check

* refactor: ethereum health check

* refactor: probes

* refactor: multiple routes eth proof server

* refactor: fix compilation

* refactor: accept octet stream

* refactor: change handling request proof server

* refactor: all routes working

* refactor: not using serde json

* refactor: only one request

* refactor: health does not count as increment

* fix: fix middleware

* refactor: working aptos proof_server

* chore: use let-else more effectively (#197)

* refactor: replicas

---------




* chore: Update fixtures (#198)



* chore: Update `ethereum` Rust version to `nightly-2024-08-29` (#199)

* refactor: lint

* chore: Update `ethereum` Rust version to `nightly-2024-08-29`

* chore: authorize too long first paragraph

---------



* chore: Update fixtures (#203)



* feat: Initial Pact contract (#205)

* wip: Initial pact skeleton

* chore: Add function for inclusion event processing

* chore: Add correct proof version handling

* chore: Refactoring

* chore: Add test.repl

---------



* chore: Update fixtures (#206)



* chore: Update fixtures (#208)



* chore: Update fixtures (#212)



* fix: ethereum lc (#214)

* fix: fix forward endpoint

* fix: fix not used update

* fix: boxed store

* chore: Update fixtures (#215)



* feat: fixture raw proof (#216)

* feat: revamp fixture generate

* feat: generate fixtures

* refactor: add fixture test

* fix: remove proof version check

* chore: Update fixtures (#218)



* chore: Update fixtures (#222)



* chore: Update fixtures (#223)



* chore: Update `ethereum` Rust version to `nightly-2024-09-13` (#224)



* chore: Update fixtures (#229)



* chore: Update fixtures (#230)



* chore: Update fixtures (#232)



* feat: helm chart (#228)

* feat: wip helm

* refactor: remove client from dockerfile

* feat: helm icon

* refactor: refactor helm & introduce eksctl conf

* refactor: helm with node selector

* refactor: external IP for cluster

* refactor: use published docker image

* refactor: fix command

* refactor: remove secondary dep

* refactor: proper comp config dockerfile

* refactor: remove not needed file

* refactor: always pull image

* refactor: pull image for docker compose

* refactor: docker compose file

* refactor: proper command

* refactor: liveness & readiness

* refactor: fix middleware

* refactor: pas s rust flags

* fix: fix stack overflow

* fix: stack limit as str & change build target

* refactor: lint

* fix: docker file

* refactor: change target for build

* refactor: idle time limit load balancer + docs

* refactor: lint

* docs: review typo fix



* refactor: integrate review

---------



* chore: Update fixtures (#235)



* chore: Update fixtures (#238)



* chore: Update fixtures (#242)



* chore: Update fixtures (#245)



* chore: Update fixtures (#248)



* chore: Update fixtures (#252)



* feat: eth cleanup (#254)

* refactor: makefile 32xl

* docs: update benchamrks + fixed a few commands

* docs: refactor linebreaks

* refactor: latest sphinx + compile programs

* refactor: argumentcomputer

* refactor: xclippy

* fix: deny (#250)

* refactor: fix aptos deps

* ci: Refactor release workflow (#236)

* ci: Refactor release workflow

* Support manual release on `workflow_dispatch`

* Fix token

* refactor: fix fixture generator

* ci: Fix `release-pr.yml` version (#255)

* refactor: deny file

* update licenses (#142)

* update licenses

* Update Rust licenses

* Remove MIT

* Update license

* Update Ethereum license

* rename Yatima -> Argument

* chore: modify forgotten file

---------




---------

Signed-off-by: Thomas Chataigner <[email protected]>
Co-authored-by: argument-ci-bot[bot] <178725181+argument-ci-bot[bot]@users.noreply.github.com>
Co-authored-by: tchataigner <[email protected]>
Co-authored-by: wwared <[email protected]>
Co-authored-by: wwared <[email protected]>
Co-authored-by: François Garillot <[email protected]>
Co-authored-by: Artem Storozhuk <[email protected]>
Co-authored-by: Samuel Burnham <[email protected]>
Co-authored-by: John Chandler Burnham <[email protected]>
Co-authored-by: François Garillot <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Broken Ethereum committee change proof
2 participants