The safe post-production pipeline
$ cd avalon-core
# One-time build and database
$ docker run --name avalon-mongo -d mongo
$ . build_docker.sh
# Run
$ . test_docker.sh
See CONTRIBUTING.md for a summary of guidelines for how you can contribute to Avalon.
Also visit the chat for a direct connection with current developers.
Below are some of the standard practices applied to this repositories.
- Etiquette: PEP8
- All code is written in PEP8. It is recommended you use a linter as you work, flake8 and pylinter are both good options.
- Etiquette: Napoleon docstrings
- Any docstrings are made in Google Napoleon format. See Napoleon for details.
- Etiquette: Semantic Versioning
- This project follows semantic versioning.
- Etiquette: Underscore means private
- Anything prefixed with an underscore means that it is internal to wherever it is used. For example, a variable name is only ever used in the parent function or class. A module is not for use by the end-user. In contrast, anything without an underscore is public, but not necessarily part of the API. Members of the API resides in
api.py
.
- Anything prefixed with an underscore means that it is internal to wherever it is used. For example, a variable name is only ever used in the parent function or class. A module is not for use by the end-user. In contrast, anything without an underscore is public, but not necessarily part of the API. Members of the API resides in
- API: Idempotence
- A public function must be able to be called twice and produce the exact same result. This means no changing of state without restoring previous state when finishing. For example, if a function requires changing the current selection in Autodesk Maya, it must restore the previous selection prior to completing.