Migrate configuration files to YAML
This is a sub-task of #166
For a roadmap, see the following comment: https://github.com/NifTK/NiftyNet/issues/166#issuecomment-407015033
Basically:
- [x] deprecate the current INI parser
- [ ] implement a new parser along the lines of:
- [x] modify the CI script to read (only?) YAML files
Deprecation warnings are ignored by default, hence no user output in the above build. Apparently this decision has been (and continues to be) strongly debated.
- [x] use
UserWarninginstead?
- [ ] compare new YAML files on this branch to INI files on
devbranch before merging! (by reverting 9666eb9)
- [x] remove INI files?
- [ ] default CI sections do not load any configuration files, should test these changes using the slow tests etc.
- [x] the last commit fails because there are hard-coded filenames featuring the
.iniextension. Those should be replaced, possibly using a global file extension constant
- [ ] references to / examples of INI files in documentation should be revised as well
- [ ] depends on https://github.com/NifTK/NiftyNetModelZoo/issues/2
- [x] set the environment variable
niftynet_model_zooto point the dowload utility to the https://github.com/NifTK/NiftyNetModelZoo/issues/2 branch for YAML files
- [ ] revert above commit before merging
- [ ] possibly implement a new class with same interface as
ConfigParserbut which can also parse YAML files, that way all the current parameter validation can be kept intact => #203- [ ]
ConfigParseris used in many places, so make sure the new impersonatorConfigParserdoes not break existing configuration parsing (possibly put INI files back and run CI)
- [ ]
- [ ] add a test checking equivalence of INI and (mirrored-from-INI) YAML files
- [ ] use
assertEqualinstead ofassertTrue?
- [ ] make sure tests make sense
- [ ] overridden methods with default parameter values cause problems (see above commit, and also fix a369e3e if applicable)