You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

CONTRIBUTING.md 1.2KB

1234567891011121314151617181920212223242526
  1. ### Pre-implementation
  2. Before authoring a code contribution, open an issue explaining your proposal in detail.
  3. Remember that code is easy to write, but inventing a valid design is usually the crux.
  4. Expect the proposal to be rejected if you do not consider 100% of use-cases and corner cases.
  5. ### Code style and quality
  6. Be courteous and try to match the code style.
  7. I won't define the exact style here, so just follow the existing code.
  8. Use C++11 style, not >=C++14 or C.
  9. This means using the `std::` namespace for stdlib symbols, `std::string` instead of `char*`, `//` comments and `/** */` docstrings, etc.
  10. Avoid over-engineered things like `iostream`, `std::array`, `std::unique_ptr`, etc when simpler alternatives exist.
  11. Write maintainable code that will last >4 years.
  12. No feature/bug is urgent enough to write dirty/temporary implementations.
  13. I have no need to withdraw technical debt.
  14. ### Legal
  15. Because a proprietary fork of VCV Rack is planned by VCV (*Rack for DAWs*), in order for your patch to be accepted, you must make a declaration stating that:
  16. - you are the sole author of your patch.
  17. - your patch is released under the [CC0](https://creativecommons.org/publicdomain/zero/1.0/) license.
  18. - or ask for a copyright reassignment form if you prefer this instead.