compliance-trestle
compliance-trestle copied to clipboard
Clarify behavior of managed repository
The current implementation of managed repository is a good step in the right direction but the behavior of some commands such as split will require some tweaking. Some points:
- split() is intended to work either with a given full filename/path, or just a directory that is within a given model directory. The interface should be able to support those two modes
- The current implementation of managed split requires the model file path to be relative to the model root - but it is a pathlib.Path. What if it is given as absolute? Where should the check happen to confirm it is in a model directory? Should it be a string instead?
Currently merge still has a chdir() in it, and that should be removed - and the tests then won't need to confirm the directory hasn't changed.
Completion of this issue involves a clarification of how the interface is intended to behave for someone using the trestle sdk, and corresonding changes to the managed repo.