You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+19-11Lines changed: 19 additions & 11 deletions
Original file line number
Diff line number
Diff line change
@@ -433,26 +433,34 @@ new feature in PyMongo that has spec tests already implemented, or if
433
433
you are attempting to validate new spec tests in PyMongo.
434
434
435
435
### Automated Specification Test Resyncing
436
-
`/.evergreen/scripts/resync-all-specs.sh` is a script that will
437
-
automatically run once a week. This script calls a python script
438
-
`.evergreen/scripts/resync-all-specs.py` that actually does all
439
-
the resyncing. Then, any desired un-syncing will be accomplished
440
-
with the help of patch files through a `git apply -R`. If
441
-
appropriate, the bash script then calls
442
-
`.evergreen/scripts/create-pr.sh` that actually publishes a PR.
436
+
There is a script (`/.evergreen/scripts/resync-all-specs.sh`) that will
437
+
automatically run once a week to resync all the specs with the [specifications
438
+
repo](https://github.com/mongodb/specifications).
439
+
If there are changes, a PR will be generated by mongodb-drivers-pr-bot.
440
+
If any errors occurred, the PR description will display the name of the spec along
441
+
with stderr from the `bash resync-spec.sh <spec>` command.
443
442
444
443
There are three patch files that contain known test differences between
445
444
PyMongo's tests and the specification:
446
-
`.evergreen/patch/diff.patch`: tests where
447
-
PyMongo intentionally behaves differently than the specification. This file should rarely be modified, as most of these represent fundamental differences in design or behavior.
448
-
`.evergreen/patch/new.patch`: tests for new features that have not yet been implemented in PyMongo. Tests must be removed from this file as part of the PR that implements their feature.
449
-
`.evergreen/patch/update.patch`: tests that have been updated in a way that causes them to fail until their associated driver change is implemented. Tests must be removed from this file as part of the PR that implements the fix or behavioral change.
445
+
`.evergreen/patch/diff.patch`: tests where PyMongo intentionally behaves differently than the specification.
446
+
This file should rarely be modified, as most of these represent fundamental differences in design or behavior.
447
+
`.evergreen/patch/new.patch`: tests for new features that have not yet been implemented in PyMongo.
448
+
Tests must be removed from this file as part of the PR that implements their feature.
449
+
`.evergreen/patch/update.patch`: tests that have been updated in a way that causes them to fail until their
450
+
associated driver change is implemented. Tests must be removed from this file as part of the PR that implements
451
+
the fix or behavioral change.
450
452
451
453
#### Adding to a patch file
452
454
Assuming the changes are committed somewhere, to add to any of the
453
455
patch files, run `git diff` to show the desired changes and paste the
454
456
results into the patch file.
455
457
458
+
For example, there are new test files on the most recent commit of the current branch that are failing.
459
+
To add those changes to `new.patch`, I would do the following:
0 commit comments