Contributing π€¶
We welcome contributions from the community! Every contribution, no matter how small, is appreciated and credited. Hereβs how you can get involved:
How to contribute π οΈ¶
- Fork the repository: Start by forking the satcube repository to your GitHub account. π΄
- Clone your fork locally:
cd <directory_in_which_repo_should_be_created> git clone https://github.com/IPL-UV/satcube.git cd satcube
- Create a branch: Create a new branch for your feature or bug fix:
git checkout -b name-of-your-bugfix-or-feature
- Set up the environment: π±
- If you're using
pyenv
, select a Python version:pyenv local <x.y.z>
- Install dependencies and activate the environment:
poetry install poetry shell
- Install pre-commit hooks:
poetry run pre-commit install
- If you're using
- Make your changes: ποΈ Develop your feature or fix, ensuring you write clear, concise commit messages and include any necessary tests.
- Check your changes: β
- Run formatting checks:
make check
- Run unit tests:
make test
- Optionally, run tests across different Python versions using tox:
tox
- Run formatting checks:
- Submit a pull request: π Push your branch to GitHub and submit a pull request to the
develop
branch of thesatcube
repository. Ensure your pull request meets these guidelines:- Include tests.
- Update the documentation if your pull request adds functionality.
- Provide a detailed description of your changes.
Types of contributions π¦¶
- Report bugs: π
- Report bugs by creating an issue on the satcube GitHub repository. Please include your operating system, setup details, and steps to reproduce the bug.
- Fix bugs: π οΈ Look for issues tagged with "bug" and "help wanted" in the repository to start fixing.
- Implement features: β¨ Contribute by implementing features tagged with "enhancement" and "help wanted."
- Write documentation: π Contribute to the documentation in the official docs, docstrings, or through blog posts and articles.
- Submit feedback: π¬ Propose new features or give feedback by filing an issue on GitHub.
- Use the satcube GitHub issues page for feedback.