22
33## Issues
44
5- Please be as descriptive as possible with your description .
5+ Please be as descriptive as possible.
66
7- Reproducible examples are key to fixing bugs and strongly encouraged .
7+ Reproducible examples are key to finding and fixing bugs .
88
99## Pull requests
1010
@@ -19,24 +19,31 @@ The commit message title should use the verb tense + phrase that completes the b
1919
2020> This change modifies websocket to \_\_\_\_\_\_\_\_\_
2121
22- Be sure to link to an existing issue if one exists. In general, create an issue
23- before a PR to get some discussion going and to make sure you do not spend time
24- on a PR that may be rejected.
22+ Be sure to [ correctly link ] ( https://help.github.com/en/articles/closing-issues-using-keywords )
23+ to an existing issue if one exists. In general, create an issue before a PR to get some
24+ discussion going and to make sure you do not spend time on a PR that may be rejected.
2525
26- You can run tests normally with ` go test ` .
27- You'll need the [ Autobahn Test suite pip package] ( https://github.com/crossbario/autobahn-testsuite ) .
28- In the future this dependency will be removed. See [ #117 ] ( https://github.com/nhooyr/websocket/issues/117 ) .
26+ CI must pass on your changes for them to be merged.
2927
30- Please ensure CI passes for your changes. If necessary, you may run CI locally.
31- The various steps are located in ` ci/*.sh ` .
28+ ### CI
3229
33- - ` ci/fmt.sh ` requires node (specifically prettier) .
34- - ` ci/lint.sh ` requires [ shellcheck ] ( https://github.com/koalaman/shellcheck#installing ) .
35- - ` ci/test.sh ` requires the [ Autobahn Test suite pip package ] ( https://github.com/crossbario/autobahn-testsuite ) .
36- - ` ci/run.sh ` runs everything in the above order and requires all of their dependencies .
30+ CI will ensure your code is formatted correctly, passes linting and tests .
31+ It will collect coverage and report it to [ codecov ] ( https://codecov.io/gh/nhooyr/websocket )
32+ and also upload a ` out/coverage.html ` artifact that you can click on to interactively
33+ browse coverage .
3734
38- See [ ../ci/image/Dockerfile ] ( ../ci/image/Dockerfile ) for the installation of the CI dependencies on Ubuntu .
35+ You can run CI locally. The various steps are located in ` ci/*.sh ` .
3936
40- For CI coverage, you can use either [ codecov] ( https://codecov.io/gh/nhooyr/websocket ) or click the
41- ` coverage.html ` artifact on the test step in CI.
42- For coverage details locally, please see ` ci/out/coverage.html ` after running ` ci/run.sh ` or ` ci/test.sh ` .
37+ 1 . ` ci/fmt.sh ` requires node (specifically prettier).
38+ 1 . ` ci/lint.sh ` requires [ shellcheck] ( https://github.com/koalaman/shellcheck#installing ) .
39+ 1 . ` ci/test.sh ` requires the [ Autobahn Test suite pip package] ( https://github.com/crossbario/autobahn-testsuite ) .
40+ 1 . ` ci/run.sh ` runs the above scripts in order.
41+
42+ For coverage details locally, please see ` ci/out/coverage.html ` after running ` ci/test.sh ` .
43+
44+ See [ ci/image/Dockerfile] ( ci/image/Dockerfile ) for the installation of the CI dependencies on Ubuntu.
45+
46+ You can also run tests normally with ` go test ` once you have the
47+ [ Autobahn Test suite pip package] ( https://github.com/crossbario/autobahn-testsuite )
48+ installed. ` ci/test.sh ` just passes a default set of flags to ` go test ` to collect coverage,
49+ enable the race detector, run benchmarks and also prettifies the output.
0 commit comments