Skip to content
Merged
Show file tree
Hide file tree
Changes from 47 commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
9a73293
chore: fix `TransactionAuthenticator::get_signature()` docs
bobbinth Dec 14, 2025
534aa0e
chore: fix lints
bobbinth Dec 14, 2025
b351216
test: simplify codebuilder creation (#2175)
igamigo Dec 15, 2025
26f67f1
feat: Add From<&ExecutedTransaction> for TransactionHeader impl (#2178)
sergerad Dec 15, 2025
8d70adc
chore: update protocol library docs (#2179)
PhilippGackstatter Dec 15, 2025
2d6e5a0
refactor: add `SlotName` to `StorageSlotHeader` (#2160)
Farukest Dec 15, 2025
822c6a0
test: move tx header test logic (#2181)
sergerad Dec 15, 2025
8bb2058
ci: improve dependency control & runner disk space (#2133)
huitseeker Dec 16, 2025
c0c1e3e
chore: refactor `AccountStorageDelta` to use `StorageSlotDelta` (#2182)
PhilippGackstatter Dec 17, 2025
ac944ef
refactor: Implement component schemas (#2193)
igamigo Dec 19, 2025
da7a823
chore: migrate to the VM v0.20.0 (#2158)
Fumuran Dec 20, 2025
67884c3
chore: prepare split into protocol and standards (#2184)
PhilippGackstatter Dec 20, 2025
55909b4
chore: move protocol components from `miden-lib` to `miden-objects` (…
PhilippGackstatter Dec 20, 2025
c8aad1b
feat: rename `miden-objects` into `miden-protocol` and `miden-lib` in…
PhilippGackstatter Dec 20, 2025
e6f0573
feat: add `Clone` to `NoteConsumptionStatus` (#2209)
juan518munoz Dec 24, 2025
0c26f2a
refactor: rm `OLD_MAP_ROOT` from return of `set_map_item` (#2194)
partylikeits1983 Dec 26, 2025
dee1d48
feat: follow-ups from #2193 (#2207)
igamigo Dec 30, 2025
b4ac3da
feat: implement ownership management for network fungible faucet
afa7789 Jan 6, 2026
4fb098b
chore: restore stack manipulation
mmagician Jan 7, 2026
3d90813
refactor: simplify ownership error handling and clean up unused proce…
afa7789 Jan 8, 2026
07fee30
feat: add renounce ownership functionality to network fungible faucet
afa7789 Jan 8, 2026
65c50a4
Update crates/miden-standards/asm/standards/utils/access/ownable.masm
afa7789 Jan 8, 2026
2a96753
chore: fix based on PR review.
afa7789 Jan 8, 2026
ca83cc2
feat: implement ownership management functionality in ownable module …
afa7789 Jan 9, 2026
1edb039
fix: update stack handling in transfer_ownership procedure for proper…
afa7789 Jan 10, 2026
0aa6d68
test: add unit test for get_owner procedure in network fungible faucet
afa7789 Jan 13, 2026
8d74f6d
refactor: clean up ownable module documentation and error constants, …
afa7789 Jan 14, 2026
79be861
feat: add ownable standard module for component ownership management …
afa7789 Jan 15, 2026
18a7d27
feat:import constants directly instead of getter procedures (#2221)
PoulavBhowmick03 Jan 6, 2026
bc34aa3
fix: ensure cargo-msrv is properly installed for MSRV check (#2234)
huitseeker Jan 6, 2026
1512add
feat: add AccountId::parse() for hex and bech32 formats (#2223)
Farukest Jan 6, 2026
7421546
chore: organize `miden-standards` (#2227)
mmagician Jan 7, 2026
17b76f9
refactor: close gap in account memory layout (#2190)
PivasDesant Jan 8, 2026
34392ae
chore: add error messages to asserts (#2239)
mmagician Jan 8, 2026
f696d29
feat: move standard note scripts into standard library (#2255)
Farukest Jan 12, 2026
c430514
chore: move MSRV check from PR CI to release workflows (#2233)
huitseeker Jan 13, 2026
49377cd
feat: Read foreign account inputs and witnesses from transaction inpu…
sergerad Jan 13, 2026
b680282
feat: insert unpadded note inputs into `advice_inputs` (#2232)
mmagician Jan 13, 2026
c25d8f6
feat: Refactor `NoteTag` to contain an arbitrary `u32` (#2219)
PhilippGackstatter Jan 15, 2026
a6a83ee
feat: add tx kernel support for `NoteAttachment` (#2249)
PhilippGackstatter Jan 15, 2026
1f66663
feat: add `output_not_set_attachment` kernel API (#2252)
PhilippGackstatter Jan 15, 2026
1978e6b
feat: introduce standard `NetworkAccountTarget` attachment (#2257)
PhilippGackstatter Jan 15, 2026
8e47927
chore: Remove `aux` and `execution_hint` parameters from `output_note…
PhilippGackstatter Jan 15, 2026
166d8c0
chore: rename `NoteAttachmentType` and `NoteAttachmentContentType` (#…
PhilippGackstatter Jan 15, 2026
83dc36d
feat: add ownable standard module for component ownership management …
afa7789 Jan 15, 2026
fdfbfb5
refactor: simplify note creation by replacing auxiliary parameters wi…
afa7789 Jan 15, 2026
1d1bdf3
chore(cargo): fixing lint issues.
afa7789 Jan 15, 2026
c8bcbfe
Merge branch 'next' into openzeppelin/ownable
afa7789 Jan 15, 2026
1229dc0
Merge branch 'next' into openzeppelin/ownable
afa7789 Jan 16, 2026
d122730
Update crates/miden-standards/asm/standards/access/ownable.masm
afa7789 Jan 16, 2026
ac2374c
Update crates/miden-standards/asm/standards/access/ownable.masm
afa7789 Jan 16, 2026
196a491
Update crates/miden-standards/asm/standards/access/ownable.masm
afa7789 Jan 16, 2026
b3ae5f8
chore: Refactor error handling in faucet tests to use ERR_SENDER_NOT_…
afa7789 Jan 16, 2026
5428d53
chore: lint fix
afa7789 Jan 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
12 changes: 12 additions & 0 deletions .github/actions/cleanup-runner/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
name: 'Cleanup Runner'
description: 'Remove unused tools in the runner image to free disk space'

runs:
using: 'composite'
steps:
- name: Remove unused tools in the runner image
shell: bash
run: |
sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc /opt/hostedtoolcache/CodeQL
sudo docker image prune --all --force || true
sudo docker builder prune -a --force || true
27 changes: 14 additions & 13 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
- name: Cleanup large tools for build space
uses: ./.github/actions/cleanup-runner
- uses: Swatinem/rust-cache@v2
with:
# Only update the cache on push onto the next branch. This strikes a nice balance between
Expand All @@ -34,31 +36,30 @@ jobs:
make build-no-std
make build-no-std-testing

feature-check:
name: Check feature combinations
check-features:
name: check all feature combinations
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
- uses: actions/checkout@v4
- name: Cleanup large tools for build space
uses: ./.github/actions/cleanup-runner
- uses: Swatinem/rust-cache@v2
with:
# Only update the cache on push onto the next branch. This strikes a nice balance between
# cache hits and cache evictions (github has a 10GB cache limit).
save-if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/next' }}
# Install cargo-hack or restore from cache if already built.
- uses: taiki-e/cache-cargo-install-action@v2
with:
tool: cargo-hack
- name: Update Rust toolchain
- name: Install rust
run: rustup update --no-self-update
# Run cargo hack check with each feature to ensure crates compile with individual features
- name: Check each feature
run: cargo hack check --each-feature --workspace --exclude bench-prover
- name: Install cargo-hack
uses: taiki-e/install-action@cargo-hack
- name: Check all feature combinations
run: make check-features

build-benches:
name: Check benchmarks compilation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
- name: Cleanup large tools for build space
uses: ./.github/actions/cleanup-runner
- uses: Swatinem/rust-cache@v2
with:
# Only update the cache on push onto the next branch. This strikes a nice balance between
Expand Down
21 changes: 21 additions & 0 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,17 @@ permissions:
contents: read

jobs:
cargo-deny:
name: cargo-deny on ubuntu-latest
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: taiki-e/install-action@v2
with:
tool: cargo-deny
- name: Check dependencies with cargo-deny
run: cargo deny check

typos:
name: spellcheck
runs-on: ubuntu-latest
Expand Down Expand Up @@ -44,6 +55,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
- name: Cleanup large tools for build space
uses: ./.github/actions/cleanup-runner
- uses: Swatinem/rust-cache@v2
with:
# Only update the cache on push onto the next branch. This strikes a nice balance between
Expand All @@ -60,6 +73,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
- name: Cleanup large tools for build space
uses: ./.github/actions/cleanup-runner
- uses: Swatinem/rust-cache@v2
with:
# Only update the cache on push onto the next branch. This strikes a nice balance between
Expand All @@ -77,6 +92,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
- name: Cleanup large tools for build space
uses: ./.github/actions/cleanup-runner
- uses: Swatinem/rust-cache@v2
with:
# Only update the cache on push onto the next branch. This strikes a nice balance between
Expand All @@ -93,6 +110,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
- name: Cleanup large tools for build space
uses: ./.github/actions/cleanup-runner
- uses: Swatinem/rust-cache@v2
with:
# Only update the cache on push onto the next branch. This strikes a nice balance between
Expand All @@ -108,6 +127,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
- name: Cleanup large tools for build space
uses: ./.github/actions/cleanup-runner
- name: Rustup
run: rustup update --no-self-update
- uses: Swatinem/rust-cache@v2
Expand Down
34 changes: 0 additions & 34 deletions .github/workflows/msrv.yml

This file was deleted.

19 changes: 18 additions & 1 deletion .github/workflows/release-plz-dry-run.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,10 @@ on:
push:
branches: [main, next]

concurrency:
group: "${{ github.workflow }} @ ${{ github.ref }}"
cancel-in-progress: true

jobs:
release-plz-dry-run-release:
name: Release-plz dry-run
Expand All @@ -17,9 +21,22 @@ jobs:
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Cleanup large tools for build space
uses: ./.github/actions/cleanup-runner
- name: Install dependencies
run: sudo apt-get update && sudo apt-get install -y jq
- name: Update Rust toolchain
run: rustup update --no-self-update
- uses: Swatinem/rust-cache@v2
- uses: taiki-e/install-action@v2
with:
tool: cargo-binstall
- name: Install cargo-msrv
run: cargo binstall --no-confirm --force cargo-msrv
- name: Check MSRV for each workspace member
run: |
rustup update --no-self-update
export PATH="$HOME/.cargo/bin:$PATH"
./scripts/check-msrv.sh
- name: Run release-plz
uses: release-plz/action@v0.5
with:
Expand Down
15 changes: 14 additions & 1 deletion .github/workflows/release-plz.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,9 +34,22 @@ jobs:
exit 1
fi
echo "Release tag matches main HEAD — continuing."
- name: Cleanup large tools for build space
uses: ./.github/actions/cleanup-runner
- name: Install dependencies
run: sudo apt-get update && sudo apt-get install -y jq
- name: Update Rust toolchain
run: rustup update --no-self-update
- uses: Swatinem/rust-cache@v2
- uses: taiki-e/install-action@v2
with:
tool: cargo-binstall
- name: Install cargo-msrv
run: cargo binstall --no-confirm --force cargo-msrv
- name: Check MSRV for each workspace member
run: |
rustup update --no-self-update
export PATH="$HOME/.cargo/bin:$PATH"
./scripts/check-msrv.sh
- name: Run release-plz
uses: release-plz/action@v0.5
with:
Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
- name: Cleanup large tools for build space
uses: ./.github/actions/cleanup-runner
- uses: taiki-e/install-action@nextest
- uses: Swatinem/rust-cache@v2
with:
Expand All @@ -38,6 +40,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
- name: Cleanup large tools for build space
uses: ./.github/actions/cleanup-runner
- uses: Swatinem/rust-cache@v2
with:
save-if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/next' }}
Expand Down
18 changes: 17 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,21 @@

### Features

- [BREAKING] Refactored storage slots to be accessed by names instead of indices ([#1987](https://github.com/0xMiden/miden-base/pull/1987), [#2025](https://github.com/0xMiden/miden-base/pull/2025), [#2149](https://github.com/0xMiden/miden-base/pull/2149), [#2150](https://github.com/0xMiden/miden-base/pull/2150), [#2153](https://github.com/0xMiden/miden-base/pull/2153), [#2154](https://github.com/0xMiden/miden-base/pull/2154), [#2161](https://github.com/0xMiden/miden-base/pull/2161), [#2170](https://github.com/0xMiden/miden-base/pull/2170)).
- [BREAKING] Refactored storage slots to be accessed by names instead of indices ([#1987](https://github.com/0xMiden/miden-base/pull/1987), [#2025](https://github.com/0xMiden/miden-base/pull/2025), [#2149](https://github.com/0xMiden/miden-base/pull/2149), [#2150](https://github.com/0xMiden/miden-base/pull/2150), [#2153](https://github.com/0xMiden/miden-base/pull/2153), [#2154](https://github.com/0xMiden/miden-base/pull/2154), [#2160](https://github.com/0xMiden/miden-base/pull/2160), [#2161](https://github.com/0xMiden/miden-base/pull/2161), [#2170](https://github.com/0xMiden/miden-base/pull/2170)).
- [BREAKING] Allowed account components to share identical account code procedures ([#2164](https://github.com/0xMiden/miden-base/pull/2164)).
- Add `From<&ExecutedTransaction> for TransactionHeader` implementation ([#2178](https://github.com/0xMiden/miden-base/pull/2178)).
- Add `AccountId::parse()` helper function to parse both hex and bech32 formats ([#2223](https://github.com/0xMiden/miden-base/pull/2223)).
- Add `read_foreign_account_inputs()`, `read_vault_asset_witnesses()`, and `read_storage_map_witness()` for `TransactionInputs` ([#2246](https://github.com/0xMiden/miden-base/pull/2246)).
- [BREAKING] Introduce `NoteAttachment` as part of `NoteMetadata` and remove `aux` and `execution_hint` ([#2249](https://github.com/0xMiden/miden-base/pull/2249)).
- [BREAKING] Introduce `NoteAttachment` as part of `NoteMetadata` and remove `aux` and `execution_hint` ([#2249](https://github.com/0xMiden/miden-base/pull/2249), [#2252](https://github.com/0xMiden/miden-base/pull/2252)).
- [BREAKING] Introduce `NoteAttachment` as part of `NoteMetadata` and remove `aux` and `execution_hint` ([#2249](https://github.com/0xMiden/miden-base/pull/2249), [#2252](https://github.com/0xMiden/miden-base/pull/2252), [#2260](https://github.com/0xMiden/miden-base/pull/2260)).
- [BREAKING] Introduce `NoteAttachment` as part of `NoteMetadata` and remove `aux` and `execution_hint` ([#2249](https://github.com/0xMiden/miden-base/pull/2249), [#2252](https://github.com/0xMiden/miden-base/pull/2252), [#2260](https://github.com/0xMiden/miden-base/pull/2260), [#2268](https://github.com/0xMiden/miden-base/pull/2268)).
- Introduce standard `NetworkAccountTarget` attachment for use in network transactions which replaces `NoteTag::NetworkAccount` ([#2257](https://github.com/0xMiden/miden-base/pull/2257)).
- Added `miden::standards::access::ownable` standard module for component ownership management, and integrated it into the `network_fungible` faucet (including new tests). ([#2228](https://github.com/0xMiden/miden-base/pull/2228)).

### Changes

- No longer pad the note inputs on insertion into advice map ([#2232](https://github.com/0xMiden/miden-base/pull/2232)).
- Added proc-macro `WordWrapper` to ease implementation of `Word`-wrapping types ([#2071](https://github.com/0xMiden/miden-base/pull/2108)).
- [BREAKING] Added `BlockBody` and `BlockProof` structs in preparation for validator signatures and deferred block proving ([#2012](https://github.com/0xMiden/miden-base/pull/2012)).
- [BREAKING] Renamed `TransactionEvent` into `TransactionEventId` and split event handling into data extraction and handling logic ([#2071](https://github.com/0xMiden/miden-base/pull/2071)).
Expand All @@ -25,6 +35,12 @@
- [BREAKING] Renamed `AccountProcedureInfo` into `AccountProcedureRoot` and remove storage offset and size ([#2162](https://github.com/0xMiden/miden-base/pull/2162)).
- [BREAKING] Made `AccountProcedureIndexMap` construction infallible ([#2163](https://github.com/0xMiden/miden-base/pull/2163)).
- [BREAKING] Renamed `tracked_procedure_roots_slot` to `trigger_procedure_roots_slot` in ACL auth components for naming consistency ([#2166](https://github.com/0xMiden/miden-base/pull/2166)).
- [BREAKING] Refactor `miden-objects` and `miden-lib` into `miden-protocol` and `miden-standards` ([#2184](https://github.com/0xMiden/miden-base/pull/2184), [#2191](https://github.com/0xMiden/miden-base/pull/2191), [#2197](https://github.com/0xMiden/miden-base/pull/2197), [#2255](https://github.com/0xMiden/miden-base/pull/2255)).
- [BREAKING] Migrated to `miden-vm` v0.20 and `miden-crypto` v0.19 ([#2158](https://github.com/0xMiden/miden-base/pull/2158)).
- [BREAKING] Refactored `AccountStorageDelta` to use a new `StorageSlotDelta` type ([#2182](https://github.com/0xMiden/miden-base/pull/2182)).
- [BREAKING] Removed OLD_MAP_ROOT from being returned when calling [`native_account::set_map_item`](crates/miden-lib/asm/miden/native_account.masm) ([#2194](https://github.com/0xMiden/miden-base/pull/2194)).
- [BREAKING] Refactored account component templates into `AccountStorageSchema` ([#2193](https://github.com/0xMiden/miden-base/pull/2193)).
- [BREAKING] Refactor note tags to be arbitrary `u32` values and drop previous validation ([#2219](https://github.com/0xMiden/miden-base/pull/2219)).

## 0.12.4 (2025-11-26)

Expand Down
Loading