You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It should be easy to update "forks" of the template when the template is updated with new features
Ideally, it would be possible to setup a github workflow that would create a pull request in a downstream (private) repo whenever a new version of the template is released.
The template itself should still be a "runnable", valid python package.
Some template libraries use jinja, and as far as I can tell, this requires using {{project_name}}-style filenames or folders, which makes the template impossible to run.
Design / user research
Take a look at the different libraries for creating and managing templates
Consider making the repo a "Template repo" on GitHub
Check if GitHub allows making private forks of a public repository.
This will probably not allow downstream repos to update themselves though.
Figure out what questions should be asked when creating a new repo from the template. Get some input from some researchers at Mila.
Implementation
TDD: Add tests for creating a new repo from the template. Make sure that the user inputs were used correctly and that the resulting repo is usable (e.g. that tests pass in the repo after creation)
Add the necessary configuration files / non-invasive templating and github workflows so that the repo can be used as a template
Validation
Ask someone at Mila to be a beta user, get them to go through the workflow of setting up a new research project from the template. Gather their feedback.
Test out the workflow of updating a downstream repo after new features are pushed to the template.
The text was updated successfully, but these errors were encountered:
Requirements:
{{project_name}}
-style filenames or folders, which makes the template impossible to run.Design / user research
Implementation
Validation
The text was updated successfully, but these errors were encountered: