I didn't realize how painful dictionaries can be for configs. I'm currently just passing around a dictionary, but there's no guarantee that any particular values are defined (no validation), no guarantee that a variable has a specific type or format, and it's not easy to document the contents. I've been making up values as I go along with the intention of going back and writing definitions, but it's a mess.
We likely need some kind of config class, perhaps using configparser (since it's a default python library) to specify required & default values. I used yaml in the past, but that also has the same problems unless we add a wrapper to validate the config file and set default values.
Still thinking about this. Other configuration solutions welcome too.
I didn't realize how painful dictionaries can be for configs. I'm currently just passing around a dictionary, but there's no guarantee that any particular values are defined (no validation), no guarantee that a variable has a specific type or format, and it's not easy to document the contents. I've been making up values as I go along with the intention of going back and writing definitions, but it's a mess.
We likely need some kind of config class, perhaps using configparser (since it's a default python library) to specify required & default values. I used yaml in the past, but that also has the same problems unless we add a wrapper to validate the config file and set default values.
Still thinking about this. Other configuration solutions welcome too.