Skip to content

feat(ffi): sync src/ffi with Nethermind 1e5d1fa8a0 for native ABI 10 - #2

Merged
rubo merged 2 commits into
mainfrom
feature/lean-ffi-abi-10
Nov 11, 2026
Merged

rubo merged 2 commits into
mainfrom
feature/lean-ffi-abi-10

Conversation

@manusw7

@manusw7 manusw7 commented Nov 11, 2026 •

Copy link
Copy Markdown
Contributor

Nethermind feature/eip8288-lean now requires native ABI 10 (NethermindEth/nethermind@e1939b5da3 adds nlean_last_error), but src/ffi and the published 0.1.0.8 are ABI 9, so every EIP-8288 node using the package fails its startup check.

This applies the tools/lean-ffi changes from 39e7bff6ef to 1e5d1fa8a0 to src/ffi, keeping the MIT headers and paths, and moves the smoke test, package description and NETHERMIND_REVISION to ABI 10.

Needs a Build Lean run before Test / Publish can pass: the committed binaries are still ABI 9.

Nethermind feature/eip8288-lean now requires ABI 10
(NethermindEth/nethermind@e1939b5da3 adds nlean_last_error), so the ABI 9
library this repo publishes fails the startup check of every EIP-8288 node.

Apply the tools/lean-ffi changes from 39e7bff6ef to 1e5d1fa8a0, keeping this
repo's MIT headers and paths, and move the smoke test, the package description
and NETHERMIND_REVISION to ABI 10. The committed binaries still need a Build
Lean run.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@manusw7

manusw7 commented Nov 11, 2026

Copy link
Copy Markdown
Contributor Author

@rubo this is the source half of the ABI 10 update; the rest needs you:

  1. Run Build Lean on this branch, so the committed binaries and THIRD-PARTY-NOTICES come from this src/ffi (it adds zk_alloc from the same leanVM rev and libc).
  2. Publish the result to nugettest.org, so build(eip8288): take the native Lean backend from the Nethermind.Crypto.Lean package nethermind#15524 can move from 0.1.0.8 to it while leanVM settles. Production nuget.org would follow in a separate step.
  3. Licence sign-off: tools/lean-ffi in Nethermind is LGPL-3.0-only, and this repo ships the same code as MIT.

Locally, as test-publish.yml runs them: cargo test --release --locked -- --test-threads=1 passed 20/20 (with RUSTDOCFLAGS=-C target-cpu=native), and cargo fmt --check is clean. The .NET smoke test now expects ABI 10, so it will fail until the binaries are rebuilt. Also, src/ffi now differs from Nethermind's tools/lean-ffi at 1e5d1fa8a0 only in the licence headers, the build path in one error message and the README's packaging paragraph.

@rubo
rubo merged commit 5edc880 into main Nov 11, 2026
13 checks passed
@rubo
rubo deleted the feature/lean-ffi-abi-10 branch November 11, 2026 16:30
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