Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@mcara
Copy link
Member

@mcara mcara commented Oct 20, 2025

Prepares romancal code for the upcoming release of drizzle 3.0. This PR should not be merged until spacetelescope/stcal#418 is merged and either the dependency is set to stcal@main or a new release is made that contains changes required for this to work with drizzle 3.0.

NOTE: although drizzle 3.0 will be backwards compatible, tests in jwst and romancal are set to fail even on deprecation warnings, unfortunately.

I do not think this PR makes any user-facing API changes but do let me know if a changelog is needed.

Tasks

  • request a review from someone specific, to avoid making the maintainers review every PR
  • add a build milestone, i.e. 24Q4_B15 (use the latest build if not sure)
  • Does this PR change user-facing code / API? (if not, label with no-changelog-entry-needed)
    • write news fragment(s) in changes/: echo "changed something" > changes/<PR#>.<changetype>.rst (see below for change types)
    • update or add relevant tests
    • update relevant docstrings and / or docs/ page
    • start a regression test and include a link to the running job (click here for instructions)
      • Do truth files need to be updated ("okified")?
        • after the reviewer has approved these changes, run okify_regtests to update the truth files
  • if a JIRA ticket exists, make sure it is resolved properly
news fragment change types...
  • changes/<PR#>.general.rst: infrastructure or miscellaneous change
  • changes/<PR#>.docs.rst
  • changes/<PR#>.stpipe.rst
  • changes/<PR#>.associations.rst
  • changes/<PR#>.scripts.rst
  • changes/<PR#>.mosaic_pipeline.rst
  • changes/<PR#>.skycell.rst

steps

  • changes/<PR#>.dq_init.rst
  • changes/<PR#>.saturation.rst
  • changes/<PR#>.refpix.rst
  • changes/<PR#>.linearity.rst
  • changes/<PR#>.dark_current.rst
  • changes/<PR#>.jump_detection.rst
  • changes/<PR#>.ramp_fitting.rst
  • changes/<PR#>.assign_wcs.rst
  • changes/<PR#>.flatfield.rst
  • changes/<PR#>.photom.rst
  • changes/<PR#>.flux.rst
  • changes/<PR#>.source_detection.rst
  • changes/<PR#>.tweakreg.rst
  • changes/<PR#>.skymatch.rst
  • changes/<PR#>.outlier_detection.rst
  • changes/<PR#>.resample.rst
  • changes/<PR#>.source_catalog.rst

@mcara mcara requested a review from schlafly October 20, 2025 22:41
@mcara mcara self-assigned this Oct 20, 2025
@mcara mcara requested a review from a team as a code owner October 20, 2025 22:41
@mcara mcara added the enhancement New feature or request label Oct 20, 2025
@mcara
Copy link
Member Author

mcara commented Oct 20, 2025

Regression tests: https://github.com/spacetelescope/RegressionTests/actions/runs/18666992170

Tests are passing

@codecov
Copy link

codecov bot commented Oct 20, 2025

Codecov Report

❌ Patch coverage is 66.66667% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 76.11%. Comparing base (b6b8f79) to head (a4a8dbe).

Files with missing lines Patch % Lines
romancal/resample/resample.py 50.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2009      +/-   ##
==========================================
- Coverage   78.92%   76.11%   -2.81%     
==========================================
  Files         138      138              
  Lines        8224     8224              
==========================================
- Hits         6491     6260     -231     
- Misses       1733     1964     +231     

☔ 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.

@mcara
Copy link
Member Author

mcara commented Oct 21, 2025

Unit tests will fail unless I modify pyprogect.toml to point to my branch of drizzle (they should pass after my drizzle PR is merged).

exptime=1.0,
scale=1.0,
iscale=1.0,
pixel_scale_ratio=1.0,
Copy link
Collaborator

Choose a reason for hiding this comment

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

iscale = 1.0 is definitely right.

Formerly we were not setting pixel_scale_ratio. I understand this to be one of input_pixel_scale / output_pixel_scale or its reciprocal. For our usual case that's going to be 0.5 or 2 at the moment. I feel awkward setting it to 1 here as it seems wrong. Is 1 what is needed?

Copy link
Member Author

Choose a reason for hiding this comment

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

1 is needed to get regression tests pass although they will likely pass regardless since pipeline does not use any of the affected kernels by default (lanczos, turbo, or gaussian). I will be happy to change this to a more sensible value.

Copy link
Collaborator

Choose a reason for hiding this comment

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

Okay, I think I understand that with this set up, things will work for now but if we ever selected a different kernel things would break. I think the right procedure would be to add pixel_scale_ratio to the dictionary following this example

"effective_exposure_time": model.meta.exposure.effective_exposure_time,

from roman.meta.resample.pixel_scale_ratio. And then setting pixel_scale_ratio = model['pixel_scale_ratio'] here so that the right value is passed. But it won't make a difference now since our kernel doesn't use pixel_scale_ratio.

@mcara mcara force-pushed the fix-issues-with-kernel-scale branch from 629566d to 1c8ac46 Compare October 23, 2025 07:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants