Skip to content

Commit

Permalink
Bump version to v0.2 (#195)
Browse files Browse the repository at this point in the history
* Bump version to 0.2.0. Add keywords for garbage collection.
* Update README.md for gencopy (this was missing from in 0.1)
* Add CHANGELOG.md
  • Loading branch information
qinsoon authored Dec 18, 2020
1 parent 877ed6b commit 390354e
Show file tree
Hide file tree
Showing 3 changed files with 56 additions and 6 deletions.
49 changes: 49 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
0.2.0 (2020-12-18)
===

API
---
* Refactored the `ObjectModel` trait and it is clearer now that MMTk expects a GC byte from the VM.
* Removed methods in the API that were marked as deprecated.
* Minor changes to a few methods/traits in API.

Misc
---
* Rewrote the implementation of GC byte and forwarding word due to the API change.
* Calling `gc_init()` will not fail now if the binding has initialized its own logger.
* Fixed a few bugs about incorrect entries in SFT map.
* Fixed wrong allocator config for gencopy.
* Fixed a bug that caused MMTk to panic with OOM in stress tests.
* Fixed a bug that caused the first discontiguous space descriptor being considered as empty.

0.1.0 (2020-11-04)
===

GC Plans
---
Added the following plans:
* NoGC
* SemiSpace
* Generational Copying GC

Allocators
---
Added the following allocators:
* Bump Pointer Allocator
* Large Object Allocator

Policies
---
Added the following space policies:
* Immortal (including variants)
* Large object
* Copy

API
---
* Introduced bi-directional API between VM and MMTk

Misc
---
* Implemented a scheduler, GC work packets and related statistics collecting mechanisms.
* Implemented sanity checking.
4 changes: 2 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "mmtk"
version = "0.1.0"
version = "0.2.0"
authors = ["The MMTk Developers <>"]
edition = "2018"
license = "MIT OR Apache-2.0"
Expand All @@ -9,7 +9,7 @@ homepage = "https://www.mmtk.io"
repository = "https://github.com/mmtk/mmtk-core"
readme = "README.md"
categories = ["memory-management"]
keywords = ["gc", "allocation"]
keywords = ["gc", "garbage", "collection", "garbage-collection", "allocation"]

[lib]
name = "mmtk"
Expand Down
9 changes: 5 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,13 @@ $ cargo build --features <space separated features>
```

You must specify a GC plan as a feature at build time.
Currently, there are two different plans to choose from:
You may choose from:

* `--features nogc` for NoGC, and
* `--features semispace` for SemiSpace.
* `--features nogc` for NoGC (allocation only),
* `--features semispace` for a semi space GC, or
* `--features gencopy` for a generational copying GC.

A full list of available features can be seen by examining [`Cargo.toml`](Cargo.toml).
A full list of plans and other available features can be seen by examining [`Cargo.toml`](Cargo.toml).
By passing the `--features` flag to the Rust compiler,
we conditionally compile plan-specific code.
You can optionally enable sanity checks by adding `sanity` to the set of features
Expand Down

0 comments on commit 390354e

Please sign in to comment.