Skip to content

Update programs to the new Leo 4.x syntax#3

Open
eranrund wants to merge 2 commits into
mainfrom
eran/leo-4
Open

Update programs to the new Leo 4.x syntax#3
eranrund wants to merge 2 commits into
mainfrom
eran/leo-4

Conversation

@eranrund
Copy link
Copy Markdown
Collaborator

@eranrund eranrund commented May 13, 2026

This is the minimal set of changes required to get the programs to compile with the most recent leo version and test using the new devnode.

While the previous (leo 3.5) version of this code was audited, technically this one wasn't - but since no logic changes should've taken place, and the bytecode wasn't audited, this might be acceptable for use in future projects.

Either way, I think having this is a good thing since it can be used as a developer reference for how to easily build a JS SDK-based test suite.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the Leo programs and test tooling for Leo 4.x/devnode compatibility, including syntax migration from async transitions/functions to fn/Final patterns and SDK/devnode test adjustments.

Changes:

  • Migrates multisig and token registry Leo source to Leo 4.0.2 syntax.
  • Updates test dependencies and execution transaction construction for devnode.
  • Refreshes README setup instructions for Leo 4.0.2 and devnode usage.

Reviewed changes

Copilot reviewed 11 out of 12 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
programs/multisig_core/src/main.leo Migrates core multisig program functions/finalization helpers to Leo 4 syntax.
programs/multisig_core/program.json Updates Leo version metadata to 4.0.2.
programs/multisig_wallet/src/main.leo Migrates wallet program calls, futures, and helper finalizers to Leo 4 syntax.
programs/multisig_wallet/program.json Updates Leo version metadata to 4.0.2.
token_registry/src/main.leo Migrates local token registry implementation to Leo 4 syntax.
token_registry/build/main.aleo Updates generated Aleo output for the migrated token registry.
token_registry/build/program.json Adds Leo version metadata.
tests/lib/aleo-test-utils.js Switches skipped-proof execution to devnode transaction builder.
tests/multisig.test.js Updates expected SDK/devnode failure text.
tests/package.json / tests/package-lock.json Switches SDK dependency from local file path to published 0.10.5 package.
README.md Updates development/setup documentation for Leo 4.0.2 and devnode.
Files not reviewed (1)
  • tests/package-lock.json: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread README.md Outdated
Comment thread programs/multisig_core/src/main.leo
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