Requirements:
- Zig
0.16.0-dev+ - standard C toolchain supported by Zig on your platform
Common commands:
zig build
zig build test
zig build check- Create a branch from
main. - Make focused changes (one feature/fix per PR when practical).
- Add or update tests for behavior changes.
- Run validation commands locally.
- Open a PR with context and verification notes.
Before opening a PR, confirm:
-
zig build testpasses -
zig buildpasses - public API changes are documented in
DOCUMENTATION.md - behavior changes are covered by tests
- commit messages clearly describe intent
- Prefer explicit error handling over silent fallthrough.
- Keep API behavior deterministic.
- Preserve ownership/lifetime semantics (
openStreammust not take stream ownership). - Keep wrapper errors meaningful and bounded (
readAlloc(limit)). - Avoid introducing platform-specific behavior without clear guards.
If you change user-facing behavior, update:
README.md(quick-start or surface-level behavior)DOCUMENTATION.md(API details and examples)
For security-sensitive issues, follow SECURITY.md rather than opening a public issue with exploit details.