[
https://issues.apache.org/jira/browse/MESOS-1291?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14119082#comment-14119082
]
Michael Park commented on MESOS-1291:
-------------------------------------
I'm for moving forward with clang-format-3.5 as the standard. Here's the list
of disagreements with Mesos Style Guide:
- The braces after namespaces should not be wrapped.
- The braces after structs and unions should be wrapped.
- Parameters and arguments should be indented by 4 spaces rather than 2.
- Overloaded operators should be padded with spaces. (e.g. Foo operator +
(...);)
- Should not follow Google's style of wrapping on open parentheses, we should
try to reduce "jaggedness" in the code.
The first 4 discrepancies are fixed in my branch of clang with 3 commits. 2 of
which can probably be pushed upstream since they add useful options.
One of them is adding a Mesos style BreakBeforeBraces attribute, which probably
wouldn't go upstream as smoothly.
> Use clang-format to automatically format code to style
> ------------------------------------------------------
>
> Key: MESOS-1291
> URL: https://issues.apache.org/jira/browse/MESOS-1291
> Project: Mesos
> Issue Type: Improvement
> Components: technical debt
> Reporter: Dominic Hamon
> Labels: style
>
> Instead of relying on a script to check and report style errors, we should
> move to a workflow that allows people to write code how they feel comfortable
> and then automatically format it to conform to our style guide.
> The Chromium style from clang-format
> (http://clang.llvm.org/docs/ClangFormat.html) is very close to our style
> except for the dropped braces on class, struct, and function definitions, and
> two lines of whitespace between method definitions outside a class. As such,
> we should consider adopting clang-format and patching it to include a Mesos
> style variant.
> It can be run as part of post-reviews or as a git commit hook, or manually
> from within editors.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)