From dbf6eba850bd4e66ec7a47629571016c17bcea13 Mon Sep 17 00:00:00 2001 From: Denys Zadorozhnyi Date: Fri, 16 Aug 2024 11:22:17 +0300 Subject: [PATCH 1/5] chore: switch release PRs to branch of of the next branch instead of main --- .github/workflows/release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 98c261297..e38ac4896 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,5 +1,5 @@ # Runs `release-plz release` only after the release PR (starts with `release-plz-`) -# is merged to the main branch. See `release_always = false` in `release-plz.toml` +# is merged to the next branch. See `release_always = false` in `release-plz.toml` # Publishes any unpublished crates when. # Does nothing if all crates are already published (i.e. have their versions on crates.io). # Does not create/update release PRs. @@ -13,7 +13,7 @@ name: release-plz on: push: branches: - - main + - next env: CARGO_MAKE_TOOLCHAIN: nightly-2024-05-07 From 2b70d61cb6fb1d79dde87bf932572119ebc4ddb3 Mon Sep 17 00:00:00 2001 From: Denys Zadorozhnyi Date: Fri, 16 Aug 2024 11:27:28 +0300 Subject: [PATCH 2/5] chore: set `midenc-debug` version to `0.0.0` to be in sync with crates.io --- Cargo.lock | 2 +- Cargo.toml | 2 +- midenc-debug/Cargo.toml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 983a9e4b7..84da707be 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3130,7 +3130,7 @@ dependencies = [ [[package]] name = "midenc-debug" -version = "0.0.1" +version = "0.0.0" dependencies = [ "clap", "crossterm", diff --git a/Cargo.toml b/Cargo.toml index faab64056..1613714ab 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -93,7 +93,7 @@ miden-parsing = "0.1" midenc-frontend-wasm = { version = "0.0.1", path = "frontend-wasm" } midenc-compile = { version = "0.0.1", path = "midenc-compile" } midenc-driver = { version = "0.0.1", path = "midenc-driver" } -midenc-debug = { version = "0.0.1", path = "midenc-debug" } +midenc-debug = { version = "0.0.0", path = "midenc-debug" } midenc-session = { version = "0.0.1", path = "midenc-session" } miden-integration-tests = { version = "0.0.0", path = "tests/integration" } wat = "1.0.69" diff --git a/midenc-debug/Cargo.toml b/midenc-debug/Cargo.toml index ee5095a2f..f329c3981 100644 --- a/midenc-debug/Cargo.toml +++ b/midenc-debug/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "midenc-debug" description = "An interactive debugger for Miden VM programs" -version = "0.0.1" +version = "0.0.0" rust-version.workspace = true authors.workspace = true repository.workspace = true From 6ad0ccf724e0ab209f05e81f8e3ed0a51cc5f33c Mon Sep 17 00:00:00 2001 From: Denys Zadorozhnyi Date: Fri, 16 Aug 2024 11:57:44 +0300 Subject: [PATCH 3/5] chore: add `miden-sdk` and `miden-stdlib-sys` crates to the workspace --- CONTRIBUTING.md | 9 ++++----- Cargo.lock | 8 ++++++++ Cargo.toml | 2 ++ 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 272746889..932a83f29 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -13,8 +13,7 @@ Install `release-plz` CLI tool following the instructions [here](https://release The release process for the Miden Compiler and Miden SDK is managed using the `release-plz` tool. The following steps outline the process for creating a new release: 1. Run `release-plz update` in the repo root folder to update the compiler crates versions and generate changelogs. -2. Run `release-plz update` in the `sdk` folder to update the SDK crates versions and generate changelogs. -3. Create a release PR naming the branch with the `release-plz-` suffix (its important to use this suffix to trigger the crate publishing on CI in step 4). -4. Review the changes in the release PR, commit edits if needed and merge it into the main branch. -5. The CI will automatically run `release-plz release` after the release PR is merged to publish the new versions to crates.io. -6. Set a git tag for the published crates to mark the release. +2. Create a release PR naming the branch with the `release-plz-` suffix (its important to use this suffix to trigger the crate publishing on CI in step 4). +3. Review the changes in the release PR, commit edits if needed and merge it into the main branch. +4. The CI will automatically run `release-plz release` after the release PR is merged to publish the new versions to crates.io. +5. Set a git tag for the published crates to mark the release. diff --git a/Cargo.lock b/Cargo.lock index 84da707be..0da786fc7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3039,6 +3039,14 @@ dependencies = [ "winter-prover", ] +[[package]] +name = "miden-sdk" +version = "0.0.1" +dependencies = [ + "miden-base-sys", + "miden-stdlib-sys", +] + [[package]] name = "miden-stdlib" version = "0.10.3" diff --git a/Cargo.toml b/Cargo.toml index 1613714ab..8700f7f2b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -14,6 +14,8 @@ members = [ "midenc-driver", "midenc-session", "sdk/base-sys", + "sdk/stdlib-sys", + "sdk/sdk", "tools/*", "frontend-wasm", "tests/integration", From 3ee9de645b2f4f6c72ada162199236a329e3c44e Mon Sep 17 00:00:00 2001 From: Denys Zadorozhnyi Date: Fri, 16 Aug 2024 12:01:12 +0300 Subject: [PATCH 4/5] chore: run `release-plz update` --- Cargo.lock | 8 ++++---- Cargo.toml | 6 +++--- hir-macros/CHANGELOG.md | 8 ++++++++ hir-macros/Cargo.toml | 2 +- midenc-debug/CHANGELOG.md | 21 +++++++++++++++++++++ midenc-debug/Cargo.toml | 2 +- midenc-session/CHANGELOG.md | 27 +++++++++++++++++++++++++++ midenc-session/Cargo.toml | 4 ++-- sdk/base-sys/CHANGELOG.md | 24 ++++++++++++++++++++++++ sdk/base-sys/Cargo.toml | 4 ++-- 10 files changed, 93 insertions(+), 13 deletions(-) create mode 100644 midenc-debug/CHANGELOG.md create mode 100644 sdk/base-sys/CHANGELOG.md diff --git a/Cargo.lock b/Cargo.lock index 0da786fc7..b58ac7a2d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2856,7 +2856,7 @@ dependencies = [ [[package]] name = "miden-base-sys" -version = "0.0.0" +version = "0.0.1" dependencies = [ "miden-assembly", "miden-stdlib-sys", @@ -3138,7 +3138,7 @@ dependencies = [ [[package]] name = "midenc-debug" -version = "0.0.0" +version = "0.0.1" dependencies = [ "clap", "crossterm", @@ -3251,7 +3251,7 @@ dependencies = [ [[package]] name = "midenc-hir-macros" -version = "0.0.1" +version = "0.0.2" dependencies = [ "Inflector", "proc-macro2", @@ -3292,7 +3292,7 @@ dependencies = [ [[package]] name = "midenc-session" -version = "0.0.1" +version = "0.0.2" dependencies = [ "atty", "clap", diff --git a/Cargo.toml b/Cargo.toml index 8700f7f2b..63109e509 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -87,7 +87,7 @@ midenc-codegen-masm = { path = "codegen/masm" } miden-diagnostics = "0.1" midenc-hir = { version = "0.0.1", path = "hir" } midenc-hir-analysis = { version = "0.0.1", path = "hir-analysis" } -midenc-hir-macros = { version = "0.0.1", path = "hir-macros" } +midenc-hir-macros = { version = "0.0.2", path = "hir-macros" } midenc-hir-symbol = { version = "0.0.1", path = "hir-symbol" } midenc-hir-transform = { version = "0.0.1", path = "hir-transform" } midenc-hir-type = { version = "0.0.1", path = "hir-type" } @@ -95,8 +95,8 @@ miden-parsing = "0.1" midenc-frontend-wasm = { version = "0.0.1", path = "frontend-wasm" } midenc-compile = { version = "0.0.1", path = "midenc-compile" } midenc-driver = { version = "0.0.1", path = "midenc-driver" } -midenc-debug = { version = "0.0.0", path = "midenc-debug" } -midenc-session = { version = "0.0.1", path = "midenc-session" } +midenc-debug = { version = "0.0.1", path = "midenc-debug" } +midenc-session = { version = "0.0.2", path = "midenc-session" } miden-integration-tests = { version = "0.0.0", path = "tests/integration" } wat = "1.0.69" blake3 = "1.5" diff --git a/hir-macros/CHANGELOG.md b/hir-macros/CHANGELOG.md index bf30c0601..5eaed6e9f 100644 --- a/hir-macros/CHANGELOG.md +++ b/hir-macros/CHANGELOG.md @@ -6,6 +6,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.0.2](https://github.com/0xPolygonMiden/compiler/compare/midenc-hir-macros-v0.0.1...midenc-hir-macros-v0.0.2) - 2024-08-16 + +### Fixed +- *(cli)* improve help output, hide plumbing flags + +### Other +- unify diagnostics infa between compiler, assembler, vm + ## [0.0.1](https://github.com/0xPolygonMiden/compiler/compare/midenc-hir-macros-v0.0.0...midenc-hir-macros-v0.0.1) - 2024-07-25 ### Other diff --git a/hir-macros/Cargo.toml b/hir-macros/Cargo.toml index 37c2d4880..32aa47c90 100644 --- a/hir-macros/Cargo.toml +++ b/hir-macros/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "midenc-hir-macros" description = "Provides proc macro support for Miden IR" -version = "0.0.1" +version = "0.0.2" rust-version.workspace = true authors.workspace = true repository.workspace = true diff --git a/midenc-debug/CHANGELOG.md b/midenc-debug/CHANGELOG.md new file mode 100644 index 000000000..46df00d49 --- /dev/null +++ b/midenc-debug/CHANGELOG.md @@ -0,0 +1,21 @@ +# Changelog +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +## [0.0.1](https://github.com/0xPolygonMiden/compiler/compare/midenc-debug-v0.0.0...midenc-debug-v0.0.1) - 2024-08-16 + +### Other +- set `midenc-debug` version to `0.0.0` to be in sync with crates.io +- clean up naming in midenc-debug +- rename midenc-runner to midenc-debug +- fix typos ([#243](https://github.com/0xPolygonMiden/compiler/pull/243)) +- a few minor improvements +- set up mdbook deploy +- add guides for compiling rust->masm +- add mdbook skeleton +- provide some initial usage instructions +- Initial commit diff --git a/midenc-debug/Cargo.toml b/midenc-debug/Cargo.toml index f329c3981..ee5095a2f 100644 --- a/midenc-debug/Cargo.toml +++ b/midenc-debug/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "midenc-debug" description = "An interactive debugger for Miden VM programs" -version = "0.0.0" +version = "0.0.1" rust-version.workspace = true authors.workspace = true repository.workspace = true diff --git a/midenc-session/CHANGELOG.md b/midenc-session/CHANGELOG.md index 36a15681b..d5f251d9a 100644 --- a/midenc-session/CHANGELOG.md +++ b/midenc-session/CHANGELOG.md @@ -6,6 +6,33 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.0.2](https://github.com/0xPolygonMiden/compiler/compare/midenc-session-v0.0.1...midenc-session-v0.0.2) - 2024-08-16 + +### Added +- *(codegen)* propagate source spans from hir to masm + +### Fixed +- add tx kernel library with stubs and link it on `-l miden` +- infer link libraries from target env +- tweak session init handling of outputs +- various tests, cli bugs, vm test executor, test builder api +- *(cli)* improve help output, hide plumbing flags +- clap error formatting, unused deps + +### Other +- delete `miden-tx-kernel-sys` crate and move the code to `miden-base-sys` +- rename `midenc-tx-kernel` to `miden-base-sys` and move it to +- update to miden v0.10.3 +- update to miden v0.10.2 +- improve behavior of frontend config +- clean up driver init and output config +- fix various clippy warnings, bug in wasm br_table lowering, expect output +- move miden-vm deps to latest commit included in 0.10 releasef +- support compiled libraries, linker flags +- update to latest miden vm patchset +- unify diagnostics infa between compiler, assembler, vm +- unify compilation, rodata init, test harness + ## [0.0.1](https://github.com/0xPolygonMiden/compiler/compare/midenc-session-v0.0.0...midenc-session-v0.0.1) - 2024-07-18 ### Added diff --git a/midenc-session/Cargo.toml b/midenc-session/Cargo.toml index 03eb744f9..5b5a9d540 100644 --- a/midenc-session/Cargo.toml +++ b/midenc-session/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "midenc-session" description = "Session management for the Midenc compiler" -version = "0.0.1" +version = "0.0.2" rust-version.workspace = true authors.workspace = true repository.workspace = true @@ -23,5 +23,5 @@ miden-stdlib.workspace = true miden-diagnostics.workspace = true midenc-hir-symbol.workspace = true midenc-hir-macros.workspace = true -miden-base-sys = { version = "0.0.0", path = "../sdk/base-sys", features = ["masl-lib"] } +miden-base-sys = { version = "0.0.1", path = "../sdk/base-sys", features = ["masl-lib"] } thiserror.workspace = true diff --git a/sdk/base-sys/CHANGELOG.md b/sdk/base-sys/CHANGELOG.md new file mode 100644 index 000000000..965baa4e1 --- /dev/null +++ b/sdk/base-sys/CHANGELOG.md @@ -0,0 +1,24 @@ +# Changelog +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +## [0.0.1](https://github.com/0xPolygonMiden/compiler/compare/miden-base-sys-v0.0.0...miden-base-sys-v0.0.1) - 2024-08-16 + +### Fixed +- fix the build after VM v0.10.3 update + +### Other +- delete `miden-tx-kernel-sys` crate and move the code to `miden-base-sys` +- build the MASL for the tx kernel stubs in `build.rs` and +- rename `midenc-tx-kernel` to `miden-base-sys` and move it to +- fix typos ([#243](https://github.com/0xPolygonMiden/compiler/pull/243)) +- a few minor improvements +- set up mdbook deploy +- add guides for compiling rust->masm +- add mdbook skeleton +- provide some initial usage instructions +- Initial commit diff --git a/sdk/base-sys/Cargo.toml b/sdk/base-sys/Cargo.toml index 51594b446..39ad8c1c0 100644 --- a/sdk/base-sys/Cargo.toml +++ b/sdk/base-sys/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "miden-base-sys" description = "Miden rollup Rust bingings and MASM library" -version = "0.0.0" +version = "0.0.1" rust-version.workspace = true authors.workspace = true repository.workspace = true @@ -26,4 +26,4 @@ default = [] # User facing Rust bindings "bindings" = ["miden-stdlib-sys"] # MASL library for Miden rollup (tx kernel, etc.) used by the compiler in the link phase -"masl-lib" = [] \ No newline at end of file +"masl-lib" = [] From 199846cf1c1c9f535b8d5555cdced36bb08af36f Mon Sep 17 00:00:00 2001 From: Paul Schoenfelder Date: Sat, 17 Aug 2024 11:46:21 -0400 Subject: [PATCH 5/5] chore: clean up workspace members --- Cargo.toml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 63109e509..f26e38fef 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,6 +2,7 @@ resolver = "2" members = [ "codegen/*", + "frontend-wasm", "hir", "hir-analysis", "hir-macros", @@ -13,14 +14,12 @@ members = [ "midenc-debug", "midenc-driver", "midenc-session", - "sdk/base-sys", - "sdk/stdlib-sys", - "sdk/sdk", + "sdk/*", "tools/*", - "frontend-wasm", "tests/integration", ] exclude = [ + "sdk/.cargo", "tests/rust-apps/fib", "tests/rust-apps-wasm", "cargo-ext/tests/data",