Project: GraphScope (App Definition and Development / Database)
File: CONTRIBUTING.md

Contributing to GraphScope ========================== GraphScope has been developed by an active team of software engineers and researchers. Any contributions from the open-source community to improve this project are welcome! GraphScope is licensed under . Newcomers to GraphScope -- For newcomers to GraphScope, you could find instructions about how to build and run applications using GraphScope in . GraphScope is hosted on GitHub, and use GitHub issues as the bug tracker. you can when you meets trouble when working with GraphScope. Before creating a new bug entry, we recommend you first among existing GraphScope bugs to see if it has already been resolved. When creating a new bug entry, please provide necessary information of your problem in the description , such as operating system version, GraphScope version, and other system configurations to help us diagnose the problem. We also welcome any help on GraphScope from the community, including but not limited to fixing bugs and adding new features. Note that you will be required to sign the before submitting patches to us. Documentation GraphScope documentation is generated using Doxygen and sphinx. Users can build the documentation in the build directory using: make graphscope-docs The HTML documentation will be available under `docs/_build/html`: open docs/index.html The latest version of online documentation can be found at . GraphScope provides comprehensive documents to explain the underlying design and implementation details. The documentation follows the syntax of Doxygen and sphinx markup. If you find anything you can help, submit pull request to us. Thanks for your enthusiasm! Build Python Wheels The GraphScope python package is built using the environments. Please refer to for more detail instructions. Working Convention GraphScope follows the for C++ code, and the code style for Python code. When submitting patches to GraphScope, please format your code with clang-format by the Makefile command `make graphscope_clformat`, and make sure your code doesn't break the cpplint convention using the Makefile command `make graphscope_cpplint`. When opening issues or submitting pull requests, we'll ask you to prefix the pull request title with the issue number and the kind of patch (`BUGFIX` or `FEATURE`) in brackets, for example, `[BUGFIX-1234] Fix bug in SSSP on property graph` or `[FEATURE-2345] Support loading empty graphs`. You generally do NOT need to rebase your pull requests unless there are merge conflicts with the main. When GitHub complaining that "Cant automatically merge" on your pull request, you'll be asked to rebase your pull request on top of the latest main branch, using the following commands: First rebasing to the most recent main: git remote add upstream https://github.com/alibaba/GraphScope.git git fetch upstream git rebase upstream/main Then git may show you some conflicts when it cannot merge, say `conflict.cpp`, you need Manually modify the file to resolve the conflicts After resolved, mark it as resolved by git add conflict.cpp Then you can continue rebasing by git rebase --continue Finally push to your fork, then the pull request will be got updated: git push --force