From 3d61fb9665cdf9c18ac721dd990f0127e90a6fd8 Mon Sep 17 00:00:00 2001 From: Yi Lin Date: Mon, 1 Jul 2024 00:30:03 +0000 Subject: [PATCH 1/4] Bump version to v0.26 --- CHANGELOG.md | 26 ++++++++++++++++++++++++++ Cargo.toml | 2 +- macros/Cargo.toml | 2 +- 3 files changed, 28 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 74a11681dd..75f479c763 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,29 @@ +0.26.0 (2024-07-01) +=== + +## What's Changed + +### Policy +* Clear side forwarding bits properly by @wks in https://github.com/mmtk/mmtk-core/pull/1138 +* Fix mark bit clearing in PrepareChunkMap by @wks in https://github.com/mmtk/mmtk-core/pull/1148 +* Let MarkSweepSpace use BlockPageResource by @wks in https://github.com/mmtk/mmtk-core/pull/1150 +* Add SweepChunk to native MarkSweepSpace by @wks in https://github.com/mmtk/mmtk-core/pull/1158 + +### API +* Rename edge to slot by @wks in https://github.com/mmtk/mmtk-core/pull/1134 + +### Documentation +* Fix broken link and stale descriptions in doc by @wks in https://github.com/mmtk/mmtk-core/pull/1139 +* API migration guide. by @wks in https://github.com/mmtk/mmtk-core/pull/1133 +* Add back `DummyVM` as a part of the porting guide. Minor changes to MMTk initialization in the porting guide. by @qinsoon in https://github.com/mmtk/mmtk-core/pull/1142 +* Fix broken link to mmtk.h by @wks in https://github.com/mmtk/mmtk-core/pull/1149 + +### Misc +* Fix clippy warnings for Rust 1.79 by @wks in https://github.com/mmtk/mmtk-core/pull/1151 +* Display number of slots in timeline visualization by @wks in https://github.com/mmtk/mmtk-core/pull/1154 + +**Full Changelog**: https://github.com/mmtk/mmtk-core/compare/v0.25.0...v0.26.0 + 0.25.0 (2024-05-17) === diff --git a/Cargo.toml b/Cargo.toml index 04d140cfa5..6ab0637bb6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "mmtk" -version = "0.25.0" +version = "0.26.0" authors = ["The MMTk Developers <>"] edition = "2021" license = "MIT OR Apache-2.0" diff --git a/macros/Cargo.toml b/macros/Cargo.toml index f95db9352e..258b375b83 100644 --- a/macros/Cargo.toml +++ b/macros/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "mmtk-macros" # the macro crate uses the same version as mmtk-core -version = "0.25.0" +version = "0.26.0" edition = "2021" license = "MIT OR Apache-2.0" description = "MMTk macros provides procedural macros used by mmtk-core." From 75b890bba2577dbcc67625316b46fcd57bee26f4 Mon Sep 17 00:00:00 2001 From: Yi Lin Date: Mon, 1 Jul 2024 00:42:18 +0000 Subject: [PATCH 2/4] Update MSRV doc to N-4 --- README.md | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 723a77153a..536d279292 100644 --- a/README.md +++ b/README.md @@ -122,17 +122,20 @@ MMTk uses a pinned Rust version in the repository (recorded in the `rust-toolcha our tests and benchmarks using the pinned Rust version. We recommend using the pinned Rust version for development. We update the pinned Rust version between releases of mmtk-core to keep it close to the latest Rust stable release. The release cycle of mmtk-core is six weeks, roughly the same as -Rust itself. +Rust itself. -Our minimum support Rust version (MSRV) policy is "N-1" (note that N is *NOT* the current stable Rust release). That means we also ensure mmtk-core works -properly with the Rust toolchain that is one minor version before the version specified in +Our minimum support Rust version (MSRV) policy is "N-4" (note that N is the pinned Rust version for mmtk-core, +rather than the current stable Rust release). That means we ensure mmtk-core works +properly with the Rust toolchain that is within 4 minor versions before the version specified in `rust-toolchain`. For example, if `rust-toolchain` contains "1.61.2", the MSRV will be guaranteed -to be no later than "1.60.0". We may bump MSRV up to "N-1" when we need to make use of new Rust -features or a dependency crate that needs a newer Rust. In other words, we will not eagerly bump the MSRV, and the MSRV can lag behind "N-1" in practice. However, users shouldn't depend on this lag, and are encouraged to keep close to the +to be no later than "1.57.0". We may bump MSRV up to "N-4" when we need to make use of new Rust +features or a dependency crate that needs a newer Rust. In other words, we will not eagerly bump the MSRV, +and the MSRV can lag behind "N-4" in practice. However, users shouldn't depend on this lag, and are encouraged to keep close to the latest Rust toolchain rather than relying on an outdated version of Rust. -Note, however, that we may switch to a more conservative MSRV policy in the future when MMTk reaches -a stable state. +The "N-4" policy guarantees that MMTk users will not be forced to upgrade the Rust +toolchain in their environments due to MSRV for at least half a year (4 Rust release cycles) +when they use the Rust toolchain that is the same as or newer than the pinned Rust version for MMTk. ## Contributing to MMTk From 84cefdae8a80cf97665cb90df965492a4c0cb803 Mon Sep 17 00:00:00 2001 From: Yi Lin Date: Mon, 1 Jul 2024 00:54:43 +0000 Subject: [PATCH 3/4] Forgot to update the macros version --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 6ab0637bb6..b0f6793608 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -38,7 +38,7 @@ log = { version = "0.4", features = ["max_level_trace", "release_max_level_off"] memoffset = "0.9" mimalloc-sys = { version = "0.1.6", optional = true } # MMTk macros - we have to specify a version here in order to publish the crate, even though we use the dependency from a local path. -mmtk-macros = { version="0.25.0", path = "macros/" } +mmtk-macros = { version="0.26.0", path = "macros/" } num_cpus = "1.8" num-traits = "0.2" pfm = { version = "0.1.1", optional = true } From e957c68c7ef23beb194bfc7570cce254abc3bf5e Mon Sep 17 00:00:00 2001 From: Yi Lin Date: Mon, 1 Jul 2024 03:42:45 +0000 Subject: [PATCH 4/4] Revert MSRV policy --- README.md | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 536d279292..723a77153a 100644 --- a/README.md +++ b/README.md @@ -122,20 +122,17 @@ MMTk uses a pinned Rust version in the repository (recorded in the `rust-toolcha our tests and benchmarks using the pinned Rust version. We recommend using the pinned Rust version for development. We update the pinned Rust version between releases of mmtk-core to keep it close to the latest Rust stable release. The release cycle of mmtk-core is six weeks, roughly the same as -Rust itself. +Rust itself. -Our minimum support Rust version (MSRV) policy is "N-4" (note that N is the pinned Rust version for mmtk-core, -rather than the current stable Rust release). That means we ensure mmtk-core works -properly with the Rust toolchain that is within 4 minor versions before the version specified in +Our minimum support Rust version (MSRV) policy is "N-1" (note that N is *NOT* the current stable Rust release). That means we also ensure mmtk-core works +properly with the Rust toolchain that is one minor version before the version specified in `rust-toolchain`. For example, if `rust-toolchain` contains "1.61.2", the MSRV will be guaranteed -to be no later than "1.57.0". We may bump MSRV up to "N-4" when we need to make use of new Rust -features or a dependency crate that needs a newer Rust. In other words, we will not eagerly bump the MSRV, -and the MSRV can lag behind "N-4" in practice. However, users shouldn't depend on this lag, and are encouraged to keep close to the +to be no later than "1.60.0". We may bump MSRV up to "N-1" when we need to make use of new Rust +features or a dependency crate that needs a newer Rust. In other words, we will not eagerly bump the MSRV, and the MSRV can lag behind "N-1" in practice. However, users shouldn't depend on this lag, and are encouraged to keep close to the latest Rust toolchain rather than relying on an outdated version of Rust. -The "N-4" policy guarantees that MMTk users will not be forced to upgrade the Rust -toolchain in their environments due to MSRV for at least half a year (4 Rust release cycles) -when they use the Rust toolchain that is the same as or newer than the pinned Rust version for MMTk. +Note, however, that we may switch to a more conservative MSRV policy in the future when MMTk reaches +a stable state. ## Contributing to MMTk