New binary control network files will not be compatible with old ISIS versions. New Pvl control network files will still be compatible with old ISIS versions.
Memory usage when reading and writing control networks will be reduced by about 30%.
The Choosername and DateTime keywords will not be present in the ControlPoint objects in new Pvl control network files unless they are explicitly set. See #5282 for more information.
In order to make improvements in memory usage when reading and writing control network files, ControlNetVersioner needs to be refactored.
Currently, it reads an entire control network file into memory and creates the actual ControlNet structure. This consumes a large amount of RAM during reading and writing (about 50% more memory than the ControlNet structure uses). Instead, the control network file should be loaded in pieces so that the entire file does not need to be duplicated in memory.
This requires changing how ControlNetVersioner works and how ControlNet, ControlPoint, and ControlMeasure interact with it.