Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
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
7 changes: 7 additions & 0 deletions .cargo/config.toml.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Local development overrides for cross-repo work with ethrex-tooling.
# Append this section to your .cargo/config.toml to use local ethrex-tooling sources
# instead of git-fetched versions. Adjust paths to match your local layout.

[patch."https://github.com/lambdaclass/ethrex-tooling"]
ethrex-monitor = { path = "../ethrex-tooling/monitor" }
ethrex-repl = { path = "../ethrex-tooling/repl" }
5 changes: 5 additions & 0 deletions .github/workflows/daily_hive_report.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -169,6 +169,11 @@ jobs:
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Checkout ethrex-tooling
uses: actions/checkout@v4
with:
repository: lambdaclass/ethrex-tooling
path: tooling
- name: Setup Rust Environment
uses: ./.github/actions/setup-rust

Expand Down
5 changes: 5 additions & 0 deletions .github/workflows/daily_loc_report.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,11 @@ jobs:
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Checkout ethrex-tooling
uses: actions/checkout@v4
with:
repository: lambdaclass/ethrex-tooling
path: tooling
- name: Setup Rust Environment
uses: ./.github/actions/setup-rust

Expand Down
15 changes: 15 additions & 0 deletions .github/workflows/pr-main_l1.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,11 @@ jobs:
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Checkout ethrex-tooling
uses: actions/checkout@v4
with:
repository: lambdaclass/ethrex-tooling
path: tooling

- name: Free Disk Space
uses: ./.github/actions/free-disk
Expand Down Expand Up @@ -110,6 +115,11 @@ jobs:
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Checkout ethrex-tooling
uses: actions/checkout@v4
with:
repository: lambdaclass/ethrex-tooling
path: tooling

- name: Free Disk Space
uses: ./.github/actions/free-disk
Expand Down Expand Up @@ -381,6 +391,11 @@ jobs:
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Checkout ethrex-tooling
uses: actions/checkout@v4
with:
repository: lambdaclass/ethrex-tooling
path: tooling

- name: Free Disk Space
uses: ./.github/actions/free-disk
Expand Down
20 changes: 20 additions & 0 deletions .github/workflows/pr-main_levm.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,11 @@ jobs:
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Checkout ethrex-tooling
uses: actions/checkout@v4
with:
repository: lambdaclass/ethrex-tooling
path: tooling
- name: Setup Rust Environment
uses: ./.github/actions/setup-rust

Expand Down Expand Up @@ -81,6 +86,11 @@ jobs:
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Checkout ethrex-tooling
uses: actions/checkout@v4
with:
repository: lambdaclass/ethrex-tooling
path: tooling
- name: Setup Rust Environment
uses: ./.github/actions/setup-rust

Expand All @@ -96,6 +106,11 @@ jobs:
uses: actions/checkout@v4
with:
ref: main
- name: Checkout ethrex-tooling
uses: actions/checkout@v4
with:
repository: lambdaclass/ethrex-tooling
path: tooling

- name: Setup Rust Environment
uses: ./.github/actions/setup-rust
Expand Down Expand Up @@ -135,6 +150,11 @@ jobs:
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Checkout ethrex-tooling
uses: actions/checkout@v4
with:
repository: lambdaclass/ethrex-tooling
path: tooling

- name: Download main branch ef tests
uses: actions/download-artifact@v4
Expand Down
10 changes: 10 additions & 0 deletions .github/workflows/pr_loc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,11 @@ jobs:
with:
fetch-depth: 0
ref: ${{ steps.find_merge_base.outputs.merge_base }}
- name: Checkout ethrex-tooling
uses: actions/checkout@v4
with:
repository: lambdaclass/ethrex-tooling
path: tooling

- name: Setup Rust Environment
uses: ./.github/actions/setup-rust
Expand All @@ -60,6 +65,11 @@ jobs:
with:
clean: "false" # Don't clean the workspace, so we can keep the previous report
ref: ${{ github.event.pull_request.head.sha }}
- name: Checkout ethrex-tooling
uses: actions/checkout@v4
with:
repository: lambdaclass/ethrex-tooling
path: tooling

- name: Setup Rust Environment
uses: ./.github/actions/setup-rust
Expand Down
5 changes: 5 additions & 0 deletions .github/workflows/pr_upgradeability.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,11 @@ jobs:
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Checkout ethrex-tooling
uses: actions/checkout@v4
with:
repository: lambdaclass/ethrex-tooling
Copy link

Copilot AI Apr 15, 2026

Choose a reason for hiding this comment

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

This checkout relies on the external repository’s default branch. Since the PR description implies using the main branch, it would be more robust to set ref: main explicitly (and consider pinning to a specific commit SHA for CI stability). Otherwise, a default-branch rename or unexpected default-branch change in ethrex-tooling could break CI without any change in this repo.

Suggested change
repository: lambdaclass/ethrex-tooling
repository: lambdaclass/ethrex-tooling
ref: main

Copilot uses AI. Check for mistakes.
path: tooling

- name: Setup Node.js
uses: actions/setup-node@v4
Expand Down
38 changes: 20 additions & 18 deletions Cargo.lock

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

29 changes: 26 additions & 3 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@ members = [
"crates/vm/levm",
"crates/vm/levm/runner",
"crates/common/config",
"tooling/repl",
"test",
]
exclude = ["crates/vm/levm/bench/revm_comparison"]
Expand Down Expand Up @@ -77,8 +76,8 @@ ethrex-guest-program = { path = "./crates/guest-program", default-features = fal
ethrex-storage-rollup = { path = "./crates/l2/storage" }
ethrex = { path = "./cmd/ethrex" }
ethrex-l2-rpc = { path = "./crates/l2/networking/rpc" }
ethrex-monitor = { path = "./tooling/monitor" }
ethrex-repl = { path = "./tooling/repl" }
ethrex-monitor = { git = "https://github.com/lambdaclass/ethrex-tooling", branch = "main" }
ethrex-repl = { git = "https://github.com/lambdaclass/ethrex-tooling", branch = "main" }
Comment on lines +79 to +80
Copy link

Copilot AI Apr 15, 2026

Choose a reason for hiding this comment

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

Using branch = \"main\" for git dependencies makes the chosen upstream revision implicit and can lead to non-obvious updates when Cargo.lock is regenerated (e.g., in different CI contexts or when the lockfile changes). Prefer pinning these dependencies with an explicit rev = \"<commit sha>\" (or a tag) to make upgrades intentional and reproducible.

Suggested change
ethrex-monitor = { git = "https://github.com/lambdaclass/ethrex-tooling", branch = "main" }
ethrex-repl = { git = "https://github.com/lambdaclass/ethrex-tooling", branch = "main" }
ethrex-monitor = { git = "https://github.com/lambdaclass/ethrex-tooling", rev = "<commit sha>" }
ethrex-repl = { git = "https://github.com/lambdaclass/ethrex-tooling", rev = "<commit sha>" }

Copilot uses AI. Check for mistakes.

tracing = { version = "0.1", features = ["log"] }
tracing-subscriber = { version = "0.3.0", features = ["env-filter"] }
Expand Down Expand Up @@ -144,5 +143,29 @@ libssz-types = { git = "https://github.com/lambdaclass/libssz", rev = "7262a4f"
libssz-merkle = { git = "https://github.com/lambdaclass/libssz", rev = "7262a4f" }
libssz-derive = { git = "https://github.com/lambdaclass/libssz", rev = "7262a4f" }

# Ensure ethrex-tooling's transitive deps resolve to local workspace crates
# instead of fetching a second copy from git (avoids "two versions of the same crate" errors).
[patch."https://github.com/lambdaclass/ethrex"]
ethrex = { path = "./cmd/ethrex" }
ethrex-blockchain = { path = "./crates/blockchain" }
ethrex-common = { path = "./crates/common" }
ethrex-config = { path = "./crates/common/config" }
ethrex-crypto = { path = "./crates/common/crypto" }
ethrex-guest-program = { path = "./crates/guest-program" }
ethrex-l2 = { path = "./crates/l2" }
ethrex-l2-common = { path = "./crates/l2/common" }
ethrex-l2-prover = { path = "./crates/l2/prover" }
ethrex-l2-rpc = { path = "./crates/l2/networking/rpc" }
ethrex-levm = { path = "./crates/vm/levm" }
ethrex-p2p = { path = "./crates/networking/p2p" }
ethrex-prover = { path = "./crates/prover" }
ethrex-rlp = { path = "./crates/common/rlp" }
ethrex-rpc = { path = "./crates/networking/rpc" }
ethrex-sdk = { path = "./crates/l2/sdk" }
ethrex-storage = { path = "./crates/storage" }
ethrex-storage-rollup = { path = "./crates/l2/storage" }
ethrex-trie = { path = "./crates/common/trie" }
ethrex-vm = { path = "./crates/vm" }
Comment on lines +146 to +168
Copy link

Copilot AI Apr 15, 2026

Choose a reason for hiding this comment

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

This adds a global patch for the https://github.com/lambdaclass/ethrex git source. That patch will affect any crate in the dependency graph coming from that git source (including indirect uses outside tooling), which can make debugging dependency resolution harder when unexpected overrides happen. Consider limiting the blast radius by either (a) moving this patch behind a documented opt-in workflow (e.g., .cargo/config.toml for local dev), or (b) ensuring ethrex-tooling does not pull ethrex crates via git for normal builds so the patch is unnecessary in production/CI.

Suggested change
# Ensure ethrex-tooling's transitive deps resolve to local workspace crates
# instead of fetching a second copy from git (avoids "two versions of the same crate" errors).
[patch."https://github.com/lambdaclass/ethrex"]
ethrex = { path = "./cmd/ethrex" }
ethrex-blockchain = { path = "./crates/blockchain" }
ethrex-common = { path = "./crates/common" }
ethrex-config = { path = "./crates/common/config" }
ethrex-crypto = { path = "./crates/common/crypto" }
ethrex-guest-program = { path = "./crates/guest-program" }
ethrex-l2 = { path = "./crates/l2" }
ethrex-l2-common = { path = "./crates/l2/common" }
ethrex-l2-prover = { path = "./crates/l2/prover" }
ethrex-l2-rpc = { path = "./crates/l2/networking/rpc" }
ethrex-levm = { path = "./crates/vm/levm" }
ethrex-p2p = { path = "./crates/networking/p2p" }
ethrex-prover = { path = "./crates/prover" }
ethrex-rlp = { path = "./crates/common/rlp" }
ethrex-rpc = { path = "./crates/networking/rpc" }
ethrex-sdk = { path = "./crates/l2/sdk" }
ethrex-storage = { path = "./crates/storage" }
ethrex-storage-rollup = { path = "./crates/l2/storage" }
ethrex-trie = { path = "./crates/common/trie" }
ethrex-vm = { path = "./crates/vm" }
# Do not commit a workspace-wide patch for the ethrex git source here.
# If local development needs path overrides to avoid duplicate git/workspace crates,
# configure them as an explicit opt-in in `.cargo/config.toml` instead.

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

I ran make lint and it's working


[workspace.lints.clippy]
redundant_clone = "warn"
Loading
Loading