chore(deps): bump libssz family to 0.2.2#394
Conversation
Pin libssz, libssz-derive, libssz-merkle, and libssz-types to 0.2.2 in the workspace manifest (previously "0.2") and update the lockfile accordingly.
🤖 Kimi Code ReviewReview for PR #394: SSZ library version bump Critical Concerns1. Syn version downgrade in proc-macro crate (Cargo.lock)File:
Recommendation: Check if the syn downgrade was intentional (e.g., for compatibility) or accidental. If intentional, document the rationale in the PR description. 2. Consensus-critical SSZ changesFile:
Security & Best Practices3. Version pinning strategyFile:
4. Build reproducibilityThe
Minor Observations
SummaryThe change appears mechanically correct, but requires verification of the syn downgrade rationale and SSZ 0.2.2 changelog review before merging due to consensus-critical nature of these libraries. Automated review by Kimi (Moonshot AI) · kimi-k2.5 · custom prompt |
🤖 Codex Code Review
I did not find any direct code-level bug in the patch itself; the risk is entirely in the unaudited dependency upgrade. I also could not independently run Automated review by OpenAI Codex · gpt-5.4 · custom prompt |
🤖 Claude Code ReviewHere is my review of PR #394: PR #394 —
|
Greptile SummaryThis PR bumps the
Confidence Score: 5/5Pure dependency patch bump with no source changes; all four libssz crates move from 0.2.1 to 0.2.2 and the lockfile checksums are consistent with the published registry entries. No application code was modified. The version floor is raised from '0.2' to '0.2.2' which is a more restrictive but semantically equivalent constraint for the currently resolved version. The only incidental lockfile change — data-encoding-macro-internal resolving syn to 1.0.109 instead of 2.0.117 — actually corrects the resolution to match that crate's declared syn ^1 requirement. No files require special attention.
|
| Filename | Overview |
|---|---|
| Cargo.toml | Pins the libssz family from the loose "0.2" requirement to the explicit "0.2.2" floor, raising the minimum resolved version without restricting future compatible patches. |
| Cargo.lock | Updates the four libssz* crate entries from 0.2.1 → 0.2.2 with new checksums; also corrects data-encoding-macro-internal's resolved syn dependency from 2.0.117 to 1.0.109 (consistent with its declared syn ^1 requirement). |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[Cargo.toml] --> B[libssz 0.2.2]
A --> C[libssz-derive 0.2.2]
A --> D[libssz-merkle 0.2.2]
A --> E[libssz-types 0.2.2]
C --> F[proc-macro2]
C --> G[quote]
C --> H[syn 2.0.117]
D --> B
D --> I[sha2]
E --> B
E --> D
subgraph SideEffect [Side Effect in Cargo.lock]
J[data-encoding-macro-internal 0.1.18] -->|now correctly resolved| K[syn 1.0.109]
end
Reviews (1): Last reviewed commit: "chore(deps): bump libssz family to 0.2.2" | Re-trigger Greptile
🗒️ Description / Motivation
libsszfamily of dependencies from0.2.1to0.2.2.0.2.2release is available; this keeps us on the latest patch.What Changed
Cargo.toml—libssz,libssz-derive,libssz-merkle,libssz-typesrequirement changed from"0.2"to"0.2.2".Cargo.lock— correspondinglibssz*entries updated0.2.1→0.2.2.Correctness / Behavior Guarantees
"0.2.2"raises the floor while still allowing compatible patch updates (>=0.2.2, <0.3.0).Tests Added / Run
make fmt— cleanmake lint— cleanmake test— 62 passed, 8 pre-existingAttestationTooFarInFuturefailures inforkchoice_spectests(verified identical onmain, unrelated to this change).Related Issues / PRs
✅ Verification Checklist
make fmt— cleanmake lint(clippy with-D warnings) — cleancargo test --workspace --release— 8 pre-existing forkchoice spectest failures unrelated to this change (same onmain)