-
Notifications
You must be signed in to change notification settings - Fork 16
Add Makefiles with convenience functions to each indicator #443
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One important fix, one query, two optional nits
Also fwiw this is practically a line-for-line match for the Makefile i've been selfishly using locally, except your |
Co-authored-by: Katie Mazaitis <[email protected]>
Co-authored-by: Katie Mazaitis <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
Summary of changes:
Adds identical makefiles (except the utils, which only installs the utils) to each directory with a few convenience commands
Commands:
make install
: pip installs the utils package and the indicator in editable mode in the venv, which means any changes you make to the utils package or your indicator will automatically propagate without having to reinstallmake test
: runs pytest on the entire test directorymake lint
: runs pylint on the code directory (through janky regex to accommodate dynamic folder names)make venv
: creates a virtual environment calledenv
.install
calls this so you probably don't need to use it.make clean
: deletes the virtual environment and params.jsonNOTE: When you run the commands, they will all be run in your virtual environment but your shell itself won't be activated (i.e. it won't show
(env)
in front) because make commands run in their own shell that exits once the command completes. However, all the installations, tests, etc, are done in the venv, so you can activate it if needed (e.g. if you want to run individual tests) and will see everything installed.