- Pull requests must be atomic. Change one set of related things at a time. Bundling sucks for everyone.
- This means, primarily, that you shouldn't fix bugs and add content in the same PR. When we mean 'bundling', we mean making one PR for multiple, unrelated changes.
- Test your changes. PRs that do not compile will not be accepted.
- Testing your changes locally is incredibly important. If you break the serb we will be very upset with you.
- Large changes require discussion. If you're doing a large, game-changing modification, or a new layout for something, discussion with the community is required as of 26/6/2014. Map and sprite changes require pictures of before and after. MAINTAINERS ARE NOT IMMUNE TO THIS. GET YOUR ASS IN THE CODE DISCORD. (link in README.md)
- Merging your own PRs is considered bad practice, as it generally means you bypass peer review, which is a core part of how we develop.
- Balance changes must require that feedback be sought out from the players. For example, server polls. This does not mean you pop into #code-talk in Discord and ask about it once. Good examples include:
- Server polls. Duration of the poll should be longer than 24 hours at minimum. Use best judgment.
- Bringing attention to your PR via in-game OOC, ideally over several time slots.
- Balance change PRs need changelogs. Always.
- If you are a collaborator, allow sufficient time for feedback to be gathered, and make sure that it has been gathered.
It is also suggested that you hop into irc.rizon.net #vgstation to discuss your changes, or if you need help.
- If you're working with PNG and/or DMI files, you might want to check out and install the
pre-commit
git hook found here. This will automatically runoptipng
(if you have it) on your added/modified files, shaving off some bytes here and there.