Skip to content

Release v0.13.1: Documentation Polish & Legacy Code Cleanup

Choose a tag to compare

@Routhleck Routhleck released this 26 Jan 08:13
· 50 commits to master since this release

What's New

📖 Enhanced Documentation & Code Modernization

  • Comprehensive ASA pipeline documentation with new Chinese tutorials
  • Refactored legacy CANN1D analysis to modern fly_roi module
  • Removed deprecated legacy analysis modules for cleaner codebase

Major Features / Key Changes

📖 Documentation Improvements (PR #85, #86)

  • New tutorials: Added two comprehensive Chinese Jupyter notebooks:
    • docs/zh/examples/02_data_analysis/01_asa_pipeline.ipynb - Complete ASA pipeline walkthrough
    • docs/zh/examples/02_data_analysis/02_cann1d_bump_fit.ipynb - CANN1D bump fitting tutorial with preprocessing tips
  • Static visualizations: Added documentation images for ASA analysis (barcode plots, cohomology maps, cohomology space, firing rate maps, spike trains)
  • Improved structure: Updated data analysis documentation with clearer formatting and output examples

🔧 Code Refactoring (PR #85)

  • Module rename: Refactored cann1d.pyfly_roi.py with modernized API
    • Function renamed: cann1d_bump_fitsroi_bump_fits
    • Updated to use CANN1DPlotConfig for configuration
  • Example script: New fly_roi_bump_fit.py for Fly ROI bump analysis
  • Code quality: Reformatted imports and function signatures for better readability
# Old API (deprecated)
from canns.analyzer.data.legacy.cann1d import cann1d_bump_fits

# New API (v0.13.1+)
from canns.analyzer.data.asa.fly_roi import roi_bump_fits
from canns.analyzer.visualization.core.config import CANN1DPlotConfig

# Use the modernized API
config = CANN1DPlotConfig(...)
results = roi_bump_fits(data, config=config)

🧹 Legacy Code Cleanup (PR #85, #86)

  • Removed deprecated modules: Cleaned up legacy analysis code
    • src/canns/analyzer/data/legacy/cann1d.py - Replaced by asa.fly_roi
    • src/canns/analyzer/data/legacy/cann2d.py - No longer maintained
    • experimental_cann1d_analysis.py - Superseded by new examples
  • Documentation cleanup: Removed obsolete API references and theta sweep pipeline docs
  • Test updates: Updated test_experimental_data_cann1d.py to use new fly_roi module

Breaking Changes

⚠️ API Changes

  • The legacy canns.analyzer.data.legacy.cann1d module has been removed. Users should migrate to the new canns.analyzer.data.asa.fly_roi module.
  • Function cann1d_bump_fits has been renamed to roi_bump_fits with updated configuration system.

Migration Guide:

# Before (v0.13.0 and earlier)
from canns.analyzer.data.legacy.cann1d import cann1d_bump_fits
results = cann1d_bump_fits(data, ...)

# After (v0.13.1+)
from canns.analyzer.data.asa.fly_roi import roi_bump_fits
from canns.analyzer.visualization.core.config import CANN1DPlotConfig
config = CANN1DPlotConfig(...)
results = roi_bump_fits(data, config=config)

Technical Notes

  • All legacy CANN1D and CANN2D analysis modules have been removed from the codebase
  • The new fly_roi module provides a cleaner, more maintainable API for 1D bump analysis
  • Documentation has been significantly expanded with Chinese tutorials for ASA pipeline and bump fitting
  • Test suite updated to reflect the new module structure

Files Added/Modified

Added:

  • docs/zh/examples/02_data_analysis/01_asa_pipeline.ipynb
  • docs/zh/examples/02_data_analysis/02_cann1d_bump_fit.ipynb
  • examples/experimental_data_analysis/fly_roi_bump_fit.py
  • Multiple static images in docs/_static/ for ASA documentation

Modified:

  • src/canns/analyzer/data/asa/fly_roi.py (refactored from legacy cann1d)
  • tests/analyzer/data/test_experimental_data_cann1d.py
  • Documentation structure and API references

Removed:

  • src/canns/analyzer/data/legacy/cann1d.py
  • src/canns/analyzer/data/legacy/cann2d.py
  • examples/experimental_data_analysis/legacy/experimental_cann1d_analysis.py

Full Changelog: v0.13.0...v0.13.1