Thank you for your interest in CQL! This document provides the guidelines for how to contribute to the project through issues and pull-requests. Contributions can also come in additional ways such as commenting on issues or pull requests and more.
There are 2 types of issues:
- Bug report: You've found a bug with the code, and want to report it, or create an issue to track the bug.
- Feature request: Used for items that propose a new idea or functionality. This allows feedback from others before code is written.
Before you submit an issue, make sure you’ve checked the following:
- Check for existing issues
- Before you create a new issue, please do a search in open issues to see if the issue or feature request has already been filed.
- If you find your issue already exists, make relevant comments and add your reaction.
- For bugs
- It’s not an environment issue.
- You have as much data as possible. This usually comes in the form of logs and/or stacktrace.
- You are assigned to the issue, a branch is created from the issue and the
wip
tag is added if you are also planning to develop the solution.
All contributions come through pull requests. To submit a proposed change, follow this workflow:
- Make sure there's an issue (bug report or feature request) opened, which sets the expectations for the contribution you are about to make
- Assign yourself to the issue and add the
wip
tag - Fork the repo and create a new branch respecting the naming policy from the issue
- Install the necessary development environment
- Create your change and the corresponding tests
- Update relevant documentation for the change in
docs/
- If changes are necessary in cql quickstart and cql tutorial, follow the same workflow there
- Open a PR (and add links to the other repos' PR if they exist)
- Wait for the CI process to finish and make sure all checks are green
- A maintainer of the project will be assigned
A good way to communicate before investing too much time is to create a "Work-in-progress" PR and share it with your reviewers. The standard way of doing this is to add a "[WIP]" prefix in your PR’s title and assign the do-not-merge label. This will let people looking at your PR know that it is not well baked yet.
[BRANCH_TYPE]/[BRANCH_NAME]
BRANCH_TYPE
is a prefix to describe the purpose of the branch. Accepted prefixes are:feature
, used for feature developmentbugfix
, used for bug fiximprovement
, used for refactorlibrary
, used for updating libraryprerelease
, used for preparing the branch for the releaserelease
, used for releasing projecthotfix
, used for applying a hotfix on mainpoc
, used for proof of concept
BRANCH_NAME
is managed by this regex:[a-z0-9._-]
(_
is used as space character).
This project has adopted the Contributor Covenant Code of Conduct