This PR closes issue #43 and represents the last major chunk of issue #25
I've consolidated the properties used to identify files in _findRuleMatches and factored out the match conditions to their own function, which hopefully makes things clearer and neater.
Now all file rules have the arbitraryNesting, baseDir, and extensions properties, along with either the suffix or the stem property.
All directory rules have the path and directory properties.
Files meant to be located in the root directory now have baseDir value "/" and arbitraryNesting value "false", indicating that they must be found directly within the root directory, with no intervening subdirectories.
Some other minor changes include an update to the name for the property that indicates that a datafile's columns must match the "variableMeasured" property in the metadata. "columns" -> "columnsMatchMetadata"
I also included some miscellaneous updates to the default ignore list that I noticed in the process of development.
As for the big-picture issue regarding the difficulty syncing up psych-DS and psychds-validator versions during development, I realized that the simple and obvious solution to this is to actually make use of the "versions" that I've built into the schema_model repository. That is, when I make an update to the schema model from this point on, I will always make sure to add it in a new directory within the repo, with an incremented version number such as 1.X.X. With this, I can make sure that all psychds-validator branches point to specific versions of the schema model rather than always grabbing the 'latest' version.
This PR closes issue #43 and represents the last major chunk of issue #25
I've consolidated the properties used to identify files in _findRuleMatches and factored out the match conditions to their own function, which hopefully makes things clearer and neater.
Some other minor changes include an update to the name for the property that indicates that a datafile's columns must match the "variableMeasured" property in the metadata. "columns" -> "columnsMatchMetadata"
I also included some miscellaneous updates to the default ignore list that I noticed in the process of development.
As for the big-picture issue regarding the difficulty syncing up psych-DS and psychds-validator versions during development, I realized that the simple and obvious solution to this is to actually make use of the "versions" that I've built into the schema_model repository. That is, when I make an update to the schema model from this point on, I will always make sure to add it in a new directory within the repo, with an incremented version number such as 1.X.X. With this, I can make sure that all psychds-validator branches point to specific versions of the schema model rather than always grabbing the 'latest' version.