diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 000000000..72d4a9eae --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,53 @@ +# How to contribute + +*We are still working on improving these guidelines.* + +Thank you for taking the time to contribute to `hyperledger/aries-framework-go`! + +There are several ways you can contribute: + +* Submit a [proposal](#proposals) +* Submit a [bug report](#bug-report) +* Submit a [pull request](#pull-request) + +## Proposals + +You can submit new ideas or proposals for enhancements just like any other +GitHub issue. Tag one of the +[maintainers](https://github.com/orgs/hyperledger/teams/aries-framework-go-committers) +in your proposal's description to get their attention. Your proposal will be +pulled into one of the project's +[boards](https://github.com/hyperledger/aries-framework-go/projects) once the +proposal is deemed to be worth pursuing. From there, further discovery may be +required before actual implementation work gets started. + +## Bug Report + +Did you find a bug? Be sure to set a clear and concise title. Do your best to +include a code sample that illustrates the test case. Use the +[template](ISSUE_TEMPLATE.md). Also make sure: + +* **Required:** make sure your system satisfies all the pre-requisites listed +in the `README` +* **Required:** ensure the bug is not a duplicate already reported under +[Issues](https://github.com/hyperledger/aries-framework-go/issues) + +## Pull Request + +Use the [template](PULL_REQUEST_TEMPLATE.md) and also make sure: + +* **Required:** The build must pass. In particular, the following build targets +must pass successfully: + * `make checks` + * `make unit-test` + * `make bdd-test` +* **Required:** Adherence to the [Developer Certificate of Origin +(DCO)](https://developercertificate.org/) version 1.1 (`git --signoff`). +* **Required:** *squash your commits*. Yes, we know - it's nice to be able to +rollback every single change you make while troubleshooting or when requested to +exclude a subset or your change. The problem is the project's history tends to +become polluted with useless commit messages such as "removed trailing spaces". +It also makes it harder to revert specific changes when they are spread out like +this. We care about preserving our project's commit history in a usable state, +and as such, we politely request that you deliver your changes in a single +commit. diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md new file mode 100644 index 000000000..ed1589675 --- /dev/null +++ b/.github/ISSUE_TEMPLATE.md @@ -0,0 +1,22 @@ +* Are you filing a proposal? +Make sure you follow our [guidelines](CONTRIBUTING.md#proposals). + +* Are you filing a bug report? +Use the following template for your bug report +(make sure you follow our [guidelines](CONTRIBUTING.md#bug-report): + +**What I'm trying to do** + +[Clearly describe what you're trying to do.] + +**Expected result** + +[Clearly describe the result you **expect**.] + +**Actual result** + +[Clearly describe the **actual** result you get.] + +**Sample code / test case** + +[Include a code sample that illustrates the test case.] diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 000000000..7f978e061 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,13 @@ +Use the following template for your PR (make sure you follow our +[guidelines](CONTRIBUTING.md#pull-request): + +**Title:** +[Descriptive but using as few words as possible] + +**Description:** +[Link to the GitHub issue it solves (if any)] + +Summary: + +[Include a brief summary of your changes] + diff --git a/README.md b/README.md index 43824b2cf..e9057e6f0 100644 --- a/README.md +++ b/README.md @@ -7,13 +7,14 @@ # aries-framework-go -## License - -Hyperledger Aries Framework Go is licensed under the [Apache License Version 2.0](LICENSE). - ## Introduction A go framework for Aries +## Contributing + +Found a bug? Ready to submit a PR? Want to submit a proposal for your grand +idea? Follow our [guidelines](.github/CONTRIBUTING.md) for more information +to get you started! ### Crypto Material generation for tests For unit-tests, crypto material is generated under: @@ -27,4 +28,8 @@ It is generated automatically when running unit tests. If you wish to regenerate it, you can delete this folder and: 1. run `make unit-test` or -2. cd into `pkg/didcomm/transport/http/` and run `go generate` \ No newline at end of file +2. cd into `pkg/didcomm/transport/http/` and run `go generate` + +## License + +Hyperledger Aries Framework Go is licensed under the [Apache License Version 2.0](LICENSE).