Skip to content

chore(cli,sdk): bump ethrex version to v20.0.0 - #242

Merged
ilitteri merged 3 commits into
mainfrom
bump-ethrex-v20.0.0
Jul 15, 2026
Merged

chore(cli,sdk): bump ethrex version to v20.0.0#242
ilitteri merged 3 commits into
mainfrom
bump-ethrex-v20.0.0

Conversation

@ilitteri

Copy link
Copy Markdown
Collaborator

Motivation

rex releases must stay paired with ethrex releases. This bumps rex to v20.0.0, paired with ethrex v20.0.0 (part of the v17→v21 catch-up).

Stacked on #242 (v19). Once #242 merges, GitHub retargets this to main and I'll rebase so the diff stays v19→v20 only.

Description

  • Bump the 7 ethrex crates.io dependencies from 19.0.0 to 20.0.0 (and regenerate Cargo.lock).
  • Bump the ethrex binary used by the CI integration tests to v20.0.0.
  • Bump the workspace version to 20.0.0 for the upcoming v20.0.0 release.
  • No breaking changes affect rex's API surface (verified: cargo check --workspace, tests, clippy, and fmt all pass against ethrex 20.0.0); no code changes needed.

@ilitteri
ilitteri requested a review from a team as a code owner July 15, 2026 17:16
ilitteri added a commit that referenced this pull request Jul 15, 2026
**Motivation**

rex releases must stay paired with ethrex releases. This bumps rex to
v19.0.0, paired with ethrex v19.0.0 (part of the v17→v21 catch-up).

> Stacked ahead of #242 (v20).

**Description**

- Bump the 7 ethrex crates.io dependencies from `18.0.0` to `19.0.0`
(and regenerate `Cargo.lock`).
- Bump the ethrex binary used by the CI integration tests to v19.0.0.
- Bump the workspace version to 19.0.0 for the upcoming v19.0.0 release.
- No breaking changes affect rex's API surface (verified: `cargo check
--workspace`, tests, clippy, and fmt all pass against ethrex 19.0.0); no
code changes needed.
Base automatically changed from bump-ethrex-v19.0.0 to main July 15, 2026 17:31
Signed-off-by: Ivan Litteri <67517699+ilitteri@users.noreply.github.com>
@ilitteri
ilitteri enabled auto-merge (squash) July 15, 2026 17:41
@ilitteri
ilitteri merged commit 84099c3 into main Jul 15, 2026
10 checks passed
@ilitteri
ilitteri deleted the bump-ethrex-v20.0.0 branch July 15, 2026 17:55
ilitteri added a commit that referenced this pull request Jul 15, 2026
#244)

**Motivation**

rex v21.0.0 pairs with ethrex v21.0.0 — the first release that ships the
EIP-8141 `FrameTransaction` type. The current `frame` command hand-rolls
its own frame structs + RLP in a stale wire format: it still *compiles*
against ethrex 21 (it only borrows a few primitive types), but every
transaction it builds is rejected on-chain — a silent failure. v21 must
fix this or it ships a broken `frame` command.

**Description**

1. **Bump** the 7 ethrex crates.io deps + workspace version to `21.0.0`,
and the CI integration ethrex binary to v21.0.0.
2. **Rewrite** `cli/src/commands/frame.rs` onto ethrex's canonical
`FrameTransaction` / `Frame` / `FrameSignature` types (EIP-8141 only —
single scalar nonce; no keyed nonces / recent-root-references):
- Top-level `signatures: Vec<FrameSignature>`; VERIFY frame data empty
(was: signature stuffed into VERIFY frame data).
- 6-field frames `{mode, flags, target, gas_limit, value, data}`; SENDER
frames carry value/data directly (was: 5-field, RLP call-list in data).
- secp256k1 signatures reordered `r‖s‖v` → `v‖r‖s` (v = recovery_id +
27).
- Sign `compute_sig_hash()` with empty-bytes signature placeholders,
then fill the real bytes.
- Emit the raw `0x06` tx via
`Transaction::FrameTransaction(tx).encode_canonical_to_vec()`.
- `Send`/`Build` preserved; `Receipt` → `Inspect` (alias `receipt`) with
a decoded frame-by-frame viewer. Added `frame` to the README command
list.

Verified locally against ethrex 21.0.0: `cargo check --workspace`,
`cargo clippy`, `cargo fmt --check` clean; 6 frame unit tests pass
(incl. the `sig_hash` empty-msg-elision and `v‖r‖s` ordering
invariants).

> ⚠️ **Draft — do not merge yet.** Stacked after #242 (v20). Once v20
merges I'll rebase this onto `main` (version delta becomes 20→21) and
mark it ready for review.
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.

2 participants