You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
└─t (Thing) # some title
└─foo (FooThing)
└─bar (int): 1
{'t': {'title': some title}}
Note that bar has a valid and singular subschema with a title resolvable by _node_info which is not used because FooThing implements __asdf_traverse__. If instead Thing.__asdf_traverse__ returned {"foo": {"bar": 1}} the output includes the title:
root (AsdfObject)
└─t (Thing) # some title
└─foo (dict)
└─bar (int): 1 # bar title
{'t': {'foo': {'bar': {'title': bar title}}, 'title': some title}}
System information
asdf version: main
python version: 3.12
operating system: mac
The text was updated successfully, but these errors were encountered:
Description of the problem
_node_info
collection stops descending into a schema if the node is "traversable" (has__asdf_traverse__
).asdf/asdf/_node_info.py
Lines 276 to 277 in a866c98
even if the parent has a non-None schema. This seems incorrect as a node with
__asdf_traverse__
may have a valid subschema.Example of the problem
Outputs:
Note that
bar
has a valid and singular subschema with a title resolvable by_node_info
which is not used becauseFooThing
implements__asdf_traverse__
. If insteadThing.__asdf_traverse__
returned{"foo": {"bar": 1}}
the output includes the title:System information
asdf version: main
python version: 3.12
operating system: mac
The text was updated successfully, but these errors were encountered: