Skip to content

Latest commit

 

History

History
133 lines (95 loc) · 5.02 KB

CONTRIBUTING.md

File metadata and controls

133 lines (95 loc) · 5.02 KB

Welcome!

Thanks for your interest in contributing to kglab 🎉

This page gives a quick overview of how things are organized and most importantly, how to get involved.

Issues and bug reports

First, if you want to report a potential issue with this library, please do a quick search to see if the issue has already been reported. If so, it's best to simply leave a comment on an existing issue, rather than create a new one. Older issues may also include helpful info and show solutions to commonly encountered questions.

Opening new issues

When opening a new issue, please use a descriptive title and include information about your environment and library installation:

  • Which operating system and version number?
  • Which version of Python?
  • How did you install? pip, conda, clone repo then setup.py, etc.

Try to provide as many details as possible. What exactly is going wrong? How is it failing? Is there an error?

Please understand that in general our developer community does not provide support via email, Twitter DMs, and other 1:1 messaging. We believe that help is much more valuable when it gets shared publicly, so that more people can benefit.

Code of conduct

In all communications and collaborations, we adhere to the Contributor Covenant Code of Conduct. By participating, you are expected to follow this code.

Developer community

If you'd like to contribute to this open source project, the best way to get involved with our developer community is to participate in our public office hours events. First join the Graph-Based Data Science group on LinkedIn where these meetingsget announced. We'll also have other developer discussions on that forum, along with related updates, news, conference coupons, etc.

The Knowledge Graph Conference hosts several community resources where you can post questions and get help about kglab and related topics. Many of our developers are involved there too:

Contributing to the code base

You don't have to be an expert to contribute, and we're happy to help you get started. We'll try to use the good first issue tags to mark bugs and feature requests that are easy and self-contained.

If you've decided to take on one of these problems, it's best to fork the repo and do development and testing in your own fork first.

Please follow the conventions for code formatting, type annotations, unit tests, code linting, naming conventions, and so on. Understand that we will not be able to accept pull requests that make major overhauls of the code base or completely change our shared work on formatting, testing, etc.

If you need to incorporate other libraries, please discuss this with the other developers. There may be issues regarding point releases and compatibility that would have impact on other parts of the code base.

Once you're making good progress, don't forget to add a quick comment to the original issue. You can also use the issue to ask questions, or share your work in progress. Then when you're ready to submit code for review, please use a pull request on our main repo branch.

Testing

To start developing and run tests locally, it is needed to install dev requirements: pip install -r requirements-dev.txt

basic testing

Testing that runs with CI/CD can be run with: pytest tests/

RDF testing

For RDF-based tests on RDF-tests manifests: pytest tests/rdf_tests/test_rdf_basic.py -k test_rdf_runner -s

Project roadmap

The "Graph-Based Data Science" talk describes the kglab open source project in much more detail, and discusses some about our roadmap. In other words, what new features and integrations are we working toward?

See also our:

Suggestions and contributions for our documentation and tutorial are always welcomed. These tend to be good starting points for new contributors: you'll get familiar with our code samples and other resources through that.

Many thanks!