dkist-processing-common 10.7.1rc1__tar.gz → 10.8.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.
Files changed (127) hide show
  1. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/CHANGELOG.rst +33 -0
  2. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/PKG-INFO +5 -5
  3. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/codecs/fits.py +1 -1
  4. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/write_l1.py +1 -1
  5. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_write_l1.py +13 -10
  6. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common.egg-info/PKG-INFO +5 -5
  7. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common.egg-info/SOURCES.txt +0 -1
  8. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common.egg-info/requires.txt +4 -4
  9. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/pyproject.toml +4 -4
  10. dkist_processing_common-10.7.1rc1/changelog/248.bugfix.rst +0 -1
  11. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/.gitignore +0 -0
  12. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/.pre-commit-config.yaml +0 -0
  13. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/.readthedocs.yml +0 -0
  14. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/.snyk +0 -0
  15. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/README.rst +0 -0
  16. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/bitbucket-pipelines.yml +0 -0
  17. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/changelog/.gitempty +0 -0
  18. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/__init__.py +0 -0
  19. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/_util/__init__.py +0 -0
  20. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/_util/constants.py +0 -0
  21. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/_util/graphql.py +0 -0
  22. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/_util/scratch.py +0 -0
  23. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/_util/tags.py +0 -0
  24. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/codecs/__init__.py +0 -0
  25. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/codecs/asdf.py +0 -0
  26. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/codecs/bytes.py +0 -0
  27. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/codecs/iobase.py +0 -0
  28. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/codecs/json.py +0 -0
  29. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/codecs/path.py +0 -0
  30. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/codecs/quality.py +0 -0
  31. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/codecs/str.py +0 -0
  32. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/config.py +0 -0
  33. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/fonts/Lato-Regular.ttf +0 -0
  34. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/fonts/__init__.py +0 -0
  35. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/manual.py +0 -0
  36. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/models/__init__.py +0 -0
  37. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/models/constants.py +0 -0
  38. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/models/fits_access.py +0 -0
  39. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/models/flower_pot.py +0 -0
  40. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/models/graphql.py +0 -0
  41. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/models/message.py +0 -0
  42. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/models/message_queue_binding.py +0 -0
  43. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/models/metric_code.py +0 -0
  44. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/models/parameters.py +0 -0
  45. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/models/quality.py +0 -0
  46. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/models/tags.py +0 -0
  47. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/models/task_name.py +0 -0
  48. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/models/wavelength.py +0 -0
  49. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/__init__.py +0 -0
  50. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/cs_step.py +0 -0
  51. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/dsps_repeat.py +0 -0
  52. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/experiment_id_bud.py +0 -0
  53. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/id_bud.py +0 -0
  54. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/l0_fits_access.py +0 -0
  55. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/l1_fits_access.py +0 -0
  56. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/near_bud.py +0 -0
  57. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/proposal_id_bud.py +0 -0
  58. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/quality.py +0 -0
  59. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/retarder.py +0 -0
  60. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/single_value_single_key_flower.py +0 -0
  61. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/task.py +0 -0
  62. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/time.py +0 -0
  63. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/unique_bud.py +0 -0
  64. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/parsers/wavelength.py +0 -0
  65. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/__init__.py +0 -0
  66. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/assemble_movie.py +0 -0
  67. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/base.py +0 -0
  68. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/l1_output_data.py +0 -0
  69. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/mixin/__init__.py +0 -0
  70. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/mixin/globus.py +0 -0
  71. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/mixin/input_dataset.py +0 -0
  72. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/mixin/interservice_bus.py +0 -0
  73. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/mixin/metadata_store.py +0 -0
  74. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/mixin/object_store.py +0 -0
  75. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/mixin/quality/__init__.py +0 -0
  76. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/mixin/quality/_base.py +0 -0
  77. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/mixin/quality/_metrics.py +0 -0
  78. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/output_data_base.py +0 -0
  79. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/parse_l0_input_data.py +0 -0
  80. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/quality_metrics.py +0 -0
  81. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/teardown.py +0 -0
  82. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/transfer_input_data.py +0 -0
  83. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/trial_catalog.py +0 -0
  84. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tasks/trial_output_data.py +0 -0
  85. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/__init__.py +0 -0
  86. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/conftest.py +0 -0
  87. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_assemble_movie.py +0 -0
  88. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_assemble_quality.py +0 -0
  89. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_base.py +0 -0
  90. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_codecs.py +0 -0
  91. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_constants.py +0 -0
  92. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_cs_step.py +0 -0
  93. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_fits_access.py +0 -0
  94. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_flower_pot.py +0 -0
  95. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_input_dataset.py +0 -0
  96. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_interservice_bus.py +0 -0
  97. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_interservice_bus_mixin.py +0 -0
  98. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_manual_processing.py +0 -0
  99. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_output_data_base.py +0 -0
  100. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_parameters.py +0 -0
  101. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_parse_l0_input_data.py +0 -0
  102. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_publish_catalog_messages.py +0 -0
  103. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_quality.py +0 -0
  104. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_quality_mixin.py +0 -0
  105. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_scratch.py +0 -0
  106. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_stems.py +0 -0
  107. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_submit_dataset_metadata.py +0 -0
  108. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_tags.py +0 -0
  109. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_task_name.py +0 -0
  110. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_task_parsing.py +0 -0
  111. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_teardown.py +0 -0
  112. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_transfer_input_data.py +0 -0
  113. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_transfer_l1_output_data.py +0 -0
  114. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_trial_catalog.py +0 -0
  115. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_trial_output_data.py +0 -0
  116. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common/tests/test_workflow_task_base.py +0 -0
  117. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common.egg-info/dependency_links.txt +0 -0
  118. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/dkist_processing_common.egg-info/top_level.txt +0 -0
  119. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/docs/Makefile +0 -0
  120. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/docs/changelog.rst +0 -0
  121. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/docs/conf.py +0 -0
  122. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/docs/index.rst +0 -0
  123. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/docs/landing_page.rst +0 -0
  124. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/docs/make.bat +0 -0
  125. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/docs/requirements.txt +0 -0
  126. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/licenses/LICENSE.rst +0 -0
  127. {dkist_processing_common-10.7.1rc1 → dkist_processing_common-10.8.0}/setup.cfg +0 -0
@@ -1,3 +1,36 @@
1
+ v10.8.0 (2025-05-15)
2
+ ====================
3
+
4
+ Features
5
+ --------
6
+
7
+ - Add checksum verification to the hdu decoder. (`#222 <https://bitbucket.org/dkistdc/dkist-processing-common/pull-requests/222>`__)
8
+
9
+
10
+ Bugfixes
11
+ --------
12
+
13
+ - Modify usage of CompImageHeader to support astropy 7. (`#222 <https://bitbucket.org/dkistdc/dkist-processing-common/pull-requests/222>`__)
14
+
15
+
16
+ v10.7.2 (2025-04-21)
17
+ ====================
18
+
19
+ Bugfixes
20
+ --------
21
+
22
+ - Fix a bug in which the AO_LOCK header key is assumed to exist. The AO_LOCK header key is optional. (`#249 <https://bitbucket.org/dkistdc/dkist-processing-common/pull-requests/249>`__)
23
+
24
+
25
+ v10.7.1 (2025-04-17)
26
+ ====================
27
+
28
+ Bugfixes
29
+ --------
30
+
31
+ - Fix a bug exposed by updates in the `dkist-inventory` package that did not manage HISTORY or COMMENT cards correctly. (`#248 <https://bitbucket.org/dkistdc/dkist-processing-common/pull-requests/248>`__)
32
+
33
+
1
34
  v10.7.0 (2025-04-14)
2
35
  ====================
3
36
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dkist-processing-common
3
- Version: 10.7.1rc1
3
+ Version: 10.8.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
@@ -14,7 +14,7 @@ Classifier: Programming Language :: Python :: 3.11
14
14
  Requires-Python: >=3.11
15
15
  Description-Content-Type: text/x-rst
16
16
  Requires-Dist: asdf<4.0.0,>=3.5.0
17
- Requires-Dist: astropy<7.0.0,>=6.0.0
17
+ Requires-Dist: astropy>=7.0.0
18
18
  Requires-Dist: dkist-fits-specifications<5.0,>=4.0.0
19
19
  Requires-Dist: dkist-header-validator<6.0,>=5.0.0
20
20
  Requires-Dist: dkist-processing-core==5.1.0
@@ -26,8 +26,8 @@ Requires-Dist: gqlclient[pydantic]==1.2.3
26
26
  Requires-Dist: sqids==0.5.1
27
27
  Requires-Dist: matplotlib>=3.4
28
28
  Requires-Dist: moviepy>=2.0.0
29
- Requires-Dist: numpy>=1.20.2
30
- Requires-Dist: object-clerk==0.1.1
29
+ Requires-Dist: numpy>=1.26.4
30
+ Requires-Dist: object-clerk==0.1.2
31
31
  Requires-Dist: pandas>=1.4.2
32
32
  Requires-Dist: pillow>=10.2.0
33
33
  Requires-Dist: pydantic>=2.0
@@ -43,7 +43,7 @@ Requires-Dist: pytest-cov; extra == "test"
43
43
  Requires-Dist: pytest-mock; extra == "test"
44
44
  Requires-Dist: hypothesis; extra == "test"
45
45
  Requires-Dist: towncrier; extra == "test"
46
- Requires-Dist: dkist-data-simulator>=5.0.0; extra == "test"
46
+ Requires-Dist: dkist-data-simulator>=5.2.6; extra == "test"
47
47
  Requires-Dist: dkist-processing-common[inventory]; extra == "test"
48
48
  Requires-Dist: dkist-processing-common[asdf]; extra == "test"
49
49
  Requires-Dist: dkist-processing-common[quality]; extra == "test"
@@ -32,7 +32,7 @@ def fits_hdulist_encoder(hdu_list: fits.HDUList) -> bytes:
32
32
 
33
33
  def fits_hdu_decoder(path: Path) -> fits.PrimaryHDU | fits.CompImageHDU:
34
34
  """Read a Path with `fits` to produce an `HDUList`."""
35
- hdu_list = fits.open(path)
35
+ hdu_list = fits.open(path, checksum=True)
36
36
  return _extract_hdu(hdu_list)
37
37
 
38
38
 
@@ -512,6 +512,6 @@ class WriteL1Frame(WorkflowTaskBase, MetadataStoreMixin, ABC):
512
512
  @staticmethod
513
513
  def remove_invalid_r0_values(header: fits.Header) -> fits.Header:
514
514
  """Remove the Fried parameter r0 from the header if the AO is not locked."""
515
- if not header["AO_LOCK"]:
515
+ if header.get("AO_LOCK") is not True:
516
516
  header.pop("ATMOS_R0", None)
517
517
  return header
@@ -157,8 +157,9 @@ def write_l1_task(request, recipe_run_id, tmp_path):
157
157
  @pytest.fixture(
158
158
  scope="function",
159
159
  params=[
160
- pytest.param(True, id="AO_lock_on"),
161
- pytest.param(False, id="AO_lock_off"),
160
+ pytest.param({"AO_LOCK": True}, id="AO_LOCK_True"),
161
+ pytest.param({"AO_LOCK": False}, id="AO_LOCK_False"),
162
+ pytest.param({}, id="AO_LOCK_missing"),
162
163
  ],
163
164
  )
164
165
  def write_l1_task_no_data(request, recipe_run_id, tmp_path, complete_common_header):
@@ -171,7 +172,8 @@ def write_l1_task_no_data(request, recipe_run_id, tmp_path, complete_common_head
171
172
  ):
172
173
  task.scratch = WorkflowFileSystem(recipe_run_id=recipe_run_id, scratch_base_path=tmp_path)
173
174
  header = complete_common_header
174
- header["AO_LOCK"] = request.param
175
+ header.pop("AO_LOCK", None) # If it's not required, shouldn't be here in the first place??
176
+ header.update(request.param)
175
177
  fried_parameter = 0.2
176
178
  header["ATMOS_R0"] = fried_parameter
177
179
  hdu = fits.PrimaryHDU(data=np.random.random(size=(1, 1, 1)) * 1, header=header)
@@ -428,7 +430,8 @@ def test_rice_compression_with_specified_tile_size(write_l1_task, mocker):
428
430
  files = list(task.read(tags=[Tag.frame(), Tag.output()]))
429
431
  for file in files:
430
432
  hdul = fits.open(file)
431
- comp_header = hdul[1]._header
433
+ bintable = hdul[1]._get_bintable_without_data()
434
+ comp_header = bintable.header
432
435
  data_shape = list(hdul[1].data.shape)
433
436
  data_shape.reverse()
434
437
  for i, dim in enumerate(data_shape):
@@ -453,7 +456,8 @@ def test_rice_compression_with_default_tile_size(write_l1_task, mocker):
453
456
  files = list(task.read(tags=[Tag.frame(), Tag.output()]))
454
457
  for file in files:
455
458
  hdul = fits.open(file)
456
- comp_header = hdul[1]._header
459
+ bintable = hdul[1]._get_bintable_without_data()
460
+ comp_header = bintable.header
457
461
  data_shape = list(hdul[1].data.shape)
458
462
  data_shape.reverse()
459
463
  assert comp_header["ZTILE1"] == data_shape[0]
@@ -604,12 +608,11 @@ def test_check_r0_ao_lock(write_l1_task_no_data):
604
608
  """
605
609
  task, header, r0 = write_l1_task_no_data
606
610
  header_after_check = task.remove_invalid_r0_values(header=header)
607
- if header["AO_LOCK"]:
611
+ if header.get("AO_LOCK"):
608
612
  assert header_after_check["ATMOS_R0"] == header["ATMOS_R0"]
609
613
  assert header["ATMOS_R0"] == r0
610
614
  assert header["AO_LOCK"]
611
- if not header["AO_LOCK"]:
612
- with pytest.raises(KeyError) as ke:
615
+ else:
616
+ with pytest.raises(KeyError, match="Keyword 'ATMOS_R0' not found"):
613
617
  invalid_r0 = header_after_check["ATMOS_R0"]
614
- assert "Keyword 'ATMOS_R0' not found" in str(ke)
615
- assert not header["AO_LOCK"]
618
+ assert header.get("AO_LOCK") != True
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dkist-processing-common
3
- Version: 10.7.1rc1
3
+ Version: 10.8.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
@@ -14,7 +14,7 @@ Classifier: Programming Language :: Python :: 3.11
14
14
  Requires-Python: >=3.11
15
15
  Description-Content-Type: text/x-rst
16
16
  Requires-Dist: asdf<4.0.0,>=3.5.0
17
- Requires-Dist: astropy<7.0.0,>=6.0.0
17
+ Requires-Dist: astropy>=7.0.0
18
18
  Requires-Dist: dkist-fits-specifications<5.0,>=4.0.0
19
19
  Requires-Dist: dkist-header-validator<6.0,>=5.0.0
20
20
  Requires-Dist: dkist-processing-core==5.1.0
@@ -26,8 +26,8 @@ Requires-Dist: gqlclient[pydantic]==1.2.3
26
26
  Requires-Dist: sqids==0.5.1
27
27
  Requires-Dist: matplotlib>=3.4
28
28
  Requires-Dist: moviepy>=2.0.0
29
- Requires-Dist: numpy>=1.20.2
30
- Requires-Dist: object-clerk==0.1.1
29
+ Requires-Dist: numpy>=1.26.4
30
+ Requires-Dist: object-clerk==0.1.2
31
31
  Requires-Dist: pandas>=1.4.2
32
32
  Requires-Dist: pillow>=10.2.0
33
33
  Requires-Dist: pydantic>=2.0
@@ -43,7 +43,7 @@ Requires-Dist: pytest-cov; extra == "test"
43
43
  Requires-Dist: pytest-mock; extra == "test"
44
44
  Requires-Dist: hypothesis; extra == "test"
45
45
  Requires-Dist: towncrier; extra == "test"
46
- Requires-Dist: dkist-data-simulator>=5.0.0; extra == "test"
46
+ Requires-Dist: dkist-data-simulator>=5.2.6; extra == "test"
47
47
  Requires-Dist: dkist-processing-common[inventory]; extra == "test"
48
48
  Requires-Dist: dkist-processing-common[asdf]; extra == "test"
49
49
  Requires-Dist: dkist-processing-common[quality]; extra == "test"
@@ -7,7 +7,6 @@ README.rst
7
7
  bitbucket-pipelines.yml
8
8
  pyproject.toml
9
9
  changelog/.gitempty
10
- changelog/248.bugfix.rst
11
10
  dkist_processing_common/__init__.py
12
11
  dkist_processing_common/config.py
13
12
  dkist_processing_common/manual.py
@@ -1,5 +1,5 @@
1
1
  asdf<4.0.0,>=3.5.0
2
- astropy<7.0.0,>=6.0.0
2
+ astropy>=7.0.0
3
3
  dkist-fits-specifications<5.0,>=4.0.0
4
4
  dkist-header-validator<6.0,>=5.0.0
5
5
  dkist-processing-core==5.1.0
@@ -11,8 +11,8 @@ gqlclient[pydantic]==1.2.3
11
11
  sqids==0.5.1
12
12
  matplotlib>=3.4
13
13
  moviepy>=2.0.0
14
- numpy>=1.20.2
15
- object-clerk==0.1.1
14
+ numpy>=1.26.4
15
+ object-clerk==0.1.2
16
16
  pandas>=1.4.2
17
17
  pillow>=10.2.0
18
18
  pydantic>=2.0
@@ -47,7 +47,7 @@ pytest-cov
47
47
  pytest-mock
48
48
  hypothesis
49
49
  towncrier
50
- dkist-data-simulator>=5.0.0
50
+ dkist-data-simulator>=5.2.6
51
51
  dkist-processing-common[inventory]
52
52
  dkist-processing-common[asdf]
53
53
  dkist-processing-common[quality]
@@ -22,7 +22,7 @@ classifiers = [
22
22
  ]
23
23
  dependencies = [
24
24
  "asdf >= 3.5.0, <4.0.0",
25
- "astropy >= 6.0.0, < 7.0.0",
25
+ "astropy >= 7.0.0",
26
26
  "dkist-fits-specifications >= 4.0.0, <5.0",
27
27
  "dkist-header-validator >= 5.0.0, <6.0",
28
28
  "dkist-processing-core == 5.1.0",
@@ -34,8 +34,8 @@ dependencies = [
34
34
  "sqids == 0.5.1",
35
35
  "matplotlib >= 3.4",
36
36
  "moviepy >= 2.0.0",
37
- "numpy >= 1.20.2",
38
- "object-clerk == 0.1.1",
37
+ "numpy >= 1.26.4",
38
+ "object-clerk == 0.1.2",
39
39
  "pandas >= 1.4.2",
40
40
  "pillow >= 10.2.0",
41
41
  "pydantic >= 2.0",
@@ -60,7 +60,7 @@ test = [
60
60
  "pytest-mock",
61
61
  "hypothesis",
62
62
  "towncrier",
63
- "dkist-data-simulator >= 5.0.0",
63
+ "dkist-data-simulator >= 5.2.6",
64
64
  "dkist-processing-common[inventory]",
65
65
  "dkist-processing-common[asdf]",
66
66
  "dkist-processing-common[quality]",
@@ -1 +0,0 @@
1
- Fix a bug exposed by updates in the `dkist-inventory` package that did not manage HISTORY or COMMENT cards correctly.