Skip to content

v0.15.0

Choose a tag to compare

@github-actions github-actions released this 25 Sep 00:44
· 24 commits to main since this release

v0.15.0 (2026-09-25)

This release is published under the BSD-3-Clause License.

Bug Fixes

  • Count detections after last drift window as false positives (74d6d44)

  • Hide is_nb_fast() fast-mode overrides from capymoa.org (fdc8741)

  • Hide pre-existing is_nb_fast() leak in 06_advanced_API.ipynb (365f974)

  • Raise pytest-timeout default to account for coverage overhead (09d77b2)

  • Replace deprecated sklearn PassiveAggressive estimators (#400) (#400, 30e6f8a)

  • Resolve remaining ruff 0.16 findings and lint-driven regressions (36b1f67)

  • Surface JPype's Java version error instead of a jar lookup crash (#425) (#425, 52cd519)

  • Tighten fast-mode notebook timeout from 10 minutes to 3 (1dd01ed)

  • base: Pad predict_proba to the schema's class count (1204c2c)

  • docs: Rename pytorch.py notebook to avoid torchvision import collision (#438) (#438, df40691)

  • docs: Render sphinx-design/citation/caption nodes in llms.txt ma… (#423) (#423, 54ae251)

  • drift: OPTWIN and ABCD kept stale state through reset() (#434) (#434, 6daba6b)

  • drift: Seed the ADWIN doctest in EvaluateDriftDetector (#437) (#437, d41d9a4)

  • evaluation: Stop matplotlib warning spam in clustering plots (#417) (#417, 4ee9acd)

  • ocl: Clamp SI importance to non-negative (e3fe245)

  • ocl: Clarify MAS docstrings, gate masking behind flags, fix test (655dc69)

  • ocl: Distillation formula docstring and LWF task-masking API (881c3d2)

  • ocl: Make GDumb's offline fit reproducible under its seed (#436) (#436, c47bded)

  • ocl: Remove dead RWalk field, gate masking, update tests (d5ec012)

  • stream: Compute Schema.shape from all attributes, not just numeric (#424) (#424, 976406c)

Chores

  • Notebook cleanup - hide venv path leak, drop trailing empty cells, fix inline code markdown (b56ee4c)

Code Style

  • Apply ruff 0.16 formatting and safe autofixes (e239955)

  • Run formatter on notebooks touched in #325 fix (f2c3090)

Continuous Integration

Documentation

  • Add leave-one-dataset-out notebook for optimizing drift detectors (#410) (#410, ef10338)

  • Fix inline code spans mistakenly using triple backticks (2b73219)

  • Generate llms.txt and per-page Markdown via sphinx-llm (#395) (#395, c503ee3)

  • AGENTS.md: Add agent attribution instructions (#393) (#393, a5f7844)

  • contributing: Add guide for implementing a method in Java and using it from Python (2103b76)

  • drift: Add ABCD paper reference and document remaining parameters (#392) (#392, 166db89)

  • notebooks: Restructure notebook based docs (#420) (#420, e460842)

  • ocl: Fix distillation formula order and note LWF has no masking (65fad9e)

Features

  • Add PYTEST_TIMEOUT_FACTOR to scale timeouts for release CI (3d52788)

  • anomaly: Add TinyBlobs dataset (65a3262)

  • base: Add sklearn-like get_params()/from_params() to learners (#429) (#429, d2d849a)

  • classifier: Add StochasticGradientTree wrapper (#416) (#416, cfcc217)

  • datadrift: Adding data drift module (#419) (#419, d496a35)

  • datasets: Add Airlines, KDD99, Nomao, Spambase, PokerHand and a generic OpenML loader (#398) (#398, 095caba)

  • docs: Host versioned documentation for each release (#428) (#428, e4b19c7)

  • drift: Add EDDM drift detector (1ab36c3)

  • evaluation: Add ROC AUC metric (#411) (#411, 3efc9a6)

  • ocl: Add Learning Without Forgetting (LWF) strategy (0119a38)

  • ocl: Add Memory Aware Synapses (MAS) strategy (78f70df)

  • ocl: Add Riemannian Walk (RWalk) strategy (cec8f81)

  • ocl: Add Synaptic Intelligence (SI) strategy (3a3b510)

  • ocl: Align LWF task-masking API with SI/EWC (66f69c4)

  • ocl: Implement an event system for evaluation (#356) (#356, 5a3d270)

  • stream: Propagate schemas through pipelines (#421) (#421, c40e31b)

Refactoring

Testing

  • Lock seed-reproducibility contract for stochastic classifiers (8eaf515)

  • Speed up slow anomaly-detector tests, mock more notebooks, enforce test timeouts (53bff4b)

  • anomaly: Stop training detectors on labelled anomalies (#415) (#415, 9d24c5d)

  • core: Verify CapyMOA reads Dense and Sparse MOA instances identically (#427) (#427, 794f804)

  • drift: Cover trailing false positive alarms (f91773d)

  • regressor: Extend seed-determinism contract to stochastic regressors (#433) (#433, bd2935d)


Detailed Changes: v0.14.0...v0.15.0