Skip to content

🌀 Release Note – v1.0.0 - *Anisotropic Atom*

Choose a tag to compare

@acsenrafilho acsenrafilho released this 22 Aug 23:58
· 49 commits to main since this release

We are excited to announce a new release of ASLtk, packed with powerful new features, major refactoring, expanded compatibility, and improved documentation. This release strengthens the library’s foundations for arterial spin labeling (ASL) MRI analysis, with a special focus on performance, reliability, and usability.

To upgrade to the latest version:

pip install --upgrade asltk

📚 Documentation is available at: [Read the Docs](https://asltk.readthedocs.io)


✨ New Features

  • Added UltraLongTE ASL Mapping (UltraLongTE_ASLMapping) with advanced multi-echo analysis and T1 relaxometry support.
  • Introduced get_optimal_core_count for smarter CPU usage based on available memory.
  • Added --average_m0 option for improved M0 handling in CLI workflows.
  • Introduced suppress_warnings option in mapping methods for cleaner outputs.
  • New resolution parameter in BrainAtlas initialization, supporting finer atlas control.
  • Added rate limiting in BrainAtlas API calls to prevent 429 Kaggle errors.
  • Enhanced test coverage with unit tests for UltraLongTE mapping, atlas resolution handling, and more.

🐛 Bug Fixes

  • Fixed ImageIO string representation test for better Windows compatibility.
  • Improved error handling in head movement correction and Kaggle API-related tests.
  • Correct handling of ASLData initialization in multi-echo/multi-dw tests.

⚡ Enhancements / Improvements

  • Refactored ImageIO integration across the codebase (registration, normalization, masks, smoothing, image analysis).
  • Optimized T2 map stacking for performance and clarity.
  • Improved asl_template_registration with better atlas reference handling and extended map support.
  • More robust error messages across pipelines for easier debugging.
  • Refined handling of brain masks in CBFMapping, MultiDW_ASLMapping, and MultiTE_ASLMapping.
  • Smarter default CPU core handling (CBFMapping.create_map now defaults to half available cores).

📖 Documentation

  • Updated README with new supported Python versions and project badge.
  • Improved contribution guidelines (commit messages, pre-commit hooks, PR template).
  • Enhanced docs for ImageIO and navigation updates in mkdocs.yml.
  • Clarified usage examples for mapping functions and error handling.

🎨 Style / Refactoring

  • Removed unused imports and commented code.
  • Reformatted long lines and functions for better readability.
  • Refactored tests to adopt ImageIO consistently.
  • Code cleanup in space_normalization, isotropic Gaussian, median, and orientation functions.

⚙️ Continuous Integration / DevOps

  • CI now supports Python 3.10 → 3.13.
  • Reduced supported Python versions to start from 3.10 only (dropping 3.9 and below).
  • Added ITK installation and Windows-specific fixes (short paths, dependencies).
  • Configured pre-commit hooks for linting and code quality checks.

📦 Miscellaneous

  • Updated TODO comments for clarity.
  • Introduced internal consistency improvements in pyproject.toml.
  • Cleaned backup/commented code while documenting where to find removed methods.

🙌 Special Thanks

Big thanks to all contributors who made this release possible 🎉, especially those who opened issues and PRs:

  • @LOAMRI team for continuous improvements and refactoring efforts.

🔥 This release codenamed Anisotropic Atom marks a major milestone: more stable, more efficient, and better documented. Dive into the new features and enjoy a smoother ASL mapping workflow!