Contributing¶
Every module in the go-ruby-stdlib family meets one uniform standard.
Shared conventions¶
- Pure Go,
CGO_ENABLED=0. No cgo, no vendoring — build from source. - MRI byte-exact. Behaviour is pinned by a differential oracle against the
system
rubybinary, compared byte-for-byte (gated on a Ruby being present; cross-arch lanes still build and test the library). - 100% coverage, enforced as a CI gate, including error branches.
- 6 arches × 3 OSes. Green across the six 64-bit Go targets (amd64, arm64, riscv64, loong64, ppc64le, s390x) and Linux/macOS/Windows.
gofmt+go vetclean,go.modfloorgo 1.26.4.- BSD-3-Clause, copyright "the go-ruby-<org>/<repo> authors".
- Public GitHub content (issues, PRs, commits) in English.
Repository layout per module¶
Each module <name> ships as its own org with:
| Repo | What it is |
|---|---|
github.com/go-ruby-<name>/<name> |
the library |
github.com/go-ruby-<name>/docs |
MkDocs Material docs (versioned with mike) |
github.com/go-ruby-<name>/go-ruby-<name>.github.io |
the Hugo landing page |
github.com/go-ruby-<name>/brand |
logo and brand assets |
The aggregate stdlib module
re-exports the whole tower behind one import.