spacer link to MAST page spacer logo image spacer
link to STScI page

HST Processing Status

This page provides our users access to information about HST data reprocessing activities. This page will document large reprocessing efforts that we expect will take more than a few days. Small sets that we expect to be completed in a few hours will not be documented below.

Reprocessing efforts are almost always triggered by changes to the reference files. Information about updated reference files and the reasons and categories for selection of datasets for reprocessing are provided by the instrument teams as part of the CRDS system that can be found here.

Current Reprocessing Status

In general, HST data available from the archive are up to date with the latest pipeline software deliveries and calibration reference files. During times when significant amounts of data need to be reprocessed to take advantage of new deliveries in future, the reprocessing status will be indicated here.

Pipeline software releases

Information is presented below about the current software being used in the processing pipelines to process HST data. This includes summaries about new features, bug fixes, and other changes from previous versions of the software.

More details about these software versions, including instructions for downloading and running the pipeline software, are available at the AstroConda Channel. For questions please contact the Archive Hotseat at:

Release: 2018.1Installed: 2018-02-28 (current release)

HSTCAL Version 2.0.0rc3

The following updates, specified in separate sections for each instrument, have been included with this release. This release is presented as HSTDP-2018.1 milestones.

HSTCAL package updates

  • The separate trailer file support routines used by ACS, WFC3, and STIS were consolidated into a single file, and are now part of libhstcallib.a.


HSTDP-2018.1 Milestones

  • Improvements in robustness and maintainability have been made to the infrastructure software (HSTIO) and libraries which are the foundation for the pipelines.


HSTDP-2018.1 Milestones, Data Changes

  • CALACS updates to Version 10.0.0 due to the modifications imposed by the upgraded ACSREJ algorithm.
  • An updated ACSREJ algorithm was implemented where all calculations are now done in electrons versus DN. The threshold computation uses the ERR arrays to account for post-flash noise PR#2.
  • CALACS now uses the amp-dependent read noise as the threshold to determine if a pixel has enough signal-to-noise ratio such that a reasonable correction can be applied PR#258.
  • A bug fix has been implemented which is only applicable for RAWs with PCTECORR=PERFORM for ASNs used for cosmic ray rejection. In this case the CR rejected output (CRJ) previously used the wrong dark; it used the CTE-corrected dark. This has been addressed, and the CRJ product is now correct utilizing the non-CTE corrected dark PR#273.
  • All BIAS files are now processed by CALACS to use only read noise (vs Poisson) for the computation of the ERR array as the date discriminant (pre- and post-SM4) has been removed PR#288.
  • The C interface to the ACSREJ standalone component of CALACS was modified for clarity. The "newbias" option was renamed "readnoise_only". The functionality associated with this option remains the same.

  • [x] Affects old data
  • [x] Users should re-retrieve affected datasets from the archive
  • [x] Updated reference files delivered by science team


HSTDP-2018.1 Milestones

  • calstis version 3.4.2
  • Bugs were addressed: memory leak, added --help option, ensure printing of syntax usage when necessary

  • [ ] Affects old data
  • [ ] Users should re-retrieve affected datasets from the archive
  • [ ] Updated reference files delivered by science team


HSTDP-2018.1 Milestones

  • CALWF3 updates to Version 3.4.2 for this release.
  • A number of code robustness improvements (address memory leaks, fix detected bugs) were implemented.

  • [ ] Affects old data
  • [ ] Users should re-retrieve affected datasets from the archive
  • [ ] Updated reference files delivered by science team

Additional software included in this update

  • drizzlepac 2.1.21
  • stwcs 1.4.0
  • calcos 3.3.4
  • acstools 2.0.10

Release: 2017.3Installed: 2017-09-26

CRDS 7.1.5

  • Updated git hash for 7.1.5 release.
  • Added self.args.update_pickle to crds.bestrefs as a condition for recording bestrefs errors as "updates" anyway so that they're available for regressions.
  • Added support for JWST P_READPA pattern keyword.
  • Bugfix, geis: missing __future__ absolute_import Tweak bad value enumeration regex wartning vs. error Unit test performance: crds.bestrefs --affected-datasets smoke test Doctest tweaks: use of -ignore- in test_certify, Python-2 vs. 3, excessive detail text
  • Pylinting. One typo bugfix for selectors simple value substitutions.
  • Updated unit tests for ASDF warnings.
  • Updated unit tests.
  • Updated system crdscfg from latest cal code.
  • Updated checksum in nirpsec_wavecorr.rmap spec.
  • Updated text description for NIRSPEC WAVECORR.
  • Restored test_bestrefs dt_bestrefs_dataset_only_ids() test case.
  • Modified crds.core.selectors to make the overlapping match case warning for JWST non-verbose since for JWST by default it will result in a runtime error. For HST, it's still verbose, because there are many bad rmaps. Changed terminology from "raise_ambiguous" (overlapping matches detected at runtime are exceptions to "merge_overlaps" (explains consequences of allowing overlapping cases: dynamic merging of selector data.)
  • Modified handling of raise_ambigiuous in crds.core.selectors so that rmap validation for JWST will issue warnings when match cases overlap. HST on the other hand will retain the current verbose_warning() approach since it has so many known overlaps.
  • Switched JWST pipeline module reference location warning to a normal try/except so that it doesn't capture the --debug-traps tracebacks with expected exceptions. Modified jwst.locate.filekind_to_keyword() to handle missing schema coverage by returning the filekind name instead.
  • More optimization for rmap selector substitutions, comments for related methods.
  • Optimized rmap selector substitutions code.
  • Initial rewrite of rmap selector substitutions code to add default substitutions for SUBARRAY=GENERIC as well as general capability. This makes explicit rmap header updates for GENERIC unnecessary, a common omission.
  • Refactored Selector.do_substitutions()
  • Made dictionary copy of DEFAULT_SUBSTITUTIONS to avoid cross-talk between rmaps.
  • Created "default" rmap substitutions for SUBARRAY=GENERIC --> N/A since it's fairly common to forget the explicit subsitution block in the rmap header that is currently required. This applies to HST as well.
  • Added a bestrefs regression canary test to prove it will detect mismatches between current bestrefs and stored .json results. Fixed crds.list doctest reference to specific file path.
  • Added caching to utils.get_object() saving about 10-15% of COS regression total runtime.
  • Made crds.list output more deterministic Tweaked crds.list doctests.
  • More crds.list test coverage.
  • Bugfix in test-related clear_crds_state(). Bugfix in crds.list --references --cat Added basic unit test coverage for crds.list
  • Refactored is_writable() to better isolate possible multiprocessing failures in one of the os calls.
  • Added baseline NIRSPEC WAVECORR typespec.
  • Migrated crds.checksum tool to standard CRDS command line tool format, enabling debugging flawed typespecs that wont even checksum.
  • Regenerated jwst_system_crdscfg_b7.1.yaml after adding new EXP_TYPE to .cfg mappings.
  • Added missing EXP_TYPE values to jwst_system_crdscfg_b7.1.yaml
  • Added crds.misc.cal_pipelines module to provide project independent API to SDP for determining nominal .cfg's from EXP_TYPE. Not implemented for HST.
  • Added NIRCAM SPECWCS rmap/spec.
  • One last overhaul of jwst.pipeline to add header_to_pipelines(). Inverted parameter order of header_to_retypes() mimicking header_to_pipelines() to enable defaulting context.
  • Modified JWTS pipeline module to use either B7 or B7.1 default SYSTEM CRDSCFG files in case never delivered as reference.
  • Modified bestrefs to simplify ID output for unassociated exposures of the form <id:id> to <id>. This is mainly for JWST and only affects bestrefs error log output.
  • Changed regex for s/w versions to account for trailing noise which is ignored. Switched "using default SYSTEM CRDSCFG" verbose warning to normal warning. Adjusted jwst_system_crdscfg_b7.yaml header parameters to make it submissible. Updated opaque_asd.tmp to a more current file to avoid ASDF version warnings.
  • Added sorting to jwst.pipeline .cfg lists for better diffs between versions.
  • Added log output to SYSTEM CRDSCFG interpretation methods to show what reference types were identified and from which exp_type and reference file.
  • Updated SYSTEM CRDSCFG baseline reference for b7.1 Tweaked manual/automatic generation string used to break apart old reference during regeneration.
  • Regenerated default SYSTEM CRDSCFG reference from JWST cal code 0.7.0. Modified to operate based on loaded YAML only, no more computations.
  • Relocated initial B7 system_crdscfg default reference.
  • Preliminary rewrite of SYSTEM CRDSCFG reference file format.
  • Added Howard's comments for B7.1 support for SYSTEM CRDSCFG generation.
  • Changed crds sync warning for rejected/backlisted files to verbose since full caches will include bad files.
  • unit test update for change in default classes.
  • Updated unit tests for change in JWST default class structure.
  • Updated nirspec .tpn's to reflect new definitions that enable GENERIC to be a non-full-frame image.
  • Removed PUPIL as nircam specific constraint.
  • Added CENWAVE=1223 to COS per Jira REDCAT-33.
  • Added certification check for rmap selectors, class_list length must match parkey length, practically speaking detects missing USEAFTER structure due to missing "classes" field now relevant due to change in default JWST class structure.
  • Improved exception message for rmap update reference file insertion exceptions, in this case because of a mismatch between parkey and classes.
  • Improved context resolution in cmdline in several ways. Changed USEAFTER_DATE to USEAFTER in wfpc2 .tpns, not _ld.tpns. Polished "crds list --cat". Changed a number of opaque certification file test cases from symlinks to actual files.
  • Overhauled "crds list --cat" to make better use of references and mappings implied by contexts as well as explicitly listed files. This is a precursor to more polymorphic listing by filetype.
  • Added better exception handling to remote context push and list functions used to track and display actual pipeline contexts.
  • Changed default rmap structure for JWST to include UseAfter making the heretofore required "classes" rmap header field now optional.
  • Moved crds.tables module to and adjusted module imports and unit tests accordingly.
  • Moved crds.tables module into package and refactored unit tests and module imports.
  • Improvements to factory.get_filetype(), particularly GEIS vs. FITS discrimination for opaque temporary files.
  • Added additional file types (.yaml) to installed data files from observatory packages.
  • Cleaned up JWST translations of the former REFFILE datamodels paths since the REFFILE tier was eliminated from the generic referencefile schema.
  • Modified config.filetype() to treat .xNd as GEIS as well as .xNh.
  • I/O refactoring to clean up "keyword cross-strapping" developed for JWST to enable manually configured or automatically scraped keyword equivalences between cal code datamodels paths and FITS or other physical keywords. This approach moves custom JWST code out of the abstract I/O module and lines up manual configuration against the possibility that JWST datamodels integration becomes difficult to maintain at some point. Several misc. pylint cleanups.
  • Multiple fixes for new pipeline refactoring: Modified pipeline module to define CAL_VER using installed JWST code if it is not defined in the incoming parameter set. Modified cal_ver version regex to support build suffix, e.g. 1.2.3.dev456 Modified VersionAfterSelector to truncate versions at 1.2.3 Modified pipeline to fix rmap.get_best_ref typo for identifying system crdscfg. Added system crdscfg reference file fetch to crds.jwst.pipeline. Added system crdscfg reference file location/path to crds.jwst.pipeline.
  • More crds.jwst.pipeline refactoring: Factored reference file generation code out of runtime pipeline module. Switched to using default YAML taken from prototype reference file.
  • Factored prototype reference file text out of JWST pipeline module into a true reference file. Added type specification for system crdscfg (originally planned as system calcfg). Added baseline reference. Added additional context parameter to header_to_reftypes() hook function required to define the context used to identify system_crdscfg reference. Updated unit tests.
  • Bugfix (shaky) for VersionAfterSelector.match_item() single parameter case, return version as string not list split on "."
  • Modified parkey for system_crdscfg.rmap spec file.
  • Added baseline spec for system_crdscfg used to define required reftypes for JWST based on context, calver, and exp_type.
  • Added some unit test cases to jwst.pipeline to help verify behavior after refactoring to reference file based configuration.
  • Fix for is_simple_mapping() when called with loaded mapping object.
  • Revised JWST .tpns redistributing some constraints back to instrument-specific checking.
  • Fixed typo in crds_cache_locking that broke acquisition logging (but not acquisition). Refactored logging for CRDS_READONLY_CACHE=1 case of cache locking.
  • Fixed typo in crds_cache_locking that broke acquire logging. Added logging for CRDS_READONLY_CACHE=True cach locking case.
  • Added --profile switch to runtests for profiling unit tests.
  • Docs tweak.
  • Added documentation for CRDS Cache locking, as well as a basic description of reference file conventions and matching pattern specification.
  • Eliminated redundant io keyword cross-strap equivalence tuples for the null case of (keyword, keyword).
  • Switched back to hard coded __version__ since the pkg_resources version conflicts with the CRDS server version number obscuring the client version.
  • Updated version info for development.
  • Updated git hash for 7.1.4
  • Modified CRDS __version__ to use version from via pkg_resources module.
  • Updated certify truncation doctest.
  • Untested changes to .travis.yaml eliminating astroconda channel and simplifying package pinning. Untested change to ./runtests return status.
  • Added more ellipsis to certify invalid.asdf doctest. Added P_GRATING as JWST pattern keyword.
  • Typo
  • Added astroconda back in.
  • Removed astroconda from Travis CI.
  • Tweak to test_certify ellipsis
  • Added lockfile as required dependency.
  • Moved default lock path to /tmp if it exists. Created/updated CrdsLockFile and CrdsFakeLockFile classes, overriding acquire() and release() instead of __enter__() and __exit__(). Overhauled get_cache_lock() to handle various cases where locking is disabled. Added locking status to crds list --status Added --clear-locks to crds.sync, can also be used to init locks directory.
  • Added CRDS_USE_LOCKING env var to turn off w/o readonly cache. Changed default lock filename to crds.cache.lock (dropped hidden ".")
  • Created CrdsCacheLock subclass of lockfile.LockFile to add logging for acquire and release. Refined get_cache_lock()'s handling of: 1. lockfile import failed 2. CRDS cache is readonly 3. Lock creation failed.
  • Deferred lockfile import warning until actual call to get_cache_lock().
  • Moved default cache lock directory to root CRDS cache config directory. Changed config approach to specify lock file paths only to support multiple locks. Added config.get_crds_root_cfgpath() and config.get_crds_lockpath(lock_filename). Added clear_cache_lock() Modified utils.remove() to support removing cache lock files.
  • Updated doctests for removing REFFILE provenance
  • Redefined JWST provenance keywords based on new datamodels schemas to avoid redundant META.REFFILE log output.
  • Dropped locking "import" unit test. Added conda list to Travis test output.
  • Doctests, thrashing obviously.
  • More doctest fixes.
  • Fix for crds_cache_locking doctest, restores prior verbosity.
  • Added lockfile as a dependency for .travis.yml Added basic crds_cache_locking doctest, mainly to detect missing lockfile package.
  • Updated version # in setup.cfg, inconsistent with since 7.1.1 Added related comment to crds/ Added comments about CRDS softer dependencies to
  • Added CRDS_CACHE_LOCK env var for defining CRDS cache lock filepath. Added crds.core.crds_cache_locking to importable modules from crds package. Cleaned up verbose warnings for cache locking failures.
  • Fixed invalid.asdf unit test.
  • Added to wrap lockfile.
  • Fix for unit test broken by new datasets with COS LIFE_ADJ=4 running on contexts that did not support that.
  • Trapped HST instrument directory symlink creation with a verbose warning after seeing it fail for crds sync --output=blah
  • Fix for python23 StringIO management.
  • Fixed reftypes unit test for new NIRISS types.
  • Added JWST MIRI versions of PERSAT, TRAPDENSITY, and TRAPPARS omitted from jira-crds-114,115,116 due to no available references.
  • Baseline specs for JWST NIR insturment TRAPPARS types, jira-crds-116.
  • Baseline specs for new JWST NIR TRAPDENSITY type, jira-crds-115.
  • Baseline specs for new NIR instrument PERSAT types. jira-crds-114.
  • Added __hash__() to DiffTuple in as required by Python-3 (tuple?) subclasses that also define __eq__().
  • Fixed invalid.asdf certify doctest new io.fits output. Removed expensive certify sync comparison test.
  • Improved exception handling for mis-configured CRDS, e.g. attempting JWST ops with CRDS_SERVER_URL configured for HST.
  • Modified checksum tool to run mapping parser to detect duplicate match cases prior to rewriting rmaps to prevent silently dropping the duplicates during the checksum update process. Duplicate cases are errors.
  • Fixes for PEDIGREE, PEDIGREE column checking, additional tests.
  • Baseline fix for PEDIGREE column values, needs broad testing and specific unit tests.
  • Clarified diff message of Selector class to N/A.
  • Abstracted out .pmap number with ellipsis in
  • Trapped rowdiff runtime error for inconsistent hdus so header diffs still occur and web display gives gentler indication than traceback.
  • Tested fix for backward/forward compatible file submission upload files info protocol change.
  • Untested backward/forward compatible version of command line file submission file upload info method, broken by recent server upgrade of Django-jQyuery-file-upload package.
  • Fixed doctest pmap version dependency with ellipsis in
  • Updated valid values for JWST SUBARRAY in all_all
  • Added N/A and ANY back to NIRSPEC ALL EXP_TYPE values.
  • More info on CRDS path specification.
  • Updated documentation for certify (and --help) to more explicitly describe using ./ to specify the current working directory instead of implicitly meaning "in the CRDS cache."
  • Updated git hash for initial dev version 7.1.4
  • Bumped development version to 7.1.4
  • Updated 7.1.3 git hash for tagging.
  • Added verbosity=90 log messages to trace how keywords are being cross-strapped via hard coded tables and JWST datamodels inferences.
  • Unit test updates, added path back into log_and_track_errors output
  • Fixed bug in crds certify log_and_track_error where simplified file specification (only basename) made it impossible to read the file to determine instrument and type.
  • Removed explicit PUPIL definitions from NIRCAM ALL.
  • Added a second stage of header cross strapping after noticing that the P_ initialized versions of normal keywords were not cross strapped. Made the io.abstract cross strapping function public. Increased verbosity level for missing optional keywords, mostly noise.
  • Updated unit tests for test_certify table log message improvements.
  • Improve table mode checking logging in crds.certify. Removed dead code for all columns.
  • Added missing test_config.cleanup(old_state) to test_certify accidentally deleted during doctest update.
  • Removed test dataset from crds/tests directory to simplify diffs.
  • Updated for NIRSPEC AREA tabular modes. Added is_imaging_mode(EXP_TYPE) validator helper. Added unique_rowkeys to ('SLIT_ID', 'SLICE_ID', 'SHUTTER_X', 'SHUTTER_Y', 'QUADRANT'). Switched nirspec_area.tpn to use nirspec_sci_array.tpn instead of nir_sci_array.tpn Modified nirspec_sci_array.tpn to limit it to imaging modes Added table constraints to nirspec_aray.tpn for NRS_IFU,NRS_MSASPEC, and NRS_FIXEDSLIT|NRS_BRIGHTOBJ. Updated JWST reference_to_dataset to ensure SUBARRAY and EXP_TYPE are always defined, if only UNDEFINED. Added cross strapping for META.INSTRUMENT.MODULE.
  • JWST certify helper function bugfix for NIRSPEC FFLAT. Update for unit test related to META.REFFILE -> META. schema refactoring.
  • Updated global JWST constraints to make optional boilerplate metadata required. Updated test data as needed to include HISTORY.
  • Updated _ld version of nircam_all.tpn
  • Added JWST P_ translation for meta.p_subarray Commented out EXP_TYPE constraint in nircam_all.tpn
  • Added additional schema translations to hard code some of the recent reference file schema updates, including flattening to
  • Fixed import sys error in custom_query_affected_datasets_script
  • Modified query_affected reprocessing reference/example scripts to return non-zero exit status if client or server side errors occurred.
  • Fixed refactoring issue with command line file submission interpretation of django-file-upload JSON response which changed during the recent jQuery and related package updates.
  • Refactored command line get_files() method used to support @-files into get_words() to remove the implicit assumption that every word is a filename. Updated crds.list accordingly since it was abusing get_files() to load dataset ids.
  • Modified JWST schema loader to support revised cal code schema layout that nests "type" under "anyOf".
  • Fixed bug in certify .tpn value quoting for COS GSAGTAB.
  • Added crds sync readonly cache info's / soft-warning.
  • Added arg() convenience function to pysh for sls's.
  • Changes to crds.list and dataset header fetching crds.client API.
  • Updated git hash for 7.1.3 again, following test updates
  • Updated test cases. Re-added the sort() for P_ keyword application so that doctest results are deterministic.
  • Updated git hash for 7.1.3
  • Bumped version to 7.1.3 for release.
  • Updated valid SUBARRAY values for JWST based on cal code.
  • Filtered out the import warning related to the complex CRDS __init__ imports.
  • Fix for verbose-with-prefix missing self.
  • Refactored bestrefs to add verbose_with_prefix() method to shave off cost of format_prefix() for multiple verbose() per-dataset log messages.
  • Updated FILETYPE definition for new COS DGEOFILE per Jira CRDS-97.
  • Added a couple more test cases for P_ pattern or-glob trailing | syntax.
  • Added JSON output format to crds.list --dataset-headers to support running bestrefs and/or grepping headers one-per-line.
  • Added reference_to_dataset translation logic and error checking for P_ pattern keywords for JWST. HST still has no support. Simplified MIRI .tpn BAND enumerations. Updated unit tests.
  • Modified crds diff (rmap code) to ignore differences in rules files that have the same checksum. Nominally this occurs in cache-to-cache differences where filepaths are different but mapping contents are the same.
  • Added more bestrefs unit test coverage, fixed project specific bug with --all-instruments, improved get_pickled_mapping to pass pre-loaded mappings like asmapping().
  • Work on or-glob-values containing spaces for readability, particularly with respect to rmap updates and normalized tuple values. Added test_substitutions module trying to increase test coverage.
  • Baseline refactoring of core CRDS and certifier to support spaces in or-bared match patterns for readability. Updated unit tests for revised Tpn output. Added a test case for or-barred syntax that fails until JWST is updated. Re-ordered application of JWST data models open so that more basic certify checks run first. Rmap updates need more review and consideration: matching with readability spaces, and rmap updates with same.
  • Updated selectors del_match_parameter to handle singleton non-tuple parameter deletions.
  • Unplugged JWST schema scraping for certify enumerations since it is in flux and doesn't work yet with the new reference file specific schema. The data models open check should work now. Updated unit tests. Added unit tests for dm_to_fits() and fits_to_dm()
  • Modified certify --dump-provenance to skip keytypes that are not H, i.e. header keywords. Modified JWST keytype=H expression .tpn constraints to keytype=X to avoid dump of UNDEFINED expression labels. pylinted, updated unit tests for above.
  • Added ANY,N/A to CUBEPAR .tpns
  • Updated git hash and rationale for 7.1.2
  • Updated ACS CTE .tpn due to delay in delivery.
  • Updated additional .tpn files for COS LIFE_ADJ=4
  • Modified client proxy verbose mode to show RPC results for simple results like strings, numbers, etc.
  • Added generic capability to expand symbolic spec for a type such as jwst-all-photom-operational into the symbolic types for each non-system instrument. This is useful for re-running the certifier on a type across all instruments.
  • Modified JWST certify handling of PHOTOM based on discussions in #513.
  • Changed "provides" to just "crds" after PyPi upload failed.
  • Relaxed certify condition on NIRSPEC SATURATION for SCI_ARRAY type is INT to FLOAT or INT. Extended has_type helper function to support list of types.
  • Updated HST combined specs for ACS SNKCFILE.
  • Added requirement DETECTOR=WFC to ACS SNKCFILE rmap_relevance, otherwise N/A.
  • Adjusted reftypes set combination from difference to intersection.
  • Added certify reftypes unit tests, corrected tpn text dumps.
  • Commented out dev/test code in certify/ to prevent spoofing coverage results.
  • First stepping stone to limiting type determination to those contained in the context in use.
  • Removed unique_rows checks from ACS, WFC3 PCTETAB after discussion on Jira CRDS-103.
  • Updated doctest for data models check due to change in output format.
  • Updated specs and .tpns for MIRI,NIRSPEC CUBEPAR for Jira-CRDS-109, 110
  • Updated ACS PCTETAB spec and tpns based on new format inputs from David Borncamp on Jira CRDS-103.
  • Modified format constraints for WFC3 and ACS CTE references based on existing WFC3 and example ACS CTE file from David Borncamp. Removed unique rows check for ACS PCTETAB since columns changed and new unique parameters are still undefined.
  • Optimized verbose output in, mainly for column checks.
  • Bumped development version to 7.1.2

Additional software included in this update

  • None

Release: 2017.2aInstalled: 2017-08-02

HSTCAL Version 1.3.0

The following updates have been included with this release.


  • CALACS updates to version 9.2.0 with this release.
  • New BLEVCORR algorithm that uses new OSCNTAB, which now correctly calculates bias level for AMP B and D in subarrays.
  • New SINKCORR step to apply new SNKCFILE in order to flag sink pixels. See ACS ISR 2017-01.
  • New pixel based PCTECORR algorithm implemented (CTE_NAME= 'PixelCTE 2017').
    • The code defaults to this new algorithm, however, the old one can still be executed using the command line option --ctegen <1|2>. Note: The correct accompanying PCTETAB file must also be used.
    • The user can now override the PCTETAB file used (normally specified in the image header) with the command line option --pctetab <file path>.
    • The number of threads used for computing the PCTECORR can now be specified with the command line option --nthreads <N>. Note: OPENMP is required for N > 1.
  • Fixed uninitialized variable in prinfo.c.
  • Corrected --version reporting and added -r to report version string that was previously reported by --version.

  • [x] Affects old data.
  • [x] Users should re-retrieve affected datasets from the archive.
  • [x] Updated reference files delivered by science team.


  • Due to the quick succession of this release from 1.2.0, please refer to the following release notes for other recent updates.

Additional software included in this update

  • nictools 1.1.3
  • stistools 1.1
  • stsci.distutils-0.3.8
  • stsci.image-2.2.0
  • stsci.imagemanip-1.1.2
  • stsci.imagestats-1.4.1
  • stsci.ndimage-0.10.1
  • stsci.numdisplay-1.6.1
  • stsci.skypac-0.9.4
  • stsci.sphere-0.2
  • stsci.sphinxext-1.2.2
  • stsci.stimage-0.2.1
  • stwcs 1.3.2

Release: 2017.2Installed: 2017-06-15

acstools 2.0.7

  • Minor fix for compatibility with Numpy 1.12 or later.

crds 7.1.1

  • JWST B7.1 first quarter, HSTDP-2017.2, new HST + JWST types

drizzlepac 2.1.14

  • Supressing aggravating astropy.wcs INFO messages

fitsblender 0.3.1.dev2

  • bugfix release

HSTCAL 1.2.0rc2

The following updates, specified in separate sections for each instrument, have been included with this release.

HSTCAL package updates

  • waf installer upgraded to 1.9.9 to support Python 3.6.
  • Added --O3 and --release-with-symbols options in build configuration.
  • Enhanced platform check by installer.
  • HSTCAL error codes were consolidated into a single global include file.


  • Fixed uninitialized variable in prinfo.c.
  • Corrected --version reporting and added -r to report version string that was previously reported by --version.


  • calstis version 3.4.1
  • fixed a bug that garbled some FITS HISTORY keywords
  • fixed a bug in the bar finding algorithm
  • fixed a bug in processing highres echelle data in which the error and dq arrays were incorrectly calculated

    No keyword changes.

    The only science changes will be to longslit spectroscopic data and high resolution echelle data.

  • [x] Affects old data
  • [x] Users should re-retrieve affected datasets from the archive
  • [x] updated reference files delivered by science team


  • calwf3 updates to version 3.4.1 with this release

Photometry Keyword Updates

  • There are default description strings in calwf3 which are used when the keyword is being added to a header where it doesn't already exist. This update makes the text consistent among all UVIS headers, including the global header keywords that calwf3 adds for user convenience that are not populated in the raw headers during conversion. See issue #67 for more details. The table below details the changes to the photometry header keywords:
Detector Extension Keyword Previous Updated
UVIS 0,1,4 PHOTCORR populate photometric header keywords NO CHANGE
UVIS 0,1,4 FLUXCORR convert to absolute flux units Scale UVIS2 to match UVIS1 using PHTRATIO
UVIS 0 PHOTFLAM inverse sensitivity Inverse sensitivity, ergs/cm2/A/e-
UVIS 1,4 PHOTFLAM Inverse sensitivity, ergs/cm2/A/e- NO CHANGE
UVIS 0 PHOTZPT zero point ST magnitude zero point
UVIS 1, 4 PHOTZPT zero point ST magnitude zero point
UVIS 0 PHTFLAM1 photometry scaling for chip 1 Ch1 Inv Sens, use PHOTFLAM for UV filters
UVIS 1,4 PHTFLAM1 PHOTFLAM on chip1 when scales are not uniform Ch1 Inv Sens, use PHOTFLAM for UV filters
UVIS 0 PHTFLAM2 photometry scaling for chip 2 Ch2 Inv Sens, use PHOTFLAM if FLUXCORR=COMPLETE
UVIS 1,4 PHTFLAM2 PHOTFLAM on chip2 when scales are not uniform Ch2 Inv Sens, use PHOTFLAM if FLUXCORR=COMPLETE
UVIS 0 PHTRATIO photometry scaling for chip2 to chip 1 PHTFLAM2/PHTFLAM1 ratio
UVIS 1,4 PHOTMODE observation con Observing configuration
UVIS 1,4 PHOTFNU inverse sensitivity, Jy*Sec/electron Inverse sensitivity, Jy*sec/e-
UVIS 1,4 PHOTPLAM pivot wavelength NO CHANGE
  • [x] Affects old data, all UVIS data will be affected since the keywords are commonly populated
  • [x] Users should re-retrieve affected datasets from the archive for updated header keywords
  • [x] Affects full-frame and subarray UVIS datasets for all filters

  • Code cleanup specific to issue #55 and issue #63; these do not change any data results

Updated reference files which will be part of the reprocessing

This software update itself does not affect data values, just header keyword descriptions. However, the team will be delivering updated reference files at the same time which will be used during reprocessing with calwf3 version 3.4.1. The following reference files will be delivered and used by the archive for reprocessing after this software change has been installed.

Keyword Description Applied Date Range for the new file (USEAFTER) selection keywords Content update or format change?
IMPHTTAB photometry table used by calwf3 All UVIS data DETECTOR = UVIS, PHOTCORR = PERFORM Update
BIASFILE bias reference file All UVIS data DETECTOR = UVIS, BIASCORR = PERFORM Update
FLSHFILE post-flash reference file July 2012 - present DETECTOR = UVIS Update

Reprocessing will begin after the delivery of the reference files and those will affect header keyword values and data for the following:

  • IMPHTTAB: only affects UVIS data which has PHOTCORR = PERFORM, this excludes calibration files like darks and biases
  • BIASFILE: only affects UVIS data which is corrected for bias, including subarrays, except for charge injected data, data which has been read out using a single amplifier, or data from modes which are no longer supported. The science team also plans to begin delivering one bias per year.
  • FLSHFILE: applies to all data taken with post-flash


  • Fixed tagging issue for "git describe" and failed tests.
  • No change to user-facing interface otherwise.

reftools 1.7.4

  • bugfix release 3.4.9

  • Multiple compatibility improvements


  • bugfix release

Additional software included in this update

  • calcos 3.2.1
  • nictools 1.1.3
  • stistools 1.1
  • stsci.distutils-0.3.8.dev0
  • stsci.image-2.2.0.dev0
  • stsci.imagemanip-1.1.2.dev0
  • stsci.imagestats-1.4.1.dev0
  • stsci.ndimage-0.10.1.dev0
  • stsci.numdisplay-1.6.1.dev0
  • stsci.skypac-0.9.4.dev0
  • stsci.sphere-0.2.dev0
  • stsci.sphinxext-1.2.2.dev0
  • stsci.stimage-0.2.1.dev0
  • stwcs 1.3.2rc1

Release: 2017.1Installed: 2017-03-16

HSTDP delivery 2017.1 contained no updates to calibration software, this was an internal update from RHEL5 to RHEL 7

Release: 2016.2Installed: 2016-10-26


The following changes were made since the last release in April 2014:

  • Removed standalone PixCteCorr task. Use ACSCTE step from HSTCAL instead to have parallelization and consistent results with the CALACS pipeline.
  • Removed runastrodriz task (moved to drizzlepac).
  • Added masking, post-flash processing, iterative cleaning, and alternative statistics to acs_destripe task. Masking is particularly useful for polarized data.
  • Fixed bugs in acs_destripe task, including proper error handling and pixel weighting.
  • Added new acs_destripe_plus task, which is particularly useful for destriping subarrays with acs_destripe in the middle of CALACS processing (between ACSCCD and ACSCTE steps).
  • Added new satdet module, which can detect and flag satellite trails.
  • Added Python 3 support (untested).

HSTCAL 1.1.0 Release Notes

The following changes were made to the HST calibration software sent to HST Data Processing for build 2016.2:


  • waf upgraded to 1.9.4, which enables building HSTCAL in Python 3, as well as Python 2.


  • WFC3 (increases to version 3.4)
    • CTE subarrays are now enabled for subarrays which include physical overscan pixels.
    • Sink Pixel flagging for all subarray images has been enabled.

Drizzlepac 2.1.3

This version represents the same code, with a few additional enhancements, as the code that was installed for operational calibration of HST data as of 23 Feb 2016. This represents a major update to the DrizzlePac software, and also the last version with significant new features. Future releases will focus primarily on bug fixes that affect operational use of this code. Full support for this package can be found at

A brief overview of the new features and major bug fixes found in this version (relative to what was released as part of v1.1.16) includes:

  • Full Python 2.7 and 3.5 support
  • Built-in support for automatic mosaic creation
    • Tweakreg now aligns all images in a mosaic into a single undistorted output frame even if some images do not overlap others in the mosaic
  • Improved sky matching
    • Produce seamless mosaics using new sky matching techniques. More details can be found in an example where these techniques are compared.
  • Support for the improved time-dependent ACS distortion model
    • Supports the new ACS distortion calibration: Only DrizzlePac 2.0 is able to interpret and apply the latest ACS/WFC distortion reference files
  • Support for alignment of data from different HST cameras
    • Specify separate source finding parameters for input and reference images to optimize source detection from images taken with different HST cameras.
  • Support for use of inclusion/exclusion regions in image alignment
  • Improved support for WFPC2 data
    • resolved problems processing WFPC2 data which had DGEOFILEs specified.
    • now requires user to run 'updatewcs' task on WFPC2 data to enable astrodrizzle and tweakreg to work with them seamlessly
  • [API change] Use of 'updatewcs' removed from TEAL interfaces
    • User and pipeline will need to run this task independently prior to running astrodrizzle or tweakreg
    • Python scripts calling astrodrizzle and tweakreg can still set the 'updatewcs' parameter and have it run as part of those tasks (presumably, the user understands when this task will wipe out previous updates in their own script)
  • [API change] The user interfaces to all 3 coordinate transformation tasks now use 'coordfile' as the input file of coordinates to transform. The use of 'coords' has been deprecated, but still can be used if needed. However, use of 'coordfile' will always override any input provided simultaneously with 'coords' parameter. Help files have been updated to document this as clearly as possible for users.
  • Now relies on astropy for WCS, coordinate specification and I/O libraries
  • A full 6-parameter general linear fit can now be performed using tweakreg, in addition to shift and rscale
    • WCS keywords updated by tweakreg will result in an undistorted output frame with NO residual skew (as represented in the CD matrix keywords)

The full set of Release Notes can be found at

fitsblender 0.2.6

This version of fitsblender supports the release of drizzlepac v2.1.3 as used in the operational HST calibration pipeline and archive as of 23 Feb 2016. It primarily includes bug fixes; namely,

  • Fixed problem with random results from fitsblender by replacing use of dict with OrderedDict. This problem resolves issues with which image was interpreted as first and last when looking for values to use to populate the combined header.
  • Default pipeline processing rules files for all instruments amended to reset FLASHCUR header value to 'multi' instead of first.
  • Simple update to insure that any keyword deletion works cleanly with astropy by trapping any KeyError? exceptions explicitly.
  • Replace use of pyfits with
  • Now works as-is under Python 2.7 and Python 3.5


The following changes were made since the last PyPi release (v0.9.7) in October 19, 2015:

  • Updated spectra data including ACS wavecat and Vega reference spectrum.
  • Replaced PyFITS dependency with
  • Added a lot of documentation and tutorials.
  • Bug fixes.
  • Python 3 support (untested).

wfpc2tools 1.0.3

The following changes were made since the last release in April 2014:

  • Replaced old stsci.* dependencies with SciPy.
  • Added Python 3 support (untested).

Other software included in this release:

  • calcos 3.1.8
  • costools 1.2.1
  • crds 7.0.1
  • nictools 1.1.3
  • wfc3tools 1.3.1
  • wfpc2tools 1.0.3
  • stsci.distutils-0.3.8.dev0
  • stsci.image-2.2.0.dev0
  • stsci.imagemanip-1.1.2.dev0
  • stsci.imagestats-1.4.1.dev0
  • stsci.ndimage-0.10.1.dev0
  • stsci.numdisplay-1.6.1.dev0
  • stsci.skypac-0.9.4.dev0
  • stsci.sphere-0.2.dev0
  • stsci.sphinxext-1.2.2.dev0
  • stsci.stimage-0.2.1.dev0