All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Fixed NumPy 2.0 compatibility issue by removing the
nimfadependency, which was incompatible with NumPy 2.0 due to use of deprecatednp.mat()function. - Fixed pandas 3.12 compatibility issues:
- Updated
to_csv()calls to usesepas keyword argument instead of positional argument - Fixed
set_index()calls to work with pandas 3.12's stricter type checking by converting StringArray to list - Fixed
ilocassignment for string conversion operations - Fixed Series indexing to use
.iloc[0]for positional access instead of[0]for label-based access
- Updated
- Fixed compatibility issues in SigProfilerAssignment and SigProfilerPlotting packages for pandas 3.12
- Removed
nimfadependency and implemented NNDSVD initialization directly in the codebase. - Updated
sigProfilerPlottingdependency to >=1.4.3 for pandas 3.12 compatibility. - Removed TMB debug file output.
- Migrated CI/CD pipeline from Travis CI to GitHub Actions for improved reliability and modern workflow management.
- Added
SigProfilerExtractor/nndsvd.pywith standalone NNDSVD implementation supporting all variants (nndsvd, nndsvda, nndsvdar, nndsvd_min).
- Updated default COSMIC version from 3.4 to 3.5. Added support for COSMIC v3.5 signatures in the
cosmic_versionparameter. - Updated SigProfilerAssignment dependency requirement from >=1.0.1 to >=1.1.0 to support COSMIC v3.5 signatures.
- Implemented a CI/CD pipeline with Travis CI to automate the building and publishing of Docker images to Docker Hub.
- Added a Dockerfile to the repository for containerization. Documentation on how to use the Dockerfile needs to be added to the README.
- Added the
assignment_cpuparameter to independently control the number of CPU cores used for the signature assignment step. This change enables full support for the parallel processing enhancements in SigProfilerAssignment v1.0.0, allowing for significant performance improvements and more granular resource control.
- Added support for rn7 and mm39 genomes in SigProfilerExtractor.
- Added mutation count and stability to 4608 plots in All_Solutions
- Add a stop parameter to the CLI to stop after de novo extraction.
- Fixed an issue where the CLI was returning a non-zero exit code when the
--helpflag was passed.
- Added
pyproject.tomlfor modern Python packaging support.
- Updated dependencies: Now requires Pandas >= 2.0.0, NumPy >= 2.0.0, and Python >= 3.9.
- Dropped support for Python 3.8
- Intel-based MacBooks are no longer supported due to upstream changes in PyTorch, which has dropped support for macOS x86_64. Users with Intel-based MacBooks will need to migrate to Apple Silicon (M1/M2) or use a Linux-based development environment.
- Introduced a Command-Line Interface (CLI) for SigProfilerExtractor, enabling users to interact with the tool via terminal commands.
- Improved the formatting of the parameter table for sigProfilerExtractor function for better readability and consistency.
- The CI/CD badge link has been fixed.