Skip to content

chore: switch to crates.io deps for protocol and VM#47

Merged
bitwalker merged 2 commits intonextfrom
fix/upgrade-to-released-deps
Apr 8, 2026
Merged

chore: switch to crates.io deps for protocol and VM#47
bitwalker merged 2 commits intonextfrom
fix/upgrade-to-released-deps

Conversation

@djolertrk
Copy link
Copy Markdown
Collaborator

Replace git rev dependencies with crates.io releases:

  • miden-protocol/miden-tx v0.14 from crates.io
  • miden-processor v0.22.1 from crates.io (provides FastProcessor::into_parts)
  • Pin miden-assembly/miden-assembly-syntax/miden-mast-package/miden-core-lib to =0.22.0 to maintain compatibility with miden-protocol v0.14.2
  • Remove [patch.crates-io] section

@djolertrk djolertrk requested review from bitwalker and greenhat April 7, 2026 07:48
Copy link
Copy Markdown
Contributor

@greenhat greenhat left a comment

Choose a reason for hiding this comment

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

Looking good! Just a minor question.

Comment thread crates/engine/Cargo.toml Outdated
log = "0.4"
miden-assembly = { version = "0.22", default-features = false }
miden-assembly-syntax = { version = "0.22", default-features = false }
miden-assembly = { version = "=0.22.0", default-features = false }
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Do we need to keep the version requirement this strict? I mean "0.22" should work. Or am I missing something?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

miden-assembly v0.22.1 changed Assembler::assemble_library() to return Arc<Library> instead of Library. This is a breaking change that causes miden-protocol v0.14.2's build script to fail. Using "0.22" resolves to v0.22.1 and breaks the build. Pinning to =0.22.0 avoids this while still allowing miden-processor v0.22.1 (which has into_parts() function we need for DAP) since processor doesn't depend on miden-assembly at runtime. This way, we avoid patching protocol as well.

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.

Yes, until the protocol library is updated to use the new point release, we'll have to remain pinned against the older VM, though I expect that will happen very soon. If there isn't already a PR for that, we should make one, it should be trivial, since that's the only place that needs to change. Ultimately, we'll want to move the protocol library to use projects, but that doesn't have to be done now.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

I tried to find it, but did not find. I will open a PR there, but the change won't be small, since a lot of tests will need to be updated.
I guess that we can merge this PR anyway since we can push debugger to creates.io and it will unblock miden-client PR for enabling TX debugging (0xMiden/miden-client#1959; the only one still open for that feature).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Oh, I see. Approved.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

The 0xMiden/protocol#2742 is merged. So we need to wait for it to be published to crates.io.

Replace git rev dependencies with crates.io releases:
- miden-protocol/miden-tx v0.14 from crates.io
- miden-processor v0.22.1 from crates.io (provides FastProcessor::into_parts)
- Pin miden-assembly/miden-assembly-syntax/miden-mast-package/miden-core-lib
  to =0.22.0 to maintain compatibility with miden-protocol v0.14.2
- Remove [patch.crates-io] section entirely
- Use miden-vm v0.22.1 from crates.io
- Use v0.14.3 protocol
@djolertrk djolertrk force-pushed the fix/upgrade-to-released-deps branch from cd301ce to 2398c1a Compare April 8, 2026 09:35
@bitwalker bitwalker merged commit 65812bd into next Apr 8, 2026
7 checks passed
@bitwalker bitwalker deleted the fix/upgrade-to-released-deps branch April 8, 2026 11:14
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.

3 participants