Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

type: Track type of SpatialImage.affine, test type inference #1411

Open
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

effigies
Copy link
Member

This PR lays some groundwork for further type annotations. The main thing it does is make SpatialImage generic over its affine type, which can either be Affine (an alias for ndarray that might be refined in the future) or None.

This is a somewhat pedantic thing to track, as it is extremely rare not to provide an affine to an image, but there are cases where it is the correct thing to do. This allows for a forthcoming PR to annotate functions that require an affine or can accept an image with None in it.

It also introduces tests where we specifically test for what mypy says the types of variables are, which lets us verify not only that our types are internally valid, but that they expose what we expect to downstream users.

Copy link

codecov bot commented Feb 16, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 95.35%. Comparing base (84294f4) to head (f1f6cfe).

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1411      +/-   ##
==========================================
+ Coverage   95.34%   95.35%   +0.01%     
==========================================
  Files         208      209       +1     
  Lines       29772    29783      +11     
  Branches     3355     3353       -2     
==========================================
+ Hits        28385    28400      +15     
+ Misses        948      947       -1     
+ Partials      439      436       -3     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@effigies effigies force-pushed the type/spatialimage-affines branch 3 times, most recently from 26dbefe to 67acfdc Compare February 16, 2025 15:14
@effigies
Copy link
Member Author

This is ready to go. Reviews welcome, or else will merge on Thursday, Feb 20.

@effigies effigies force-pushed the type/spatialimage-affines branch from 67acfdc to f1f6cfe Compare March 14, 2025 21:42
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.

2 participants