Changelog#

Version 0.3.1 (2025-08-14)#

  • Network metrics normalisation

    • Added decorator-based option to return z-scores for all network analysis metrics by comparing against directed Erdos–RΓ©nyi \(G(n,m)\) ensembles with matching nodes and links.

    • API: normalise: bool | None (default None), n_random: int = 20, random_seed: int | None.

    • Strictly binary-only for normalisation; weighted normalisation is not supported.

    • Documented in the Network Analysis guide with rationale and examples, citing [ZSW18]. See in Normalising Metrics with Random Equivalent Networks.

Version 0.3.0 (2025-08-13)#

  • πŸ“Š Data Generation Integration: Added synthatdelays data generation configurations for synthetic time series creation (61de4ca)

  • πŸ”§ Development Infrastructure

    • Updated UV package manager to version 0.8.4 (9478c31)

    • Enhanced uv-based testing and setup instructions (31a803d)

    • Added Python 3.14rc1 to CI testing with allowed failures (9478c31)

  • πŸ”„ API Improvements for Entropy-based Connectivities

    • Simplify API for mutual information and transfer entropy connectivity metrics

    • Breaking change: Replaced mi_kwargs and te_kwargs dictionary parameters with direct keyword argument passing

  • πŸ§ͺ Test: Push coverage from 81% -> 99%

    • Add test suite for detrending methods and connectivity metrics (833e5c5)

    • Update regex in test assertion for pattern size and lag-steps (2ef4ba3)

    • Increase test coverage among several modules (6c2414d)

    • Relaxed correlation threshold in data generator tests (ac63942)

  • πŸ› Fixes:

    • Specify β€˜spawn’ start method in ProcessPoolExecutor to resolve fork warnings ( f2532d4)

    • Correct z-score detrending logic for edge casesand update test cases (f7196d9)

    • Improve progress bar display in Jupyter notebooks by adding automatic environment detection and proper line handling

  • ✨ Feature: Add progress tracking for connectivity computation in both sequential and parallel modes (eaaace4)

  • ⏲️ Network Analysis and Benchmarking

    • Added: Comprehensive network analysis module with metrics for evaluating network properties:

      • Network pruning with statistical significance testing and multiple comparison corrections

      • Centrality measures (betweenness, eigenvector) to identify important nodes

      • Global network metrics (link density, global efficiency, transitivity, reciprocity)

      • Node isolation detection (inbound/outbound)

    • Added: Cross-validation and benchmarking tools comparing delaynet with NetworkX, demonstrating 3-10x performance improvements

    • Enhanced: Integration with python-igraph for efficient network computations

    • Improved: Weight matrix diagonal defaults and related test coverage

  • πŸ— Network Reconstruction and Documentation Overhaul

    • Added: Complete network reconstruction functionality with the new reconstruct_network() function that applies connectivity measures to pairs of time series to build networks represented by \(p\) -value and lag matrices.

    • Enhanced: Documentation structure with comprehensive individual guides for each method:

      • Dedicated guides for each detrending method with examples and mathematical background

      • Individual connectivity method guides with detailed explanations and use cases

      • New network reconstruction guide with practical examples and custom metric support

      • Network analysis guide for interpreting and working with reconstructed networks

    • Improved: Core connectivity framework with better error handling and validation

    • Streamlined: Documentation organization by consolidating scattered guides into focused, method-specific documentation that’s easier to navigate and understand

  • πŸ”„ API Refactoring: Normalization β†’ Detrending

    • Breaking Change: Renamed all β€œnormalisation/norm” terminology to β€œ detrending/detrend” for semantic accuracy

    • Renamed: Main API function from normalise() to detrend() and show_norms() to show_detrending_methods()

    • Renamed: Decorator from @norm to @detrending_method for consistency with functionality

    • Renamed: Package structure from delaynet/norms/ to delaynet/detrending_methods/

    • Updated: All documentation, tests, and examples to use the new detrending terminology

    • Rationale: These methods perform detrending (trend removal) rather than mathematical normalization, making the new naming more theoretically accurate

  • πŸ”„ Connectivity Framework Unification (bbbe265)

    • Unified: All connectivity measures now return consistent \(p\)-values for statistical significance testing

    • Added: Universal \(p\)-value support across all connectivity methods for standardized output

    • Streamlined: Unified lag_steps parameter handling across all connectivity measures

    • Removed: Ordinal Patterns Connectivity and Bi-Granger due to unclear \(p\)-value

  • πŸ“¦ Updated infomeasure dependency to v0.5.0 and replaced deprecated p_value usage.

  • 🌐 Consistently applied British English conventions across all files (behavior β†’ behaviour, normalize β†’ normalise).

  • πŸš€ Added parallel execution support for network reconstruction.

  • πŸ”§ Enhanced norm decorator to support multi-dimensional arrays with axis parameter.

  • πŸ“Š Unified connectivity output format to return tuple[float, int] and replaced offset with prop_time.

  • πŸ§ͺ Fixed test assertion issues and improved code formatting.

  • πŸ–₯️ Added Windows and macOS test runners for better cross-platform compatibility.

  • πŸ› Fixed gt_bi_multi_lag returning non-optimal index and improved integer type checking for Windows compatibility.

  • πŸ“¦ Refactored DelayNet β†’ delaynet naming convention and optimized COP connectivity performance.

  • πŸ—‘οΈ Symbolization Removal (a4db41c)

    • Removed: Symbolization functionality to streamline the package and focus on core connectivity measures

    • Simplified: Codebase by eliminating unused symbolization components

  • πŸš€ #22: Enhancements and Fixes for Entropy-based Connectivities

    • Added: Conversion to_symbolic for connectivities, function attribute entropy_like, check for symbolic time series connectivities, and connectivity decorator tests.

    • Changed: CI now includes windows and mac test runners, scheduled tests, coverage combine, and updated artifact action.

    • Fixed: Issue with gt_bi_multi_lag returning non-optimal idx.

  • 🧩 #24: COP: introduce pattern_transform() / convolute_ts()

    • Added pattern_transform for connectivity calculation.

    • Support for single/multiple time series and patterns.

    • ⚑️ Performance improvements and new unit tests.

  • πŸ“¦ #27: Integrate infomeasure package

    • Switched to published infomeasure dependency.

    • Updated install and cache locations, test integration.

  • πŸ”„ #29: Move development as well to gitlab?

    • CI/CD migrated to GitLab, deactivated GitHub Actions, code quality pipeline improvements.

  • πŸ—‘οΈ Removed data folder (9541369).

  • πŸ“ Documentation and README updates (links, badges, citation, Python version).

  • 🏷️ Added Citation, Code of Conduct, and CONTRIBUTING.md.

  • πŸ§ͺ General test, CI, and dependency improvements.

  • πŸ› οΈ Minor optimizations to Z-Score detrending, COP connectivity, and code cleanup.


Version 0.2.0 (2024-03-15)#

  • πŸ”„ Granger: Rework bidirectional version

  • πŸ› Fix: Stability of random data

    • Remove use of numpy.random.randint()

    • Add test test_gen_rand_data_stability()

    • Add fixed seed to fixture two_fmri_time_series()

  • πŸ› Fix: Fix OS connectivity

    • Rename to fit with US English: synchronisation β†’ synchronization

  • πŸ“ EX: Add example comparing connectivities with fMRI data

  • ✏️ Typo: Correct fMRI typo

  • πŸ› Fix: Random time series indexing

  • πŸ“ˆ Z-Score: Added max_period, exclude current datapoint

    • Added max_periods parameter to Z-Score detrending function to limit the number of periods considered in calculations.

    • Excluded the current point from mean and standard deviation calculations.

  • πŸ“ Sig: Make time series positional only

  • πŸ§ͺ Test: Add automatic tests for all detrending methods and connectivities

    • Uses generated data

    • Approaches not all functioning yet

  • πŸ“š Add data generation methods

    • Generate fMRI time series

    • Wrapper for all approaches

    • Increased max-args = 8

    • Corrected argument order

  • πŸ“ Ignore built folder, used by pip

  • πŸ“š Doc: Changed setup modality compatible with pip and micromamba

  • πŸ§ͺ Tests: Add python 3.10 and 3.12 compatibility

  • πŸ”„ CI/CD: Change environment caching runner


Version 0.1.0 (2024-02-16)#

  • πŸ— Setup main functionality

  • πŸ“šοΈ Setup documentation pages

  • πŸ– Linting and formatting

  • CI/CD pipeline: linting, building, testing, docs

  • See changes before in the repository up until the tag v0.1.0.