===================
align_refs
----------
- Compute alignment shifts from the first integration of the science exposure only. [8643]
- Fixed a bug where the aligned PSF was being saved as a 4-D array with the first axis being
identical; now it is saved as a 3-D array. [8747]
ami_average
-----------
- Fix error in step spec that prevents step creation. [8677]
assign_mtwcs
------------
- Step now uses `ModelLibrary` to handle accessing models consistently
whether they are in memory or on disk. [8683]
assign_wcs
----------
- Moved `update_s_region_imaging`, `update_s_region_keyword`, and `wcs_from_footprints`
into stcal. [8624]
- Add helper functions to copy only the necessary parts of the WCS so that
these parts can be used within loops, avoiding copying the full WCS within
a loop [8793]
associations
------------
- Restored slit name to level 3 product names for NIRSpec BOTS and background
fixed slit targets. [8699]
- Update warning message about use of paths in associations. [8752]
- Remove ``MultilineLogger`` and no longer set it as the default logger. [8781]
- Excluded nearby background candidates from NIRSpec fixed slit associations
for S1600A1 with 5 point dithers, to reduce overlap between background nods
and science exposure. [8744]
- Added association rule for level 3 image mosaic candidates. [8798]
badpix_selfcal
--------------
- Subtract pedestal dark when constructing min array across selfcal exposures
for MIRI MRS data. [8771]
calwebb_coron3
--------------
- Tighten tolerance of psf alignment. [8717]
calwebb_detector1
-----------------
- Added the optional ``clean_flicker_noise`` step between ``jump`` and
``ramp_fit``. [8669]
change_migration
----------------
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
clean_flicker_noise
-------------------
- Implemented this new optional step to clean transient flicker noise (e.g. 1/f noise)
from group images in ramp data. [8669]
cube_build
----------
- Removed direct setting of the ``self.skip`` attribute from within the step
itself. [8600]
- Fixed a bug when ``cube_build`` was called from the ``mrs_imatch`` step. [8728]
- Ensure that NaNs and DO_NOT_USE flags match up in all input data before
building a cube. [8557]
- Replaced deep copies of NIRSpec WCS objects within most loops. [8793]
- Allow the user to provide ra and dec shifts to apply for each file to fine
tune the WCS. [8720]
datamodels
----------
- Added `ModelLibrary` class to allow passing on-disk models between steps in the
image3 pipeline. [8683]
dark_current
------------
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
documentation
-------------
- Add changelog to documentation. [8716]
- Updated description of association keyword `expname`: including path information
in addition to the filename is discouraged, but allowed. [8789]
dq_init
--------
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
emicorr
-------
- Fixed a bug where MIRI EMI correction step would return NaNs when it was unable
to compute a correction. [8675]
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
extract_1d
----------
- Updated NIRISS SOSS extraction to utilize ``pastasoss``
rotation solution. [8763]
first_frame
-----------
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
flat_field
----------
- Ensure that NaNs and DO_NOT_USE flags match up in all science, error,
variance, and DQ extensions for all modes. [8557]
- Replaced deep copies of NIRSpec WCS objects within most loops [8793]
gain_scale
----------
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
general
-------
- Remove the unused ``stsci.image`` dependency. [8663]
- Update required stcal version to 1.8.0. [8706]
- Increase minimum required stpipe. [8713]
- Increase minimum required stdatamodels. [8797]
- bump dependency to use ``stcal 1.9.0`` [8808]
group_scale
-----------
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
ipc
---
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
jump
----
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
klip
----
- Allowed klip to ingest a single shifted 3-D PSF model instead of a 4-D structure
containing one shifted PSF per science integration. [8747]
lastframe
---------
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
linearity
---------
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
master_background
-----------------
- Either of ``"background"`` or ``"bkg"`` in slit name now defines the slit
as a background slit, instead of ``"bkg"`` only. [8600]
- Replaced deep copies of NIRSpec WCS objects within most loops [8793]
model_blender
-------------
- Allow incremental blending of models. [8759]
mrs_imatch
----------
- Added a deprecation warning and set the default to skip=True for the step. [8728]
msaflagopen
-----------
- Replaced deep copies of NIRSpec WCS objects within most loops. [8793]
nsclean
-------
- Changed subarray mode from operating on the entire array at once to
operating on sections of the array and smoothly combining these sections.
Due to the computational costs of matrix operations, this is a large
speedup that has little effect on the results. [8745]
- Merged implementation with the new ``clean_flicker_noise`` step. This step
can still be called from the ``calwebb_spec2`` pipeline on NIRSpec rate
data, but it is now deprecated. [8669]
- Replaced deep copies of NIRSpec WCS objects within most loops. [8793]
outlier_detection
-----------------
- Fixed failures due to a missing ``wcs.array_shape`` attribute when the
``outlier_detection`` step was run standalone using e.g. ``strun`` [8645]
- Refactored separate modes into submodules instead of inheriting from a base class.
Moved non-JWST-specific code to stcal. [8613]
- Fixed file names and output directory for intermediate resampled spectral
images. Intermediate files now have suffix ``outlier_s2d`` and are saved to
the output directory alongside final products. [8735]
- For imaging modes, step now uses `ModelLibrary` to handle accessing models consistently
whether they are in memory or on disk. [8683]
- Ensure that NaNs and DO_NOT_USE flags match up in all output science, error,
variance, and DQ extensions. [8557]
pathloss
--------
- Ensure that NaNs and DO_NOT_USE flags match up in all output science, error,
variance, and DQ extensions. [8557]
- Replaced deep copies of NIRSpec WCS objects within most loops [8793]
persistence
-----------
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
photom
------
- Ensure that NaNs and DO_NOT_USE flags match up in all output science, error,
variance, and DQ extensions. [8557]
- Replaced deep copies of NIRSpec WCS objects within most loops. [8793]
pipeline
--------
- Updated `calwebb_image3` to use `ModelLibrary` instead of `ModelContainer`, added
optional `on_disk` parameter to govern whether models in the library should be stored
in memory or on disk. [8683]
- Updated ``calwebb_spec2`` to run ``nsclean`` on NIRSpec imprint and background
association members. [8786, 8809]
- Updated `calwebb_spec3` to not save the `pixel_replacement` output by default.[8765]
- Replaced deep copies of NIRSpec WCS objects within most loops. [8793]
pixel_replace
-------------
- Replaced deep copies of NIRSpec WCS objects within most loops. [8793]
ramp_fitting
------------
- Moved the read noise variance recalculation for CHARGELOSS flagging to the C
implementation, when the algorithm is ``OLS_C``. [8697, spacetelescope/stcal278]
- Updated the flow of the detector 1 pipeline when selecting the ``LIKELY`` algorithm
for ramp fitting. The ramps must contain a minimum number of groups (4).[8631]
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
refpix
------
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
regtest
-------
- Added memory usage test for Detector1 pipeline. [8676]
resample
--------
- Fixed a typo in ``load_custom_wcs`` from ``array_shape`` to ``pixel_shape`` and
changed to use values in the top-level ASDF structure if the values in the WCS
are ``None``. [8698]
- Step now uses `ModelLibrary` to handle accessing models consistently
whether they are in memory or on disk. [8683]
- Ensure that NaNs and DO_NOT_USE flags match up in all input data before
resampling. [8557]
reset
-----
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
resample_spec
-------------
- Modified the output NIRSpec spectral WCS to sample the input data linearly in sky
coordinates, rather than slit coordinates, in order to conserve spectral
flux in default reductions. [8596]
- Updated handling for the ``pixel_scale_ratio`` parameter to apply only to the
spatial dimension, to match the sense of the parameter application to the
documented intent, and to conserve spectral flux when applied. [8596, 8727]
- Implemented handling for the ``pixel_scale`` parameter, which was previously
ignored for spectral resampling. [8596]
- Fixed a bug resulting in incorrect output slit coordinates for NIRSpec moving
targets in the ``calwebb_spec3`` pipeline. [8596]
- Separate ``resample_spec`` step parameters from ``resample`` step parameters
so that the spectral resampling step only exposes parameters that are appropriate
for spectral data. [8622]
- Ensure that NaNs and DO_NOT_USE flags match up in all input data before
resampling. [8557]
rscd
----
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
saturation
----------
- Add option for using the readout pattern information to improve saturation flagging
in grouped data. [8731]
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
scripts
-------
- Removed many non-working and out-dated scripts. Including
many scripts that were replaced by ``strun``. [8619]
set_telescope_pointing
----------------------
- Replace usage of ``copy_arrays=True`` with ``memmap=False`` [8660]
skymatch
--------
- Step now uses `ModelLibrary` to handle accessing models consistently
whether they are in memory or on disk. [8683]
stpipe
------
- Removed setting of the `self.skip` attribute in the `record_step_status()` function;
added a `query_step_status()` function to use as an alternative to checking
`self.skip`. [8600]
- Log jwst version at end of `Step.run`. [8769]
superbias
---------
- Removed unnecessary copies, and created a single copy at step.py level. [8676]
tso_photometry
--------------
- Replaced photutils.aperture do_photometry with photutils.ApertureStats to remove NaNs
when performing TSO photometry for non SUB64 WLP8 pupil data. For SUB64 WLP8 changed
summing data in the aperture to use np.nansum to ignore NaNs. [8672]
tweakreg
--------
- Updated requirement for ``tweakwcs`` to version ``0.8.8`` which fixes a crash
in the ``tweakreg`` step due to a ``MalformedPolygonError`` exception being
raised by the ``spherical_geometry`` package for some data
sets. [8657, spacetelescope/tweakwcs205]
- Moved all realignment methods to stcal. [8624]
- Removed direct setting of the ``self.skip`` attribute from within the step
itself. [8600]
- Step now uses `ModelLibrary` to handle accessing models consistently
whether they are in memory or on disk. [8683]