feat: Unified binary (CLI)#252
Conversation
|
This is your first PR, thank you for contributing to MaCh3! |
Super-linter summary
All files and directories linted successfully For more information, see the GitHub Actions workflow run Powered by Super-linter |
7687206 to
1b4c9ec
Compare
8790383 to
b2d4d70
Compare
|
@alexanderrichards could you add the deprecation warning for the tutorial executable, as we have for the executables in MaCh3 core? Otherwise, I am happy with the rest of the PR and welcome comments from other reviewers. |
I'll do that now |
@Charlotte-Knight Ok I've done this now but it required a bit more modification along the lines of the core stuff. Can you please check that the MCMCTutorial behaves as expected in both unified CLI and old stand alone mode before we merge it |
User interface
This PR adds the
MCMCTutorialexecutable to the unified CLI introduced in MaCh3 core by this PR: mach3-software/MaCh3#917.This executable is now accessed via the
tutorialsubcommand, like:Upon running
mach3 tutorial --help, you get:and you can identify the
--overrideoption which allows users to override config yaml as before, e.g.and we have added a special option for the number of MCMC steps, so you could instead write:
The advantage of having options like
--MCMCStepsis that they are visible upon callingmach3 tutorial --helpso we recommend implementing options like this for the configurables that are most often changed. For the sake of the tutorial, we may also want to add--outputfile, for example.When overriding the config, the usual standard output like this:
is shown, regardless of whether you use
--MCMCStepsor--override.Future Plans
We may also want to update the tutorial README with this PR, but this depends on how we want to introduce the CLI. Until we have all of the executables implemented, I suggest making a small mention that the CLI exists, e.g. in a block like
Tip
A MaCh3 CLI is in development, you can try it already by running this command with
mach3 tutorial ...instead. Please provide feedback etc...Implementation
TODO
Deprecation warning for
MCMCTutorialstill needs to be added.