From: Daniel Jasper Date: Mon, 5 Oct 2015 07:24:55 +0000 (+0000) Subject: clang-format: Document threshold for adding new options. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fb8df166f4b30a6391cf84a1586f34869a5f3d10;p=clang clang-format: Document threshold for adding new options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@249289 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/docs/ClangFormatStyleOptions.rst b/docs/ClangFormatStyleOptions.rst index e10c3521f6..c2c076b589 100644 --- a/docs/ClangFormatStyleOptions.rst +++ b/docs/ClangFormatStyleOptions.rst @@ -586,6 +586,28 @@ the configuration (without a prefix: ``Auto``). .. END_FORMAT_STYLE_OPTIONS +Adding additional style options +=============================== + +Each additional style option adds costs to the clang-format project. Some of +these costs affect the clang-format developement itself, as we need to make +sure that any given combination of options work and that new features don't +break any of the existing options in any way. There are also costs for end users +as options become less discoverable and people have to think about and make a +decision on options they don't really care about. + +The goal of the clang-format project is more on the side of supporting a +limited set of styles really well as opposed to supporting every single style +used by a codebase somewhere in the wild. Of course, we do want to support all +major projects and thus have established the following bar for adding style +options. Each new style option must .. + + * .. be used in a project of significant size (have dozens of contributors) + * .. have a publicly accessible style guide + * .. have a person willing to contribute and maintain patches + +At least two out of these three need to be met. + Examples ========