Skip to content

Commit 0ef9428

Browse files
Bump version to 0.1.2 (#131)
Release 0.1.2: NumPy do_reject outlier rejection (#123) + reject robustness (#127), repo-wide ty type-checking enforced in CI/pre-commit (#124, #125), and the comprehensive validation-evidence docs (#108). Backfill the missing 0.1.1 changelog entry and add 0.1.2.
1 parent e5016c4 commit 0ef9428

5 files changed

Lines changed: 43 additions & 5 deletions

File tree

CITATION.cff

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ authors:
2929
affiliation:
3030
name: "Swartz Center for Computational Neuroscience"
3131
ror: "https://ror.org/01bt2qm76"
32-
version: 0.1.1
33-
date-released: "2026-07-13"
32+
version: 0.1.2
33+
date-released: "2026-07-14"
3434
license: BSD-3-Clause
3535
repository-code: "https://github.com/sccn/pyAMICA"
3636
url: "https://eeglab.org/pyAMICA/"

docs/changelog.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,44 @@
33
Release notes are also published on the
44
[GitHub releases page](https://github.com/sccn/pyAMICA/releases).
55

6+
## 0.1.2
7+
8+
Outlier-rejection parity in the NumPy backend, repo-wide type-checking, and the
9+
full validation-evidence documentation.
10+
11+
- NumPy backend outlier rejection: the Fortran `do_reject` outlier-rejection path
12+
is ported to `AMICA_NumPy` via the same `good_idx` mechanism as the PyTorch
13+
backend, so the NumPy reference now drops per-sample outliers on the
14+
`rejstart`/`rejint`/`maxrej` schedule (#123).
15+
- Rejection robustness: a non-finite log-likelihood is now distinguished from an
16+
over-aggressive `rejsig`, so an over-tight rejection threshold fails with a
17+
clear message instead of a silent non-finite result (#127).
18+
- Type checking enforced: repo-wide `ty` diagnostics fixed (496 to 0) and `ty`
19+
added to CI alongside a pre-commit config (ruff + ty) (#124, #125).
20+
- Documentation: the validation guide is expanded into a full evidence page,
21+
source-density bit-exactness, cross-platform device/precision invariance
22+
(cross-backend equivalence matrix and IC topomaps), the EEGLAB drop-in
23+
round-trip, and the other validated behaviors (#108).
24+
25+
## 0.1.1
26+
27+
Validation-methodology and correctness fixes since 0.1.0.
28+
29+
- Amari distance: a second, permutation- and scale-invariant unmixing-matrix
30+
comparison metric (Amari, Cichocki & Yang 1996) alongside Hungarian-matched
31+
correlation, used throughout the Fortran-parity validation (#120).
32+
- Multi-model equivalence test: switched to a valid run-level permutation test
33+
that respects the dependence among the 40 runs' pairwise correlations, instead
34+
of a pseudoreplicated Mann-Whitney/TOST (#115).
35+
- Parity and performance tables added to the paper, with the full results,
36+
native-Fortran CPU core-scaling rows, and per-run detail in the docs (#112).
37+
- Type-safety fixes in `validate_implementations.py` (`run_fortran_amica`
38+
return type, `load_eeglab_data` dtype annotation) (#118).
39+
- JOSS draft-PDF build workflow, `.zenodo.json` with ROR-based citation
40+
metadata, and an MLX backend API reference page (#110, #105, #107).
41+
- Corrected a stale float32-speedup claim and added a funding acknowledgement
42+
(#114).
43+
644
## 0.1.0
745

846
First public release.

pyAMICA/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# Format expected by setup.py and doc/source/conf.py: string of form "X.Y.Z"
44
_version_major = 0
55
_version_minor = 1
6-
_version_micro = "1" # use '' for first of series, number for 1 and above
6+
_version_micro = "2" # use '' for first of series, number for 1 and above
77
_version_extra = "" # '' for full releases; 'dev' for development
88

99
# Construct full version string from these.

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 = "pyAMICA"
7-
version = "0.1.1"
7+
version = "0.1.2"
88
description = "pyAMICA: Python implementation of the Adaptive Mixture ICA algorithm"
99
readme = "README.md"
1010
authors = [

uv.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)