|
1 | 1 | # Contributing to the MongoDB Go Driver
|
2 | 2 |
|
3 |
| -Thank you for your interest in contributing to the MongoDB Go driver. |
| 3 | +Thank you for your interest in contributing to the MongoDB Go Driver! |
4 | 4 |
|
5 |
| -We are building this software together and strongly encourage contributions from the community that are within the guidelines set forth |
6 |
| -below. |
| 5 | +We are building this software together and strongly encourage contributions from the community that are within the guidelines set forth below. |
7 | 6 |
|
8 | 7 | ## Bug Fixes and New Features
|
9 | 8 |
|
10 |
| -Before starting to write code, look for existing [tickets](https://jira.mongodb.org/browse/GODRIVER) or |
11 |
| -[create one](https://jira.mongodb.org/secure/CreateIssue!default.jspa) for your bug, issue, or feature request. This helps the community |
12 |
| -avoid working on something that might not be of interest or which has already been addressed. |
| 9 | +Before starting to write code, look for existing [tickets](https://jira.mongodb.org/browse/GODRIVER) or [create one](https://jira.mongodb.org/secure/CreateIssue!default.jspa) for your bug, issue, or feature request. This helps the community avoid working on something that might not be of interest or which has already been addressed. |
13 | 10 |
|
14 | 11 | ## Pull Requests & Patches
|
15 | 12 |
|
16 |
| -The Go Driver team is experimenting with GerritHub for contributions. GerritHub uses GitHub for authentication and uses a patch based |
17 |
| -workflow. Since GerritHub supports importing of Pull Requests we will also accept Pull Requests, but Code Review will be done in |
18 |
| -GerritHub. |
| 13 | +The Go Driver team uses GitHub to manage and review all code changes. Patches should generally be made against the master (default) branch and include relevant tests, if |
| 14 | +applicable. |
19 | 15 |
|
20 |
| -Patches should generally be made against the master (default) branch and include relevant tests, if applicable. |
| 16 | +Code should compile and tests should pass under all Go versions which the driver currently supports. Currently the Go Driver supports a minimum version of Go 1.10 and requires Go 1.16 for development. Please run the following Make targets to validate your changes: |
| 17 | +- `make fmt` |
| 18 | +- `make lint` (requires [golangci-lint](https://github.com/golangci/golangci-lint) and [lll](https://github.com/walle/lll) to be installed and available in the `PATH`) |
| 19 | +- `make test` |
| 20 | +- `make test-race` |
21 | 21 |
|
22 |
| -Code should compile and tests should pass under all go versions which the driver currently supports. Currently the driver |
23 |
| -supports a minimum version of go 1.7. Please ensure the following tools have been run on the code: gofmt, golint, errcheck, |
24 |
| -go test (with coverage and with the race detector), and go vet. For convenience, you can run 'make' to run all these tools. |
25 |
| -**By default, running the tests requires that you have a mongod server running on localhost, listening on the default port.** |
26 |
| -At minimum, please test against the latest release version of the MongoDB server. |
| 22 | +**Running the tests requires that you have a `mongod` server running on localhost, listening on the default port (27017). At minimum, please test against the latest release version of the MongoDB server.** |
27 | 23 |
|
28 | 24 | If any tests do not pass, or relevant tests are not included, the patch will not be considered.
|
29 | 25 |
|
30 |
| -If you are working on a bug or feature listed in Jira, please include the ticket number prefixed with GODRIVER in the commit, |
31 |
| -e.g. GODRIVER-123. For the patch commit message itself, please follow the [How to Write a Git Commit Message](https://chris.beams.io/posts/git-commit/) guide. |
| 26 | +If you are working on a bug or feature listed in Jira, please include the ticket number prefixed with GODRIVER in the commit message and GitHub pull request title, (e.g. GODRIVER-123). For the patch commit message itself, please follow the [How to Write a Git Commit Message](https://chris.beams.io/posts/git-commit/) guide. |
32 | 27 |
|
33 | 28 | ## Talk To Us
|
34 | 29 |
|
35 |
| -If you want to work on the driver, write documentation, or have questions/complaints, please reach out to use either via [MongoDB Community Forums](https://community.mongodb.com/tags/c/drivers-odms-connectors/7/go-driver) or by creating a Question |
36 |
| -issue at (https://jira.mongodb.org/secure/CreateIssue!default.jspa). |
| 30 | +If you want to work on the driver, write documentation, or have questions/complaints, please reach out to us either via [MongoDB Community Forums](https://community.mongodb.com/tags/c/drivers-odms-connectors/7/go-driver) or by creating a Question issue in [Jira](https://jira.mongodb.org/secure/CreateIssue!default.jspa). |
0 commit comments