1- <?xml version =" 1.0" ?>
2- <!DOCTYPE module PUBLIC
3- "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN"
4- "https://checkstyle.org/dtds/configuration_1_3.dtd">
5-
6- <!--
1+ <?xml version =" 1.0" encoding =" UTF-8" standalone =" no" ?><!--
72 Palantir Baseline Checkstyle configuration.
83 Authors: Robert Fink, Brian Worth, Merrick Zoubeiri, and many other contributors. Based in part on http://checkstyle.sourceforge.net/google_style.html
94 Please keep checks alphabetized with one exception: "relaxed" checks are grouped together at the bottom for easier disabling.
105 Check-specific comments reference documents internal to Palantir and can be safely ignored or removed.
11- -->
12-
6+ --> <!DOCTYPE module PUBLIC "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN" "https://checkstyle.org/dtds/configuration_1_3.dtd">
137<module name =" Checker" >
148 <property name =" charset" value =" UTF-8" />
159 <property name =" severity" value =" error" />
1812 <module name =" NewlineAtEndOfFile" > <!-- Java Style Guide: Line ending: LF -->
1913 <property name =" lineSeparator" value =" lf" />
2014 </module >
21- <module name =" RegexpHeader" >
22- <property name =" header" value =" ^/\*$\n^ \* \(c\) Copyright \d{4} Palantir Technologies Inc\. All rights reserved\.$" />
23- <property name =" fileExtensions" value =" .java,.ts" />
24- </module >
25- <module name =" RegexpMultiline" > <!-- Development Practices: Writing good unit tests -->
26- <property name =" fileExtensions" value =" java" />
27- <property name =" format" value =" @VisibleForTesting\s+(protected|public)" />
28- <property name =" message" value =" @VisibleForTesting members should be package-private." />
29- </module >
3015 <module name =" RegexpSingleline" > <!-- No reference needed as this is evident. -->
3116 <property name =" format" value =" <<<<<<< " />
3217 <property name =" message" value =" Found (<<<<<<< ), so it looks like you had a merge conflict that compiles. Please fix it." />
5641 <module name =" BeforeExecutionExclusionFileFilter" >
5742 <property name =" fileNamePattern" value =" module\-info\.java$" />
5843 </module >
44+ <module name =" LineLength" > <!-- Java Style Guide: No line-wrapping -->
45+ <property name =" max" value =" 120" />
46+ <property name =" ignorePattern" value =" ^package.*|^import.*|a href|href|http://|https://|ftp://" />
47+ </module >
5948 <module name =" TreeWalker" >
6049 <module name =" SuppressionCommentFilter" /> <!-- baseline-gradle: README.md -->
6150 <module name =" SuppressionCommentFilter" >
7463 <property name =" tokens" value =" VARIABLE_DEF" />
7564 <property name =" allowSamelineMultipleAnnotations" value =" true" />
7665 </module >
77- <module name =" AnnotationUseStyle" /> <!-- Java Style Guide: Annotations -->
66+ <module name =" AnnotationUseStyle" > <!-- Java Style Guide: Annotations -->
67+ <property name =" trailingArrayComma" value =" ignore" />
68+ </module >
7869 <module name =" ArrayTypeStyle" /> <!-- Java Style Guide: No C-style array declarations -->
7970 <module name =" AvoidEscapedUnicodeCharacters" > <!-- Java Style Guide: Non-ASCII characters -->
8071 <property name =" allowEscapesForControlCharacters" value =" true" />
8677 </module >
8778 <module name =" AvoidStarImport" /> <!-- Java Style Guide: No wildcard imports -->
8879 <module name =" AvoidStaticImport" > <!-- Java Style Guide: No static imports -->
89- <property name =" excludes" value ="
90- com.google.common.base.Preconditions.*,
91- com.palantir.logsafe.Preconditions.*,
92- java.util.Collections.*,
93- java.util.stream.Collectors.*,
94- org.apache.commons.lang3.Validate.*,
95- org.assertj.core.api.Assertions.*,
96- org.mockito.Mockito.*" />
80+ <property name =" excludes" value =" com.google.common.base.Preconditions.*, com.palantir.logsafe.Preconditions.*, java.util.Collections.*, java.util.stream.Collectors.*, org.apache.commons.lang3.Validate.*, org.assertj.core.api.Assertions.*, org.mockito.Mockito.*" />
9781 </module >
9882 <module name =" ClassTypeParameterName" > <!-- Java Style Guide: Type variable names -->
9983 <property name =" format" value =" (^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)" />
143127 <module name =" IllegalImport" > <!-- Java Coding Guidelines: Import the canonical package -->
144128 <property name =" id" value =" BanShadedClasses" />
145129 <property name =" illegalPkgs" value =" .*\.(repackaged|shaded|thirdparty)" />
146- <property name =" regexp" value =" true" />
130+ <property name =" regexp" value =" true" />
147131 <message key =" import.illegal" value =" Must not import repackaged classes." />
148132 </module >
149133 <module name =" IllegalImport" >
150134 <property name =" illegalPkgs" value =" ^org\.gradle\.(internal|.*\.internal)" />
151- <property name =" regexp" value =" true" />
135+ <property name =" regexp" value =" true" />
152136 <message key =" import.illegal" value =" Do not rely on gradle internal classes as these may change in minor releases - use org.gradle.api versions instead." />
153137 </module >
154138 <module name =" IllegalImport" >
201185 <property name =" separated" value =" true" />
202186 <property name =" sortStaticImportsAlphabetically" value =" true" />
203187 </module >
188+
204189 <module name =" InnerAssignment" /> <!-- Java Coding Guidelines: Inner assignments: Not used -->
205- <module name =" LeftCurly" /> <!-- Java Style Guide: Nonempty blocks: K & R style -->
206- <module name =" LineLength" > <!-- Java Style Guide: No line-wrapping -->
207- <property name =" max" value =" 120" />
208- <property name =" ignorePattern" value =" ^package.*|^import.*|a href|href|http://|https://|ftp://" />
209- </module >
190+ <!-- Java Style Guide: Nonempty blocks: K & R style -->
210191 <module name =" MemberName" > <!-- Java Style Guide: Non-constant field names -->
211192 <property name =" format" value =" ^[a-z][a-zA-Z0-9]+$" />
212193 <message key =" name.invalidPattern" value =" Member name ''{0}'' must match pattern ''{1}''." />
247228 <message key =" name.invalidPattern" value =" Package name ''{0}'' must match pattern ''{1}''." />
248229 </module >
249230 <module name =" ParameterAssignment" /> <!-- Java Coding Guidelines: Final variables and parameters -->
250- < module name = " ParenPad " /> <!-- Java Style Guide: Horizontal whitespace -->
231+ <!-- Java Style Guide: Horizontal whitespace -->
251232 <module name =" RedundantImport" /> <!-- Java Style Guide: No unused imports -->
252233 <module name =" RedundantModifier" /> <!-- Java Coding Guidelines: Avoid redundant modifiers -->
253234 <module name =" RegexpSinglelineJava" > <!-- Java Coding Guidelines: Use appropriate assertion methods -->
363344 </module >
364345 <module name =" RegexpSinglelineJava" >
365346 <property name =" format" value =" \bCharset.defaultCharset\(" />
366- <property name =" message" value =" Use explicit charset (e.g. StandardCharsets.UTF-8 ) instead of default." />
347+ <property name =" message" value =" Use explicit charset (e.g. StandardCharsets.UTF_8 ) instead of default." />
367348 </module >
368349 <module name =" RegexpSinglelineJava" >
369350 <property name =" format" value =" \bIOUtils\.toString\(" />
372353 <module name =" RegexpSinglelineJava" >
373354 <property name =" format" value =" \/\/TODO|\/\/ TODO(?!\([^()\s]+\): )" />
374355 <property name =" message" value =" TODO format: // TODO(#issue): explanation" />
356+ <property name =" ignoreCase" value =" true" />
375357 </module >
376358 <module name =" RegexpSinglelineJava" >
377359 <property name =" format" value =" (void setUp\(\))|(void setup\(\))|(void setupStatic\(\))|(void setUpStatic\(\))|(void beforeTest\(\))|(void teardown\(\))|(void tearDown\(\))|(void beforeStatic\(\))|(void afterStatic\(\))" />
378360 <property name =" message" value =" Test setup/teardown methods are called before(), beforeClass(), after(), afterClass(), but not setUp, teardown, etc." />
379361 </module >
380362 <module name =" RightCurly" > <!-- Java Style Guide: Nonempty blocks: K & R style -->
381363 <property name =" option" value =" same" />
382- <property name =" tokens" value =" LITERAL_TRY, LITERAL_CATCH, LITERAL_FINALLY, LITERAL_IF, LITERAL_ELSE, LITERAL_DO" />
364+ <property name =" tokens" value =" CLASS_DEF, METHOD_DEF, CTOR_DEF, LITERAL_TRY, LITERAL_CATCH, LITERAL_FINALLY, LITERAL_IF, LITERAL_ELSE, LITERAL_DO" />
383365 </module >
384366 <module name =" RightCurly" > <!-- Java Style Guide: Nonempty blocks: K & R style -->
385367 <property name =" option" value =" alone" />
386- <property name =" tokens" value =" CLASS_DEF, METHOD_DEF, CTOR_DEF, LITERAL_FOR, LITERAL_WHILE, STATIC_INIT, INSTANCE_INIT" />
368+ <property name =" tokens" value =" LITERAL_FOR, LITERAL_WHILE, STATIC_INIT, INSTANCE_INIT" />
387369 </module >
388370 <module name =" SeparatorWrap" > <!-- Java Style Guide: Where to break -->
389371 <property name =" tokens" value =" DOT" />
401383 <module name =" SuppressWarnings" >
402384 <property name =" format" value =" serial" />
403385 </module >
404- <module name =" SuppressWarningsHolder" /> <!-- Required for SuppressWarningsFilter -->
386+ <module name =" SuppressWarningsHolder" /> <!-- Required for SuppressWarningsFilter -->
405387 <module name =" TypeName" > <!-- Java Style Guide: Class names -->
406388 <message key =" name.invalidPattern" value =" Type name ''{0}'' must match pattern ''{1}''." />
407389 </module >
408390 <module name =" TypecastParenPad" /> <!-- Java Style Guide: Horizontal whitespace -->
409- <module name =" UnnecessaryParentheses" />
410391 <module name =" UnusedImports" > <!-- Java Style Guide: No unused imports -->
411392 <property name =" processJavadoc" value =" true" />
412393 </module >
413394 <module name =" UpperEll" /> <!-- Java Style Guide: Numeric Literals -->
414395 <module name =" VisibilityModifier" /> <!-- Java Coding Guidelines: Minimize mutability -->
415396 <module name =" WhitespaceAfter" /> <!-- Java Style Guide: Horizontal whitespace -->
416- <module name =" WhitespaceAround" > <!-- Java Style Guide: Horizontal whitespace -->
417- <property name =" allowEmptyConstructors" value =" true" />
418- <property name =" allowEmptyMethods" value =" true" />
419- <property name =" allowEmptyTypes" value =" true" />
420- <property name =" allowEmptyLoops" value =" true" />
421- <property name =" allowEmptyLambdas" value =" true" />
422- <property name =" ignoreEnhancedForColon" value =" false" />
423- <message key =" ws.notFollowed" value =" WhitespaceAround: ''{0}'' is not followed by whitespace. Empty blocks may only be represented as '{}' when not part of a multi-block statement (4.1.3)" />
424- <message key =" ws.notPreceded" value =" WhitespaceAround: ''{0}'' is not preceded with whitespace." />
425- </module >
397+
426398
427399 <!-- Stricter checks begin: delete some or all of the following for faster prototyping, but please restore before pushing to production. -->
428400
435407 <property name =" ignoredAnnotations" value =" ParameterizedTest, Test, Before, BeforeEach, After, AfterEach, BeforeClass, BeforeAll, AfterClass, AfterAll" />
436408 </module >
437409 <module name =" JavadocMethod" > <!-- Java Style Guide: Where Javadoc is used -->
438- <property name =" scope " value =" public" />
410+ <property name =" accessModifiers " value =" public" />
439411 <property name =" allowMissingParamTags" value =" true" />
440- <property name =" allowMissingThrowsTags" value =" true" />
441412 <property name =" allowMissingReturnTag" value =" true" />
442- <property name =" minLineCount" value =" 99999999" />
443413 <property name =" allowedAnnotations" value =" Override, Test" />
444- <property name =" allowThrowsTagsForSubclasses" value =" true" />
445414 </module >
446415 <module name =" JavadocStyle" /> <!-- Java Style Guide: Javadoc -->
447416 <module name =" JavadocTagContinuationIndentation" > <!-- Java Style Guide: At-clauses -->
474443
475444 <!-- Stricter checks end -->
476445 </module >
477- </module >
446+ </module >
0 commit comments