Closed lawrence-mbf closed 3 years ago
Why can't we rely on git for this?
This is for the Brainstorm support, whose users may not actually have git. Is that not what we agreed on?
I meant calling git from MATLAB under the hood. But you are right if we can't assume that users have git then maybe caching is better
That being said, I think you should be able to set this up in the MatNWB repo as a collection of submodules that pull in all tagged versions of the nwb-schema when cloning the repo. In that way you would at least not have to maintain copies in the repo itself and you should automatically get new versions as they come out, rather than having to add them by hand. @rly @ajtritt
For certain files that do not have a cached spec, there needs to be an automated method to generate classes based on a "best guess" based on the nwb_version string.
This method cannot be used with the assumption of a pre-existing
git
command so we will have to cache all previous nwb-schema versions 2.1 and above into their own directories. We would then implement a selector to read from the correct schema version and generate the closest class files from there. Note that this is only for cases where the cached schema does not exist in the file itself.Extensions will still need to be provided by the user.
Tickets that may be in conflict with this change: #239, #17