-
Notifications
You must be signed in to change notification settings - Fork 26
Open
Description
Using rad and rdm main when writing out (for example) a DistortionRefModel. The produced file contains:
- the expected
asdf://stsci.edu/datamodels/roman/tags/reference_files/distortion-1.3.0tag from the latest "datamodels" manifest - a recorded use of the "static" manifest, yet no tags from that manifest
- no record of use of the "datamodels"
>> import roman_datamodels.datamodels as rdm
>> import asdf
>> m = rdm.DistortionRefModel.create_fake_data()
>> print(asdf.dumps({"roman": m._instance}).decode("ascii"))#ASDF 1.0.0
#ASDF_STANDARD 1.6.0
%YAML 1.1
%TAG ! tag:stsci.edu:asdf/
--- !core/asdf-1.1.0
asdf_library: !core/software-1.0.0 {author: The ASDF Developers, homepage: 'http://github.com/asdf-format/asdf',
name: asdf, version: 5.0.1.dev18+gd4d368abd}
history:
extensions:
- !core/extension_metadata-1.0.0
extension_class: asdf.extension._manifest.ManifestExtension
extension_uri: asdf://asdf-format.org/core/extensions/core-1.6.0
manifest_software: !core/software-1.0.0 {name: asdf_standard, version: 1.1.1}
software: !core/software-1.0.0 {name: asdf, version: 5.0.1.dev18+gd4d368abd}
- !core/extension_metadata-1.0.0
extension_class: asdf.extension._manifest.ManifestExtension
extension_uri: asdf://asdf-format.org/astronomy/extensions/astronomy-1.0.0
manifest_software: !core/software-1.0.0 {name: asdf_standard, version: 1.1.1}
software: !core/software-1.0.0 {name: asdf-astropy, version: 0.7.0}
- !core/extension_metadata-1.0.0
extension_class: asdf.extension._manifest.ManifestExtension
extension_uri: asdf://stsci.edu/datamodels/roman/extensions/static-1.1.0
manifest_software: !core/software-1.0.0 {name: rad, version: 0.25.1.dev8+gb461e86}
software: !core/software-1.0.0 {name: roman_datamodels, version: 0.28.0.dev14+g6277ff0ec.d20250917}
roman: !<asdf://stsci.edu/datamodels/roman/tags/reference_files/distortion-1.3.0>
meta:
author: '?'
description: '?'
instrument: {detector: WFI01, name: WFI, optical_element: F062}
origin: '?'
pedigree: GROUND
reftype: DISTORTION
telescope: ROMAN
useafter: !time/time-1.2.0 2020-01-01T00:00:00.000
coordinate_distortion_transform: {}
...This is because the extension created from the extension built from the static manifest includes the TaggedObjectNodeConverter which claims support for all tagged object nodes (including those not handled by the static manifest).
Swapping the order of the manifests here:
| _MANIFESTS = _STATIC_MANIFESTS + _DATAMODEL_MANIFESTS |
works around the issue but doesn't fix that the static manifest generated extensions should not be claiming support for these types.
Metadata
Metadata
Assignees
Labels
No labels