Skip to content

[ENH] Immlib over pimms#108

Merged
arokem merged 13 commits into
tractometry:mainfrom
36000:immlib
Sep 15, 2025
Merged

[ENH] Immlib over pimms#108
arokem merged 13 commits into
tractometry:mainfrom
36000:immlib

Conversation

@36000

@36000 36000 commented Aug 7, 2025

Copy link
Copy Markdown
Collaborator
  1. replaces pimms with immlib, giving better errors
  2. simplifies code surrounding task decorators
  3. Now catches and throws error if there is an unrecognized input

Copilot AI review requested due to automatic review settings August 7, 2025 23:11

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR replaces the pimms library with immlib throughout the AFQ codebase. The change involves updating the dependency in setup.cfg and systematically replacing all pimms imports and function calls with their immlib equivalents across multiple task modules.

Key changes:

  • Updated dependency from pimms to immlib in setup.cfg
  • Replaced all pimms.calc() decorators with immlib.calc()
  • Updated all pimms.plan() calls to immlib.plan()
  • Modified comments referencing pimms to reference immlib instead

Reviewed Changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
setup.cfg Updated package dependency from pimms to immlib
AFQ/tasks/viz.py Replaced pimms imports and decorators with immlib equivalents
AFQ/tasks/tractography.py Updated all pimms.calc decorators and plan calls to use immlib
AFQ/tasks/segmentation.py Converted pimms decorators and function calls to immlib
AFQ/tasks/mapping.py Replaced pimms usage with immlib throughout the module
AFQ/tasks/decorators.py Updated comments referencing pimms to mention immlib
AFQ/tasks/data.py Comprehensive replacement of pimms decorators and calls with immlib
AFQ/recognition/preprocess.py Updated pimms imports and function calls to immlib
AFQ/api/utils.py Modified type checking from pimms.calculation.Calc to immlib.workflow.calc
AFQ/api/participant.py Updated comment referencing pimms plans to immlib plans

Comment thread AFQ/api/utils.py Outdated
@36000 36000 changed the title [ENH/WIP] Immlib over pimms [ENH] Immlib over pimms Sep 11, 2025
@36000

36000 commented Sep 11, 2025

Copy link
Copy Markdown
Collaborator Author

@arokem this is ready for review/merge

@arokem

arokem commented Sep 11, 2025

Copy link
Copy Markdown
Member

This looks good to me!

@noahbenson: could I trouble you to take a quick look at this PR?

This replaces pimms with immlib in pyAFQ

@noahbenson

Copy link
Copy Markdown

I just looked through the code! There's plenty of pyAFQ-specific stuff that I can't critique, but the immlib code all looks pretty idiomatic.

FWIW, this is the first major "real-world" test case for immlib, so let me know if it looks like any bugs are arising from it!

@arokem

arokem commented Sep 15, 2025

Copy link
Copy Markdown
Member

Thanks for taking a look! I'll go ahead and merge and we'll keep an eye out for any weirdnesses.

@arokem
arokem merged commit 93d2eb3 into tractometry:main Sep 15, 2025
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants