Adding a new get_string_list_property function that transparently allows
both comma-separated string lists and configuration file native lists of
strings.
Previous issue Improper parsing of TOML
added parsing of TOML to include "." characters in keys. This feature expands
that to the other two loaders, with a master switch in the key application_properties
object.
The . character is considered a separator character for keys, with the code
checking to prevent that character from being used within a key. As TOML
will already break the key on that character, a bypass was added to allow the
TOML keys to include a . character IF it is in quotes.
If the pyproject.toml file was loaded implicitly, the file was loading
and processing the TOML file to only look at the "section header" that was
specified. If passed using --config, it was not. Added the section_header_if_toml
field to the MultisourceConfigurationLoaderOptions class to allow an optional
section header to be passed in when loading an "untyped" configuration file.
The three existing loaders were not consistent with respect to loading empty
files. This issue ensures that they all load a file, but do not mark it as
applied, if the file is empty.