hpc4cmb / toast

Time Ordered Astrophysics Scalable Tools
Other
44 stars 39 forks source link

Clean up use of container traits. #628

Closed tskisner closed 1 year ago

tskisner commented 1 year ago

Although container traits (List, Set, Tuple, Dict) formally support None values, it is challenging to distinguish between this and empty containers when passing things through the config dictionary to/from files on disk. Because of that, we internally enforce these trait types to not have None values. This work cleans up all operators to conform. Additionally, there were 3 List trait definitions that tried to enforce the type of the elements with the "trait=" syntax. That caused further issues and these were removed. In practice we check the container elements already later in the code.

tskisner commented 1 year ago

The linux tests in CI are broken and being fixed in #619. I have run the tests locally on 4 MPI processes and with MPI disabled. These changes are just tedious conversions of default trait container values from None to empty.