|
1 |
| -## Contributing to the MongoDB Ruby Driver |
| 1 | +# Contributing to the MongoDB Ruby Driver |
2 | 2 |
|
3 | 3 | Thank you for your interest in contributing to the MongoDB Ruby driver.
|
4 | 4 |
|
5 |
| -We are building this software together and strongly encourage contributions |
6 |
| -from the community that are within the guidelines set forth below. |
| 5 | +We are building this software together and appreciate and encourage |
| 6 | +contributions from the community. |
7 | 7 |
|
8 |
| -Bug Fixes and New Features |
9 |
| --------------------------- |
| 8 | +JIRA Tickets |
| 9 | +------------ |
10 | 10 |
|
11 |
| -Before starting to write code, look for existing [tickets] |
12 |
| -(https://jira.mongodb.org/browse/RUBY) or [create one] |
13 |
| -(https://jira.mongodb.org/secure/CreateIssue!default.jspa) |
14 |
| -for your bug, issue, or feature request. This helps the community |
15 |
| -avoid working on something that might not be of interest or which |
16 |
| -has already been addressed. |
| 11 | +The Ruby driver team uses MongoDB JIRA to schedule and track work. |
| 12 | +To report a problem with the driver, please [create a new issue] |
| 13 | +(https://jira.mongodb.org/secure/CreateIssue!default.jspa) in the Ruby |
| 14 | +JIRA project. A ticket is appreciated, though not necessary, when submitting |
| 15 | +a pull request. |
| 16 | + |
| 17 | +Please consult [JIRA issues](https://jira.mongodb.org/browse/RUBY) |
| 18 | +for existing known issues in the driver. |
17 | 19 |
|
18 | 20 | Environment
|
19 | 21 | -----------
|
20 | 22 |
|
21 |
| -We highly suggest using [RVM](https://rvm.io/) or [rbenv] |
22 |
| -(https://github.com/sstephenson/rbenv) to set up Ruby development and |
23 |
| -testing environments. In this way, moving between and testing code for |
24 |
| -alternate Ruby versions (besides the one possibly included with your |
25 |
| -system) is simple. This practice is essential for ensuring the quality |
26 |
| -of the driver. |
27 |
| - |
28 |
| -Pull Requests |
29 |
| -------------- |
30 |
| - |
31 |
| -Pull requests should be made against the master (development) |
32 |
| -branch and include relevant tests, if applicable. The driver follows |
33 |
| -the Git-Flow branching model where the traditional master branch is |
34 |
| -known as release and the master (default) branch is considered under |
35 |
| -development. |
| 23 | +We recommend using [rbenv](https://github.com/sstephenson/rbenv) to set up |
| 24 | +the Ruby development and testing environments, though other tools like |
| 25 | +[RVM](https://rvm.io/) will also work. The driver currently supports |
| 26 | +MRI 1.9.3-2.6 and JRuby 9.1-9.2. |
36 | 27 |
|
37 |
| -Tests should pass under all Ruby interpreters which the MongoDB Ruby |
38 |
| -driver currently supports (1.8.7, 1.9.3, JRuby 1.6.x and 1.7.x) and will be |
39 |
| -automatically tested. |
| 28 | +A MongoDB cluster is required to run the tests. Setup procedures and |
| 29 | +recommendations for various clusters, as well as how to configure the |
| 30 | +driver's test suite, are covered in the [spec |
| 31 | +readme](https://github.com/mongodb/mongo-ruby-driver/blob/master/spec/README.md). |
40 | 32 |
|
41 |
| -The results of pull request testing will be appended to the request. |
42 |
| -If any tests do not pass, or relavant tests are not included the pull |
43 |
| -request will not be considered. |
| 33 | +The driver is tested on [Evergreen](https://github.com/evergreen-ci/evergreen), |
| 34 | +MongoDB's in house continuous integration platform. After a pull request |
| 35 | +is created, one of the Ruby driver team engineers will schedule continous |
| 36 | +integration builds on Evergreen. |
44 | 37 |
|
45 |
| -Clusters and Replica Sets |
46 |
| -------------------------- |
47 |
| - |
48 |
| -If your bug fix or enhancement deals with Cluster or Replica Set |
49 |
| -code, please run all relevant tests for those code subsets before |
50 |
| -issuing the request. |
51 |
| - |
52 |
| -* `rake test:sharded_cluster` for sharded clusters |
53 |
| -* `rake test:replica_set` for replica sets |
| 38 | +Pull Requests |
| 39 | +------------- |
54 | 40 |
|
55 |
| -Cluster and Replica Set testing is currently **not** automatically |
56 |
| -performed so it is important they are run in a thorough fashion under |
57 |
| -all supported interpreters before a pull request is made. |
| 41 | +Pull requests should be made against the master (development) branch and |
| 42 | +include relevant tests, if applicable. The Ruby driver team will backport |
| 43 | +the changes to the stable branches, if needed. |
58 | 44 |
|
59 | 45 | Talk To Us
|
60 | 46 | ----------
|
61 | 47 |
|
62 |
| -We love to hear from you. If you want to work on something or have |
63 |
| -questions / complaints please reach out to us by creating a [question] |
64 |
| -(https://jira.mongodb.org/secure/CreateIssue.jspa?pid=10005&issuetype=6). |
| 48 | +We would love to hear from you. If you want to work on something or have |
| 49 | +questions please reach out to us by creating a [question] |
| 50 | +(https://jira.mongodb.org/secure/CreateIssue.jspa?pid=10005&issuetype=6) |
| 51 | +in JIRA. |
0 commit comments