PySPI v0.4.2
Introduction
This patch release brings a few minor updates including a new high contrast logo for dark mode users, improved SPI unit testing (with a new benchmarking dataset) and fixes for potential security vulnerability issues.
Highlights of this release
- New high contrast logo for dark-mode users.
- Improved SPI unit testing with z-scoring approach to flag SPIs with differing outputs.
- New coupled map lattice (CML) benchmarking dataset.
- Fix for potential security vulnerability issues in scikit-learn.
What's Changed
- Replaced the old
standard_normal.npybenchmarking dataset with a coupled map lattice (cml7.npy), along with its associated .pkl file containing the benchmark values (CML7_benchmark_tables.pkl) generated in a fresh Ubuntu environment. - Updated the README to automatically select either the regular or new dark mode logo based on the user's theme.
- Added new
conftest.pyfile for pytest to customise the unit testing outputs. - Added a new
pyproject.tomlfile for configuring the package for publishing to PyPI.
New features
- Improved SPI unit testing with a new coupled map lattice benchmarking dataset (
cml7.npy) consisting of 7 processes and 100 observations per process. - Z-scoring approach in unit testing pipeline to flag potential changes in SPI outputs as a result of algorithmic changes, etc. SPIs with outputs differing by more than a specified threshold are "flagged" and summarised in a table.
- Added a darkmode pyspi logo to the README which is shown for users with the dark-mode GitHub theme.
Bug Fixes
- Fixed a scikit-learn security vulnerability issue with severity "high" (pertaining to denial of service) by upgrading scikit-learn from version
0.24.1to version1.0.1. - Fixed Int64 deprecation issue (cannot import name
Int64Indexfrompandas) by fixing pandas to version1.5.0. - Fixed unknown character issue for Windows users resulting from not specifying an encoding when loading the "README" in
setup.py. Now fixed toutf-8for consistency across platforms.