This migration would follow the steps below:
- Create a base class that holds general functionality:
__init__
__setitem__, __getitem__
- open, is_open, close
- save? (this would be a way to save an edited datatree to disk convenient for developers, and to group data reduced separately)
- keys
- summary
- observation_summary? probably!
- Migrate AstrohackBeamcutFile as it is already using data trees.
- Migrate locit and position files as they are the simplest data structures.
- Migrate image and panel file, these are the intermediate complexity case.
- Migrate combine to use the new datastructures.
- Migrate pointing files these one should be easier.
- Migrate holog files, these should present a higher level of complexity due to all metadata needed.
- Here metadata should be simplified, e.g. holog_obs_json should become an attribute of root rather than a separate file on disk.
- Here we might take this chance to improve extract_holog interface, by adding a easier way to specify that we only want to reduce some antennas.
- Fix tests and re-enable combine tests
- Add tests on mds files
- upload data products for new tests
- Write an importing routine to migrate old school files to the new format (probably best if possible to be invisible to the user)
- Cleanup of obsolete code
This migration would follow the steps below:
__init____setitem__,__getitem__