Release 7.1.1

Bug fixes:

  • EqualsHashCode: hashCode without equals is not a violation. Author: rnveach #3308
  • RedundantModifier : missed violations at interface and abstract class methods signatures with final parameters. Author: rnveach #3322

Notes:

  • Remove usage of System.out.println in IT resources. Author: Andrei Selkin #2541
  • Flaws in German translation. Author: Claas Augner #3403
  • Add NonDex tool to pom.xml and .travis.yml. Author: Ben Lambeth #3378

Release 7.1

New:

  • new CLI option: exclude directories. Author: rnveach #3287
  • ImportOrder: make static imports ordering as in Eclipse. Author: Andrei Selkin #3101

Bug fixes:

  • Indentation: incorrect expectation for wrapped arguments of chained calls. Author: Kevin Conaway #3208
  • RedundantModifier: miss violation on extra final in try-with-resources. Author: rnveach, Roman Ivanov #3323
  • RequireThisCheck: false positive on static field. Author: rnveach #3335
  • FinalLocalVariable: false positive when variable is assigned inside and outside switch-block. Author: Andrei Selkin #3074
  • RequireThisCheck: NPE when surrounded by braces. Author: rnveach #3334

Notes:

  • IndentationCheckTest makes assumption about the order of HashMap. Author: Ben Lambeth #3369
  • Create web-page with instructions: how to create Javadoc Check. Author: Baratali Izmailov, Roman Ivanov #410
  • Update releasenotes generation. Author: Vladislav Lisetskii #3350
  • Update releasenotes generation. Author: Vladislav Lisetskii #3349
  • Update PULL_REQUEST_TEMPLATE.md. Author: Roman Ivanov
  • doc: Fix JavaDoc comments (#3338). Author: Michael Simons
  • Online docs: AST example for LITERAL_DO is missing the DO_WHILE node. Author: Roman Ivanov #3209

Release 7.0

Breaking backward compatibility:

  • update checkstyle to jdk8 as runtime jdk. Author: Roman Ivanov #3229
  • Modules and XDocs: changed setter methods to recieve similar types with field type for easier xdoc validation. Author: rnveach #3212

New:

  • VisibilityModifier: allow public final fields. Author: Andrei Selkin #2971

Bug fixes:

  • Ability to differentiate annotation placement in for each loop from variable declaration.. Author: Andrei Selkin #3117
  • Java 8 Grammar: Parsing of explicit receiver parameters. Author: rnveach #3239
  • Java 8 Grammar: annotation on throws types. Author: rnveach #3237
  • Java 8 Grammar: annotation on generic type. Author: rnveach #3240
  • CommentsIndentation : Check incorrect work with subsequent comments. Author: Vladislav Lisetskii #3166
  • CommentsIndentation : allow upper comments for following block at multi-block structures. Author: Vladislav Lisetskiy #3220
  • CommentsIndentation : false-positive in empty array declarations. Author: Vladislav Lisetskiy #3127
  • CommentsIndentation: false-positive when a singleline comment follows a block comment. Author: Vladislav Lisetskiy #3126
  • RightCurly rule should properly enforce same rule for LITERAL_DO. Author: Andrei Selkin #3090
  • Proper support for generics in visibility modifier check. Author: Andrei Selkin #3142
  • Indentation: incorrect validation for imports and package. Author: rnveach #2618
  • Indentation: remove requirement right curlies to be first on line. Author: rnveach #3116

Notes:

  • doc: fixed checkstyle download url (#3304). Author: rnveach
  • Reduce the number of tasks performed by Travis CI. Author: Andrei Selkin, Roman Ivanov #3159
  • Cut down on Checkstyle's dependencies on Guava. Author: Andrei Selkin #3293
  • doc: update for AnnotationLocation examples to be more exact. Author: Roman Ivanov
  • 6 tests in Checkstyle master branch fail at clean Ubuntu 14.04 Docker container (Java 8, Maven 3). Author: Andrei Selkin #3177
  • Avoid catching of InvalidPathException and AccessDeniedException in PropertyCacheFile#persist. Author: Andrei Selkin #3259
  • Review all French translations. Author: Vincent Privat #3282
  • Improve French translation for annotations warnings. Author: Vincent Privat #3278
  • Create web-page with instructions: how to create Javadoc Check. Author: Baratali Izmailov, Roman Ivanov #410
  • corrected alphabetical order of the checks. Author: Claus Schrammel #3263
  • CommitValidationTest.testCommitMessageHasSingleLine to support github default format. Author: rnveach #3266
  • XDoc Config: create unit test to verify property types and default values. Author: rnveach #3187

Release 6.19

Breaking backward compatibility:

  • Aligned setters with String collection fields and broke old compatibility. Author: rnveach #3189

New:

  • new Check: SingleSpaceSeparator. Author: rnveach #3173
  • ReturnCount: special option for methods with void return type. Author: rnveach #3143
  • new CLI argument: provide abililty to show debug level of logs from checkstyle code. Author: rnveach #3086
  • Fix cache usage in presence of filters. Author: Andrei Selkin #407

Bug fixes:

  • CLI Javadoc tree printer doesn't show errors. Author: Baratali Izmailov #3219
  • Block Comments: CR lines not handled the same as LF lines. Author: rnveach #3225
  • IllegalTokenTextCheck and IllegalTokenCheck does not work with COMMENT_CONTENT token. Author: Roman Ivanov #3153
  • Indentation: throwsIndent should configure indentation of `throws` on next line. Author: rnveach #2763
  • UnusedImports: value javadoc tag does not reference imports. Author: Konstantin Lutovich #3157

Notes:

  • FileContents confused about number of lines in comment separated by '\r'. Author: rnveach #3066
  • Create web-page with instructions: how to create Javadoc Check. Author: Baratali Izmailov, Roman Ivanov #410
  • XDoc Config: create unit test to verify property types and default values. Author: rnveach #3187
  • Some PullRequests validation for commit mesage miss some cases. Author: rnveach #3168
  • AnnotationLocation: unclear behavior when annotation is among modifiers. Author: Roman Ivanov #3164
  • Documentation for ANT property config is incorrect. Author: Roman Ivanov #3119
  • Sevntu CS not running on all CS code. Author: rnveach, Roman Ivanov #3175
  • Update version of commons-collections to 3.2.2(from 3.2.1) to fix security vulnerability CVE-2015-6420. Author: akhil #3162
  • doc: Indentation property description become worded in the same way. Author: Roman Ivanov

Release 6.18

New:

  • Make CLI option to print full parsing tree (java + comments + javadoc comments). Author: Baratali Izmailov #3040
  • Add the ability to validate language codes by TranslationCheck. Author: Andrei Selkin #2969
  • EmptyLineSeparator to check empty lines inside methods. Author: Vladislav Lisetskiy #2944

Bug fixes:

  • NullPointerException in FinalLocalVariableCheck with Lambdas. Author: rnveach #3144
  • Serious performance problem in All Javadoc Check that are based on ANTLR parser. Author: rnveach #1064
  • CommentsIndentation Check - False Positive at End-of-Method. Author: Vladislav Lisetskiy #2998
  • Indentation: fix line wrap hanlding. Author: rnveach #2950
  • Indentation module regression in 6.16 and 6.17.. Author: rnveach #3103
  • NPE in AnnotationLocationCheck.hasAnnotations. Author: rnveach #3106
  • Execution of checkstyle audit failed caused by inherited javadoc tag. Author: rnveach #3065
  • AvoidEscapedUnicodeCharacters: Tail comment check failed if there's tabs before tail comment.. Author: Vladislav Lisetskiy #3005
  • FinalLocalVariable: false positive when variable is assigned multiple times. Author: Andrei Selkin #3006
  • Support for LAMDA token in WhitespaceAround check. Author: Vladislav Lisetskiy #2924

Notes:

  • maven-site-plugin:3.5 has problem to build our website. Author: Vladislav Lisetskiy, Roman Ivanov #2966
  • RegexpOnFilename example from documentation does not work on checkstyle source. Author: rnveach #3085
  • Create web-page with instructions: how to create Javadoc Check. Author: Baratali Izmailov #410
  • IndentationCheckTest: 'exp' in input files are out of sync with test. Author: rnveach #3105
  • Some redundant messages.. Author: rnveach #3000
  • doc: added Codacy to the list of active tools. Author: José Castro
  • Fix all issues for Java found by Codacy static analysis tool. Author: Andrei Selkin #2271
  • Use Distelli CI for testing of Javadoc Checks. Author: Baratali Izmailov, Roman Ivanov #2825
  • doc: DesignForExtension documentation is extended to warn user about possible misusage of this Check. Author: Roman Ivanov
  • Fund raising pages for checkstyle. Author: Roman Ivanov #3057
  • Use DatatypeConverter#printHexBinary to convert byte array to hex String in PropertyCacheFile. Author: Andrei Selkin #3093
  • SSLHandshakeException exception during linkcheck-maven-plugin . Author: Roman Ivanov #3080
  • Speed up google_check validation test. Author: Vladislav Lisetskiy #3070
  • Strive for 100% line coverage for java grammar. Author: rnveach #2973

Release 6.17

Breaking backward compatibility:

  • Add 'baseName' option and remove 'basenameSeparator' option of TranslationCheck. Author: Andrei Selkin #2204

New:

  • Make CLI option to be able to print Javadoc tree as plain text. Author: Baratali Izmailov #652
  • java9: try structure is not parsable when only name is used. Author: Roman Ivanov #3025
  • All messages translated to Chinese. Author: ybbpgfjtey #3001
  • RequireThis: new option validateOnlyOverlapping. Author: Andrei Selkin #2362

Bug fixes:

  • Bad german translation of summary.first.sentence. Author: Christian H. Kuhn #3013
  • Ignored file extensions will output unterminated <file> tags in XML. Author: idarmans #3022
  • NPE when running CS with cache with Maven plugin using NewlineAtEndOfFile. Author: Vladislav Lisetskiy #2218
  • Exception when using method reference in lamba "Class<?>[]::new". Author: Ilja Dubinin #2729
  • ClassNotFoundException when using inherited exception (regression to issue #1192 fix). Author: Roman Ivanov #3008

Notes:

  • doc: extending Rationale of NewlineAtEndOfFile with example. Author: Roman Ivanov
  • Fund raising pages for checkstyle. Author: Roman Ivanov #3057
  • java8: Create compilable test inputs with all possible cases for method references. Author: rnveach #2968
  • upgrade equalsverifier to version 2.0. Author: Vladislav Lisetskiy #3035
  • remove dependency to commons-lang3 library. Author: Rasmus Kaj #2428
  • reenable two sevntu checks. Author: Vladislav Lisetskiy #3042
  • Use Collections.addAll() instead of adding elements individually. Author: Baratali Izmailov #625
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.ant. Author: Vladislav Lisetskiy, Roman Ivanov #1487
  • Localed UTs are failing at CheckstyleAntTaskTest.testXmlOutput. Author: Roman Ivanov #3023
  • Strive for 100% line coverage for java grammar. Author: rnveach #2973

Release 6.16.1

Bug fixes:

  • fix TokenTypes compatibility problems between 6.15 and 6.16. Author: rnveach #2997
  • Allow JUnit ClassRule to be public. Author: Andrej Vano #2987
  • FinalParameters should not warn for non-final parameters of native methods . Author: rnveach #2981

Notes:

  • Revert "Issue #2973: removed unused FLOAT_SUFFIX from java.g". Author: Roman Ivanov
  • all rows in coerage table google_style.html shoudl have anchor. Author: rnveach #2975
  • Strive for 100% line coverage for java grammar. Author: rnveach #2973

Release 6.16

Breaking backward compatibility:

  • Move Treewalker cache to Checker. Author: Andrei Selkin #569

New:

  • Make CLI option to be able to print Javadoc tree as plain text. Author: Baratali Izmailov #652
  • copy Check class to AbstractCheck class to let deprecate Check class. Author: rnveach, Roman Ivanov #2551
  • Print parse tree from CLI to terminal. Author: Vladislav Lisetskiy #2638

Bug fixes:

  • Skip type annotations from validation of ModifierOrderCheck. Author: Andrei Selkin #903
  • Probable typo in com.puppycrawl.tools.checkstyle.checks.blocks.RightCurlyCheck. Author: Andrei Selkin #2762
  • Indentation check reports some incorrect indentation levels on errors. Author: rnveach #2941
  • 6.15 complains about missing @return tag in a overridden method. Author: Vladislav Lisetskiy #2869
  • Nesting Checks in each other in config does not produce any error. Author: rnveach #2773
  • Forbid multiple violation for the same line in IndentaitonCheck. Author: liscju #676
  • LeftCurly not working correctly with lambdas. Author: liscju #2818
  • Duplicate error message for static final field in DeclarationOrder check. Author: liscju #1048
  • Translation Check: wrong support for resources with language, country, variant. Author: Andrei Selkin #2251
  • Checkstyle internal exceptions lack contextual information. Author: Andrei Selkin #2285
  • Changed semantics of PropertyExpander. Author: Petr Hejl #2886
  • Indentation properties not applied properly to lambdas. Author: rnveach #281
  • VisibilityModifier.allowPublicImmutableFields should allow public immutable fields in enums. Author: Vladislav Lisetskiy #2887
  • FinalClass is over aggressive when extending happen inside class. Author: liscju #2822
  • WhitespaceAround should have an option allow double-brace initialization. Author: liscju #2838
  • Exception when using method reference in lamba "Class<?>[]::new". Author: Ilja Dubinin #2729
  • Wasted disk access. Author: rnveach #2103
  • JavadocType doesn't report unused param tag. Author: liscju #2811
  • DeclarationOrder check enforces order that is not possible. Author: Andrei Selkin #924
  • Tabs are wrongly handled in Indentation check when line is wrapped. Author: rnveach #2795
  • custom javadoc inline tags cause parse error. Author: rnveach #1184
  • JavadocStyleCheck: String index out of range: -1. Author: rnveach #2788

Notes:

  • Strive for 100% line coverage for java grammar. Author: rnveach #2973
  • Refactor Comments AST Test. Author: rnveach #2396
  • doc: example to checkstyle's Ant configuration was added to anttask.html. Author: Roman Ivanov
  • Travis: add xwiki project to regeression testing. Author: Vladislav Lisetskiy #2938
  • PMD: resolve problems from DefaultPackage rule. Author: Vladislav Lisetskiy, Roman Ivanov #957
  • doc: Improve javadoc of parameters of AnnotationLocationCheck.. Author: liscju
  • fix java8 compilation broblems in Inputs. Author: rnveach #2904
  • Create web-page with instructions: how to create Javadoc Check. Author: Baratali Izmailov #410
  • PMD ExceptionAsFlowControl: Do not use exceptions as flow control to create objects in PackageObjectFactory. Author: Vladislav Lisetskiy #1159
  • ant with failOnViolation="false" will FAIL. Author: Vladislav Lisetskiy #2185
  • Checkstyle cannot be built using JDK9 as tools.jar has been dropped . Author: Peter Wong #2905
  • CS' java 8 code isn't compilable. Author: rnveach #2880
  • doc: NPath documentation is extended. Author: Roman Ivanov
  • Refactor gui package. Author: Vladislav Lisetskiy #2609
  • spelling: Correct spelling for fast-forward-merge.sh. Author: Thomas Paul Mann
  • UTs should be launched in default locale. Author: Vladislav Lisetskiy #2783
  • Disallow usage of java.util.Stack and java.util.Vector in code. Author: Andrei Selkin #2859

Release 6.15

New:

  • new Check: RegexpOnFilename. Author: rnveach, Roman Ivanov #2546
  • SuppressionFilter: new option 'optional' to allow skip SuppressionFilter if config file does not exist. Author: liscju #1002
  • Add possibility to specify a unique ID to all Regexp checks. Author: Andrei Selkin #1008

Bug fixes:

  • StringIndexOutOfBoundsException in Indentation check. Author: rnveach #2645
  • AbstractJavadocCheck should process only doc comments placed before class, interface, constructor, method, or field declarations. Author: Baratali Izmailov #325
  • SummaryJavadoc: false "end with a period" reports when inheritDoc is used . Author: rnveach #2805
  • JavadocMethod: allowedAnnotations hides bad javadocs. Author: rnveach #2806
  • FinalLocalVariable doesn't report variable when condition separates 2 assignments. Author: Bhavik Patel #2807
  • Config of Google Style does not include InterfaceTypeParameterName check. Author: Andrei Selkin #2792
  • Indentation on annotation parameters is wrong. Author: liscju #1349
  • OneStatementPerLine check and lambda expression. Author: liscju #2688
  • Gui should have a splitter bettween tree and code and prefered columns size. Author: liscju #2767
  • RequireThis reports false-positive when an instance method is overloaded with a static one. Author: Vladislav Lisetskiy #2539

Notes:

  • Add checkstyle messages to xdocs. Author: rnveach #2836
  • Setup 'Circle CI' to run checkstyle-tester project on JDK sources. Author: Vladislav Lisetskiy, Roman Ivanov #2815
  • Enforce Checks of sevntu.checkstyle (released version) over Checkstyle source code. Author: Yasser Aziza #2661
  • Use Codeship CI for testing. Author: Roman Ivanov #2727
  • Refactor gui package. Author: Vladislav Lisetskiy, Roman Ivanov #2609
  • doc: Add sbt-checkstyle-plugin to list of active tools. Author: Andrew Johnson

Release 6.14.1

Bug fixes:

  • JavaNCSSCheck: unknown format type: numero inteiro. Author: Roman Ivanov #2728
  • StringIndexOutOfBoundsException in getCheckShortName method of AuditEventDefaultFormatter. Author: Andrei Selkin #2780

Notes:

  • spelling: fix typo in AuditEventFormatter class name. Author: Andrei Selkin

Release 6.14

Breaking backward compatibility:

  • Remove parameters validation from LocalVariableName. Author: Andrei Selkin #2549

New:

  • Print name of the Check after printing violation message. Author: Andrei Selkin #2666
  • WhitespaceAround should have an allowEmptyLambda parameter. Author: liscju #2603
  • Add ENUM_CONSTANT_DEF support to MethodParamPad . Author: Andrei Selkin #2505
  • new CatchParameterName Check: to validate names of catch-block parameters only. Author: Michal Kordas #2616

Bug fixes:

  • FinalLocalVariable false-positive in SWITCH. Author: Bhavik Patel #2405
  • Typo in Javadoc tag name. Author: Baratali Izmailov #2376
  • Extend parsing rule of custom Javadoc tag name. Author: Baratali Izmailov #461
  • Nesting Checks in each other in config does not produce any error. Author: Roman Ivanov #2773
  • RequireThis check message is not clear enough. Author: Vladislav Lisetskiy #2239
  • OneStatementPerLine: false match with try-with-resources. Author: Jon Bake #2211
  • Performance issue in UnusedImportsCheck. Author: Vladislav Lisetskiy #2631
  • Remove unused message. Author: Vladislav Lisetskiy #2756
  • Create directory structure needed to store cache file. Author: Andrei Selkin #2575
  • AbbreviationAsWordInName incorrectly reports constants in annotations. Author: Abram Thielke #2694
  • Inconsistent violations for NeedBraces/allowSingleLineStatement. Author: liscju #2291
  • ParameterNameCheck: NullPointerException over checkstyle's input file. Author: Andrei Selkin #2678
  • @SuppressWarnings annotation does not suppress UncommentedMain. Author: Andrei Selkin #2646
  • UncommentedMain does not rise violations if main method has varargs as parameters. Author: Vladislav Lisetskiy #2647
  • Fix 'tokens' property in JavadocStyle check. Author: Thomas Jensen #2644
  • GenericWhitespace: violation on generic like '...... instanceof Type<?>;'. Author: liscju #2633
  • AbbreviationAsWordInName: update message to print name that violates a format. Author: liscju #2640

Notes:

  • Use Nexus Staging Maven Plugin for release process. Author: Roman Ivanov #2619
  • Enforce Checks of sevntu.checkstyle (released version) over Checkstyle source code. Author: Andrei Selkin #2661
  • Make UT 'testNonAccessibleFile' locale independent . Author: Andrei Selkin #2749
  • Refactor gui package. Author: Vladislav Lisetskiy #2609
  • Make DetectorOptions as final and immutable. Author: Andrei Selkin #2523
  • Fix additional issues reported by IntelliJ IDEA inspections in Checkstyle code. Author: Roman Ivanov #2080
  • conf: update guava version to 19.0. Author: Roman Ivanov
  • doc: Correct regexp in configuration example for ParameterNameCheck. Author: Andrei Selkin
  • doc: Add example for ParameterName into xdoc. Author: Andrei Selkin
  • doc: Fix check name in CatchParameterName xdoc. Author: Andrei Selkin
  • doc: Update comment in google_checks.xml. Author: Michal Kordas
  • Reorganize token sets in UncommentedMain. Author: Vladislav Lisetskiy #2671
  • refactor internal tests. Author: rnveach #2625
  • Update configuration for XXXXName Checks at checkstyle_checks.xml. Author: Andrei Selkin #2604
  • Make validation of expected warnings in integration tests more strict. Author: Vladislav Lisetskiy #2658
  • spelling: fix typo in word 'Existing' in google_style.xml. Author: liscju
  • Fix ParseTreeBuilder's variable names to be more readable. Author: Baratali Izmailov #2642

Release 6.13

Breaking backward compatibility:

  • Remove access to undocumented check properties. Author: rnveach #2451

New:

  • ParameterName: new option to skip methods with Override annotation. Author: Andrei Selkin #2290

Bug fixes:

  • False negative in RequireThis check. Author: Vladislav Lisetskiy #2240
  • Checkstyle throws NumberFormatException on Japanese locale when sizes and metrics Checks are used. Author: Takahashi Eikou #2601
  • EmptyLineSeparator check does not validate newlines before class and after last method. Author: Vladislav Lisetskiy #2067
  • FallThroughCheck handles finally incorrectly. Author: Vladislav Lisetskiy #1438
  • EqualsAvoidNull check should сheck String concatenations. Author: Vladislav Lisetskiy #1930

Notes:

  • minor: remove maven-failsafe-plugin from linkcheck excludes, since link was fixed. Author: Andrei Selkin
  • minor: build-helper-maven-plugin version bump to 1.10. Author: Roman Ivanov
  • adjust AbbreviationAsWordInName in checkstyle_checks.xml to catch unexpected abbreviations. Author: Roman Ivanov #2639
  • Fix additional issues reported by IntelliJ IDEA inspections in Checkstyle code. Author: Michal Kordas #2080
  • minor: fixed improper put that should be get. Author: rnveach
  • Code review of CommentsIndentationCheck.java. Author: Andrei Selkin #2530
  • Remove drag&drop from GUI. Author: Ilja Dubinin #2608
  • create HTML web page to describe how to open issues against Checkstyle. Author: Michal Kordas, Roman Ivanov #2344
  • Update JGit to 4.1.1.201511131810-r. Author: Michal Kordas #2607
  • Make methods private in RequireThisCheck. Author: Vladislav Lisetskiy #2605
  • Tests for validating commit message should not allow period at the end of commit message. Author: Andrei Selkin #2590
  • doc: Correct xdoc/javadoc for ParameterNameCheck. Author: Andrei Selkin
  • unify IT test code. Author: rnveach #2589
  • minor: separated tests so one subject per file. Author: rnveach
  • Deactivate 'allowSamelineSingleParameterlessAnnotation' property of AnnotationLocation in Checkstyle config. Author: Michal Kordas #2581
  • Create test for checkstyle-X.X-all.jar on Travis. Author: Roman Ivanov #2516
  • Update slf4j-simple to 1.7.13. Author: Michal Kordas #2586
  • Update FindBugs Maven Plugin to 3.0.3. Author: Michal Kordas #2585
  • PMD: resolve problems from DefaultPackage rule. Author: Michal Kordas #957
  • minor: fixed wrong variable usage in AbstractOptionCheck. Author: rnveach
  • Remove usage of System.out.println in IT resources. Author: Michal Kordas, Roman Ivanov #2541
  • Unify naming of all files with IT inputs. Author: rnveach #2540
  • UT to validate google/sun style xdocs. Author: rnveach #2557
  • Unify naming of all files with test inputs. Author: rnveach, Roman Ivanov #2161
  • spelling: fix strange japanese.. Author: Nobuyuki-Inaba
  • Improve documentation for CovariantEquals check. Author: Vladislav Lisetskiy #1031

Release 6.12.1

New:

  • Add 'ignoreOverridden' option to skip methods with @Override annotation. Author: Andrei Selkin #2290

Bug fixes:

  • Fix RedundantModifier at final methods in anonymous class. Author: rnveach #2122
  • Performance-Optimization: Do not recompile Pattern for each file/line. Author: Fabian Loewner #2495
  • Fix skipping validation for non empty classes when allowEmptyTypes is true. Author: Andrei Selkin #2480
  • NeedBraces: allow no body loops. Author: Andrei Selkin #2436
  • Make 'processJavadoc' property 'true' by default. Author: Vladislav Lisetskiy #1627
  • spelling: fix strange japanese. Author: Nobuyuki-Inaba #2524

Notes:

  • removed excess hierarchy from several Checks. Author: rnveach #2451
  • deprecated AbstractIllegalCheck. Author: rnveach #2451
  • removed xdoc google style links to master. Author: rnveach #2519
  • removed xdoc links to master. Author: rnveach #2519
  • added xdoc example url validation. Author: rnveach #2517
  • added xdoc check order validation, all xdoc are sorted. Author: rnveach #2292
  • validate existence of config file sooner. Author: rnveach #1267
  • reorganized checkstyle_checks.xml. Author: rnveach #2526
  • Describe token sets in 'writing checks' section in xdoc. Author: Vladislav Lisetskiy #2346
  • Update System Rules to 1.13.0. Author: Michal Kordas #2513

Release 6.12

Bug fixes:

  • CommentsIndentationCheck doesn't report errors at end of block. Author: Andrei Selkin #2078
  • Fix NoWhitespaceAfterCheck. Author: attatrol #1013
  • Fix NPE in EqualsAvoidNull check. Author: Vladislav Lisetskiy #2474
  • Fix FinalLocalVariable false-negative. Author: Vladislav Lisetskiy #1551
  • Exclude lines with package in LineLength check. Author: rnveach #2482
  • fixed NPE in NeedBraces.isSingleLineFor. Author: rnveach #2283
  • JavaDocMethod: Exception thrown for incomplete @return tag if next line is empty. Author: John Erik Halse #2398
  • Fix reusability of JavaDoc checks. Author: Björn Kautler #2326
  • Fixed blank line indentification for EmptyLineSeparator check. Author: Pavel Baranchikov #2266
  • Support for @SuppressWarnings("all").. Author: Stéphane Galland #2275
  • Make SuppressWarningsFilter case-insensitive. Author: Michal Kordas #2202
  • Fix NPE in ModifiedControlVariable on SuppressWarnings. Author: Michal Kordas #2327
  • Do not recognize '/**/' as valid Javadoc. Author: Michal Kordas #2387
  • Make JavadocType check customizable by list of tokens. Author: Michal Kordas #2388
  • Fix FALSE positive in JavadocStyle check on inheritDoc tag. Author: Michal Kordas #2411
  • Ignore missing Javadoc for 'serialVersionUID' fields. Author: Michal Kordas #792
  • Exclude lines with imports in LineLength check. Author: Michal Kordas #2433
  • IllegalTypeCheck, requiredTokens is set to IMPORT only. Author: Roman Ivanov #2415
  • CLI should print a file name where exception is happen. Author: Roman Ivanov #2109
  • LeftCurly: add Anonymous class to allowed tokens. Author: Roman Ivanov #2431

Notes:

  • Deploy snapshots versions in CI. Author: WonderCsabo #2167
  • require all filters appear in checkstyle_checks.xml. Author: rnveach #2268
  • removed xdoc of CustomImportOrder.samePackageMatchingDepth. Author: rnveach #2453
  • added xdoc check validation. Author: rnveach #2442
  • Run CheckStyle on Full Test Directory. Author: rnveach #2421
  • fixed invalid xml examples in xdocs. Author: rnveach #2425
  • flush audit outputs sooner. Author: rnveach #2085
  • unify test input locations for whole project. Author: rnveach #2161
  • removed excess hierarchy from few Check. Author: rnveach #2451
  • Bunch of refactoring and code optimizarion. Author: rnveach
  • Update list of missing tools. Author: Dawid Nejman #1238
  • Sonarqube found problems in Checkstyle. Author: Ilja Dubinin #46
  • Replaced outdated link for bamboo-checkstyle-plugin. Author: Dawid Nejman #1238
  • 'forbiddenapis' plugin added to maven config. Author: Ruslan Diachenko #1217
  • Update list of related Tools. Author: Dawid Nejman #1238
  • skip all analysers during deploy. Author: Roman Ivanov #2167
  • usage of error-prone plugin is commented out till problems with Eclipse resovled. Author: Roman Ivanov #2160
  • Inconvenience to debug UTs after recent changes in BaseCheckTestSupport. Author: Roman Ivanov #2434
  • Fix PMD violations for ShortVariable rule. Author: Roman Ivanov #985
  • PMD violations PreserveStackTrace. Author: Roman Ivanov #996
  • PMD violations EmptyMethodInAbstractClassShouldBeAbstract. Author: Roman Ivanov #997
  • PMD violation ConfusingTernary. Author: Roman Ivanov #974
  • rename CheckUtils.isVoidMethod to isNonVoidMethod. Author: Roman Ivanov #2273
  • Decrease visibility of package-private methods. Author: Michal Kordas #957
  • Rename tests to match tested class name with Test suffix. Author: Michal Kordas #2215
  • Fix all issues for Java found by Codacy static analysis tool. Author: Michal Kordas #2271
  • Fix missing code coverage. Author: Michal Kordas #2243
  • Fix typos in code. Author: Michal Kordas #2080
  • Update Maven Shade Plugin to 2.4.2. Author: Michal Kordas #2464
  • Update Maven Surefire and Failsafe plugins to 2.19. Author: Michal Kordas #2394
  • Update Maven Assembly Plugin to 2.6. Author: Michal Kordas #2350
  • Update JGit to 4.1.0.201509280440-r. Author: Michal Kordas #2324
  • Update PowerMock to 1.6.3. Author: Michal Kordas #2293

Release 6.11.2

Bug fixes:

  • Make ConfigurationLoader.loadConfiguration public. Author: Michal Kordas #2260

Notes:

  • Create UT to check that all checkstyle modules have xdocs. Author: Andrei Selkin #819
  • Split config.html into few pages. Author: Andrei Selkin #819
  • Create xdoc documentation for FileContentsHolder. Author: Andrei Selkin #819
  • Add GENERIC_START and GENERIC_END into list of acceptable tokens in xdocs of NoWhiteSpaceAfter and WhiteSpaceAround. Author: Andrei Selkin #2258
  • Add COMMA into list of acceptable tokens in xdocs of NoWhiteSpaceBefore. Author: Andrei Selkin #2259
  • minor refactoring, helper method was added. Author: Aleksandr Ivanov #2231
  • fixed jgit resource leaks in commit validation. Author: rnveach
  • Ilja Dubinin was added as developer. Author: Roman Ivanov
  • Add WILDCARD_TYPE into list of acceptable tokens in xdocs of WhitespaceAround. Author: Andrei Selkin

Release 6.11.1

Bug fixes:

  • Add lambda support to indentation check (see #281). Author: Pieter Noordhuis #1548

Notes:

  • Coverage has been increased to 100% in 'checks' package. Author: Ilja Dubinin #1290
  • Resolve Doxia Site Renderer warnings. Author: Vladislav Lisetskiy #905
  • Update plexus-compiler-javac-errorprone to 2.6. Author: Michal Kordas #2247
  • Update JGit to 4.0.2.201509141540-r. Author: Michal Kordas #2246
  • Fix release failure due to unknown Javadoc tag. Author: Michal Kordas #2245

Release 6.11

Breaking backward compatibility:

  • Restore 'url' option for ImportControl. Author: Aleksandr Ivanov #2231

New:

  • New option 'requiredTranslations' to Translation check. Author: Andrei Selkin #2166
  • New option 'switchBlockAsSingleDecisionPoint' for CyclomaticComplexityCheck. Author: Andrei Selkin #2029

Bug fixes:

  • Fix java grammar for unicode escape. Author: rnveach #157
  • Add basic thread-safety to Javadoc checks. Author: Michal Kordas #2237
  • Fixed NPE in FinalLocalVariableCheck. Author: rnveach #1257
  • NoWhitespaceAfter, NoWhitespaceBefore and WhitespaceAround don't support GENERIC_START nor GENERIC_END tokens. Author: Roman Ivanov #2219
  • Add support of lambdas which parameter types are omitted for HiddenFieldCheck. Author: Andrei Selkin #2175
  • Fix RedundantModifier check at final classes in interfaces. Author: Michal Kordas #2203
  • Print missing cause of exception to console on error. Author: Michal Kordas #2213
  • Fix not working excludeScope in JavadocMethod check. Author: Michal Kordas #2205
  • Fix RedundantModifier check to recognise inner classes accessible from global scope. Author: liscju #1537
  • CustomImportOrderCheck rule priorities. Author: Aleksandr Ivanov #1273
  • Fix false negative in AtclauseOrder check. Author: Vladislav Lisetskiy #2095
  • Fix IllegalStateException in JavadocTypeCheck. Author: Vladislav Lisetskiy #2112
  • Allow COMMA again in NoWhiteSpaceBefore. Author: Roman Ivanov #2089
  • Fix HiddenField false positive violations for anonymous classes. Author: Andrei Selkin #382
  • Added support of logging severity for all audit events. Author: Andrei Selkin #67
  • Allow @return tags from annotation types. Author: Phillip Webb #2141
  • Fixed redundant modifier false positive for abstract classes in interfaces. Author: Andrei Selkin #1833
  • Ignore classes nested in interaces or annotations in Final Class Check. Author: Vladislav Lisetskiy #2064
  • Detect nested enums marked as static in RedundantModifier check. Author: Vladislav Lisetskiy #1530
  • Fixed NPE in MutableExceptionCheck.isExtendedClassNamedAsException. Author: Andrei Selkin #1903
  • Change message in SummaryJavadocCheck. Author: Vladislav Lisetskiy #2062

Notes:

  • Update HTML documentation to describe all options for all checks. Author: Andrei Selkin #2169
  • Make link for each row of Google style coverage table. Author: Vladislav Lisetskiy #1005
  • Add docs about while idiom to InnerAssignment check. Author: Michal Kordas #2230
  • Fix additional issues reported by IntelliJ IDEA inspections in Checkstyle code. Author: Michal Kordas #2080
  • SuppressionsLoaderTest UT was stabilized. Author: Ruslan Diachenko #2191
  • ROOT locale added in checker creation for UT; travis updated with a new check. Author: Ruslan Diachenko #2193
  • Update Error Prone to 2.0.5. Author: Michal Kordas #2216
  • Add "Input" prefix to test input files. Author: Michal Kordas #2161
  • Create MacOS matrix item for Travic-CI. Author: Roman Ivanov #2210
  • POM still references nexus.codehaus.org repo. Author: Roman Ivanov #2200
  • Make coverage 100% for TokenTypesDoclet. Author: Vladislav Lisetskiy #2126
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.checks. Author: Ilja Dubinin #1290
  • Use StandardCharsets and get rid of UnsupportedEncodingException. Author: Michael Osipov #2034
  • Remove errors from Maven output in TokenTypesDocletTest. Author: Vladislav Lisetskiy #2195
  • Anchor naming checks in google_style.xml. Author: Vladislav Lisetskiy #2108
  • AbstractHeaderCheck coverage has been increased to 100%. Author: Ilja Dubinin #1292
  • Sonarqube found problems in Checkstyle. Author: Ilja Dubinin #46
  • CopyPasted ITs. Author: Vladislav Lisetskiy #2074
  • Update Maven Wagon to 2.10. Author: Michal Kordas #2183
  • Update Maven Project Info Reports Plugin to 2.8.1. Author: Michal Kordas #2182
  • Split all modules to be separate at config_naming.html. Author: Vladislav Lisetskiy #2108
  • Remove already fixed exclusion from PMD configuration. Author: Michal Kordas #961
  • Add SLF4J binding required by JGit. Author: Michal Kordas #2129
  • Configure compiler to use Error Prone for non-input sources. Author: Michal Kordas #2160
  • Rearrange POM to use canonical ordering. Author: Michal Kordas #809
  • Unify naming files with test inputs. Author: Michal Kordas #2161
  • Create wide message for CheckstyleException in PackageObjectFactory. Author: Andrei Selkin #759
  • Fix compiler warnings in input files. Author: Michal Kordas #2130
  • Updated checkstyle_checks.xml to use ParameterNumber in default configuration. Author: Andrei Selkin #215
  • Extended Eclipse user guide for newbies of Checkstyle. Author: Andrei Selkin #606
  • Fix exception at NeedBraces check in enhanced for loops. Author: Michal Kordas #2135
  • Make test for FileTabCharacter locale and OS independent. Author: Michal Kordas #2137
  • Add inspection scope profile for IDEA analysis. Author: Michal Kordas #2131
  • Fix issues reported by IntelliJ IDEA inspections in Checkstyle code. Author: Michal Kordas #1555
  • Added tests for validating commit message. Author: liscju #937
  • Fix StringIndexOutOfBoundsException. Author: Vladislav Lisetskiy #2094
  • Activated TranslationCheck in checkstyle_checks.xml. Author: Andrei Selkin #2092
  • Fix Javadoc generation failure after addition of new tag. Author: Michal Kordas #2106
  • Add Codacy badge to main page. Author: Michal Kordas #2054
  • Update all Checks html docs with link to hosted configurations. Author: Vladislav Lisetskiy #1214
  • Create separate web page for old release notes. Author: Vladislav Lisetskiy #2063
  • Extended javadoc/xdoc for RightCurlyCheck. Author: Andrei Selkin #1900
  • Added UT which validates that all checks which exist in classpath are referenced in checkstyle_checks.xml. Author: Andrei Selkin #945
  • Add suppression for IntelliJ IDEA inspection. Author: Michal Kordas #2065
  • Refactoring of TreeWalker to increase readability. Author: Andrei Selkin
  • Corrected javadoc/xdoc for IllegalTypeCheck. Author: Andrei Selkin

Release 6.10.1

Bug fixes:

  • broken compatibility with maven-checkstyle-plugin:2.15 at checkstyle:6.10. Author: Roman Ivanov #2065

Release 6.10

Breaking backward compatibility:

  • 'ignoreMethods' option has been removed from DeclarationOrderCheck. Author: Baratali Izmailov #2031
  • fix typos in properties names. Author: Michal Kordas in scope of #1555
  • Rethrow all exceptions further to caller of Checker. Author: Ruslan Diachenko #1304
  • Improve exception handling in CheckstyleAntTask class. Author: Ruslan Diachenko #1245

New:

  • Added new Check: CommentsIndentationCheck. Author: Andrei Selkin #333

Bug fixes:

  • fixed problem with lexical order in CustomImportOrder. Author: Aleksandr Ivanov #1469
  • Extended messages for CustomImportOrder. Author: Aleksandr Ivanov #1648
  • Changed SAME_PACKAGE rule for CustomImportOrderCheck. Author: Aleksandr Ivanov #1262
  • reimplement EqualsAvoidNullCheck. Author: Vladislav Lisetskiy #1377
  • enforce all checks to override getRequiredTokens, getAcceptableTokens methods. Author: Andrei Selkin #655
  • IllegalType: add 'validateAbstractClassNames' option. Author: Andrei Selkin #1805
  • Marked 'maxLineLength' as '@Deprecated' at LeftCurlyCheck. Author: Andrei Selkin #965
  • Detect public constructors in non-public classes in RedundantModifier. Author: liscju #1537
  • Fixes logic bug in gui ParseTreeInfoPanel making linesToPositions assign lines to inappropriate positions. Author: liscju
  • Fix RightCurlyCheck with same option not to rise expression in single-line blocks. Author: liscju #1416
  • Fix UnsupportedOperationException in GUI. Author: Michal Kordas #1718

Notes:

  • Fix issues reported by IntelliJ IDEA inspections in Checkstyle code. Author: Michal Kordas #1555
  • Fix violations reported by Checkstyle checks. Author: Baratali Izmailov , Ruslan Diachenko #1566
  • Sonarqube found problems in Checkstyle. Author: Ilja Dubinin #46
  • Enable Checkstyle checks for 'gui' package. Author: Roman Ivanov #1678
  • Corrected links on website. Author: Andrei Selkin #751
  • Eclipse warnings about unused fields have been fixed. Author: Baratali Izmailov #1243
  • Simplify overqualified CSS element. Author: Michal Kordas #2054
  • Remove empty CSS rule. Author: Michal Kordas #2054
  • config: maven-enforcer-plugin and equalsverifier are updated to newest version. Author: Roman Ivanov
  • Make coverage 100% for some classes at package com.puppycrawl.tools.checkstyle.checks. Author: Ilja Dubinin #1290
  • Utils classes have been moved to utils package, new classes CommonUtils and TokenUtils. Author: Ilja Dubinin #1898
  • Use EqualsVerifier to test equals and hashCode in IntMatchFilter. Author: Michal Kordas #1088
  • Removed suppression for SwitchDensity rule from PMD. Author: Andrei Selkin #973
  • Remove obsolete entry from PMD configuration. Author: Michal Kordas #877
  • Remove unused Coveralls plugin from pom.xml. Author: Roman Ivanov #1881
  • Update ANTLR to 4.5.1-1. Author: Roman Ivanov #1880
  • Update EqualsVerifier to 1.7.4. Author: Roman Ivanov #1879
  • replace deprecated method in HiddenCheckField. Author: Vladislav Lisetskiy
  • Created JaCoCo profile of pom.xml. Author: Andrei Selkin #1173
  • Update Maven FindBugs Plugin to 3.0.2. Author: Michal Kordas #1714
  • Fixed typo in JavadocMethod's examples xdocs. Author: Andrei Selkin #1668
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.checks.regexp. Author: Ilja Dubinin #1010
  • Fix headers for classes in 'gui' package. Author: Michal Kordas #945
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.checks.coding.. Author: Baratali Izmailov #1293
  • Resolved javadoc problems that reported by java 8. Author: Andrei Selkin #291.
  • Minor typo fixes. Author: Dave Moloney

Release 6.9

Breaking backward compatibility:

New:

  • New option for MagicNumber: constantWaiverParentToken. Solution to not detected properly numbers. Author: Bhavik Patel #1266

Bug fixes:

  • Fixed NPE in MultipleVariableDeclarationsCheck Issue. Author: Baratali Izmailov #1539
  • Added column number into violation messages for RightCurlyCheck and LeftCurlyCheck. Author: Andrei Selkin #1511
  • Fix BooleanExpressionComplexity check violations in Checkstyle code. Author: Andrei Selkin #1052
  • Add new option for RightCurlyCheck. Author: Andrei Selkin #1019
  • Updated configuration for Eclipse Mars in xdoc. Author: Aleksandr Ivanov #1464
  • updated Xdoc and Javadoc for ImportOrder and CustomImportOrder. Author: Aleksandr Ivanov #1464
  • Remove from dependecies deprecated jar commons-beanutils-core.jar. Author: Roman Ivanov #1471
  • RedundantModifier for inner classes and enum constructors. Author: liscju #1242
  • Add missing xdocs for allowMultipleEmptyLines property of EmptyLineSeparatorCheck. Author: Andrei Selkin #881
  • Add setter for 'ignoreEnums' in LeftCurlyCheck. Author: Andrei Selkin #975
  • JavadocType does not check parameters in inner classes. Author: Pavel Baranchikov #1421
  • ImportOrderCheck. Fix separation for static imports. Author: Aleksandr Ivanov #1398
  • Fix for SuperClone and SuperFinalize checks reporting violations on native methods. Author: Vladislav Lisetskiy #1367
  • Fix FallThroughCheck fails on if with no else. Author: Andrei Selkin #1395
  • fix JavadocParagraph allows new line before the next paragraph. Author: Vladislav Lisetskiy #1332
  • Fix RegexpHeader causing exception with default config. Author: Andrei Selkin #1129
  • Fix OneStatementPerLine on multiple field initialization bug. Author: Andrei Selkin #1237
  • extend target list fo SuppressWarningsHolder. Author: Vladislav Lisetskiy #1158
  • provide human message for SuppressWarningsHolder. Author: Vladislav Lisetskiy #1158
  • Raising exception for CustomImportOrder.SAME_PACKAGE. Author: Aleksandr Ivanov #1282

Notes:

  • Enable CustomImportOrder. Author: Aleksandr Ivanov #1459
  • Add UniquePropertiesCheck into checkstyle_checks.xml. Author: Andrei Selkin #1129
  • Refactoring of FinalLocalVariableCheck to avoid 'fall through' violation. Author: Andrei Selkin #1395
  • Add Organize Imports instructions to site. Author: Aleksandr Ivanov #1448
  • Fixed compilation error for CustomImportOrder input file. Author: Aleksandr Ivanov #1470
  • ImportOrder enabled in configuration. Author: Aleksandr Ivanov #1448
  • Number of updates for. Author: Michal Kordas #1555
  • Fixed incorrect Google Java Style links. Author: Andrei Selkin #751
  • Refactoring of RightCurlyCheck. Author: Andrei Selkin #1511
  • Apply various improvements over Checkstyle test code. Author: Michal Kordas #1542
  • Apply various improvements over Checkstyle code. Author: Michal Kordas #1538
  • Remove unnecessary consecutive lines in Checkstyle code. Author: Michal Kordas #1534
  • Fix some SonarQube violations. Author: Michal Kordas #46
  • Enable NonEmptyAtclauseDescription check on Checkstyle code. Author: Michal Kordas #945
  • fix for UTs on Windows7 and do not conflict with WindowsServer. Author: Roman Ivanov #1496
  • Investigate UTs failure to MainTest on Windows. Author: Roman Ivanov #1510
  • fix for build problem in Idea on Windows. Author: Roman Ivanov
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.checks.metrics. Author: Ruslan Diachenko #1287
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.checks.regexp (partial fix). Author: Ilja Dubinin #1010
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.checks.blocks. Author: Ilja Dubinin #1291
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.checks.coding. Author: Baratli Izmailov #1293
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.checks.modifier. Author: Ruslan Diachenko #1286
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.checks.naming. Author: Ruslan Diachenko #1288
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.checks.whitespace. Author: Ruslan Diachenko #1289
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle. Author: Roman Ivanov #1294
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.api. Author: Roman Ivanov #1295
  • Make coverage 100% for Indentation check. Author: Michal Kordas #1295
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.checks.javadoc. Author: Michal Kordas #1308
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.filters. Author: Ruslan Diachenko #1296
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.checks.imports. Author: Alexander Ivanov #1128
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.checks. Author: Ilja Dubinin #1290
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.checks.header. Author: Ilja Dubinin #1292
  • CheckDocsDoclet.java was removed as it is not used in a project.. Author: Roman Ivanov
  • Import which produces error on MacOSX jdk has been deleted. Author: Ilja Dubinin
  • javadoc: deperecate overview.html and package.html support. Author: Roman Ivanov #1415
  • Make "private" methods "static" where possible. Author: Michal Kordas #46
  • new images were provided by our artist, new header for web site. Author: Roman Ivanov
  • BaseCheckTestSupport.verify fails on Windows. Author: WonderCsabo #1388
  • check for connection is done by our website URL, as resource file is there. That let pass test when sourceforge web site is down. Author: Roman Ivanov
  • Switch options reoganized for easier reading. Author: Aleksandr Ivanov #1376
  • add example for ConstantName in xdoc. Author: Vladislav Lisetskiy #1106
  • commented code was removed from CheckerTest. Author: Roman Ivanov
  • fix eclipse package declaration error in InputPackageDeclaration. Author: Vladislav Lisetskiy
  • Add Gradle to list of related tools Correct SonarQube name and links in same list. Author: Thomas Jensen
  • fix structure of site.xml. Author: Vladislav Lisetskiy #1341
  • Move tests which cause compilation problem in Eclipse 4.2.2 to non-compilable folder. Author: Andrei Selkin #1351
  • Fix integration test compilation error for Windows environment. Author: Michal Kordas #1342
  • Fix failing of ITs for OneStatementPerLineCheck. Author: Andrei Selkin #1348
  • surefire and failsafe plugins are moved above checkstyle validation to run before long checkstyle execution. Author: Roman Ivanov
  • add IT to validate google_checks config. Author: Vladislav Lisetskiy #1275
  • rename fields in ConfigurationBuilder and BaseCheckTestSupport. Author: Vladislav Lisetskiy
  • update build procedure to validate all XML files against their schemas. Author: Vladislav Lisetskiy #1275
  • Fix compilation error for Windows environment. Author: Michal Kordas #1342
  • Remove usage of deprecated methods from MainTest. Author: Michal Kordas #1325
  • Restore checkstyle validation on https://sonarqube.com. Author: Roman Ivanov #1319
  • Update Maven Shade Plugin, EqualsVerifier, antlr, system-rules and Maven PMD Plugin to latest versions. Author: Michal Kordas
  • system-rules, ant were updated to latest version. Author: Roman Ivanov
  • Removed all assert statements. Author: Aleksandr Ivanov #1298
  • Fix AbstractClassName Check on checkstyle code. Author: Bhavik Patel #945
  • Make Eclipse / m2e plugins generate valid projects. Author: Juan Martín Sotuyo Dodero

Release 6.8.2

Bug fixes:

  • Incorrect xml structure at google_checks.xml. Author: Vladislav Lisetskiy #1275

Release 6.8.1

Bug fixes:

  • Cannot use config file bundled in jar. Author: Roman Ivanov #1265
  • NullPointerException at java.util.regex.Pattern from com.puppycrawl.tools.checkstyle.checks.regexp.DetectorOptions.getPattern. Author: Michael Vorburger #1224
  • StackOverflow at java.util.regex.*. Author: Michael Vorburger #1221
  • StackOverflow in com.puppycrawl.tools.checkstyle.checks.regexp.MultilineDetector.findMatch. Author: Michael Vorburger #48
  • RightCurly: Curly brace '}' should be on line by itself not reported for method with annotation. Author: Andrei Selkin #1014

Release 6.8

Breaking backward compatibility:

  • Detect only label as illegal token in IllegalToken check, default token set is changed to TokenTypes.LABELED_STAT. Author: Michal Kordas #1162
  • Add possibility to configure targets for ParenPad check, LPAREN and RPAREN were removed from acceptable tokens. Author: Vladislav Lisetskiy #1189
  • Set default value of max property to 4 (from 1) for ThrowsCountCheck and update javadoc/xdoc. Author: Andrei Selkin #1143
  • Restoring method FileContents.getFileName() to keep backward compatibility for some time. Author: Thomas Jensen #1205
  • Rename CheckStyleTask to CheckstyleAntTask, Rename and move checkstyletask.properties. Author: Michal Kordas #1108
  • Remove AnnotationUtility and ScopeUtils from API package. Author: Michal Kordas #1057

New:

Bug fixes:

  • correction of parsing of attributes in AtclauseOrderCheck. Author: Vladislav Lisetskiy #1152
  • fix for JavadocMethodCheck: catch NoClassDefFoundError in ClassResolver. Author: Vladislav Lisetskiy #1192
  • Replace hardcoded message in WhitespaceAfterCheck with new message (i18n). Author: Andrei Selkin #967
  • Solution to wrong variable reported because of name shadowing in FinalLocalVariableCheck. Author: Bhavik Patel #1142
  • Clarify misleading command line tool (CLI) output. Author: Bhavik Patel #1062
  • solution to CLI fails when it could not find output file. Author: Bhavik Patel #1181
  • Fixed exception in AvoidStaticImport check trying to exclude members of inner class. Author: Aleksandr Ivanov #1209
  • Solution to "Incorrect config file cause CLI finish with error but no output with details". Author: Bhavik Patel #1180
  • Fix exception in SuppressWarnings check on complex annotations. Author: Michal Kordas #1201
  • Fix value pair representation in SuppressWarnings check. Author: Michal Kordas #1246
  • Do not generate violation for empty SuppressWarnings. Author: Michal Kordas #1187
  • Fix PackageDeclaration check for files with comments only. Author: Michal Kordas #1149
  • Fix exception in SuppressWarningsHolder on complex annotations or annotation with dot. Author: Michal Kordas #1148

Notes:

  • .gitignore with Eclipse's .externalToolBuilders and .checkstyle from Checkstyle CS Eclipse Plug-in. Author: Michael Vorburger
  • 100% test coverage for com.puppycrawl.tools.checkstyle.checks.sizes. Author: Andrei Selkin #1024
  • Fix empty html pages for extending Checkstyle and style configurations. Author: Vladislav Lisetskiy #1231
  • move non-compilable input to resources-noncompilable. Author: Vladislav Lisetskiy
  • Minor update in FallThroughCheck xdoc and javadoc. Author: Vladislav Lisetskiy
  • PMD violations: UncommentedEmptyMethod, EmptyMethodInAbstractClassShouldBeAbstract, AbstractNaming. Author: Bhavik Patel #995, #997, #983
  • Fix violation of EmptyStatement, UncommentedMain, AvoidEscapedUnicodeCharacters, AbbreviationAsWordInName Checks in Checkstyle code. Author: Bhavik Patel #945
  • Ineffective suppressions are removed from checkstyle's configs. Author: Bhavik Patel
  • Checking existence of config file before processing target file.. Author: Bhavik Patel
  • Changed Integration Tests to use /src/it/. Author: Aleksandr Ivanov #1200
  • Updated description for UnusedImports, RedundantImport , Change "Beginning Development" page to reference JDK1.8. Author: Aleksandr Ivanov
  • UT coverage for RedundantImport. AvoidStarImportCheck check, Added UTs for getAcceptableTokens() and getRequiredTokens(). Author: Aleksandr Ivanov #1128
  • CyclomaticComplexity applied with level 11. Author: Roman Ivanov #954
  • NPathComplexity: extend documentation to make clear how it works, suppression rules for NPathComplexity. Author: Roman Ivanov #1218, #953
  • Content section was added to ease navigation in Checks descriptions pages, favicon images (png,ico) were introduced. Author: Roman Ivanov #1208
  • till MECLIPSE-735 we will keep Eclipse project files in repository. Author: Roman Ivanov #1219
  • Ordering issue with nested classes in static imports - xdoc was extended. Author: Roman Ivanov #1239
  • Update ant to 1.9.5, update for maven-eclipse-plugin to 2.10, system-rules updated to 1.11.0, commons-cli to 1.3.1. Author: Roman Ivanov
  • Integrate google-style-config-test as Integration Test. Author: Roman Ivanov #863
  • Add known limitations to SuppressWarnings check documentation. Author: Michal Kordas #1252
  • Fix PMD violations of ExceptionAsFlowControl, AvoidCatchingGenericException rule. Author: Michal Kordas #959, #962
  • Use SHA-1 instead on non-standard SHA in PropertyCacheFile. Author: Michal Kordas #1251
  • Add TravisCI build for assembly creation. Author: Michal Kordas #1204
  • Provide additional regression test for ParenPad check. Author: Michal Kordas #1189
  • Add tests for equals and toString in SuppressionCommentFilter. Author: Michal Kordas #1088
  • Move Regexp check from miscellaneous to regexp category. Author: Michal Kordas #1170
  • Remove unused MethodCallLineWrapHandler class. Author: Michal Kordas #1178
  • Make cobertura and coveralls build faster, Provide workaround for incorrect coverage shown by Cobertura. Author: Michal Kordas #1176
  • Generate HTML report on Maven cobertura:cobertura goal. Author: Michal Kordas #1169
  • Add virtual machine crash log files to .gitingore. Author: Michal Kordas #1168
  • Configure RegexpSinglelineJava to detect non-ASCII characters. Author: Michal Kordas #1165
  • Verify that classes with constants have private constructors. Author: Michal Kordas #840
  • Update system-rules to 1.10.0, maven-assembly-plugin to 2.5.5, maven-failsafe-plugin to 2.18.1, Maven Shade Plugin to 2.4. Author: Michal Kordas #1156, #1175, #1193, #1204

Release 6.7

Breaking backward compatibility:

  • Remove FastStack from API. Author: Michal Kordas #989
  • Util classes should be moved out of api package. Author: Roman Ivanov #1057
  • method TreeWalker.setClassloader() was renamed to TreeWalker.setClassLoader() with deprecation of old method. Author: Roman Ivanov #922

New:

  • New "ignorePrivateMethods" property for ThrowsCount check to skip private methods. Author: Vladislav Lisetskiy #1136
  • New "crlf" option for lineSeparator property in NewlineAtEndOfFile check. Author: Martin Steiger #1045

Bug fixes:

  • Make message-based checks invariant to Locale. Author: Martin Steiger #1044
  • Fix no possibility to set English language explicitly in config. Author: Michal Kordas #152
  • Do not verify overriding methods in ThrowsCount check. Author: Vladislav Lisetskiy #1085
  • Fix Regexp check causing exception on file with newline on top. Author: Michal Kordas #1129
  • Fix RegexpMultiline check causing exception with default config. Author: Michal Kordas #1129
  • Add support for canonical class names in MutableException. Author: Michal Kordas #1124
  • Fix NeedBraces check not requiring braces in multiline statements when using allowSingleLineStatement option. Author: Michal Kordas #895
  • Fix equals and hashCode in SuppressionFilter, SuppressElement, IntRangeFilter, LocalizedMessage and remove obsolete toString. Author: Michal Kordas #1088
  • Add "/", "+" and "-" to list of allowed tokens in MagicNumber check. Author: Michal Kordas #1113
  • Extend ReturnCount check to use separate return counter for lambdas. Author: Michal Kordas #1068
  • Fix exception in OneTopLevelClass check for package-info files. Author: Michal Kordas #1065
  • Fix exception in FallThrough check for nested switch statements. Author: Michal Kordas #837
  • MagicNumber annotation detection enhanced for arbitrary parent nodes in MagicNumber check. Author: Mehmet Can Cömert #926
  • Improve standard package regexp for CustomImportOrder check. Author: Michal Kordas #1020
  • Fix NPE in ModifiedControlVariable check. Author: Michal Kordas #1012
  • Include enums in CovariantEquals check analysis. Author: Michal Kordas #1011
  • Fix parsing of allowedAnnotations property in JavadocMethod check. Author: Gustav Carlson #1145

Notes:

  • Change location of left curly braces to end of line. Author: Michal Kordas #1089
  • Make coverage 100% for all classes at package com.puppycrawl.tools.checkstyle.checks.sizes. Author: Andrei Selkin #1024
  • 100% test coverage for com.puppycrawl.tools.checkstyle.checks.design. Author: Vladislav Lisetskiy #1009
  • removing dead code and refactoring in VisibilityModifier check. Author: Vladislav Lisetskiy #1107
  • Replace deprecated PosixParser with DefaultParser. Author: Michal Kordas #1099
  • remove dead code from MutableException check. Author: Vladislav Lisetskiy #1103
  • remove dead code from FinalClass check. Author: Vladislav Lisetskiy #1100
  • Make tests of Main class platform independent. Author: Michal Kordas #1086
  • removing abandoned test input files. Author: Ivan Sopov
  • Fix typos. Author: Julian Hyde
  • Fix PMD violations for number of rules. Author: Michal Kordas #948, #949, #960, #984, #998, #999, #928
  • Enable multiple Checkstyle checks on Checkstyle codebase. Author: Michal Kordas #945, #1049, #1040
  • Update commons-cli to 1.3. Author: Michal Kordas #1067
  • Update wagon-ssh to 2.9. Author: Michal Kordas #1060
  • Update maven-assembly-plugin to 2.5.4. Author: Michal Kordas #1055
  • Update cobertura-maven-plugin to 2.7. Author: Michal Kordas #916
  • Complete descriptions in checks index. Author: Andrew Gaul
  • Remove obsolete space from general error message. Author: Michal Kordas #1029
  • Add missing space in error message for CustomImportOrder check. Author: Michal Kordas #1027
  • resolving Findbugs violation: #911 , #909, #778, #923, #925, #596. Author: Roman Ivanov
  • huge refactoring for CLI Main class. Author: Roman Ivanov #596
  • Option allowPublicFinalFields does not exist in VisibilityModifier check. Author: Roman Ivanov #1126
  • OneTopLevelClass check example is broken and documentation missing, for 'tokens' property. Author: Roman Ivanov #1017
  • OneTopLevelClass check example in documentation has invalid XML syntax. Author: Roman Ivanov #1016

Release 6.6

New:

  • New option for MagicNumber Check to ignore magic numbers in field declarations. Author: ychulovskyy #148
  • New option for ModifiedControlVariable Check to ignore validation of variables defined in for loop which are not changed in for loop iterator part. Author: liscju #286

Bug fixes:

  • Extend LeftCurly check to verify static initializers. Author: Michal Kordas #966
  • Extend EmptyBlock check to verify synchronized blocks. Author: Michal Kordas #964
  • Fix generics with arrays handling in NoWhitespaceAfter. Author: Michal Kordas #931
  • Fix upper/lower case conversation, enhance tests. Author: Mehmet Can Cömert #969
  • Introduce new handler SynchronizedHandler for checking indentation. Author: liscju #580
  • added validation for header in setHeader in RegexpHeaderCheck.java to provide better feedback when an invalid Pattern is specified. Author: richter722 and Roman Ivanov #897

Notes:

  • Delete System.exit() and delegate exit control into separate method. Author: Damian Szczepanik #882
  • Repair ignored test. Author: Michal Kordas #994
  • Fix AnnotationLocation violation in Checkstyle codebase. Author: Michal Kordas #945
  • Fix AvoidStaticImport check violations in codebase. Author: Michal Kordas #979
  • Fix AtclauseOrder check violations in codebase. Author: Michal Kordas #978
  • Resolve Javadoc problems found by Checkstyle. Author: Michal Kordas #978
  • Replace all occurrences of FastStack with ArrayDeque. Author: Michal Kordas #86
  • Fix PMD violations from numerous ruleset in Checkstyle. Author: Roman Ivanov #744
  • Fix PMD violations from numerous ruleset in Checkstyle. Author: Michal Kordas #987, #982, #872, #744, #942, #874, #873, #871, #869, #876, #875,
  • Update Apache Commons Lang to 3.4. Author: Michal Kordas #899
  • Use use Java 7 instead of custom logic for relative paths. Author: Michal Kordas #857
  • Add test for non existing cache file. Author: Michal Kordas #921
  • Use entrySet iterator to fix FindBugs violations. Author: Michal Kordas #778
  • Integrate Gitter with Checkstyle. Author: Michal Kordas #864
  • Resolve some problems in Javadoc reported by Java 8. Author: Michal Kordas #291
  • Disable Findbugs for 'grammars' package. Author: Michal Kordas #778
  • Update Maven Compiler Plugin to 3.3. Author: Michal Kordas #867
  • Update FindBugs Maven Plugin to 3.0.1. Author: Michal Kordas #865
  • Update Maven Javadoc Plugin to 2.10.3. Author: Michal Kordas #939
  • Use SVG badge for coveralls.io. Author: AnirvanSarkar
  • all TODO/FIXME were removed, some of them converted to issues. Author: Roman Ivanov
  • all findbugs validation rules are activated. Author: Roman Ivanov #912, #778

Release 6.5

Breaking backward compatibility:

  • Class checkstyle.api.Utils was moved to checkstyle.Utils. Author: Alex Kravin #661

New:

  • New sortStaticImportsAlphabetically property for ImportOrder check that allows alphabetical grouping order in static group. Author: Alex Kravin #12
  • New allowSingleLineStatement property for NeedBraces check to allow one-line statements. Author: Alex Kravin #300
  • New ignoreAnnotationCanonicalNames property for VisibilityModifier check, to ignore fields with particular annotations. Author: Alex Kravin #584
  • New validateEnhancedForLoopVariable property for FinalLocalVariable check to enforce final variables in for each clause. Author: Bhavik Patel #20

Bug fixes:

  • CustomImportOrder checks import sorting according to ASCII order instead of case-insensitive alphabetical order. Author: Michal Kordas #847
  • Fix failing EmptyLineSeparator check on multiple imports or fields. Author: liscju #706
  • Fix ignoreSetter property of HiddenField not working for one letter fields. Author: Michal Kordas #730
  • Token WILDCARD_TYPE was added to WhitespaceAround check. Author: Danil Lopatin #853
  • SuppressionCommentFilter does not suppress StrictDuplicateCode warnings. Author: Yuriy Chulovskyy #26
  • AnnotationsUseStyle yields warning on "({})" of Array types. Author: Alex Kravin #28
  • Fix bug with lambda params in FinalLocalVariable check. Author: Alex Kravin #747
  • FinalLocalVariable Check, extended acceptable tokens. Author: Alex Kravin #762
  • Add support of logging severity for all audit events. Author: Alex Kravin #67
  • Fix typo in violation message of ModifierOrder check. Author: Michal Kordas #740

Notes:

  • Add anchors to sections. Author: Alex Kravin #586
  • Extended guide for newbies. Author: Alex Kravin #606
  • Remove printStackTrace(...) from whole code. Author: Alex Kravin #660
  • Move content from available_checks.html to checks.html. Author: Alex Kravin #691
  • EmptyCatchBlock check, updated docs. Author: Alex Kravin #571
  • Add post field for mailing lists. Author: Glenn Hollingsworth #743
  • Automate Code Coverage Validation. Author: Bhavik Patel #722
  • Update all Maven plugins to latest versions. Author: Michal Kordas #644
  • Resolve all violations that were found by default PMD maven plugin rule sets. Author: Michal Kordas #744
  • Add maven-project-info-reports-plugin to POM. Author: Michal Kordas #776
  • Several fixes for problems found by Findbugs. Author: Michal Kordas #778
  • Add OverloadMethodsDeclarationOrder to Available Checks page. Author: Michal Kordas #784
  • Add test to verify that all checks are present on website. Author: Michal Kordas #783
  • Remove deprecated getLines() methods from Utils. Author: Michal Kordas #854
  • Deprecate FastStack and replace it with ArrayDeque. Author: Michal Kordas #86
  • Huge amount of refactoring and improvements, some of them without issue reference. Author: Michal Kordas #674 , #729 , #730 , #736 , #742 , #751 , #787 , #790 , #805 , #806 , #809 , #816 , #821 , #821
  • Use Guava Closeables to manage closing exceptions. Author: Michal Kordas #836
  • Remove duplicate UniqueProperties section. Author: Michele Mauro #843
  • Add Utils.isPatternValid method to hide try-catch blocks when parsing is used only for validation. Author: Damian Szczepanik #835
  • Reduce complexity in HandlerFactory class by grouping catch blocks. Author: Damian Szczepanik #833
  • Delete ///CLOVER comments. Author: Damian Szczepanik #824
  • Update all links to sun.com reference to oracle site. Author: Damian Szczepanik #724

Release 6.4.1

Bug fixes:

  • VisibilityModifier Check, updated option setter. Author: Alex Kravin #710
  • GenericWhitespace Check, updated method references processing. Author: Alex Kravin #677

Notes:

  • HiddenField Check, updated docs for 'ignoreFormat' option. Author: Alex Kravin #607
  • Clarified all Indentation Input files for certain expected values. Author: Alexey Zuy #675
  • Update of maven plugins. Author: Michal Kordas #644
  • Fix incorrect author and typos in release notes for Release 6.4. Author: Michal Kordas #694

Release 6.4

New:

  • New Check: EmptyCatchBlock Check for Google Style Guide. Author: Alex Kravin#571
  • New option for VisibilityModifier Check, to allow public immutable fields. Author: Alex Kravin#61

Bug fixes:

  • Added support of Windows line separator to Javadoc parser. Fixed UTs. Author: Baratali Izmailov #612
  • Fix NPE when setting classpath field. Author: Aaron Sheldon
  • IllegalType Check, updated memberModifiers option setting. Author: Alex Kravin #663
  • BooleanExpression Complexity Check, fixed NPE. Author: Alex Kravin #654
  • FinalLocalVariable Check, fixed false-positive. Author: Alex Kravin #258
  • AbstractClassName Check, updated default regex. Author: Alex Kravin #595
  • EmptyLineSeparator Check, fixed Exception if file doesn't have header. Author: Alex Kravin #621
  • BooleanExpressionComplexity misidentifies integer expression as boolean expression. Author: Yuriy Chulovskyy #572

Breaking backward compatibility:

  • Fixed typo in 'ignoreOverriden' property of IllegalThrowsCheck. Author: Alex Kravin #623
  • AnnotationLocation Check, extended typo fixing. Author: Alex Kravin #585

Notes:

  • Javadoc comments for JAVADOC_TAG and JAVADOC_INLINE_TAG related nodes. Author: Baratali Izmailov #409
  • Linkcheck report, fixed errors. Author: Alex Kravin #549
  • Refactored UTs. Author: Alex Kravin #537
  • Site: feeds icons were added. Author: Alex Kravin #617
  • TreeWalker update, added logging warning if AcceptableTokens are broken. Acceptable tokens are specified for all checks. Author: Alex Kravin #342
  • SuppressionCommentFilter, extended docs for messageFormat option. Author: Alex Kravin #123
  • Site: moved 'Extending Checkstyle' to Developers groups. Author: Alex Kravin #606
  • Update some maven plugin in pom.xml. Author: Michal Kordas #644
  • Reformat and fix example for AnnotationUseStyle. Author: Michal Kordas #672
  • Require at least Maven 3.0.1 to build Checkstyle. Author: Michal Kordas #620
  • Site: moved 'Extending Checkstyle' to Developers groups. Author: Alex Kravin #606
  • Replace `StringBuffer` with `StringBuilder` to improve performance. Author: Michal Kordas
  • Repair typos in UniqueProperties description. Author: Michal Kordas
  • Replace verbose type arguments with diamond type. Author: Michal Kordas
  • Fix for typos in documentation. Author: Michal Kordas
  • Use Collections.addAll() instead of adding elements individually. Author: Michal Kordas
  • Added missed @Test annotation on test-case 'IndentationCheckTest.testMethodCallLineWrap'. Author: Alexey Zuy
  • IndentationCheck. Refactoring: got rid of anonymous classes. Author: Alexey Zuy
  • Fix table display. In config_whitespace, a comma was incorrectly replaced with a period. Author: Glenn Hollingsworth
  • Update config links in Google Style html page. Author: Glenn Hollingsworth #686

Release 6.3

New:

  • New option to HiddenField, to skip builder methods - setterCanReturnItsClass. Author: Dmitri Priimak #598
  • New option to Checker and TreeWalker to specify file extensions. Author: Alex Kravin #25
  • New option to EmptyLineSeparator Check, for managing empty lines between class members. Author: Alex Kravin #530
  • New option to Indentation to avoid C style. Author: Max Vetrenko #354
  • New option to IllegalThrows Check due to twitter custom checks. Author: Alex Kravin #430
  • New option to JavadocMethod Name Check - ignore method name regex. Author: Alex Kravin #430
  • New option to IllegalType Check to control validation based on modifiers - memberModifiers, updated default illegal types. Author: Alex Kravin #567

Bug fixes:

  • ExtendedMethodName Check to ignore overridden methods. Author: Alex Kravin #430
  • Allow basedir property of Checker module to be set to NULL. Author: Lars Ködderitzsch #570
  • CustomImportOrder Check, third-party package meaning is adjusted. Author: Alexey Kravin #515
  • FinalLocalVariable Check, fixed false-positive. Author: Alexey Kravin #258
  • IllegalType Check, fixed false positives on same file names, added support of analyzing imports. Author: Alexey Kravin #78
  • SuppressWarnings Holder - fixed throwing exception if annotation uses constant value. Author: Alexey Kravin #539
  • NoWhitespaceAfter Check, fixed NPE, fixed false-positives at multidimensional arrays. Author: Alexey Kravin #542
  • message is extended according to google/guava/issues/1891. Author: Roman Ivanov

Breaking backward compatibility:

  • AnnotationLocation Check, fixed typo in property name. Author: Alex Kravin #585

Notes:

  • Code examples of filters' usage. Author: Alex Kravin #289
  • Changes to checkstyle's configuration for Checkstyle (Prefixes are removed, indentation for SWITCH block is changed). Author: Alex Kravin #512
  • Custom Import Order Check, rewrote compare method. Author: Alex Kravin #234
  • Switched Checkstyle and all resources to UTF-8 encoding. Author: Alex Kravin #489
  • Logging of exceptions to console. Author: Alex Kravin #546
  • Got rid of javadoc warning. Resolved maven compilation warnings. Author: Alex Kravin #548
  • Refactored tests from blocks package. Author: Yuriy Chulovskyy #537
  • Turn on -r recursive by default in CLI. Author: Yuriy Chulovskyy #3
  • Fixes for suppression examples. Author: Michal Kordas #289
  • Repair Sonarqube problems found in Checkstyle. Author: Michal Kordas #46

Release 6.2

Bug fixes:

  • Serious compatibility problems with versions 5.9, 6.0 and 6.1. Author: Ilja Dubinin #505
  • Added basenameSeparator configuration option for TranslationCheck. Author: Alex Kravin, pulse00 #149
  • Added google and sun configs to jar. Author: Alex Kravin #305
  • Added UT for lambda expressions for InnerAssignmentCheck. Author: Alex Kravin #377
  • Build and install the tests jar artifact. Author: Peter Palaga #477
  • FinalLocalVariable Check, fixed false-positive - native method's param should be declared final. Author: Alex Kravin #158
  • FinalParameters Check, added option allows ignoring primitive types as params. Author: Alex Kravin #446
  • Unsatisfiable Indentation module scenario with difficult annotations. Author: Alex Kravin #321
  • Fixed false-positive in GenericWhitespaceCheck. Author: Alex Kravin #51
  • Fix InnerAssignment check for lambda expressions. Author: Evan Cahill
  • GenericWhitespace Check, fixed bug - '>' is followed by an illegal character. Author: Alex Kravin #350
  • InnerTypeLast within methods. Author: Yuriy Chulovskyy #6
  • AnnotationUseStyle closingParens check failed. Author: Yuriy Chulovskyy #131
  • RequireThis triggers when try-with-resources defines resource with same name as method. Author: Yuriy Chulovskyy #257
  • NullPointerException with SuppressWarningsHolder and enum fields. Author: Yuriy Chulovskyy #353
  • ParameterNumber check option to ignore methods with an @Override. Author: Yuriy Chulovskyy #66
  • MutableException check requires class to explicitly extend some other class. Author: Michal Kordas #60
  • NeedBraces, added option which allows one line if-statements without braces. Author: Alex Kravin #300
  • RedundantModifier Check fixed bug with warning on final variables in default methods. Author: Alex Kravin #364
  • RedundantModifier Check, fixed false-positive Redundant modifier final error for @SafeVarargs method. Author: Alex Kravin #301
  • SummaryJavadoc Check, added 'specify period' option. Author: Alex Kravin #472
  • SuppressWarnings Check, annotation param in constant. Author: Alex Kravin #268

Breaking backward compatibility:

  • Checkstyle is switched to jdk7. Author: Roman Ivanov. commit.
  • Abstract Aware Type Check marked as deprecated, removed Redundant Throws Check. Author: Alex Kravin #473
  • JUnitTestCaseCheck was removed from Checkstyle. Author: Yuriy Chulovskyy #457
  • Remove StrictDuplicateCodeCheck and whole package. Author: Michal Kordas #523
  • removing ignoreDirectoryName option from PackageDeclarationCheck. Author: Ivan Sopov #209

Notes:

  • All UTs Inputs are now compilable. Author: Alex Kravin #308
  • Fix for typos in documentation, fixes for Sonar violations, pom formatting, latest JUnit 4.12, ..... Author: Michal Kordas
  • google-style-config-test project for Google style is introduces, google_style wiki was updated. Author: Max Vetrenko
  • New maven profile "assembly" for quick build without any report and checks has been created. Author: Ilja Dubinin

Release 6.1.1

Bug fixes:

  • Generics in postfix expression before method references can be parsed now. Author: Ilja Dubinin #339
  • ArrayIndexOutOfBoundsException if Indentation and FileContentsFolder are enabled. Author: Ilja Dubinin. #92
  • Create ParseErrorMessage if error message is null during Javadoc parsing. Author: Baratali Izmailov. #385
  • Added $ to all identifier definitions at javadoc grammar. Author: Baratali Izmailov. #376
  • Fixed NumberFormatException while logging in AbstractJavadocCheck. Author: Baratali Izmailov. #371
  • Indentation check fails for switch statements. Author: Max Vetrenko. #341
  • -v CLI flag for querying the installed Checkstyle version. Author: Yuriy Chulovskyy. #9

Notes:

  • Checkstyle logo was changed. Author: Alexandra Ulanovskaya and Daniil Yaroslavtsev.

Release 6.1

Bug fixes:

  • Huge performance optimization for JavaDoc parsing. In scope of issue #49. Caching DetailNode trees in AbstractJavadocCheck. Author: Baratali Izmailov #355
  • "FileContents.getLines()" performance fix. Author: Vladimir Sitnikov, Ivan Sopov. #351
  • Fix for MultiMap empty collections garbage. Author: Vladimir Sitnikov, Ivan Sopov. #348
  • Performance fix for RegexpCheck. Author: Vladimir Sitnikov, Ivan Sopov. #348
  • Removing unnecessary char[] copying to reduce GC-pressure. Author: Vladimir Sitnikov, Ivan Sopov. #347
  • Using BitSet for indent levels for performance. Author: Vladimir Sitnikov, Ivan Sopov. #349
  • Various documentation/spelling issues with AnnotationLocationCheck. Author: Roman Ivanov. #356
  • Multidimensional arrays can be parsed now. Author: Ilja Dubinin. #304

Breaking backward compatibility:

  • AnnotationLocationCheck, package location was changed, one option was renamed. Author: Roman Ivanov. #356

Release 6.0

New features that extend API:

  • Support of single-line and block comments in parse tree. ANTLR4 grammar for parsing Javadoc comments. Author: Baratali Izmailov. #49

New features:

  • AnnotationLocationCheck. Author: Max Vetrenko. #302
  • AtclauseOrderCheck. Author: Max Vetrenko. #306
  • JavadocParagraph. Author: Max Vetrenko. #315
  • JavadocTagContinuationIndentation. Author: Max Vetrenko. #308
  • SingleLineJavadocCheck. Author: Max Vetrenko. #332
  • NonEmptyAtclauseDescriptionCheck. Author: Max Vetrenko. #309
  • Update for existing JavadocMethodCheck to satisfy Google's style requirements. Author: Max Vetrenko. #319

Notes:

  • Google style is now covered to maximum of Checkstyle ability. See detailed report here. Authors: Max Vetrenko, Ruslan Diachenko, Roman Ivanov.
  • All binaries are now compiled by Jdk6. Jdk5 is not supported any more.

Release 5.9

New features:

  • Support of Java8 syntax. Author: Ilja Dubinin. #10

Bug fixes:

  • Enormous update on Indentation Check. Author: Max Vetrenko. #294
  • Fixed IllegalInstantiationCheck, so it won't recognize a constructor reference (Java8) as instantiation. Author: Ryszard Wisniewski.
  • Since Java 8 we can have methods body in interfaces. Author: Ilja Dubinin. #282
  • Default modifier has been added to modifier list. Author: Ilja Dubinin. #284
  • Fixed bug in DefaultComesLast check. Now it supports java 8 default methods. Author: Ilja Dubinin. #297
  • Fixed IndexOutOfBoundsException in CustomImportOrderCheck. Author: Max Vetrenko. #296

Notes:

  • Correct OverloadMethodsDeclarationOrder name in documentation. Author: Andrew Gaul.

Release 5.8

New features:

  • Google Java Style xml configuration was added. Author: Max Vetrenko.
  • New: AbbreviationAsWordInName check. Author: Max Vetrenko. #212
  • Added enum processing to TypeNameCheck. Author: Pavel Baranchikov
  • Added method to clear cache to LocalizedMessage. Author: Joni Salmi. #156
  • New: AvoidEscapedUnicodeCharacters check. Author: Max Vetrenko. #194
  • New: CustomImportOrder check. Author: Max Vetrenko. #194
  • New: EmptyLineSeparator check. Author: Max Vetrenko. #186
  • Enable array initialisation indentation settings. Author: Vaclav Chalupa.
  • Enhance WhitespaceAroundCheck to ignore Annotation Array Initialization curlies as it does for Array Initialization outside of annotations.. Author: Jacob Tomaw
  • ignore option to the JavadocVariable check. Author: Yuriy Chulovskyy. #98
  • New: InterfaceTypeParameterName check. Author: Max Vetrenko. #202
  • New grammar rule was added only for catch types. IllegalCatchCheck has been extended to use catch with few exception types.. Author: Ilja Dubinin #165
  • LocalVariableName. Allowed one char variables in initialization expressions in FOR loop. Author: Max Vetrenko #192
  • New: NoLineWrap check. Author: Max Vetrenko. #173
  • New: OneTopLevelClass check. Author: Max Vetrenko. #173
  • New: OverloadMethodsDeclarationOrder check. Author: Max Vetrenko. #32
  • New option to allow no empty line between fields at EmptyLineSeparatorCheck check. Author: Max Vetrenko. #227
  • New option to allow that force overload methods are grouped together at DeclarationOrder check. Author: Max Vetrenko. #163
  • New option to allow empty classes, enums and interfaces, empty loops are allowed at WhitespaceAround check. Author: Max Vetrenko. #163
  • New: VariableDeclarationUsageDistance check. Author: Max Vetrenko. #223

Bug fixes:

  • Update for EmptyBlock to allow empty loops. Author: Max Vetrenko. #190
  • EmptyLineSeparatorCheck was updated to validate empty line after header. Author: Max Vetrenko. #218
  • LeftCurly Check was updated to force line break. Author: Max Vetrenko. #247
  • update for OuterTypeFilename Check to check top level type are the public type or the first type in file if public is missed. Author: Max Vetrenko. #248
  • update for RightCurly Check, new option to check line break after the closing brace if that brace terminates a statement or the body of a method, constructor or named class. Author: Max Vetrenko. #182
  • Added test and fix for the case if there is a semicolon between import statements. Author: Ryszard Wisniewski
  • Adding ANNOTATION_DEF to the valid list of parentASTs for the SuppressWarningsHolder. Without this, any @SuppressWarnings (checkstyle or not) present on an annotation definition class will fail. Author: Dominic Jones
  • Adding u HTML tag to list of allowed tags in JavaDoc. Author: Ilja Gubins. #58
  • update for WhitespaceAround. Allowed empty anonymous classes. Was updated allowEmptyTypes property. Author: Max Vetrenko. #197
  • Fixed AbstractTypeAwareCheck for generics in interfaces. Author: Tobias Baum. #177
  • Fixed RightCurlyCheck for empty methods. Author: Max Vetrenko. #213
  • Fixed WhitespaceAroundCheck. fix for anonymous inner class. Author: Yuriy Chulovskyy. #105
  • Fixed RedundantModifier. Abstract Interface Should not be Allowed. . Author: Yuriy Chulovskyy. #209
  • Fixed EmptyBlock. need to handle switch block. . Author: Max Vetrenko. #235
  • Fixed WhitespaceAround. Fix false positive with ANNOTATION_DEF. . Author: Max Vetrenko. #237
  • Fixed GenericWhitespace. Fix false positive with Array. . Author: Inav Sopov. #47
  • Fixed JavadocStyleCheck. HTML comments break the Javadoc style HTML check. . Author: theqaguy. #119
  • Fixed Java grammar. Now it can parse 'return (byte[].class);' . Author: Ilja Dubinin. #130
  • Exception thrown when parsing numeric constant "3.14_15F". . Author: Yuriy Chulovskyy#134
  • RequireThis triggers for static interface fields Fixed. . Author: Sergiu Dumitriu #155
  • Javadoc in GenericWhitespaceCheck was updated. . Author: Max Vetrenko #254
  • MemberNameCheck should not validate interface constants, that's ConstantNameCheck's role. Author: Sergiu Dumitriu
  • RightCurly. Force line break before '}' in case SAME option. . Author: Max Vetrenko #250
  • SeparatorWrapCheck. Covers separators like ',', '.' . . Author: Max Vetrenko #179
  • Support annotations in TypeNameCheck. Author: Thomas Jensen
  • Update UnusedImportsCheck to correctly detect classes in parameters and inline tags nested within block tags. fixing checkstyle issues Fixing even more checkstyle issues. Author: James Gorman
  • Use a thread-safe map implementation to keep the compiled patterns. Author: Christoph Kutzinski
  • WhitespaceAround with allowEmptyMethods complains on annotation's empty method . Author: Max Vetrenko #21

Notes:

  • dsm-maven-plugin is used to show dsm/index.html dependency structure of project on site. Author: Ilja Dubinin.
  • Added and updated documentation/messages for number of Checks. Authors: Max Vetrenko, Thomas Jensen, Yuriy Chulovskyy, Jarmo Isotalo , Peter O, Ryszard Wisniewski, Ilja Gubins, Baratali Izmailov, Jan Schafer, Niklas Walter, Andrew Gaul.
  • Moving to standard directory layout. Author: Ivan Sopov.
Old releasenotes