Performance Improvements
- Implement sparse-preserving join operation (10x memory reduction for large slice counts)
- Optimize _dummify with direct CSR construction (2-3x speedup)
- Add optional Numba JIT optimization for 5-50x performance improvements
- Add comprehensive performance benchmark suite
Code Quality
- Fix min_sup parameter mutation in fit()
- Replace assert with ValueError for production safety
- Remove global logging configuration
- Handle division by zero warnings with np.errstate
- Add complete Python 3.10+ type annotations
- Ensure deterministic slice ordering for equal scores
Build & Tooling
- Migrate from Poetry to uv for dependency management (10-100x faster)
- Convert pyproject.toml to PEP 621 format with hatchling backend
- Replace black, isort, flake8 with Ruff for linting/formatting
- Update pre-commit hooks to use ruff-pre-commit
CI/CD
- Add matrix testing for Numba optimization (with/without)
- Fix notebook execution timeouts
- Add Python 3.13 readiness tracking (Python 3.13 is temporarily excluded from compatible versions)
Testing
- Add 16 new parameter validation tests
- Add numerical consistency tests for Numba/NumPy implementations
- Increase test coverage to 96%
Documentation
- Add CLAUDE.md developer documentation
- Add Numba optimization guide
- Add cardinality benchmarks
BREAKING CHANGE:
- Poetry is no longer used, use uv instead
- Python 3.13 is not fully supported