CONTRIBUTING.rst 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. Contributing to KWSys
  2. *********************
  3. Patches
  4. =======
  5. KWSys is kept in its own Git repository and shared by several projects
  6. via copies in their source trees. Changes to KWSys should not be made
  7. directly in a host project, except perhaps in maintenance branches.
  8. KWSys uses `Kitware's GitLab Instance`_ to manage development and code review.
  9. To contribute patches:
  10. #. Fork the upstream `KWSys Repository`_ into a personal account.
  11. #. Base all new work on the upstream ``master`` branch.
  12. #. Run ``./SetupForDevelopment.sh`` in new local work trees.
  13. #. Create commits making incremental, distinct, logically complete changes.
  14. #. Push a topic branch to a personal repository fork on GitLab.
  15. #. Create a GitLab Merge Request targeting the upstream ``master`` branch.
  16. Once changes are reviewed, tested, and integrated to KWSys upstream then
  17. copies of KWSys within dependent projects can be updated to get the changes.
  18. .. _`Kitware's GitLab Instance`: https://gitlab.kitware.com
  19. .. _`KWSys Repository`: https://gitlab.kitware.com/utils/kwsys
  20. Code Style
  21. ==========
  22. We use `clang-format`_ version **3.8** to define our style for C++ code in
  23. the KWSys source tree. See the `.clang-format`_ configuration file for
  24. our style settings. Use the `clang-format.bash`_ script to format source
  25. code. It automatically runs ``clang-format`` on the set of source files
  26. for which we enforce style. The script also has options to format only
  27. a subset of files, such as those that are locally modified.
  28. .. _`clang-format`: http://clang.llvm.org/docs/ClangFormat.html
  29. .. _`.clang-format`: .clang-format
  30. .. _`clang-format.bash`: clang-format.bash
  31. License
  32. =======
  33. We do not require any formal copyright assignment or contributor license
  34. agreement. Any contributions intentionally sent upstream are presumed
  35. to be offered under terms of the OSI-approved BSD 3-clause License.
  36. See `Copyright.txt`_ for details.
  37. .. _`Copyright.txt`: Copyright.txt