Skip to content

Commit 0574d12

Browse files
authored
Merge pull request #25 from timbray/contributing
kaizen: Add CONTRIBUTING.md
2 parents 8d30d13 + 990b278 commit 0574d12

File tree

1 file changed

+56
-0
lines changed

1 file changed

+56
-0
lines changed

CONTRIBUTING.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# Contributing to `Topfew`
2+
3+
Topfew is hosted in this GitHub repository
4+
at `github.com/timbray/topfew` and welcomes
5+
contributions.
6+
7+
As of mid-2024, Topfew is probably more or
8+
less complete. It is well-tested. Its performance at
9+
processing streams can keep up with most streams
10+
and it is dramatically faster when processing files,
11+
where it processes multiple segments in parallel.
12+
13+
If you disagree and want to contribute to Topfew,
14+
the first step in making a change is typically to
15+
raise an Issue to allow for discussion of the idea.
16+
This is important because possibly Topfew already
17+
does what you want, in which case perhaps what’s
18+
needed is a documentation fix. Possibly the idea
19+
has been raised before but failed to convince Topfew’s
20+
maintainers. (Doesn’t mean it won’t find favor now;
21+
times change.)
22+
23+
Assuming there is agreement that a change in Topfew
24+
is a good idea, the mechanics of forking the repository,
25+
committing changes, and submitting a pull request are
26+
well-described in many places; there is nothing
27+
unusual about Topfew.
28+
29+
### Code Style
30+
31+
The coding style suggested by the Go community is
32+
used in Topfew. See the
33+
[style doc](https://go.dev/wiki/CodeReviewComments) for details.
34+
35+
Try to limit column width to 120 characters for both code and markdown documents
36+
such as this one.
37+
38+
### Signing commits
39+
40+
Commits should be signed (not just the `-s` “signd off on”) with
41+
any of the [styles GitHub supports](https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits).
42+
Note that you can use `git config` to arrange that your commits are
43+
automatically signed with the right key.
44+
45+
### Running Tests
46+
47+
In the repository root `go test ./...` runs unit tests
48+
with all the defaults, which is a decent check for basic
49+
sanity and correctness.
50+
51+
The following command runs the Go linter; submissions
52+
need to be free of lint errors.
53+
54+
```shell
55+
golangci-lint run
56+
```

0 commit comments

Comments
 (0)