Skip to content

Commit 3961dff

Browse files
committed
release: bump version to 0.3.0 and update CHANGELOG.md
1 parent a9ac0f0 commit 3961dff

3 files changed

Lines changed: 24 additions & 2 deletions

File tree

CHANGELOG.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,28 @@ section above `[Unreleased]` before tagging.
1111

1212
## [Unreleased]
1313

14+
## [0.3.0] - 2026-07-06
15+
16+
### Added
17+
- **Expressive Encoder & Controls:** Support for sub-grid microtiming (`Delta`) tokens, 128 velocity levels (vs 32), and piece-level switchable microtiming and velocity controls.
18+
- **NOMML Attribute:** Added `TrackLevelNomml` (median metric depth) attribute control end-to-end to steer rhythmic quantization.
19+
- **Genre Grouping:** Piece-level genre conditioning via `GenreGrouping` for model training and inference.
20+
- **HTTP Server Timeout:** New `--idle-timeout` flag to support automatic shutdown on inactivity.
21+
- **Developer Documentation:** Added comprehensive implementation and design guides for both [Attribute Controls](docs/attribute_controls_guide.md) and [Encoder Configs](docs/encoder_guide.md).
22+
- **Preprocessing Acceleration:** Added a `--workers` flag to parallelize preprocessing across multiple parquet shards.
23+
- **Training Tests:** Integrated training pipeline end-to-end tests using MIDI-fixture-based parquet data.
24+
25+
### Changed
26+
- **Checkpoint Format:** Switched to `.safetensors` as the default serialization format (`format_version: 2`), embedding weights and configuration metadata in the SafeTensors header.
27+
- **Tension Attribute:** Refactored Tension extraction into a separate module structure, and updated tension quantization to decile bins.
28+
29+
### Fixed
30+
- **Grammar Constraints:** Allowed `NoteOnset` immediately following `FillInStart` (at onset = 0).
31+
- **Quantization Agnosticism:** Refactored `NoteDurationQuantile` to be TPQ- and time-signature-agnostic.
32+
- **DDP & Lightning Training:** Corrected training configs (`num_epochs` -> `max_steps`), fixed DDP learning rate scaling, and removed unnecessary deepcopy operations.
33+
- **Worker Safety:** Made dataloader worker spawning fork-safe for C++ pybind11 tokenizer.
34+
- **Genre Validation:** Improved error validation to list canonical genres upon validation failures.
35+
1436
## [0.2.4] - 2026-06-03
1537

1638
### Added

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "scikit_build_core.build"
44

55
[project]
66
name = "midigpt"
7-
version = "0.2.4"
7+
version = "0.3.0"
88
description = "GPT-2 transformer for symbolic music generation"
99
readme = "README.md"
1010
license = { text = "MIT" }

src/python/midigpt/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
except (ValueError, AttributeError):
1616
pass
1717

18-
__version__ = "0.2.4"
18+
__version__ = "0.3.0"
1919
__all__ = [
2020
"Bar",
2121
"Note",

0 commit comments

Comments
 (0)