Hello! I'm glad and grateful that you're interested in contributing to kgforge 🎉! Below you will find the general guidelines for setting up your environment and creating/submitting pull requests.
- Environment setup
- Contributing changes
- Contributing TLDR
- Community guidelines
- Reporting bugs
- Suggesting enhancements
Steps:
- Create a new env.
kgforgecurrently supports python 3.11 - Fork
kgforge - Install all required and development packages in your new env (I use poetry for dependency management).
poetry install --all-extras --with dev,dev-lints- Create a new branch for your addition
- General naming conventions (we're not picky):
/username/<featureName>: for features/username/<fixName>: for general refactoring or bug fixes
- General naming conventions (we're not picky):
- Test your changes:
- You can run formatting, lints and tests locally via
poetry run python3 -m unittest discover, respectively.
- You can run formatting, lints and tests locally via
- Submit a Draft Pull Request. Do it early and mark it
WIPso I know it's not ready for review just yet. You can also add a label to it if you feel like it 😄. - Move the
pull_requestout of draft state.- Make sure you fill out the
pull_requesttemplate (included with everypull_request)
- Make sure you fill out the
- Request review from one of our maintainers (this should happen automatically via
.github/CODEOWNERS). - Get Approval. I'll let you know if there are any changes that are needed.
- Merge your changes into
kgforge!
- Create branch
- Add changes
- Test locally
- Create PR
- Get your awesome work reviewed and approved by a maintainer
- Merge
- Celebrate!
- Be Kind
- Working together should be a fun learning opportunity, and I want it to be a good experience for everyone. Please treat each other with respect.
- If something looks outdated or incorrect, please let me know! I want to makekgforgeas useful as possible. - Own Your Work
- Creating a PR for
kgforgeis your first step to becoming a contributor, so make sure that you own your changes. - Our maintainers will do their best to respond to you in a timely manner, but I ask the same from you as the contributor.
- Creating a PR for
I use GitHub issues to track bugs and suggested enhancements. You can report a bug by opening a new issue new issue Before reporting a bug/issue, please check that it has not already been reported, and that it is not already fixed in the latest version. If you find a closed issue related to your current issue, please open a new issue and include a link to the original issue in the body of your new one. Please include as much information about your bug as possible.
You can suggest an enhancement by opening a new feature request. Before creating an enhancement suggestion, please check that a similar issue does not already exist.
Please describe the behavior you want and why, and provide examples of how kgforge would be used if your feature were added.