|
| 1 | +# Changelog |
| 2 | + |
| 3 | +All notable changes to this project will be documented in this file. |
| 4 | + |
| 5 | +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), |
| 6 | +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). |
| 7 | + |
| 8 | +## [0.2.0] - 2025-01-09 |
| 9 | + |
| 10 | +### 🎉 Major Release - Dependency Removal & Codebase Modernization |
| 11 | + |
| 12 | +This release represents a substantial modernization of the timecorr package, removing external dependencies, improving code quality, and enhancing documentation. |
| 13 | + |
| 14 | +### 🔥 Breaking Changes |
| 15 | + |
| 16 | +- **Removed brainconn dependency**: Implemented core graph theory functions directly (eigenvector centrality, PageRank, node strength) to eliminate external dependency issues |
| 17 | +- **Cleaned up public API**: Removed non-existent functions from API documentation that were causing import errors |
| 18 | + |
| 19 | +### ✨ New Features |
| 20 | + |
| 21 | +- **GitHub Actions CI/CD**: Added automated testing on Python 3.8-3.11 for all pushes and pull requests |
| 22 | +- **Enhanced documentation**: All user-facing functions now have comprehensive NumPy-style docstrings with examples |
| 23 | +- **Direct graph theory implementation**: Native implementations of `eigenvector_centrality_und()`, `pagerank_centrality()`, and `strengths_und()` |
| 24 | + |
| 25 | +### 🛠️ Improvements |
| 26 | + |
| 27 | +- **Code formatting**: Applied black and isort across entire codebase for consistent style |
| 28 | +- **Import organization**: Cleaned up import statements throughout the project |
| 29 | +- **Documentation cleanup**: Removed build artifacts and redundant files from docs/ directory |
| 30 | +- **Tutorial enhancements**: Fixed and verified all tutorial notebooks and examples |
| 31 | +- **Test coverage**: Maintained 100% test coverage with 131 passing tests |
| 32 | + |
| 33 | +### 🐛 Bug Fixes |
| 34 | + |
| 35 | +- Fixed kernel parameter errors in Mexican Hat weights (changed 'var' to 'sigma') |
| 36 | +- Fixed reshape errors in applications tutorial |
| 37 | +- Resolved deprecation warnings by replacing `np.math.pi` with `math.pi` |
| 38 | +- Fixed PCA dimension errors by limiting to number of samples |
| 39 | +- Fixed padding logic for different array dimensions and list inputs |
| 40 | + |
| 41 | +### 📚 Documentation |
| 42 | + |
| 43 | +- **API Documentation**: Updated to reflect only existing functions, removed references to non-existent ones |
| 44 | +- **Enhanced docstrings**: Added comprehensive documentation for all major user-facing functions: |
| 45 | + - `gaussian_weights()`, `laplace_weights()`, `mexican_hat_weights()`, `eye_weights()` |
| 46 | + - `isfc()`, `autofc()`, `timecorr()` |
| 47 | + - All functions now include parameter descriptions, return values, and usage examples |
| 48 | +- **Tutorial improvements**: Fixed and verified all Jupyter notebooks and Python examples |
| 49 | +- **README updates**: Enhanced with working examples and current API information |
| 50 | + |
| 51 | +### 🧹 Cleanup |
| 52 | + |
| 53 | +- **Removed outdated files**: Cleaned up PNG files, temporary scripts, and build artifacts |
| 54 | +- **Docker removal**: Removed outdated Docker setup with broken notebook |
| 55 | +- **Makefile cleanup**: Removed outdated Makefile using deprecated nosetests |
| 56 | +- **File organization**: Streamlined repository structure removing unnecessary files |
| 57 | + |
| 58 | +### 🔧 Development |
| 59 | + |
| 60 | +- **Modern workflow**: Transitioned from nose to pytest for testing |
| 61 | +- **Linting**: Applied comprehensive code formatting and style improvements |
| 62 | +- **CI/CD**: Automated testing pipeline for continuous integration |
| 63 | +- **Development guide**: Added CLAUDE.md for development guidance |
| 64 | + |
| 65 | +### 📦 Dependencies |
| 66 | + |
| 67 | +- **Removed**: brainconn (replaced with native implementations) |
| 68 | +- **Updated**: All dependencies to supported versions |
| 69 | +- **Simplified**: Reduced external dependency footprint |
| 70 | + |
| 71 | +### 🧪 Testing |
| 72 | + |
| 73 | +- **131 tests passing**: Complete test suite with comprehensive coverage |
| 74 | +- **Cross-platform**: Verified on multiple Python versions (3.8-3.11) |
| 75 | +- **Automated**: GitHub Actions ensures tests run on every change |
| 76 | + |
| 77 | +### 📈 Performance |
| 78 | + |
| 79 | +- **Reduced dependencies**: Faster installation and reduced potential conflicts |
| 80 | +- **Native implementations**: Direct graph theory calculations without external calls |
| 81 | +- **Optimized imports**: Improved import organization and reduced overhead |
| 82 | + |
| 83 | +--- |
| 84 | + |
| 85 | +## [0.1.7] - Previous Release |
| 86 | + |
| 87 | +Previous functionality maintained with various bug fixes and improvements. |
0 commit comments