Changelog#
Version 0.4.0 (2025-05-02)#
The 0.4.0 release introduces cross-entropy support, improves code packaging, and enhances documentation.
📈 Cross-Entropy support:
Added cross-entropy for all approaches.
Integrated cross-entropy into the documentation with detailed explanations and examples.
Restricted the use of joint random variables (RVs) for cross-entropy to avoid ambiguity.
📦 Code packaging:
📦 Added tests to packaged tarball for testing in conda-forge.
🔧 Updated deprecated license classifier.
🔧 Added Zenodo integration and updated README.md with logo and badges.
🔧 Added README.md formatting for logos and badges.
🔧 Warnings handling: Handled warnings as errors in pytest and addressed warnings in the code.
📚 Documentation:
📚 Added benchmark demo page to documentation.
📄 Added acknowledgments and funding information.
🎨 Updated logo and icon design.
🔧 Added favicon and polished documentation index page, including logo and dark mode support.
🔧 Added demos for Gaussian data and Schreiber Article.
📊 Changed Gaussian axis titles and corrected Schreiber Demo information unit.
🔧 Changed links and reformatted documentation.
Version 0.3.3 (2025-04-16)#
The 0.3.3 release focuses on improving documentation, moving to Read the Docs, and polishing the project.
📚 Improved documentation and moved to Read the Docs.
📄 Added automodapi for estimators and sphinx-apidoc.
📊 Added graphviz apt dependency and fixed requirement structure.
📝 Added code examples and reworked guide pages.
🔗 Changed URL and repository settings.
📦 Updated project for publication.
✨ Optimizations and bug fixes:
🚀 Parallelized box and Gaussian kernel calculations.
🔄 Reused parameters between p-value and t-score calculations.
🔧 Fixed bootstrap resampling for inhomogeneous, higher-dimensional input data.
🔧 Optimized kernel (C)TE calculations.
🔧 Fixed calling t-score without p-value.
Version 0.3.0 (2025-04-01)#
The 0.3.0dev0 release focuses on performance improvements, feature enhancements, and API updates.
🔧 Local values support: All approaches now support local values.
🎯 Added two new composite measures:
Jensen-Shannon Divergence (JSD)
Kullback-Leibler Divergence (KLD)
✨ Optimized algorithms for:
Mutual Information (MI) and Conditional Mutual Information (CMI) on discrete and ordinal data.
Transfer Entropy (TE) and Conditional Transfer Entropy (CTE).
⚡ Major API refactoring to improve compatibility with arbitrary many random variables in MI and CMI.
💡 Enhanced performance through optimizations in base.py.
🔍 Added extensive testing for local values and tested manually with code notebooks.
⬆️ Added Python 3.13 support.
Version 0.2.1 (2025-02-11)#
The 0.2.1dev0 release marks the first release, providing essential information measures and estimators like Entropy (H), Mutual Information (MI), and others. It includes a CI/CD pipeline, supports Python 3.10-3.12, and is licensed under AGPLv3+.
📦 First release of the infomeasure package.
🧩 Added essential information measure estimators:
Shannon entropy (H)
Mutual Information (MI)
Conditional Mutual Information (CMI)
Transfer Entropy (TE) and Conditional Transfer Entropy (CTE)
Jensen-Shannon Divergence (JSD)
Kullback-Leibler Divergence (KLD)
🔄 Set up CI/CD pipeline with GitLLab CI.
💻 Added support for Python 3.10+.
📄 Updated documentation to include installation guide, package structure, and example use cases.
Version 0.0.0 (2024-06-06)#
Package setup
🏗 Written pyproject.toml
🔄 General project and test structure with CI/CD
📚️ Documentation with sphinx, sphinxcontrib-bibtex and numpydoc