Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update contributing guidelines #2018

Merged
merged 14 commits into from
Apr 3, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
80 changes: 80 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
name: Bug report
description: Create a bug report to help us improve the project
title: "[Bug]: "
labels: ["bug"]
projects: ["qdrvm/1"]
body:
- type: markdown
attributes:
value: |
## Bug Report

Before you submit a bug report, please ensure that:

- The bug has not already been reported in the project.
- You have searched the existing issues to make sure the bug has not already been reported.

If the above conditions are met, please fill out the following information.

- type: input
id: bug-summary
attributes:
label: Bug Summary
description: Provide a brief summary of the bug.
placeholder: e.g., "Error occurs when..."
validations:
required: true

- type: textarea
id: bug-description
attributes:
label: Bug Description
description: Provide a detailed description of the bug.
placeholder: Describe the bug in detail...
validations:
required: true

- type: textarea
id: bug-reproduction
attributes:
label: Steps to Reproduce
description: Provide detailed steps to reproduce the bug. Explain what command was executed to start the node, what mode (validator, sync node, etc.) was used, how many nodes were running, etc.
placeholder: e.g., "1. Start the node with the following command..."
validations:
required: true

- type: textarea
id: bug-effects
attributes:
label: Effects of the Bug
description: Explain the effects of the bug, including any incorrect behavior, error messages, logs, stack traces, core dumps, etc.
placeholder: e.g., "The application crashes with the error message..."
validations:
required: true

- type: textarea
id: bug-expected-behavior
attributes:
label: Expected Behavior
description: Describe what you expected to happen.
placeholder: e.g., "I expected the application to..."
validations:
required: false

- type: textarea
id: bug-system-info
attributes:
label: System Information
description: Provide information about your system, such as OS, compiler, and docker image version or project version (or commit hash).
placeholder: e.g., OS, Compiler, Project Version
validations:
required: true

- type: textarea
id: bug-additional-context
attributes:
label: Additional Context
description: Add any other context about the problem here.
placeholder: e.g., "This bug only seems to occur when..."
validations:
required: false
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
blank_issues_enabled: false
28 changes: 28 additions & 0 deletions .github/ISSUE_TEMPLATE/enhancement.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Enhancement for KAGOME
description: Suggest an improvement to an existing feature in the KAGOME project.
title: "[Bug]: "
labels: ["Enhancement"]
projects: ["qdrvm/1"]
body:
- type: textarea
attributes:
label: Description
description: Describe the enhancement that you are proposing for the KAGOME project.
validations:
required: true
- type: textarea
attributes:
label: Motivation
description: Explain why this enhancement is beneficial
validations:
required: true
- type: dropdown
attributes:
label: Are you planning to do it yourself in a pull request ?
description: Any contribution is greatly appreciated. We are more than happy to provide help on the process.
options:
- "Yes"
- "No"
- Maybe
validations:
required: true
56 changes: 56 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: Feature request
description: Suggest a new feature for the KAGOME project
title: "[Feature Request]: "
projects: ["qdrvm/1"]
body:
- type: markdown
attributes:
value: |
## Feature Request

Before you submit a feature request, please ensure that:

- The feature does not already exist in the project.
- The feature is aligned with the project's goals and roadmap.
- You have searched the existing issues to make sure the feature has not already been requested.

If the above conditions are met, please fill out the following information.

- type: dropdown
id: feature-type
attributes:
label: Component
description: Select the component that this feature request is related to.
options:
- Grandpa
- Babe
- Parachains validation
- Runtime
- Host functions
- Network
- RPC
- Storage
- Transaction pool
- Off-chain workers
- Consensus
- Utilities
- Other
default: 12 # index of "Other"

- type: textarea
id: feature-description
attributes:
label: Feature Description
description: Provide a detailed description of the feature. Mention benefits this feature will bring to the project and its users or developers.
placeholder: Describe the feature in detail...
validations:
required: true

- type: textarea
id: feature-additional-info
attributes:
label: References and additional Information
description: Add any references (e.g. to specification or existing implementation in other repos) or additional information that may be relevant to the feature request.
placeholder: e.g., "This feature is important because..."
validations:
required: false
16 changes: 8 additions & 8 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,19 +21,19 @@ SPDX-License-Identifier: Apache-2.0
<!-- We must be able to understand the design of your change from this description. If we can't get a good idea of what the code will be doing from the description here, the pull request may be closed at the maintainers' discretion. -->
<!-- Keep in mind that the maintainer reviewing this PR may not be familiar with or have worked with the code here recently, so please walk us through the concepts. -->

### Benefits

<!-- What benefits will be realized by the code change? -->

### Possible Drawbacks

<!-- What are the possible side-effects or negative impacts of the code change? -->
<!-- If no drawbacks, explicitly mention this (write None) -->

### Usage Examples or Tests <!-- Optional -->
## Checklist Before Opening a PR

Before you open a Pull Request (PR), please make sure you've completed the following steps and confirm by answering 'Yes' to each item:

<!-- Point reviewers to the test, code example or documentation which shows usage example of this feature -->
1. **Code is formatted**: Have you run your code through clang-format to ensure it adheres to the project's coding standards? **[Yes|No]**
2. **Code is documented**: Have you added comments and documentation to your code according to the guidelines in the project's [contributing guidelines](https://github.com/qdrvm/kagome/CONTRIBUTING.md)? **[Yes|No]**
3. **Self-review**: Have you reviewed your own code to ensure it is free of typos, syntax errors, logical errors, and unresolved TODOs or FIXME without linking to an issue? **[Yes|No]**
4. **Zombienet Tests**: Have you ensured that the zombienet tests are passing? Zombienet is a network simulation and testing tool used in this project. It's important to ensure that these tests pass to maintain the stability and reliability of the project. **[Yes|No]**

### Alternate Designs <!-- Optional -->
<!-- Please answer 'Yes' to each of these items in your PR description to confirm that you've completed them. This will help maintain the quality of the project and facilitate efficient collaboration. -->

<!-- Explain what other alternates were considered and why the proposed version was selected -->
52 changes: 52 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Code of Conduct

## 1. Purpose

A primary goal of open-sourcing KAGOME is to be inclusive to the largest number of contributors, with the most varied and diverse backgrounds possible. As such, we are committed to providing a friendly, safe and welcoming environment for all, regardless of gender, sexual orientation, ability, ethnicity, socioeconomic status, and religion (or lack thereof).

## 2. Expected Behavior

The following behaviors are expected and requested of all community members:

- Participate in an authentic and active way. In doing so, you contribute to the health and longevity of this community.
- Exercise consideration and respect in your speech and actions.
- Attempt collaboration before conflict.
- Refrain from demeaning, discriminatory, or harassing behavior and speech.
- Be mindful of your surroundings and of your fellow participants.

## 3. Unacceptable Behavior

The following behaviors are considered harassment and are unacceptable within our community:

- Violence, threats of violence or violent language directed against another person.
- Sexist, racist, homophobic, transphobic, ableist or otherwise discriminatory jokes and language.
- Posting or displaying sexually explicit or violent material.
- Personal insults, particularly those related to gender, sexual orientation, race, religion, or disability.

## 4. Consequences of Unacceptable Behavior

Unacceptable behavior from any community member will not be tolerated. Anyone asked to stop unacceptable behavior is expected to comply immediately.

If a community member engages in unacceptable behavior, the project maintainers may take any action they deem appropriate, up to and including a temporary ban or permanent expulsion from the community without warning.

## 5. Reporting Guidelines

If you are subject to or witness unacceptable behavior, or have any other concerns, please notify a community moderator as soon as possible.

## 6. Addressing Grievances

If you feel you have been falsely or unfairly accused of violating this Code of Conduct, you should notify the project maintainers with a concise description of your grievance.

## 7. Scope

This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community.

## 8. Contact info

Quadrivium Numera Pte. Ltd. can be reached at github[at]qdrvm.io
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

github[at]qdrvm.io

May be it is already done. If not, then I suggest to set up a redirect for all incoming mail from this address to someone's primary email, otherwise there is a chance of missing something or not being on time.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, we do redirect messages from this email to the employees email


## 9. License and attribution

This Code of Conduct is distributed under a Creative Commons Attribution-ShareAlike license.

Portions of text derived from the [Django Code of Conduct](https://www.djangoproject.com/conduct/) and the [Geek Feminism Anti-Harassment Policy](http://geekfeminism.wikia.com/wiki/Conference_anti-harassment/Policy).
Loading
Loading