dkist-processing-common 14.4.0__tar.gz → 14.5.0rc1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/PKG-INFO +2 -2
- dkist_processing_common-14.5.0rc1/changelog/348.misc.1.rst +1 -0
- dkist_processing_common-14.5.0rc1/changelog/348.misc.2.rst +2 -0
- dkist_processing_common-14.5.0rc1/changelog/348.misc.rst +2 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/write_extra.py +1 -2
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/write_l1.py +2 -6
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/conftest.py +17 -38
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common.egg-info/PKG-INFO +2 -2
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common.egg-info/SOURCES.txt +3 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common.egg-info/requires.txt +1 -1
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common.egg-info/scm_file_list.json +3 -0
- dkist_processing_common-14.5.0rc1/dkist_processing_common.egg-info/scm_version.json +8 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/pyproject.toml +1 -1
- dkist_processing_common-14.4.0/dkist_processing_common.egg-info/scm_version.json +0 -8
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/.gitignore +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/.pre-commit-config.yaml +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/.readthedocs.yml +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/.rovodev/.review-agent.md +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/.snyk +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/CHANGELOG.rst +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/README.rst +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/bitbucket-pipelines.yml +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/changelog/.gitempty +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/__init__.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/_util/__init__.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/_util/constants.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/_util/graphql.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/_util/scratch.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/_util/tags.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/codecs/__init__.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/codecs/array.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/codecs/asdf.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/codecs/basemodel.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/codecs/bytes.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/codecs/fits.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/codecs/iobase.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/codecs/json.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/codecs/path.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/codecs/quality.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/codecs/str.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/config.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/fonts/Lato-Regular.ttf +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/fonts/__init__.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/manual.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/__init__.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/constants.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/dkist_location.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/extras.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/fits_access.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/flower_pot.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/fried_parameter.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/graphql.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/input_dataset.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/message.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/message_queue_binding.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/metric_code.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/parameters.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/quality.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/tags.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/task_name.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/telemetry.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/models/wavelength.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/__init__.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/average_bud.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/cs_step.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/dsps_repeat.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/experiment_id_bud.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/id_bud.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/l0_fits_access.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/l1_fits_access.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/lookup_bud.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/near_bud.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/observing_program_id_bud.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/proposal_id_bud.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/quality.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/retarder.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/single_value_single_key_flower.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/task.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/time.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/unique_bud.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/parsers/wavelength.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/__init__.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/assemble_movie.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/base.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/l1_output_data.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/mixin/__init__.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/mixin/globus.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/mixin/interservice_bus.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/mixin/metadata_store.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/mixin/object_store.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/mixin/quality/__init__.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/mixin/quality/_base.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/mixin/quality/_metrics.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/output_data_base.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/parse_l0_input_data.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/quality_metrics.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/teardown.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/transfer_input_data.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/trial_catalog.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/trial_output_data.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tasks/write_l1_base.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/__init__.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/mock_metadata_store.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_assemble_movie.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_assemble_quality.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_base.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_codecs.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_constants.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_construct_dataset_extras.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_cs_step.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_dkist_location.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_fits_access.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_flower_pot.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_fried_parameter.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_input_dataset.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_interservice_bus.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_interservice_bus_mixin.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_manual_processing.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_output_data_base.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_parameters.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_parse_l0_input_data.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_publish_catalog_messages.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_quality.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_quality_mixin.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_scratch.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_stems.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_submit_dataset_metadata.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_tags.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_task_name.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_task_parsing.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_teardown.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_transfer_input_data.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_transfer_l1_output_data.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_trial_catalog.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_trial_output_data.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_workflow_task_base.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common/tests/test_write_l1.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common.egg-info/dependency_links.txt +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/dkist_processing_common.egg-info/top_level.txt +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/docs/Makefile +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/docs/changelog.rst +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/docs/conf.py +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/docs/index.rst +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/docs/landing_page.rst +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/docs/make.bat +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/docs/requirements.txt +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/licenses/LICENSE.rst +0 -0
- {dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dkist-processing-common
|
|
3
|
-
Version: 14.
|
|
3
|
+
Version: 14.5.0rc1
|
|
4
4
|
Summary: Common task classes used by the DKIST science data processing pipelines
|
|
5
5
|
Author-email: NSO / AURA <dkistdc@nso.edu>
|
|
6
6
|
License: BSD-3-Clause
|
|
@@ -16,7 +16,7 @@ Description-Content-Type: text/x-rst
|
|
|
16
16
|
Requires-Dist: asdf<6.0,>=3.5.0
|
|
17
17
|
Requires-Dist: astropy>=7.0.0
|
|
18
18
|
Requires-Dist: dkist-fits-specifications<5.0,>=4.24.0
|
|
19
|
-
Requires-Dist: dkist-header-validator
|
|
19
|
+
Requires-Dist: dkist-header-validator==v5.4.1rc1
|
|
20
20
|
Requires-Dist: dkist-processing-core==7.5.0
|
|
21
21
|
Requires-Dist: dkist-processing-pac<4.0,>=3.1
|
|
22
22
|
Requires-Dist: dkist-service-configuration<5.0,>=4.3.0
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Simplify calls to `dkist-header-validator` methods in the Write L1 and Write Extras tasks.
|
|
@@ -342,8 +342,7 @@ class WriteL1DatasetExtras(WriteL1Base, ABC):
|
|
|
342
342
|
if self.validate_l1_on_write:
|
|
343
343
|
# Replace this logic with the fits_header_decoder once FITS library keys have been removed from the SPEC
|
|
344
344
|
with fits.open(self.scratch.absolute_path(filename)) as hdul:
|
|
345
|
-
|
|
346
|
-
spec_extras_validator.validate(header, extra=False)
|
|
345
|
+
spec_extras_validator.validate(hdul, extra=False)
|
|
347
346
|
|
|
348
347
|
logger.info(f"Wrote dataset extra to {filename}.")
|
|
349
348
|
|
|
@@ -15,7 +15,6 @@ from astropy.time import Time
|
|
|
15
15
|
from dkist_fits_specifications import __version__ as spec_version
|
|
16
16
|
from dkist_fits_specifications.utils.formatter import reformat_spec214_header
|
|
17
17
|
from dkist_header_validator import spec214_validator
|
|
18
|
-
from dkist_header_validator.translator import remove_extra_axis_keys
|
|
19
18
|
from dkist_header_validator.translator import remove_spec_122_keys_and_spec_214_l0_keys
|
|
20
19
|
from dkist_spectral_lines.search import get_closest_spectral_line
|
|
21
20
|
from dkist_spectral_lines.search import get_spectral_lines
|
|
@@ -104,8 +103,7 @@ class WriteL1Frame(WriteL1Base, ABC):
|
|
|
104
103
|
if self.validate_l1_on_write:
|
|
105
104
|
# Replace this logic with the fits_header_decoder once FITS library keys have been removed from the SPEC
|
|
106
105
|
with fits.open(self.scratch.absolute_path(relative_path)) as hdul:
|
|
107
|
-
|
|
108
|
-
spec214_validator.validate(header, extra=False)
|
|
106
|
+
spec214_validator.validate(hdul, extra=False)
|
|
109
107
|
|
|
110
108
|
def replace_header_values(self, header: fits.Header, data: np.ndarray) -> fits.Header:
|
|
111
109
|
"""Replace header values that should already exist with new values."""
|
|
@@ -349,9 +347,7 @@ class WriteL1Frame(WriteL1Base, ABC):
|
|
|
349
347
|
# Add the spectral line headers
|
|
350
348
|
header = self.add_spectral_line_headers(header=header)
|
|
351
349
|
# Remove any headers not contained in spec 214
|
|
352
|
-
header = remove_spec_122_keys_and_spec_214_l0_keys(
|
|
353
|
-
# Remove any keys referring to axes that don't exist
|
|
354
|
-
header = remove_extra_axis_keys(input_headers=header)
|
|
350
|
+
header = remove_spec_122_keys_and_spec_214_l0_keys(header)
|
|
355
351
|
return header
|
|
356
352
|
|
|
357
353
|
def add_doc_headers(self, header: fits.Header) -> fits.Header:
|
|
@@ -112,6 +112,7 @@ class CommonDataset(Spec122Dataset):
|
|
|
112
112
|
dataset_shape=(2, 10, 10),
|
|
113
113
|
instrument="visp",
|
|
114
114
|
start_time=datetime(2020, 1, 1, 0, 0, 0, 0),
|
|
115
|
+
file_schema="level0_spec214",
|
|
115
116
|
)
|
|
116
117
|
|
|
117
118
|
self.add_constant_key("TELEVATN", 6.28)
|
|
@@ -150,13 +151,7 @@ def complete_common_header():
|
|
|
150
151
|
A header with some common by-frame keywords
|
|
151
152
|
"""
|
|
152
153
|
ds = CommonDataset()
|
|
153
|
-
header_list = [
|
|
154
|
-
spec122_validator.validate_and_translate_to_214_l0(d.header(), return_type=fits.HDUList)[
|
|
155
|
-
0
|
|
156
|
-
].header
|
|
157
|
-
for d in ds
|
|
158
|
-
]
|
|
159
|
-
|
|
154
|
+
header_list = [fits.Header(d.header()) for d in ds]
|
|
160
155
|
return header_list[0]
|
|
161
156
|
|
|
162
157
|
|
|
@@ -166,12 +161,7 @@ def complete_polarimetric_header():
|
|
|
166
161
|
A header with some common by-frame keywords
|
|
167
162
|
"""
|
|
168
163
|
ds = CommonDataset(polarimetric=True)
|
|
169
|
-
header_list = [
|
|
170
|
-
spec122_validator.validate_and_translate_to_214_l0(d.header(), return_type=fits.HDUList)[
|
|
171
|
-
0
|
|
172
|
-
].header
|
|
173
|
-
for d in ds
|
|
174
|
-
]
|
|
164
|
+
header_list = [fits.Header(d.header()) for d in ds]
|
|
175
165
|
|
|
176
166
|
return header_list[0]
|
|
177
167
|
|
|
@@ -237,6 +227,7 @@ class CalibrationSequenceDataset(Spec122Dataset):
|
|
|
237
227
|
time_delta,
|
|
238
228
|
instrument=instrument,
|
|
239
229
|
start_time=datetime(2020, 1, 1, 0, 0, 0),
|
|
230
|
+
file_schema="level0_spec214",
|
|
240
231
|
)
|
|
241
232
|
self.add_constant_key("DKIST004", "polcal")
|
|
242
233
|
self.add_constant_key("TELEVATN", 6.28)
|
|
@@ -281,6 +272,7 @@ class NonPolCalDataset(Spec122Dataset):
|
|
|
281
272
|
time_delta=1,
|
|
282
273
|
instrument="visp",
|
|
283
274
|
start_time=datetime(2020, 1, 1, 0, 0, 0),
|
|
275
|
+
file_schema="level0_spec214",
|
|
284
276
|
) # Instrument doesn't matter
|
|
285
277
|
self.add_constant_key("DKIST004", "dark") # Anything that's not polcal
|
|
286
278
|
self.add_constant_key("ID___013", "PROPOSAL_ID1")
|
|
@@ -339,12 +331,8 @@ def grouped_cal_sequence_fits_objs(
|
|
|
339
331
|
num_frames_per_CS_step=num_frames_per_cs_step,
|
|
340
332
|
num_modstates=num_modstates,
|
|
341
333
|
)
|
|
342
|
-
header_list = [
|
|
343
|
-
|
|
344
|
-
0
|
|
345
|
-
].header
|
|
346
|
-
for d in ds
|
|
347
|
-
]
|
|
334
|
+
header_list = [fits.Header(d.header()) for d in ds]
|
|
335
|
+
|
|
348
336
|
expected_cs_dict = defaultdict(list)
|
|
349
337
|
for i in range(ds.num_steps):
|
|
350
338
|
for m in range(ds.num_modstates):
|
|
@@ -367,12 +355,8 @@ def grouped_cal_sequence_modstate_fits_objs(
|
|
|
367
355
|
num_frames_per_CS_step=num_frames_per_cs_step,
|
|
368
356
|
num_modstates=num_modstates,
|
|
369
357
|
)
|
|
370
|
-
header_list = [
|
|
371
|
-
|
|
372
|
-
0
|
|
373
|
-
].header
|
|
374
|
-
for d in ds
|
|
375
|
-
]
|
|
358
|
+
header_list = [fits.Header(d.header()) for d in ds]
|
|
359
|
+
|
|
376
360
|
expected_cs_dict = defaultdict(lambda: defaultdict(list))
|
|
377
361
|
for i in range(ds.num_steps):
|
|
378
362
|
for m in range(ds.num_modstates):
|
|
@@ -387,12 +371,7 @@ def grouped_cal_sequence_modstate_fits_objs(
|
|
|
387
371
|
@pytest.fixture(scope="session")
|
|
388
372
|
def non_polcal_fits_objs() -> list[L0FitsAccess]:
|
|
389
373
|
ds = NonPolCalDataset()
|
|
390
|
-
header_list = [
|
|
391
|
-
spec122_validator.validate_and_translate_to_214_l0(d.header(), return_type=fits.HDUList)[
|
|
392
|
-
0
|
|
393
|
-
].header
|
|
394
|
-
for d in ds
|
|
395
|
-
]
|
|
374
|
+
header_list = [fits.Header(d.header()) for d in ds]
|
|
396
375
|
obj_list = [L0FitsAccess(header=h) for h in header_list]
|
|
397
376
|
return obj_list
|
|
398
377
|
|
|
@@ -447,7 +426,12 @@ class CalibrationSequenceStepDataset(Spec122Dataset):
|
|
|
447
426
|
self.dark_status = dark_status
|
|
448
427
|
dataset_shape = (self.num_mod,) + array_shape[1:]
|
|
449
428
|
super().__init__(
|
|
450
|
-
dataset_shape,
|
|
429
|
+
dataset_shape,
|
|
430
|
+
array_shape,
|
|
431
|
+
time_delta,
|
|
432
|
+
instrument=instrument,
|
|
433
|
+
start_time=start_time,
|
|
434
|
+
file_schema="level0_spec214",
|
|
451
435
|
)
|
|
452
436
|
self.add_constant_key("DKIST004", "polcal")
|
|
453
437
|
self.add_constant_key("WAVELNTH", 666.0)
|
|
@@ -564,12 +548,7 @@ def cs_with_correct_geometry(cs_data_shape):
|
|
|
564
548
|
start_time=start_time,
|
|
565
549
|
num_mod=10,
|
|
566
550
|
)
|
|
567
|
-
header_list = [
|
|
568
|
-
spec122_validator.validate_and_translate_to_214_l0(
|
|
569
|
-
d.header(), return_type=fits.HDUList
|
|
570
|
-
)[0].header
|
|
571
|
-
for d in ds
|
|
572
|
-
]
|
|
551
|
+
header_list = [fits.Header(d.header()) for d in ds]
|
|
573
552
|
hdu_list = []
|
|
574
553
|
for m in range(ds.num_mod):
|
|
575
554
|
hdu_list.append(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dkist-processing-common
|
|
3
|
-
Version: 14.
|
|
3
|
+
Version: 14.5.0rc1
|
|
4
4
|
Summary: Common task classes used by the DKIST science data processing pipelines
|
|
5
5
|
Author-email: NSO / AURA <dkistdc@nso.edu>
|
|
6
6
|
License: BSD-3-Clause
|
|
@@ -16,7 +16,7 @@ Description-Content-Type: text/x-rst
|
|
|
16
16
|
Requires-Dist: asdf<6.0,>=3.5.0
|
|
17
17
|
Requires-Dist: astropy>=7.0.0
|
|
18
18
|
Requires-Dist: dkist-fits-specifications<5.0,>=4.24.0
|
|
19
|
-
Requires-Dist: dkist-header-validator
|
|
19
|
+
Requires-Dist: dkist-header-validator==v5.4.1rc1
|
|
20
20
|
Requires-Dist: dkist-processing-core==7.5.0
|
|
21
21
|
Requires-Dist: dkist-processing-pac<4.0,>=3.1
|
|
22
22
|
Requires-Dist: dkist-service-configuration<5.0,>=4.3.0
|
|
@@ -8,6 +8,9 @@ bitbucket-pipelines.yml
|
|
|
8
8
|
pyproject.toml
|
|
9
9
|
.rovodev/.review-agent.md
|
|
10
10
|
changelog/.gitempty
|
|
11
|
+
changelog/348.misc.1.rst
|
|
12
|
+
changelog/348.misc.2.rst
|
|
13
|
+
changelog/348.misc.rst
|
|
11
14
|
dkist_processing_common/__init__.py
|
|
12
15
|
dkist_processing_common/config.py
|
|
13
16
|
dkist_processing_common/manual.py
|
|
@@ -9,6 +9,9 @@
|
|
|
9
9
|
"README.rst",
|
|
10
10
|
"bitbucket-pipelines.yml",
|
|
11
11
|
"changelog/.gitempty",
|
|
12
|
+
"changelog/348.misc.1.rst",
|
|
13
|
+
"changelog/348.misc.2.rst",
|
|
14
|
+
"changelog/348.misc.rst",
|
|
12
15
|
"dkist_processing_common/__init__.py",
|
|
13
16
|
"dkist_processing_common/_util/__init__.py",
|
|
14
17
|
"dkist_processing_common/_util/constants.py",
|
|
@@ -24,7 +24,7 @@ dependencies = [
|
|
|
24
24
|
"asdf >= 3.5.0, <6.0",
|
|
25
25
|
"astropy >= 7.0.0",
|
|
26
26
|
"dkist-fits-specifications >= 4.24.0, <5.0",
|
|
27
|
-
"dkist-header-validator
|
|
27
|
+
"dkist-header-validator == v5.4.1rc1", # TODO: change to >6.0"
|
|
28
28
|
"dkist-processing-core == 7.5.0",
|
|
29
29
|
"dkist-processing-pac >= 3.1, <4.0",
|
|
30
30
|
"dkist-service-configuration >= 4.3.0, <5.0",
|
|
File without changes
|
{dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/.pre-commit-config.yaml
RENAMED
|
File without changes
|
|
File without changes
|
{dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/.rovodev/.review-agent.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dkist_processing_common-14.4.0 → dkist_processing_common-14.5.0rc1}/bitbucket-pipelines.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|