diff --git a/CHANGELOG.md b/CHANGELOG.md index c3279bb92..2f4ef5575 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,17 +1,17 @@ # Changelog -## Unreleased - -#### Changes - -- [BREAKING] Removed serialization of AST structs (#1442). +## 0.10.1 (2024-08-10) #### Enhancements +- Removed linear search of trace rows from `BlockHashTableRow::table_init()` (#1439). - Exposed some pretty printing internals for `MastNode` (#1441). - Made `KernelLibrary` impl `Clone` and `AsRef` (#1441). - Added serialization to the `Program` struct (#1442). +#### Changes + +- [BREAKING] Removed serialization of AST structs (#1442). ## 0.10.0 (2024-08-06) @@ -47,7 +47,6 @@ - Added `make test-fast` and `make test-skip-proptests` Makefile targets for faster testing during local development. - Added `ProgramFile::read_with` constructor that takes a `SourceManager` impl to use for source management. - Added `RowIndex(u32)` (#1408). -- Removed linear search of trace rows from `BlockHashTableRow::table_init()` (#1439). #### Changed diff --git a/Cargo.lock b/Cargo.lock index adb725263..8245e9570 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -113,13 +113,14 @@ dependencies = [ [[package]] name = "assert_cmd" -version = "2.0.15" +version = "2.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc65048dd435533bb1baf2ed9956b9a278fbfdcf90301b39ee117f06c0199d37" +checksum = "dc1835b7f27878de8525dc71410b5a31cdcc5f230aed5ba5df968e09c201b23d" dependencies = [ "anstyle", "bstr", "doc-comment", + "libc", "predicates", "predicates-core", "predicates-tree", @@ -242,9 +243,9 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" [[package]] name = "cc" -version = "1.1.7" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26a5c3fd7bfa1ce3897a3a3501d362b2d87b7f2583ebcb4a949ec25911025cbc" +checksum = "e9e8aabfac534be767c909e0690571677d49f41bd8465ae876fe043d52ba5292" dependencies = [ "jobserver", "libc", @@ -285,9 +286,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.13" +version = "4.5.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fbb260a053428790f3de475e304ff84cdbc4face759ea7a3e64c1edd938a7fc" +checksum = "11d8838454fda655dafd3accb2b6e2bea645b9e4078abe84a22ceb947235c5cc" dependencies = [ "clap_builder", "clap_derive", @@ -295,9 +296,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.13" +version = "4.5.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64b17d7ea74e9f833c7dbf2cbe4fb12ff26783eda4782a8975b72f895c9b4d99" +checksum = "216aec2b177652e3846684cbfe25c9964d18ec45234f0f5da5157b207ed1aab6" dependencies = [ "anstream", "anstyle", @@ -356,9 +357,9 @@ dependencies = [ [[package]] name = "core-foundation-sys" -version = "0.8.6" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "core-graphics-types" @@ -999,12 +1000,12 @@ dependencies = [ [[package]] name = "miden-air" -version = "0.10.0" +version = "0.10.2" dependencies = [ "criterion", "miden-core", + "miden-thiserror", "proptest", - "thiserror", "winter-air", "winter-prover", "winter-rand-utils", @@ -1012,37 +1013,37 @@ dependencies = [ [[package]] name = "miden-assembly" -version = "0.10.0" +version = "0.10.2" dependencies = [ "aho-corasick", "lalrpop", "lalrpop-util", "miden-core", - "miette", + "miden-miette", + "miden-thiserror", "pretty_assertions", "regex", - "rustc_version", + "rustc_version 0.4.0", "smallvec", - "thiserror", "tracing", "unicode-width", ] [[package]] name = "miden-core" -version = "0.10.0" +version = "0.10.2" dependencies = [ "lock_api", "loom", "memchr", "miden-crypto", "miden-formatting", - "miette", + "miden-miette", + "miden-thiserror", "num-derive", "num-traits", "parking_lot", "proptest", - "thiserror", "winter-math 0.9.0", "winter-rand-utils", "winter-utils 0.9.1", @@ -1087,9 +1088,51 @@ dependencies = [ "winter-math 0.9.0", ] +[[package]] +name = "miden-miette" +version = "7.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c532250422d933f15b148fb81e4522a5d649c178ab420d0d596c86228da35570" +dependencies = [ + "backtrace", + "backtrace-ext", + "cfg-if", + "futures", + "indenter", + "lazy_static", + "miden-miette-derive", + "miden-thiserror", + "owo-colors", + "regex", + "rustc_version 0.2.3", + "rustversion", + "serde_json", + "spin", + "strip-ansi-escapes", + "supports-color", + "supports-hyperlinks", + "supports-unicode", + "syn", + "terminal_size", + "textwrap", + "trybuild", + "unicode-width", +] + +[[package]] +name = "miden-miette-derive" +version = "7.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1cc759f0a2947acae217a2f32f722105cacc57d17d5f93bc16362142943a4edd" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "miden-processor" -version = "0.10.0" +version = "0.10.2" dependencies = [ "logtest", "miden-air", @@ -1104,7 +1147,7 @@ dependencies = [ [[package]] name = "miden-prover" -version = "0.10.0" +version = "0.10.2" dependencies = [ "elsa", "miden-air", @@ -1117,7 +1160,7 @@ dependencies = [ [[package]] name = "miden-stdlib" -version = "0.10.0" +version = "0.10.2" dependencies = [ "blake3", "miden-air", @@ -1152,9 +1195,29 @@ dependencies = [ "winter-rand-utils", ] +[[package]] +name = "miden-thiserror" +version = "1.0.59" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "183ff8de338956ecfde3a38573241eb7a6f3d44d73866c210e5629c07fa00253" +dependencies = [ + "miden-thiserror-impl", +] + +[[package]] +name = "miden-thiserror-impl" +version = "1.0.59" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ee4176a0f2e7d29d2a8ee7e60b6deb14ce67a20e94c3e2c7275cdb8804e1862" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "miden-verifier" -version = "0.10.0" +version = "0.10.2" dependencies = [ "miden-air", "miden-core", @@ -1164,7 +1227,7 @@ dependencies = [ [[package]] name = "miden-vm" -version = "0.10.0" +version = "0.10.2" dependencies = [ "assert_cmd", "blake3", @@ -1192,46 +1255,6 @@ dependencies = [ "winter-fri 0.8.3", ] -[[package]] -name = "miette" -version = "7.1.0" -source = "git+https://github.com/bitwalker/miette?branch=no-std#e918fbde6c9853fe5e0db8e8e05bf7fbc8d2cc15" -dependencies = [ - "backtrace", - "backtrace-ext", - "cfg-if", - "futures", - "indenter", - "lazy_static", - "miette-derive", - "owo-colors", - "regex", - "rustc_version", - "rustversion", - "serde_json", - "spin", - "strip-ansi-escapes", - "supports-color", - "supports-hyperlinks", - "supports-unicode", - "syn", - "terminal_size", - "textwrap", - "thiserror", - "trybuild", - "unicode-width", -] - -[[package]] -name = "miette-derive" -version = "7.1.0" -source = "git+https://github.com/bitwalker/miette?branch=no-std#e918fbde6c9853fe5e0db8e8e05bf7fbc8d2cc15" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "miniz_oxide" version = "0.7.4" @@ -1380,9 +1403,9 @@ dependencies = [ [[package]] name = "object" -version = "0.36.2" +version = "0.36.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f203fa8daa7bb185f760ae12bd8e097f63d17041dcdcaf675ac54cdf863170e" +checksum = "27b64972346851a39438c60b341ebc01bba47464ae329e55cf343eb93964efd9" dependencies = [ "memchr", ] @@ -1739,7 +1762,16 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" dependencies = [ - "semver", + "semver 0.9.0", +] + +[[package]] +name = "rustc_version" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" +dependencies = [ + "semver 1.0.23", ] [[package]] @@ -1828,6 +1860,12 @@ dependencies = [ "semver-parser", ] +[[package]] +name = "semver" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" + [[package]] name = "semver-parser" version = "0.7.0" @@ -1836,18 +1874,18 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "serde" -version = "1.0.204" +version = "1.0.206" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12" +checksum = "5b3e4cd94123dd520a128bcd11e34d9e9e423e7e3e50425cb1b4b1e3549d0284" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.204" +version = "1.0.206" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222" +checksum = "fabfb6138d2383ea8208cf98ccf69cdfb1aff4088460681d84189aa259762f97" dependencies = [ "proc-macro2", "quote", @@ -1986,9 +2024,9 @@ checksum = "b7401a30af6cb5818bb64852270bb722533397edcfc7344954a38f420819ece2" [[package]] name = "syn" -version = "2.0.72" +version = "2.0.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc4b9b9bf2add8093d3f2c0204471e951b2285580335de42f9d2534f3ae7a8af" +checksum = "837a7e8026c6ce912ff01cefbe8cafc2f8010ac49682e2a3d9decc3bce1ecaaf" dependencies = [ "proc-macro2", "quote", @@ -2090,16 +2128,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.59" -source = "git+https://github.com/bitwalker/thiserror?branch=no-std#444c920234c683b73e1da67ba371a7084ae11725" +version = "1.0.63" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.59" -source = "git+https://github.com/bitwalker/thiserror?branch=no-std#444c920234c683b73e1da67ba371a7084ae11725" +version = "1.0.63" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261" dependencies = [ "proc-macro2", "quote", diff --git a/Cargo.toml b/Cargo.toml index 7a275ae2b..ac69f241e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -32,7 +32,3 @@ inherits = "release" debug = true debug-assertions = true overflow-checks = true - -[patch.crates-io] -thiserror = { git = "https://github.com/bitwalker/thiserror", branch = "no-std" } -miette = { git = "https://github.com/bitwalker/miette", branch = "no-std" } diff --git a/air/Cargo.toml b/air/Cargo.toml index 07cef453b..547883760 100644 --- a/air/Cargo.toml +++ b/air/Cargo.toml @@ -1,11 +1,11 @@ [package] name = "miden-air" -version = "0.10.0" +version = "0.10.2" description = "Algebraic intermediate representation of Miden VM processor" -documentation = "https://docs.rs/miden-air/0.10.0" +documentation = "https://docs.rs/miden-air/0.10.2" +readme = "README.md" categories = ["cryptography", "no-std"] keywords = ["air", "arithmetization", "crypto", "miden"] -readme.workspace = true license.workspace = true authors.workspace = true homepage.workspace = true @@ -31,10 +31,10 @@ std = ["vm-core/std", "winter-air/std", "thiserror/std"] testing = [] [dependencies] +thiserror = { package = "miden-thiserror", version = "1.0", default-features = false } vm-core = { package = "miden-core", path = "../core", version = "0.10", default-features = false } winter-air = { package = "winter-air", version = "0.9", default-features = false } winter-prover = { package = "winter-prover", version = "0.9", default-features = false } -thiserror = { version = "1.0", git = "https://github.com/bitwalker/thiserror", branch = "no-std", default-features = false } [dev-dependencies] criterion = "0.5" diff --git a/assembly/Cargo.toml b/assembly/Cargo.toml index bc7463735..71bc63dc6 100644 --- a/assembly/Cargo.toml +++ b/assembly/Cargo.toml @@ -1,11 +1,11 @@ [package] name = "miden-assembly" -version = "0.10.0" +version = "0.10.2" description = "Miden VM assembly language" -documentation = "https://docs.rs/miden-assembly/0.10.0" +documentation = "https://docs.rs/miden-assembly/0.10.2" +readme = "README.md" categories = ["compilers", "no-std"] keywords = ["assembler", "assembly", "language", "miden"] -readme.workspace = true license.workspace = true authors.workspace = true homepage.workspace = true @@ -19,35 +19,20 @@ doctest = false [features] default = ["std"] -std = [ - "aho-corasick/std", - "vm-core/std", - "miette/fancy", - "thiserror/std", - "miette/std", -] +std = ["aho-corasick/std", "miette/fancy", "miette/std", "thiserror/std", "vm-core/std"] testing = ["dep:regex"] [dependencies] aho-corasick = { version = "1.1", default-features = false } lalrpop-util = { version = "0.20", default-features = false } -miette = { version = "7.1.0", git = "https://github.com/bitwalker/miette", branch = "no-std", default-features = false, features = [ +miette = { package = "miden-miette", version = "7.1", default-features = false, features = [ "fancy-no-syscall", - "derive", + "derive" ] } -regex = { version = "1.10", optional = true, default-features = false, features = [ - "unicode", - "perf", -] } -smallvec = { version = "1.13", features = [ - "union", - "const_generics", - "const_new", -] } -tracing = { version = "0.1", default-features = false, features = [ - "attributes", -] } -thiserror = { version = "1.0", git = "https://github.com/bitwalker/thiserror", branch = "no-std", default-features = false } +regex = { version = "1.10", optional = true, default-features = false, features = ["unicode", "perf"] } +smallvec = { version = "1.13", features = ["union", "const_generics", "const_new"] } +thiserror = { package = "miden-thiserror", version = "1.0", default-features = false } +tracing = { version = "0.1", default-features = false, features = ["attributes"] } unicode-width = { version = "0.1", features = ["no_std"] } vm-core = { package = "miden-core", path = "../core", version = "0.10", default-features = false, features = [ "diagnostics", @@ -55,11 +40,8 @@ vm-core = { package = "miden-core", path = "../core", version = "0.10", default- [dev-dependencies] pretty_assertions = "1.4" -regex = { version = "1.10", default-features = false, features = [ - "unicode", - "perf", -] } +regex = { version = "1.10", default-features = false, features = [ "unicode", "perf"] } [build-dependencies] lalrpop = { version = "0.20", default-features = false } -rustc_version = "0.2" +rustc_version = "0.4" diff --git a/core/Cargo.toml b/core/Cargo.toml index e17e35a53..71a35f5f6 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -1,11 +1,11 @@ [package] name = "miden-core" -version = "0.10.0" +version = "0.10.2" description = "Miden VM core components" -documentation = "https://docs.rs/miden-core/0.10.0" +documentation = "https://docs.rs/miden-core/0.10.2" +readme = "README.md" categories = ["emulators", "no-std"] keywords = ["instruction-set", "miden", "program"] -readme.workspace = true license.workspace = true authors.workspace = true homepage.workspace = true @@ -31,25 +31,25 @@ std = [ ] [dependencies] +lock_api = { version = "0.4", features = ["arc_lock"] } math = { package = "winter-math", version = "0.9", default-features = false } memchr = { version = "2.7", default-features = false } miden-crypto = { version = "0.10", default-features = false } miden-formatting = { version = "0.1", default-features = false } -miette = { version = "7.1.0", git = "https://github.com/bitwalker/miette", branch = "no-std", default-features = false, features = [ +miette = { package = "miden-miette", version = "7.1", default-features = false, features = [ "fancy-no-syscall", - "derive", + "derive" ], optional = true } -lock_api = { version = "0.4", features = ["arc_lock"] } -parking_lot = { version = "0.12", optional = true } num-derive = { version = "0.4", default-features = false } num-traits = { version = "0.2", default-features = false } -thiserror = { version = "1.0", git = "https://github.com/bitwalker/thiserror", branch = "no-std", default-features = false } +parking_lot = { version = "0.12", optional = true } +thiserror = { package = "miden-thiserror", version = "1.0", default-features = false } winter-utils = { package = "winter-utils", version = "0.9", default-features = false } [dev-dependencies] -proptest = "1.3" -rand_utils = { version = "0.9", package = "winter-rand-utils" } loom = "0.7" +proptest = "1.5" +rand_utils = { version = "0.9", package = "winter-rand-utils" } [target.'cfg(loom)'.dependencies] loom = "0.7" diff --git a/miden/Cargo.toml b/miden/Cargo.toml index be07ffb21..f8cc65be0 100644 --- a/miden/Cargo.toml +++ b/miden/Cargo.toml @@ -1,11 +1,11 @@ [package] name = "miden-vm" -version = "0.10.0" +version = "0.10.2" description = "Miden virtual machine" -documentation = "https://docs.rs/miden-vm/0.10.0" +documentation = "https://docs.rs/miden-vm/0.10.2" +readme = "README.md" categories = ["cryptography", "emulators", "no-std"] keywords = ["miden", "stark", "virtual-machine", "zkp"] -readme.workspace = true license.workspace = true authors.workspace = true homepage.workspace = true diff --git a/processor/Cargo.toml b/processor/Cargo.toml index 9be3e0675..f3db7aca6 100644 --- a/processor/Cargo.toml +++ b/processor/Cargo.toml @@ -1,11 +1,11 @@ [package] name = "miden-processor" -version = "0.10.0" +version = "0.10.2" description = "Miden VM processor" -documentation = "https://docs.rs/miden-processor/0.10.0" +documentation = "https://docs.rs/miden-processor/0.10.2" +readme = "README.md" categories = ["emulators", "no-std"] keywords = ["miden", "virtual-machine"] -readme.workspace = true license.workspace = true authors.workspace = true homepage.workspace = true @@ -24,16 +24,14 @@ testing = ["miden-air/testing"] std = ["vm-core/std", "winter-prover/std"] [dependencies] -tracing = { version = "0.1", default-features = false, features = [ - "attributes", -] } -vm-core = { package = "miden-core", path = "../core", version = "0.10", default-features = false } miden-air = { package = "miden-air", path = "../air", version = "0.10", default-features = false } +tracing = { version = "0.1", default-features = false, features = ["attributes"] } +vm-core = { package = "miden-core", path = "../core", version = "0.10", default-features = false } winter-prover = { package = "winter-prover", version = "0.9", default-features = false } [dev-dependencies] -logtest = { version = "2.0", default-features = false } assembly = { package = "miden-assembly", path = "../assembly", version = "0.10", default-features = false } +logtest = { version = "2.0", default-features = false } test-utils = { package = "miden-test-utils", path = "../test-utils" } winter-fri = { package = "winter-fri", version = "0.9" } winter-utils = { package = "winter-utils", version = "0.9" } diff --git a/prover/Cargo.toml b/prover/Cargo.toml index 90d04f7fa..7ca152470 100644 --- a/prover/Cargo.toml +++ b/prover/Cargo.toml @@ -1,11 +1,11 @@ [package] name = "miden-prover" -version = "0.10.0" +version = "0.10.2" description = "Miden VM prover" -documentation = "https://docs.rs/miden-prover/0.10.0" +documentation = "https://docs.rs/miden-prover/0.10.2" +readme = "README.md" categories = ["cryptography", "emulators", "no-std"] keywords = ["miden", "prover", "stark", "zkp"] -readme.workspace = true license.workspace = true authors.workspace = true homepage.workspace = true diff --git a/stdlib/Cargo.toml b/stdlib/Cargo.toml index b372e90bc..0625a07c6 100644 --- a/stdlib/Cargo.toml +++ b/stdlib/Cargo.toml @@ -1,9 +1,9 @@ [package] name = "miden-stdlib" -version = "0.10.0" +version = "0.10.2" description = "Miden VM standard library" +documentation = "https://docs.rs/miden-stdlib/0.10.2" readme = "README.md" -documentation = "https://docs.rs/miden-stdlib/0.10.0" categories = ["cryptography", "mathematics"] keywords = ["miden", "program", "stdlib"] license.workspace = true diff --git a/test-utils/Cargo.toml b/test-utils/Cargo.toml index ef67bdb01..0d6ac384b 100644 --- a/test-utils/Cargo.toml +++ b/test-utils/Cargo.toml @@ -2,9 +2,9 @@ name = "miden-test-utils" version = "0.1.0" description = "Test utilities for Miden VM programs" +readme = "README.md" categories = ["development-tools::testing", "no-std"] keywords = ["miden", "test", "virtual-machine"] -readme.workspace = true license.workspace = true authors.workspace = true homepage.workspace = true diff --git a/verifier/Cargo.toml b/verifier/Cargo.toml index ff47f0ba0..cf68898fb 100644 --- a/verifier/Cargo.toml +++ b/verifier/Cargo.toml @@ -1,11 +1,11 @@ [package] name = "miden-verifier" -version = "0.10.0" +version = "0.10.2" description="Miden VM execution verifier" -documentation = "https://docs.rs/miden-verifier/0.10.0" +documentation = "https://docs.rs/miden-verifier/0.10.2" +readme = "README.md" categories = ["cryptography", "no-std"] keywords = ["miden", "stark", "verifier", "zkp"] -readme.workspace = true license.workspace = true authors.workspace = true homepage.workspace = true