Thank you for your interest in helping make NASA's Earth observing data more accessible!
We're excited you would like to contribute to edlfs
! Whether you're finding bugs, adding new features, fixing anything broken, or improving documentation, get started by submitting an issue or pull request!
If you have any questions or ideas, or notice any problems or bugs, first search open issues to see if the issue has already been submitted. We may already be working on the issue. If you think your issue is new, you're welcome to create a new issue.
Found a typo, know how to fix a bug, want to update the docs, want to add a new feature? Great!
The smaller the PR, the easier it is to review and test and the more likely it is to be successful.
For major contributions, consider opening an issue describing the contribution so that we can help guide and breakup the work into digestible pieces.
If you want to submit your own contributions, please use a forking workflow.
The basic steps are:
-
Fork the repository:
-
Clone your fork
git clone https://github.com/[OWNER]/edlfs.git cd edlfs
-
Add this repository as an
upstream
remotegit remote add upstream https://github.com/NASA-Openscapes/edlfs.git
-
Create a feature branch based on the upstream/develop branch
git fetch --all --prune git checkout -c [NAME] upstream/develop
-
Set up your development environment using
conda
/mamba
mamba env update -f environment.yml mamba activate edlfs python -m pip install -e .
-
Make your changes! Then push them to your fork
git push -u origin [NAME]
-
Propose your changes by opening a pull request to
NASA-Openscapes/edlfs
'sdevelop
branch
We ask that you follow these guidelines with your contributions
We generally follow python community standards (PEP8), except we allow line lengths up to 120 characters. We recommend trying to keep lines 80--100 characters long, but allow up to 120 when it improves readability.
We are working to improve our documentation!
For all public-facing functions/methods (not marked internal use), please include type hints (when reasonable) and a docstring formatted Google style.
All the automated tests for this project need to pass before your submission will be accepted.
If you add new functionality, please consider adding tests for that functionality as well.
- Make small commits that show the individual changes you are making
- Write descriptive commit messages that explain your changes
Example of a good commit message;
Improve contributing guidelines. Fixes #10
Improve contributing docs and consolidate them in the standard location
https://help.github.com/articles/setting-guidelines-for-repository-contributors/
Changes should be documented in the CHANGELOG.md
and follow this standard.