All notable changes to QBioCode will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.1.0 - 2026-04-06
- Minimum Python version increased to 3.10 (was 3.9)
- Required for compatibility with latest Qiskit ecosystem (qiskit-ibm-runtime 0.44.0+)
- Python 3.9 reaches end-of-life in October 2025
-
QProfiler: Automated machine learning benchmarking with data complexity analysis
- Support for multiple ML models (RF, SVM, LR, DT, NB, MLP, XGBoost)
- Support for quantum ML models (QSVC, PQK, VQC, QNN)
- Comprehensive data profiling and complexity metrics
- Batch processing mode for large-scale experiments
- CLI interface for easy usage
-
QSage: Meta-learning framework for intelligent model selection
- Model recommendation based on dataset characteristics
- Pre-trained models for quick predictions
- Integration with QProfiler results
-
Data Generation: Artificial dataset generation with controlled complexity
- Multiple dataset types (circles, moons, spirals, S-curve, Swiss roll, spheres)
- Configurable noise levels and complexity parameters
- Support for multi-class classification problems
-
Embeddings: Dimensionality reduction and feature extraction
- Autoencoder implementations
- Integration with classical embedding methods
-
Evaluation: Comprehensive model and dataset evaluation
- Multiple metrics (accuracy, F1-score, AUC, training time)
- Cross-validation support
- Statistical analysis tools
-
Visualization: Publication-quality plotting functions
- Correlation analysis plots with scientific styling
- Heatmaps with customizable colormaps
- High-resolution output (600 DPI) for publications
- Complete API documentation with Sphinx
- Tutorials for QProfiler, QSage, and data generation
- Installation guides for multiple platforms
- Galaxy integration documentation
- Example notebooks and workflows
- GitHub issue templates (bug report, feature request, documentation, question)
- Pull request template with comprehensive checklists
- Security policy (SECURITY.md)
- Support documentation (SUPPORT.md)
- Contributing guidelines (CONTRIBUTING.md)
- Code of conduct (CODE_OF_CONDUCT.md)
- Citation file (CITATION.cff)
- Zenodo metadata for DOI generation (.zenodo.json)
- GitHub Actions workflow for continuous integration
- Multi-OS testing (Ubuntu, macOS, Windows)
- Multi-Python version testing (3.10, 3.11)
- Code quality checks (flake8, black, isort, mypy)
- Test coverage reporting
- Documentation building
- GitHub Actions workflow for automated releases
- PyPI publishing
- Zenodo archiving
- Release asset management
qprofiler: Run QProfiler experimentsqprofiler-batch: Batch processing modeqsage: Model recommendation tool
- Updated visualization functions for publication quality
- Enhanced scatter plots with better colormaps
- Improved heatmaps with professional styling
- Better legend positioning and labeling
- Increased DPI for high-quality output
- NaN handling in correlation visualization
- Windows path compatibility issues
- Automated QSage model download
- Python >= 3.10, < 3.13
- Qiskit for quantum computing functionality
- scikit-learn for classical ML algorithms
- pandas, numpy for data manipulation
- matplotlib, seaborn for visualization
- XGBoost for gradient boosting
- hydra-core for configuration management
-
Testing Infrastructure: Comprehensive test suite for core functionality
tests/test_data_generation.py: Tests for data generation utilitiestests/test_file_utilities.py: Tests for file operations and utilitiestests/test_generator_dispatch.py: Tests for generator dispatch logictests/conftest.py: Pytest configuration and fixtures- Test coverage for utility modules and data generation helpers
-
Code Quality Tools: Enhanced development tooling
isortintegration for consistent import ordering- Configuration in
pyproject.tomlfor isort settings - Added to
devandalldependency groups
-
Documentation: Testing instructions in README
- Added "Running Tests" section with pytest usage
- Instructions for installing development dependencies
-
Code Formatting: Applied consistent code style across entire codebase
- Ran
blackformatter on all Python files - Ran
isortfor standardized import ordering - Fixed invalid escape sequences in visualization module
- Improved code readability and maintainability
- Ran
-
CI/CD Improvements: Stabilized continuous integration pipeline
- Updated GitHub Actions workflows to Node.js 24
- Fixed CI code quality checks for import ordering
- Fixed CI type-check issues
- Fixed documentation build process
- Fixed Pandoc compatibility issues
- Enhanced workflow reliability across all platforms
-
Testing: Improved test reliability
- Fixed path-order assumptions in duplicate-file tests
- Tests now work consistently across different file systems
- Invalid escape sequence in
qbiocode/visualization/visualize_correlation.py - Import ordering issues throughout codebase
- Type-check errors in CI pipeline
- Documentation build failures
- Path handling in cross-platform tests
- Additional quantum ML algorithms
- Enhanced meta-learning capabilities
- More dataset complexity metrics
- Performance optimizations
- Extended Galaxy tool integration
This is the first public release of QBioCode, a comprehensive framework for quantum machine learning applications in healthcare and life sciences. The release includes:
- Complete implementation of QProfiler and QSage applications
- Support for both quantum and classical machine learning models
- Extensive documentation and tutorials
- Professional project infrastructure for open-source collaboration
- Automated CI/CD pipelines
- Ready for PyPI distribution and Zenodo archiving
Note: This is an alpha release. APIs may change in future versions. Please report any issues on our GitHub issue tracker.