Skip to content

Commit aaa97a0

Browse files
alexarjeclaude
andcommitted
Release 1.6.2
Bump version to 1.6.2, add changelog entry, and update docs/releases.md. This release is the audit/cleanup pass: pose() falls back to OpenPose when MediaPipe isn't installed; fixes method-shadowing, blend()/grid() argument bugs, and docstring/quickstart errors; adds MgVideo/MgAudio repr, duration/n_frames properties, and MgImage/MgFigure .save(); plus expanded documentation. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 60d9133 commit aaa97a0

3 files changed

Lines changed: 38 additions & 3 deletions

File tree

‎CHANGELOG.md‎

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,31 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
99

1010
---
1111

12+
## [1.6.2] – 2026-06-27
13+
14+
### Fixed
15+
- `pose()` defaults to the MediaPipe backend (the optional `[pose]` extra). On installs without
16+
MediaPipe it now **falls back to the OpenPose `body_25` backend** (with a clear message) instead
17+
of raising, so `pose()` works out of the box. (This also fixes the CI test jobs.)
18+
- Several result attributes shadowed their own methods on the instance, so a second call failed:
19+
`tempo_similarity`, `phase_synchrony`, `structure_comparison`, `body_audio_coupling`,
20+
`dynamics_coupling` (now stored as `*_figure`) and the warp result (now `self.warp_video`).
21+
- `blend()` ignored its `filename` argument (it always read `self.filename`).
22+
- `grid()` ignored its `target_name` argument (it always wrote `<input>_grid.png`).
23+
- Corrected stale `overwrite` docstrings (now default `True`), documented the previously
24+
undocumented `convert` parameter on `directograms`/`impacts`/`history_cv2`, and fixed several
25+
quickstart errors (invalid `scale=` example; `_motiondata.csv`/`_descriptors.csv`/`.avi` names).
26+
27+
### Added
28+
- Informative `repr` for `MgVideo` (frames, fps, size, audio) and `MgAudio`.
29+
- `MgVideo.duration` (seconds) and `MgVideo.n_frames` properties, and `MgAudio.duration` — clearing
30+
up the `length` footgun (frame count for video vs seconds for audio).
31+
- `MgImage.save(path)` and `MgFigure.save(path)` to copy/save a result to a chosen location.
32+
- Documentation: an optional-dependency/extras matrix, core-class conveniences, a "Which method
33+
should I use?" disambiguation table, and `pose_center()`/`pose_distance()` with examples + images.
34+
35+
---
36+
1237
## [1.6.1] – 2026-06-27
1338

1439
### Added
@@ -386,7 +411,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
386411

387412
---
388413

389-
[Unreleased]: https://github.com/fourMs/MGT-python/compare/v1.6.1...HEAD
414+
[Unreleased]: https://github.com/fourMs/MGT-python/compare/v1.6.2...HEAD
415+
[1.6.2]: https://github.com/fourMs/MGT-python/compare/v1.6.1...v1.6.2
390416
[1.6.1]: https://github.com/fourMs/MGT-python/compare/v1.6.0...v1.6.1
391417
[1.6.0]: https://github.com/fourMs/MGT-python/compare/v1.5.0...v1.6.0
392418
[1.5.0]: https://github.com/fourMs/MGT-python/compare/v1.4.9...v1.5.0

‎docs/releases.md‎

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Release Notes
22

3-
The current stable release is **MGT-python 1.6.1**.
3+
The current stable release is **MGT-python 1.6.2**.
44

55
Install or upgrade from PyPI:
66

@@ -16,6 +16,15 @@ which is the single source of truth for release notes.
1616

1717
## Recent highlights
1818

19+
### 1.6.2
20+
21+
- `pose()` falls back to OpenPose when MediaPipe isn't installed (works out of the box).
22+
- Fixed method-shadowing (audio–movement reports / warp), `blend()`/`grid()` ignoring their
23+
filename/target arguments, and several docstring/quickstart errors.
24+
- Informative `repr` for `MgVideo`/`MgAudio`; new `duration`/`n_frames` properties and
25+
`MgImage.save()`/`MgFigure.save()`.
26+
- New docs: optional-extras matrix, core-class conveniences, and a "which method?" table.
27+
1928
### 1.6.1
2029

2130
- `pose_center()` (centre on the global centroid) and `pose_distance()` (per-marker cumulative

‎pyproject.toml‎

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

55
[project]
66
name = "musicalgestures"
7-
version = "1.6.1"
7+
version = "1.6.2"
88
description = "Musical Gestures Toolbox for Python"
99
readme = "README.md"
1010
license = {text = "GPL-3.0-or-later"}

0 commit comments

Comments
 (0)