|
@@ -23,6 +23,18 @@ The recommended workflow for development is to create a new branch starting from
|
23
|
23
|
Long-running feature branches that aren't ready for merge into `master` may be maintained under a `devel+` prefix, e.g. `devel+metadata` for a feature branch implementing the IRCv3 METADATA extension.
|
24
|
24
|
|
25
|
25
|
|
|
26
|
+## Workflow
|
|
27
|
+
|
|
28
|
+We have two test suites:
|
|
29
|
+
|
|
30
|
+1. `make test`, which runs some relatively shallow unit tests, checks `go vet`, and does some other internal consistency checks
|
|
31
|
+1. `make irctest`, which runs the [irctest](https://github.com/ProgVal/irctest) integration test suite
|
|
32
|
+
|
|
33
|
+Barring special circumstances, both must pass for a PR to be accepted. irctest will test the `ergo` binary visible on `$PATH`; make sure your development version is the one being tested. (If you have `~/go/bin` on your `$PATH`, a successful `make install` will accomplish this.)
|
|
34
|
+
|
|
35
|
+The project style is [gofmt](https://go.dev/blog/gofmt); it is enforced by `make test`. You can fix any style issues automatically by running `make gofmt`.
|
|
36
|
+
|
|
37
|
+
|
26
|
38
|
## Updating dependencies
|
27
|
39
|
|
28
|
40
|
Ergo vendors all dependencies using `go mod vendor`. To update a dependency, or add a new one:
|