- Your commit should provide some improvement for widely-used systems.
- Any bugfix is ok
- Integrations with ( any public software with > 10k users ) is ok
- Support of nftables, pf, ipfw & other firewalling systems is ok
- Integration with your specific business systems is not ok
- Be tolerant to other's failure. Nobody is perfect. Me too.
- Don't blame anyone. Nor in commit message nor in comments or code itself.
- No PoC - no merge. Prepare yourself for questions.
- Don't hesitate ask those questions too.
- Use camelCase naming style.
- Don't make methods & variables visible unless it's highly necessary.
- Avoid using 3pc libraries for generic functions (collections, string parsing, etc). We don't want to become a hostages of those libraries once.
- Prepare test, examples and documentation updates along with your code. We probably refuse to merge a code without single line of documentation on it.
- Test as much as possible - firewall management fault can grave all your infrastructure in a moment.
Send me PR :)