Thanks for wanting to contribute — big or small, it all helps.
- Fix bugs
- Improve performance or readability
- Add tests or benchmarks
- Add a new algorithm (with explanation + tests)
- Improve documentation
- Check existing issues and pull requests to avoid duplicates
- If you want to add a major feature, open an issue first so we can align
main= stabletest/*orexperiment/*= new ideas / risky changes- Use descriptive branch names, like
fix/overflow-bugorexperiment/branchless-merge
- Clear description of what changed and why
- Tests added/updated (if needed)
- Benchmarks included for performance changes
- No unrelated formatting-only changes unless necessary
- Prefer clarity first, micro-optimizations second (unless the goal is performance)
- Comment tricky code paths
- If you change performance-critical code, include benchmark results if possible
Keep them simple:
fix: handle empty inputperf: reduce branch mispredicts in partitiondocs: update benchmark instructions