Having an incorrect yaml file in the default paths (root dir and config dir)
can cause the plugin to crash completely. I ran into this in #104, which was
particularly bad because the plugin wrote the inconsistent file in the first
place. However, there's many reasons why bad yaml might exist in the
default directories, including:
user incorrectly edits a file
the schema changes
valid action IDs change
the version of the plugin changes (schema and paths aren't pinned to
versions)
Non-yaml files are already ignored, so I don't think it's a big difference if
we also ignore invalid yaml files. Until we provide utilities to clean up the
directories, I think robustness to bad input is very important.
In this PR, if we encounter any error while loading all models from given
directories, we ignore the error and move on to the next file.
Having an incorrect yaml file in the default paths (root dir and config dir) can cause the plugin to crash completely. I ran into this in #104, which was particularly bad because the plugin wrote the inconsistent file in the first place. However, there's many reasons why bad yaml might exist in the default directories, including:
Non-yaml files are already ignored, so I don't think it's a big difference if we also ignore invalid yaml files. Until we provide utilities to clean up the directories, I think robustness to bad input is very important.
In this PR, if we encounter any error while loading all models from given directories, we ignore the error and move on to the next file.