1.9 KiB
How to Contribute
Thank you for your interest in contributing to our project. Whether it's a bug report, new feature, correction, or additional documentation, we greatly value feedback and contributions from our community.
Please read through this document before submitting any issues or pull requests to ensure we have all the necessary information to effectively respond to your bug report or contribution.
Coding Style
We follow the black
format for all of our Python code, and require that all contributions are formatted using the black
formatter before submission. Also, it is encouraged to lint Python docstrings by docformatter
.
Automatic Code Formatting
Both black
and docformatter
provide CLIs for automatically formatting all relevant files. To use these tools, first follow the necessary setup as defined in the Developer Setup section. Then, in the root of the component run the following commands:
black .
docformatter -r . --in-place
Developer Setup
To set up your development environment, we have included all necessary Python pip requirements in the requirements.txt
and dev_requirements.txt
files. We recommend that you install these in either a conda
or pyenv
environment. The current version of Python that the project uses is Python 3.7
. The PYTHONPATH
for this project should be set at the root of the component (components/aws/sagemaker
).
Code Generators
We rely on a code generator to build our component.yaml
files. After making modifications to any component, navigate to the root of the component (components/aws/sagemaker
) and run the generator by using the following command:
./common/generate_components.py --tag {DOCKER TAG} [--image {DOCKER IMAGE URI}]
Testing
For information regarding testing, please see the appropriate README
files within the tests
directory.