dkist-processing-common 11.2.1rc2__tar.gz → 11.3.0__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-11.2.1rc2 → dkist_processing_common-11.3.0}/.pre-commit-config.yaml +6 -6
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/CHANGELOG.rst +27 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/PKG-INFO +2 -2
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/__init__.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/_util/constants.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/_util/graphql.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/_util/tags.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/codecs/array.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/codecs/asdf.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/codecs/basemodel.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/codecs/bytes.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/codecs/fits.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/codecs/iobase.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/codecs/json.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/codecs/path.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/codecs/str.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/config.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/constants.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/fits_access.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/flower_pot.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/graphql.py +2 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/input_dataset.py +3 -2
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/metric_code.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/quality.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/tags.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/task_name.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/wavelength.py +2 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/cs_step.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/dsps_repeat.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/experiment_id_bud.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/id_bud.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/l0_fits_access.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/l1_fits_access.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/near_bud.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/proposal_id_bud.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/quality.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/retarder.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/single_value_single_key_flower.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/task.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/time.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/unique_bud.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/wavelength.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/__init__.py +3 -2
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/assemble_movie.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/base.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/mixin/interservice_bus.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/mixin/object_store.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/mixin/quality/__init__.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/mixin/quality/_base.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/mixin/quality/_metrics.py +6 -4
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/output_data_base.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/trial_catalog.py +3 -2
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/trial_output_data.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/write_l1.py +19 -8
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/conftest.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/mock_metadata_store.py +2 -3
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_interservice_bus.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_interservice_bus_mixin.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_manual_processing.py +1 -2
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_output_data_base.py +1 -2
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_parse_l0_input_data.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_quality.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_quality_mixin.py +10 -3
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_scratch.py +2 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_tags.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_transfer_input_data.py +2 -3
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_trial_catalog.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_workflow_task_base.py +1 -2
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_write_l1.py +8 -10
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common.egg-info/PKG-INFO +2 -2
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common.egg-info/SOURCES.txt +0 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common.egg-info/requires.txt +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/docs/conf.py +1 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/pyproject.toml +10 -1
- dkist_processing_common-11.2.1rc2/changelog/262.misc.rst +0 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/.gitignore +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/.readthedocs.yml +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/.snyk +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/README.rst +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/bitbucket-pipelines.yml +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/changelog/.gitempty +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/_util/__init__.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/_util/scratch.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/codecs/__init__.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/codecs/quality.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/fonts/Lato-Regular.ttf +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/fonts/__init__.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/manual.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/__init__.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/dkist_location.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/fried_parameter.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/message.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/message_queue_binding.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/models/parameters.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/parsers/__init__.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/l1_output_data.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/mixin/__init__.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/mixin/globus.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/mixin/metadata_store.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/parse_l0_input_data.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/quality_metrics.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/teardown.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tasks/transfer_input_data.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/__init__.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_assemble_movie.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_assemble_quality.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_base.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_codecs.py +2 -2
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_constants.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_cs_step.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_dkist_location.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_fits_access.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_flower_pot.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_fried_parameter.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_input_dataset.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_parameters.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_publish_catalog_messages.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_stems.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_submit_dataset_metadata.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_task_name.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_task_parsing.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_teardown.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_transfer_l1_output_data.py +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common/tests/test_trial_output_data.py +1 -1
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common.egg-info/dependency_links.txt +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/dkist_processing_common.egg-info/top_level.txt +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/docs/Makefile +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/docs/changelog.rst +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/docs/index.rst +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/docs/landing_page.rst +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/docs/make.bat +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/docs/requirements.txt +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/licenses/LICENSE.rst +0 -0
- {dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/setup.cfg +0 -0
{dkist_processing_common-11.2.1rc2 → dkist_processing_common-11.3.0}/.pre-commit-config.yaml
RENAMED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
# See https://pre-commit.com/hooks.html for more hooks
|
|
3
3
|
repos:
|
|
4
4
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
5
|
-
rev:
|
|
5
|
+
rev: v5.0.0
|
|
6
6
|
hooks:
|
|
7
7
|
- id: trailing-whitespace
|
|
8
8
|
- id: end-of-file-fixer
|
|
@@ -11,14 +11,14 @@ repos:
|
|
|
11
11
|
args: ['--maxkb=1024']
|
|
12
12
|
- id: debug-statements
|
|
13
13
|
- repo: https://github.com/psf/black
|
|
14
|
-
rev:
|
|
14
|
+
rev: 25.1.0
|
|
15
15
|
hooks:
|
|
16
16
|
- id: black
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
rev: v2.3.5
|
|
17
|
+
- repo: https://github.com/pycqa/isort
|
|
18
|
+
rev: 5.12.0
|
|
20
19
|
hooks:
|
|
21
|
-
- id:
|
|
20
|
+
- id: isort
|
|
21
|
+
name: isort (python)
|
|
22
22
|
- repo: https://github.com/pycqa/pydocstyle
|
|
23
23
|
rev: 6.3.0 # pick a git hash / tag to point to
|
|
24
24
|
hooks:
|
|
@@ -1,3 +1,30 @@
|
|
|
1
|
+
v11.3.0 (2025-08-30)
|
|
2
|
+
====================
|
|
3
|
+
|
|
4
|
+
Misc
|
|
5
|
+
----
|
|
6
|
+
|
|
7
|
+
- Split out writing L1 frame timing headers so that their calculation can be separately defined by instruments, as required. (`#263 <https://bitbucket.org/dkistdc/dkist-processing-common/pull-requests/263>`__)
|
|
8
|
+
- Update pre-commit hook versions and replace python-reorder-imports with isort. (`#264 <https://bitbucket.org/dkistdc/dkist-processing-common/pull-requests/264>`__)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
v11.2.1 (2025-08-12)
|
|
12
|
+
====================
|
|
13
|
+
|
|
14
|
+
Bugfixes
|
|
15
|
+
--------
|
|
16
|
+
|
|
17
|
+
- Add `multi_plot_data` to quality creation mutation when submitting quality report data. (`#262 <https://bitbucket.org/dkistdc/dkist-processing-common/pull-requests/262>`__)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
Misc
|
|
21
|
+
----
|
|
22
|
+
|
|
23
|
+
- Explicitly set color and ordering of lines in wavecal metric plots.
|
|
24
|
+
This gets around issues with order not being preserved in the quality database. (`#262 <https://bitbucket.org/dkistdc/dkist-processing-common/pull-requests/262>`__)
|
|
25
|
+
- Update database name for vertical multi-pane plot metric data. It's now called "multi_plot_data". (`#262 <https://bitbucket.org/dkistdc/dkist-processing-common/pull-requests/262>`__)
|
|
26
|
+
|
|
27
|
+
|
|
1
28
|
v11.2.0 (2025-07-18)
|
|
2
29
|
====================
|
|
3
30
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dkist-processing-common
|
|
3
|
-
Version: 11.
|
|
3
|
+
Version: 11.3.0
|
|
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
|
|
@@ -61,7 +61,7 @@ Requires-Dist: dkist-inventory<2.0,>=1.6.0; extra == "inventory"
|
|
|
61
61
|
Provides-Extra: asdf
|
|
62
62
|
Requires-Dist: dkist-inventory[asdf]<2.0,>=1.6.0; extra == "asdf"
|
|
63
63
|
Provides-Extra: quality
|
|
64
|
-
Requires-Dist: dkist-quality<3.0,>=2.0.
|
|
64
|
+
Requires-Dist: dkist-quality<3.0,>=2.0.0; extra == "quality"
|
|
65
65
|
|
|
66
66
|
dkist-processing-common
|
|
67
67
|
=======================
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"""GraphQL Data models for the metadata store api."""
|
|
2
|
+
|
|
2
3
|
from pydantic import BaseModel
|
|
3
4
|
from pydantic import ConfigDict
|
|
5
|
+
from pydantic import Json
|
|
4
6
|
from pydantic import field_serializer
|
|
5
7
|
from pydantic import field_validator
|
|
6
|
-
from pydantic import Json
|
|
7
8
|
|
|
8
9
|
from dkist_processing_common.models.input_dataset import InputDatasetBaseModel
|
|
9
10
|
from dkist_processing_common.models.input_dataset import InputDatasetPartDocumentList
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
"""Input dataset models for the inputDatasetPartDocument from the metadata store api."""
|
|
2
|
+
|
|
2
3
|
import json
|
|
3
4
|
from datetime import datetime
|
|
4
5
|
from typing import Any
|
|
@@ -6,10 +7,10 @@ from typing import Any
|
|
|
6
7
|
from pydantic import BaseModel
|
|
7
8
|
from pydantic import ConfigDict
|
|
8
9
|
from pydantic import Field
|
|
9
|
-
from pydantic import field_serializer
|
|
10
|
-
from pydantic import field_validator
|
|
11
10
|
from pydantic import Json
|
|
12
11
|
from pydantic import PlainSerializer
|
|
12
|
+
from pydantic import field_serializer
|
|
13
|
+
from pydantic import field_validator
|
|
13
14
|
from pydantic.alias_generators import to_camel
|
|
14
15
|
from typing_extensions import Annotated
|
|
15
16
|
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"""Support classes for manipulating wavelengths."""
|
|
2
|
+
|
|
2
3
|
import astropy.units as u
|
|
3
4
|
from pydantic import BaseModel
|
|
4
5
|
from pydantic import ConfigDict
|
|
6
|
+
from pydantic import ValidationInfo
|
|
5
7
|
from pydantic import field_validator
|
|
6
8
|
from pydantic import model_validator
|
|
7
|
-
from pydantic import ValidationInfo
|
|
8
9
|
|
|
9
10
|
|
|
10
11
|
class WavelengthRange(BaseModel):
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
"""Bud that parses the name of the retarder used during POLCAL task observations."""
|
|
2
|
+
|
|
2
3
|
from dkist_processing_common.models.constants import BudName
|
|
3
4
|
from dkist_processing_common.models.task_name import TaskName
|
|
4
5
|
from dkist_processing_common.parsers.unique_bud import TaskUniqueBud
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"""Common tasks and bases."""
|
|
2
|
-
|
|
2
|
+
|
|
3
|
+
from dkist_processing_common.tasks.base import * # isort: skip
|
|
3
4
|
from dkist_processing_common.tasks.assemble_movie import *
|
|
4
5
|
from dkist_processing_common.tasks.l1_output_data import *
|
|
5
6
|
from dkist_processing_common.tasks.parse_l0_input_data import *
|
|
6
7
|
from dkist_processing_common.tasks.quality_metrics import *
|
|
7
8
|
from dkist_processing_common.tasks.teardown import *
|
|
8
9
|
from dkist_processing_common.tasks.transfer_input_data import *
|
|
9
|
-
from dkist_processing_common.tasks.write_l1 import *
|
|
10
10
|
from dkist_processing_common.tasks.trial_catalog import *
|
|
11
11
|
from dkist_processing_common.tasks.trial_output_data import *
|
|
12
|
+
from dkist_processing_common.tasks.write_l1 import *
|
|
@@ -4,4 +4,5 @@ To improve readability the top-level mixin, `QualityMixin`, contains only base f
|
|
|
4
4
|
metrics are grouped into sub-mixins. To protect a user, this mixin-on-mixin stack is hidden in protected modules
|
|
5
5
|
and only the top-level mixin (`QualityMixin`) is exposed.
|
|
6
6
|
"""
|
|
7
|
+
|
|
7
8
|
from ._base import QualityMixin
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
These classes should not be directly mixed in to anything. They are pre-mixed into the top-level QualityMixin
|
|
4
4
|
"""
|
|
5
|
+
|
|
5
6
|
import copy
|
|
6
7
|
import json
|
|
7
8
|
import logging
|
|
@@ -1402,8 +1403,8 @@ class _WavecalQualityMixin:
|
|
|
1402
1403
|
"Best Fit Atlas": [best_fit_wave_list, best_fit_atlas_list],
|
|
1403
1404
|
}
|
|
1404
1405
|
|
|
1405
|
-
# Set the colors here manually because the JSON-ization of the quality data means we can't be sure of
|
|
1406
|
-
# order these will be plotted in and thus can't rely on the default color-cycler in `dkist-quality`.
|
|
1406
|
+
# Set the colors and zorder here manually because the JSON-ization of the quality data means we can't be sure of
|
|
1407
|
+
# the order these will be plotted in and thus can't rely on the default color-cycler in `dkist-quality`.
|
|
1407
1408
|
fit_plot_kwargs = {
|
|
1408
1409
|
"Best Fit Observations": {
|
|
1409
1410
|
"ls": "-",
|
|
@@ -1411,9 +1412,10 @@ class _WavecalQualityMixin:
|
|
|
1411
1412
|
"alpha": 0.8,
|
|
1412
1413
|
"ms": 0,
|
|
1413
1414
|
"color": "#FAA61C",
|
|
1415
|
+
"zorder": 2,
|
|
1414
1416
|
},
|
|
1415
|
-
"Input Spectrum": {"ls": "-", "alpha": 0.4, "ms": 0, "color": "#1E317A"},
|
|
1416
|
-
"Best Fit Atlas": {"color": "k", "ls": "-", "ms": 0},
|
|
1417
|
+
"Input Spectrum": {"ls": "-", "alpha": 0.4, "ms": 0, "color": "#1E317A", "zorder": 2.1},
|
|
1418
|
+
"Best Fit Atlas": {"color": "k", "ls": "-", "ms": 0, "zorder": 2.2},
|
|
1417
1419
|
}
|
|
1418
1420
|
|
|
1419
1421
|
fit_plot = Plot2D(
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
"""Tasks to support the generation of downstream artifacts in a trial workflow that wouldn't otherwise produce them."""
|
|
2
|
+
|
|
2
3
|
import importlib
|
|
3
4
|
import logging
|
|
4
5
|
from datetime import datetime
|
|
@@ -24,8 +25,8 @@ __all__ = ["CreateTrialDatasetInventory", "CreateTrialAsdf", "CreateTrialQuality
|
|
|
24
25
|
# Capture condition of dkist-processing-common[inventory] install
|
|
25
26
|
INVENTORY_EXTRA_INSTALLED = False
|
|
26
27
|
try:
|
|
27
|
-
from dkist_inventory.inventory import generate_inventory_from_frame_inventory
|
|
28
28
|
from dkist_inventory.inventory import generate_asdf_filename
|
|
29
|
+
from dkist_inventory.inventory import generate_inventory_from_frame_inventory
|
|
29
30
|
|
|
30
31
|
INVENTORY_EXTRA_INSTALLED = True
|
|
31
32
|
except ModuleNotFoundError:
|
|
@@ -45,8 +46,8 @@ except ModuleNotFoundError:
|
|
|
45
46
|
# Verify dkist-quality is installed
|
|
46
47
|
QUALITY_EXTRA_INSTALLED = False
|
|
47
48
|
try:
|
|
48
|
-
from dkist_quality.report import format_report
|
|
49
49
|
from dkist_quality.report import ReportFormattingException
|
|
50
|
+
from dkist_quality.report import format_report
|
|
50
51
|
|
|
51
52
|
QUALITY_EXTRA_INSTALLED = True
|
|
52
53
|
except ModuleNotFoundError:
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
"""Task(s) for writing level 1 data as 214 compliant fits files."""
|
|
2
|
+
|
|
2
3
|
import importlib
|
|
3
4
|
import logging
|
|
4
5
|
import uuid
|
|
@@ -213,11 +214,6 @@ class WriteL1Frame(WorkflowTaskBase, MetadataStoreMixin, ABC):
|
|
|
213
214
|
header["OBS_HDU"] = 1
|
|
214
215
|
header["FILENAME"] = self.l1_filename(header=header, stokes=stokes)
|
|
215
216
|
header["STOKES"] = stokes
|
|
216
|
-
# Cadence keywords
|
|
217
|
-
header["CADENCE"] = self.constants.average_cadence
|
|
218
|
-
header["CADMIN"] = self.constants.minimum_cadence
|
|
219
|
-
header["CADMAX"] = self.constants.maximum_cadence
|
|
220
|
-
header["CADVAR"] = self.constants.variance_cadence
|
|
221
217
|
# Keywords to support reprocessing
|
|
222
218
|
if parameters := self.metadata_store_input_dataset_parameters:
|
|
223
219
|
header["IDSPARID"] = parameters.inputDatasetPartId
|
|
@@ -232,6 +228,19 @@ class WriteL1Frame(WorkflowTaskBase, MetadataStoreMixin, ABC):
|
|
|
232
228
|
header["PRODUCT"] = self.compute_product_id(header["IDSOBSID"], header["PROCTYPE"])
|
|
233
229
|
return header
|
|
234
230
|
|
|
231
|
+
def add_timing_headers(self, header: fits.Header) -> fits.Header:
|
|
232
|
+
"""
|
|
233
|
+
Add timing headers to the FITS header.
|
|
234
|
+
|
|
235
|
+
This method adds or updates headers related to frame timings.
|
|
236
|
+
"""
|
|
237
|
+
# Cadence keywords
|
|
238
|
+
header["CADENCE"] = self.constants.average_cadence
|
|
239
|
+
header["CADMIN"] = self.constants.minimum_cadence
|
|
240
|
+
header["CADMAX"] = self.constants.maximum_cadence
|
|
241
|
+
header["CADVAR"] = self.constants.variance_cadence
|
|
242
|
+
return header
|
|
243
|
+
|
|
235
244
|
def add_spectral_line_headers(
|
|
236
245
|
self,
|
|
237
246
|
header: fits.Header,
|
|
@@ -370,6 +379,8 @@ class WriteL1Frame(WorkflowTaskBase, MetadataStoreMixin, ABC):
|
|
|
370
379
|
header = self.add_doc_headers(header=header)
|
|
371
380
|
# Add the dataset headers (abstract - implement in instrument task)
|
|
372
381
|
header = self.add_dataset_headers(header=header, stokes=stokes_param)
|
|
382
|
+
# Add the timing headers
|
|
383
|
+
header = self.add_timing_headers(header=header)
|
|
373
384
|
# Add the spectral line headers
|
|
374
385
|
header = self.add_spectral_line_headers(header=header)
|
|
375
386
|
# Remove any headers not contained in spec 214
|
|
@@ -414,9 +425,9 @@ class WriteL1Frame(WorkflowTaskBase, MetadataStoreMixin, ABC):
|
|
|
414
425
|
inst_name = self.constants.instrument.lower()
|
|
415
426
|
calvers = self.version_from_module_name()
|
|
416
427
|
header["CALVERS"] = calvers
|
|
417
|
-
header[
|
|
418
|
-
"
|
|
419
|
-
|
|
428
|
+
header["CAL_URL"] = (
|
|
429
|
+
f"{self.docs_base_url}/projects/{inst_name}/en/v{calvers}/{self.workflow_name}.html"
|
|
430
|
+
)
|
|
420
431
|
return header
|
|
421
432
|
|
|
422
433
|
def version_from_module_name(self) -> str:
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"""
|
|
2
2
|
Support functions and constants for customized FakeGQLClient
|
|
3
3
|
"""
|
|
4
|
+
|
|
4
5
|
import json
|
|
5
6
|
from abc import ABC
|
|
6
7
|
from abc import abstractmethod
|
|
@@ -22,7 +23,6 @@ from dkist_processing_common.models.graphql import RecipeRunProvenanceResponse
|
|
|
22
23
|
from dkist_processing_common.models.graphql import RecipeRunResponse
|
|
23
24
|
from dkist_processing_common.models.graphql import RecipeRunStatusResponse
|
|
24
25
|
|
|
25
|
-
|
|
26
26
|
TILE_SIZE = 64
|
|
27
27
|
|
|
28
28
|
default_observe_frames_doc = [
|
|
@@ -223,8 +223,7 @@ def fake_gql_client_factory(response_mapping_override: ResponseMapping | None =
|
|
|
223
223
|
raise ValueError(f"Mocked response not found for {query_base=}, {query_response_cls=}")
|
|
224
224
|
|
|
225
225
|
@staticmethod
|
|
226
|
-
def execute_gql_mutation(**kwargs):
|
|
227
|
-
...
|
|
226
|
+
def execute_gql_mutation(**kwargs): ...
|
|
228
227
|
|
|
229
228
|
return FakeGQLClientClass
|
|
230
229
|
|