Contribution and Review Guidelines¶
New to GIT¶
If you have never used git before, you can look up our general reference on our wiki.
Git and You¶
GIT is a fantastic system, but while using it we have a few guidelines to keep it fantastic for everyone.
- Submit complete PR's.
- Mark your PR as a draft if you do not want it merged yet.
- Always try and fill in the whole form, even for small PR's.
- Don't close when a reviewer requests changes (just push the changes).
- Explain what you did in your PR.
- Be thorough, A door is not the same as a shutter.
- If you can add screenshots to clarify.
- Always try to add "Fixes #000" (where 000 is the Issue your PR fixes)
- Found something you want to fix yourself? Please do make an issue too.
File and folder names are important and making mistakes in them may give conflicts an/or annoyance in the future. Remember, your garbage needs to be cleaned by someone sometime in the future! For that reason, we have a few guidelines in regards to naming files and folder.
- Always start folders with a Capital.
- After every _ comes another Capital
Inclusion of files and folders¶
Although GIT is quite friendly in what it accepts in terms of files and folder changes in a commit, a reviewer's or bugfixer's time is not unlimited. For that reason, we have a few specific guidelines in regards to the inclusion of files and folders in your PR.
- Only include files you actually changed.
- Never include .Scene files unless you know you changed them.
- Try not to include multiple changes in one PR
- Want to change the formatting of multiple files too? Make a separate PR.
Your code, your style, my review¶
Here at UnityStation, we value people having their own style. But your code needs to be reviewable and editable by others too. For that reason, we have a few basic coding guidelines
- Always explain regex in a comment within your code.
- Write simple code and don't try to impress.
- We will run (Basic) automated reformating of code once in a while.
- Document your changes in your code and if need be, on the wiki.
- Add a description for every new class you create
We all know your bounty program is awesome. But we need to be clear about it.
- Bounty's are not a right, they are a favor
- You yourself are responsible for any tax or legal issues regarding the bounties
- Any fees required for payment of said bounty, will be paid from the bounty
- Promoted bounties before payment of fees.
- We will only use PayPal
- It's your responsibility to verify you can receive payments via PayPal
- Code needs to be fully reviewed, tested and merged before the bounty will be paid
- The bounty may be split over multiple contributors on request or moderator discretion
- Your code is considered licensed under AGPLv3 the moment you have published the code
Even us review gods need some guidelines once in a while.
- Let people learn from their mistakes
- Review instead of merging without comments
- Abide by these guidelines in your review
Todo vs Feature vs bug:¶
Please take note of the difference between a TODO and Feature
- Bug: An unexpected behavior of the game and/or server. Including, but not limited to, errors and warnings.
- Todo: When you come across something that needs tweaking/adding during development, is not an unexpected behavior
- Feature: When you, out of personal preference, want something added or changed.
Someone will come along and review the changes. If everything looks good then they will merge it with the main repo. If you need any help don't be afraid to ask in the discord channel: https://discord.gg/tFcTpBp