Release 7.8.2

Bug fixes:

  • Simple name conflict of Checks from thirdparty checks will cause exception in run time. Author: Luolc, Roman Ivanov #4414
  • 3rd party root modules not finding by simple name. Author: rnveach #4417
  • ASTs should be appended with comment nodes only when javadoc checks are present. ASTs shouldn't be walked if there are no corresponding types of checks. Author: Piyush Sharma #4393

Notes:

  • SummaryJavadoc: no violation on javadoc where '.' is used not as end of sentence (fixes in javadoc files only). Author: sagar-shah94 #3907
  • Split and Organize Checkstyle inputs by Test for checks in imports package. Author: Subbu Dantu #4437
  • Unstable TreeWalkerTest during coverage execution. Author: Piyush Sharma #4445
  • spelling: fix spelling of name McConnell. Author: Ryan P.C. McQuen
  • pitest: increase mutation coverage for pitest-checkstyle-utils profile to 100%. Author: vasilyeva #4395
  • Design a new format of suppression dtd schema to support XPath queries. Author: Timur #4364
  • Split and Organize Checkstyle inputs by Test for checks in modifier package. Author: Subbu Dantu #4431
  • pitest: increase mutation coverage for pitest-checkstyle-common profile to 100%. Author: vasilyeva #4400
  • pitest: increase mutation coverage for pitest-check-header profile to 100%. Author: vasilyeva #4401

Release 7.8.1

Bug fixes:

  • problem with usage of third-party Check libraries and checkstyle 7.8. Author: rnveach, Roman Ivanov #4387

Notes:

  • pitest: increase mutation coverage for pitest-check-annotation profile to 100%. Author: vasilyeva #4402
  • pitest: create profile for non-checks code. Author: vasilyeva #4367

Release 7.8

New:

  • ImportControl: new strategyOnMismatch property to xml file structure. Author: Tima #4274
  • NoWhitespaceAfter: add support for method reference operator (new Acceptable token). Author: Dmytro Kytsmen #3950
  • LocalFinalVariableName: not validating try-with-resource variables (new Acceptable token). Author: vasilyeva #3348
  • IllegalImport: new property illegalClasses to let blacklist certain classes import. Author: Tima #3449
  • ExplicitInitialization: new property 'onlyObjectReferences'. Author: Subbu Dantu #2399

Bug fixes:

  • Javadoc parser: Package names should permit digits in their name. Author: Piyush Sharma #4349
  • Expand exception violation when haltOnException is off. Author: rnveach #4350
  • CacheFile: violation on external resource will invalidate entire cache even if no changes are made. Author: rnveach #4101
  • RequireThis: False positive for lambda parameters. Author: Piyush Sharma #4207

Notes:

  • bump version for sevntu-checkstyle. Author: Roman Ivanov
  • publish all dtd schemas to sourceforge site automatically. Author: Andrei Selkin, Roman Ivanov #4341
  • Use reflection to load Checks base on checkstyle_packages.xml. Author: Luolc #3607
  • upgrade maven-pmd-plugin to version 3.8. Author: Dmytro Kytsmen #4342
  • Split and Organize Checkstyle inputs by Test for checks in coding package. Author: slava ganyaev, Dmytro Kytsmen #4165
  • ImportControl: blacklist mode. Author: Tima #3451
  • Localized UTs are not stable on Travis. Author: Roman Ivanov #4316
  • moved more variables inside if blocks to reduce execution. Author: rnveach #4343
  • spelling: Improve grammar of usage.distance.extend. Author: Jaron Thatcher
  • Split and Organize Checkstyle inputs by Test for checks in annotation package. Author: Dmytro Kytsmen #4313
  • Revert "Revert "config: bump maven-surefire-xxxxxx to 2.20" due to unstable locale UTs #4316". Author: Roman Ivanov
  • moved variables inside if blocks to reduce execution time. Author: rnveach #4328
  • doc: add link to contributing instructions to CONTRIBUTING.md. Author: Nathan Naze
  • Split and Organize Checkstyle inputs by Test for checks in design package. Author: Dmytro Kytsmen #4314
  • Split and Organize Checkstyle inputs by Test. Author: Dmytro Kytsmen #3891
  • Wercker CI is unstable while cloning repositories. Author: Roman Ivanov #4329
  • Revert "config: bump maven-surefire-xxxxxx to 2.20" due to unstable locale UTs #4316. Author: Roman Ivanov
  • Split and Organize Checkstyle inputs by Test for PackageName. Author: Dmytro Kytsmen #4172
  • Split and Organize Checkstyle inputs by Test for MemberName. Author: Dmytro Kytsmen #4151
  • Split and Organize Checkstyle inputs by Test for MethodName. Author: Dmytro Kytsmen #4158
  • move all dtd schemas to sourceforge site. Author: Andrei Selkin #1571

Release 7.7

New:

  • Ant: accept path in addition to fileset option. Author: Andrew Kuchev #3312
  • SeparatorWrap: add support for method reference operator. Author: Luolc #3951
  • NoWhitespaceBefore: add support for method reference operator. Author: Dmytro Kytsmen #3949
  • RightCurlyCheck: add support for lambda. Author: Vladislav Lisetskii #3546
  • ParenPad: thinks precedence parens are a METHOD_CALL instead of an EXPR, new token TokenTypes.DOT should be supported. Author: Subbu Dantu #3048
  • DefaultComesLast: new option skipIfLastAndSharedWithCase to raise violation if default doesn't share case. Author: Sagar #4078
  • ClassDataAbstractionCoupling and ClassFanOutComplexity: property to exclude packages. Author: Andrew Kuchev #3309
  • ClassDataAbstractionCoupling : Add a excludeClassesRegexps property . Author: Tima #3234

Bug fixes:

  • NPathComplexity ignores multi-part boolean expressions. Author: kazachka #56
  • ArrayTrailingComma: Extra coma is required in multiline array value. Author: Vladislav Lisetskii #1509
  • EmptyBlock should process LITERAL_DEFAULT. Author: Piyush Sharma #4159
  • Take "break" into consideration in FinalLocalVariable. Author: Luolc #4082
  • RequireThis treats local variables as properties. Author: Piyush Sharma #3423
  • Exception message not informative enough for users on incorrect parent. Author: Subbu Dantu #2186
  • EmptyBlock: can't get violation from case token. Author: Piyush Sharma #3839
  • RightCurly: False negative on multiblock tokens with ALONE_OR_SINGLELINE option. Author: Vladislav Lisetskii #4091

Notes:

  • Split and Organize Checkstyle inputs by Test for InterfaceTypeParameterName. Author: Dmytro Kytsmen #4142
  • ReturnCount: enforce max=1 over checkstyle code. Author: Vladislav Lisetskii #3496
  • Split and Organize Checkstyle inputs by Test in the blocks package. Author: Subbu Dantu, Dmytro Kytsmen #4220
  • Split and Organize Checkstyle inputs by Test for ClassTypeParameterName. Author: Dmytro Kytsmen #4137
  • Split and Organize Checkstyle inputs by Test for CatchParameterName. Author: Dmytro Kytsmen #4136
  • Split and Organize Checkstyle inputs by Test for ConstantName. Author: Dmytro Kytsmen #4141
  • Split and Organize Checkstyle inputs by Test for checks in coding package. Author: slava ganyaev, Dmytro Kytsmen #4165
  • Split and Organize Checkstyle inputs by Test for SingleSpaceSeparator. Author: Jun Lin #4080
  • Fix new TeamCity violations. Author: Roman Ivanov #4250
  • spelling: unify THIRDPARTY_PACKAGE into THIRD_PARTY_PACKAGE. Author: Yusuke Matsubara
  • Split and Organize Checkstyle inputs by Test for NoLineWrap. Author: Dmytro Kytsmen #3933
  • Split and Organize Checkstyle inputs by Test for OuterTypeNumber. Author: Dmytro Kytsmen #4043
  • Split and Organize Checkstyle inputs by Test for ParentPad. Author: Dmytro Kytsmen #4062
  • Split and Organize Checkstyle inputs by Test for StaticVariableName. Author: Akshita #4208
  • Split and Organize Checkstyle inputs by Test for NoWhitespaceAfter. Author: Dmytro Kytsmen #3931
  • Expand missing testing for PropertyCacheFile tests. Author: Andrei Selkin #3650
  • Adding IDEA project files to gitignore and excluding them from checkstyle list. Author: Tima #4209
  • Split and Organize Checkstyle inputs by Test for MethodTypeParameterName. Author: Janine Freitas #4168
  • Split and Organize Checkstyle inputs by Test for ParameterName. Author: Shubham Kumar #4191
  • Add suppression of .DS_Store for NewlineAtEndOfFile. Author: Luolc #4176
  • Split and Organize Checkstyle inputs by Test for WhitespaceAround. Author: Dmytro Kytsmen #3898
  • Verifying tokens in checkstyle config handles default tokens wrong. Author: rnveach #4119
  • spelling: fix grammar in messages.properties for indentation package. Author: Vladislav Lisetskii
  • Javadoc for try-with-resources tokens is not good enough. Author: Subbu Dantu #2899
  • Split and Organize Checkstyle inputs by Test for FileTabCharacter. Author: Dmytro Kytsmen #3959
  • Fix new TeamCity violations. Author: Vladislav Lisetskii #3616
  • Split and Organize Checkstyle inputs by Test for LocalVariableName. Author: Dmytro Kytsmen #4150
  • Formatting issue in documentation. Author: sagar shah #3902
  • doc: fix documentation for METHOD_REF token. Author: Subbu Dantu
  • Split and Organize Checkstyle inputs by Test for LocalFinalVariableName. Author: kurileo #4144
  • Split and Organize Checkstyle inputs by Test for NoWhitespaceBefore. Author: Subbu Dantu #3930
  • Enforce EndOfLine symbols at the end of all files in checkstyle repository. Author: Vikramaditya Kukreja #3072
  • Split and Organize Checkstyle inputs by Test. Author: slava ganyaev #3891
  • Split and Organize Checkstyle inputs by Test for ParameterNumber. Author: GabrielBercaru #4090
  • RightCurly: update documentation for singleline statements with SAME option. Author: Vladislav Lisetskii #4085
  • spelling: fix typos in tests. Author: Vladislav Lisetskii
  • spelling: fix typos in xdocs. Author: Vladislav Lisetskii
  • Fix typo in @serialField javadoc tag validation. Author: Vladislav Lisetskii #4126
  • spelling: fix some typos in code/javadoc/comments. Author: Vladislav Lisetskii
  • Split and Organize Checkstyle inputs by Test for AbstractClassName. Author: vasilyeva #4106
  • pitest: skip Uts execution as pitest do this for without mutation mode. Author: Roman Ivanov #4104
  • changed loops to end execution early. Author: rnveach #4102
  • Split and Organize Checkstyle inputs by Test for LineLength. Author: MikhailovOlegM #4013
  • Grammar mistakes in PULL_REQUEST_TEMPLATE.md. Author: unrealwork #4098

Release 7.6.1

New:

  • NoLineWrap: add support for static imports. Author: Vikramaditya Kukreja #3892
  • PackageDeclaration: new property matchDirectoryStructure to match the package name to directory name of source file. Author: Vikramaditya Kukreja #3437
  • ParenPad: add LAMBDA token support. Author: Andrew #3329

Bug fixes:

  • SummaryJavadoc: need special processing of inheritDoc tag. Author: Sagar #3908
  • Indentation check fails for Line Wrapped Anonymous Inner Class with LCurly on newline. Author: Andrew Kuchev #3612
  • Regression false-positive FinalLocalVariable. Author: Luolc #3172
  • ImportControlLoader does not close InputStream and leaks filehandles when xml is malformed. Author: Giorgos Gaganis #3962
  • RightCurly: ALONE option doesn't work for a singleline IF. Author: Andrei Selkin #4044
  • Test failed due to locale message settings. (with non-English locale settings). Author: Luolc #3896
  • Control Characters are not skipped with google_checks config. Author: Luolc #3700
  • WhitespaceAfterCheck: problem with multiline typecast. Author: Andrew Kuchev #3850
  • try to avoid non jdk runtime exceptions in code. Author: Vladislav Lisetskii #3763

Notes:

  • README: broken link. Author: unrealwork #4093
  • Wrong German translation of declaration.order.access in messages_de.properties. Author: sirdis #4081
  • Perform refactoring of AnnotationLocationCheck to increase code readability. Author: Andrei Selkin #4055
  • google_checks: update to most recent version of style guide ( Feb 28, 2017 ). Author: Roman Ivanov #3888
  • spelling: fix spelling and punctuation in comments (RightCurly). Author: Andrei Selkin
  • google_checks: update to most recent version of style guide (3 November 2016). Author: Andrei Selkin #3755
  • NPath for empty block is 1. Author: Roman Ivanov #4045
  • Add new setting in Beginning Development for IDEA docs. Author: Vikramaditya Kukreja #4030
  • doc: fix typos in Travis PR validation messages. Author: Vladislav Lisetskii
  • UTs should not use ROOT locale when they test violation/error message. Author: Luolc #3989
  • wercker ci should have most of testing launches on real code to shorten time of Travis execution. Author: Roman Ivanov #3798
  • Split and Organize Checkstyle inputs by Test for SeparatorWrap. Author: Sagar #3904
  • doc: update documentation for usage of "period" property at SummaryJavadoc. Author: Sagar #3906
  • spelling: corrected sentence. Author: Sagar
  • EmptyLineSeparator check not enforcing empty line after class def, enum def or interface def tokens. Author: Roman Ivanov #3089
  • spelling: change 'suite' to 'suit'. Author: ljacqu
  • WritingChecks: add documentation on java grammar. Author: Sagar #3883
  • expand documentation on METHOD_REF token. Author: Luolc #3731
  • circleci: provide ability to skip CI executions base on commit files. Author: Vladislav Lisetskii #3869
  • RequireThisCheck is not fully covered with UTs. Author: Andrei Selkin #3848
  • spelling: fix typo in documentation. Author: Craig P. Motlin
  • Code coverage is not working for certain classes in checkstyle. Author: Andrei Selkin #3843
  • Travis failure: "sonatype-nexus-staging not found" during release. Author: Roman Ivanov #3868
  • DetailAst class unclear logic in addChild method. Author: Abulfaz Ahmadov #3491
  • make code coverage for MainFrameModel 100%. Author: Xiao Pu #3648
  • Refactoring for RightCurlyCheck.java. Author: sagar shah #3685
  • Travis failure: "sonatype-nexus-staging not found" during release. Author: Roman Ivanov #3868
  • Split and Organize Checkstyle inputs by Test for WhitespaceAfterCheck. Author: Pedro Portela #3897
  • Split and Organize Checkstyle inputs by Test for TypecastParenPad. Author: Piyush Sharma #3900
  • CommitValidationTest: add character limit to line. Author: sagar shah #3910
  • doc: add examples for xdoc for ArrayTrailingComma. Author: Pedro Portela #3943
  • DetailASTTest: 'checkTree' failing on deep AST tree. Author: LoLo #3961
  • remove from Input files "Compilable with Java8". Author: LoLo #3965
  • Indentation UTs should not use ROOT locale when they test violation/error message. Author: LoLo #4003
  • Split and Organize Checkstyle inputs by Test for OperatorWrap. Author: Nikhil Gupta #3929
  • Split and Organize Checkstyle inputs by Test for MethodParamPad. Author: Nikhil Gupta #3954
  • Split and Organize Checkstyle inputs by Test for GenericWhitespace. Author: subkrish #3958
  • Split and Organize Checkstyle inputs by Test for EmptyForInitializerPadCheck. Author: samuel-gu #3970
  • Split and Organize Checkstyle inputs by Test for EmptyForIteratorPad. Author: shivanshsoni #3976
  • Split and Organize Checkstyle inputs by Test for EmptyLineSeparator. Author: anudeepti2004 #3985
  • Split and Organize Checkstyle inputs by Test for AnonInnerLength. Author: samuel-gu #3986
  • Split and Organize Checkstyle inputs by Test for ExecutableStatementCount. Author: GabrielBercaru #3991
  • Split and Organize Checkstyle inputs by Test for FileLength. Author: Grigorii Shevchenko #3999
  • Split and Organize Checkstyle inputs by Test for MethodCount. Author: timurt #4014
  • Split and Organize Checkstyle inputs by Test for MethodLength. Author: GabrielBercaru #4042
  • Split and Organize Checkstyle inputs by Test for AbbreviationAsWordInName. Author: Igor Shmagrinskiy #4095

Release 7.6

New:

  • add allowEmptyCatches parameter to WhitespaceAroundCheck. Author: liscju #3841
  • NoWhitespaceBefore: Add support for varargs. Author: Robert Painsi #3718
  • Google style: allow single character variables. Author: Andrei Selkin #3702
  • NPathComplexityCheck: set of tokens should not be customizable by user. Author: kazachka #3797

Bug fixes:

  • DesignForExtension: order of annotations change violation. Author: Andrei Selkin #3830
  • AbbreviationAsWordInName: confusing violation message. Author: rnveach #3721
  • Fix AbstractTypeAwareCheck when dealing with nested interfaces. Author: rnveach #3835
  • IllegalTokenText in google_checks should not has BACKSPACE character. Author: rnveach #3701
  • IndentationCheck: catch child indentation not checked. Author: rnveach #3803
  • Indentation: Annotation with RParen on new line when followed by other annotations causes invalid expectation. Author: shawn.kovalchick #3733

Notes:

  • Code coverage is not working for certain classes in checkstyle. Author: Andrei Selkin #3843
  • ImportControl: improve xdoc documentation. Author: Jochen Van de Velde #2935
  • reevaluate tokens in IllegalTokenText. Author: Vladislav Lisetskii #3729
  • reevaluate 'default' and 'case' in google config for EmptyBlock. Author: rnveach #3748
  • reevaluate tokens in checkstyle config for NeedBraces. Author: rnveach #3735
  • Config: forbid assert token by Illegal token Check. Author: rnveach #3751
  • reevaluate tokens in google config for OperatorWrapCheck. Author: rnveach #3749
  • messages_ja.properties contains funny (wrongly machine-translated) messages. Author: SATO Yusuke #3831
  • config: Remove redundant and incorrect rules from import control configuration. Author: Jochen Van de Velde #3736
  • travis should skip execution if configs of other CIs are changed. Author: Roman Ivanov #3818
  • doc: Add notes on import control config for inner classes. Author: Jochen Van de Velde
  • Rename method in CheckUtil. Author: Vladislav Lisetskii #3820
  • wercker ci should have most of testing launches on real code to shorten time of Travis execution. Author: Roman Ivanov #3798
  • Typo in website documentation for JavadocMethod.. Author: Roman Ivanov #3800
  • doc: Known API issues was added to reference #3810. Author: Roman Ivanov

Release 7.5.1

Bug fixes:

  • PackageObjectFactory hides real exception. Author: rnveach #3778
  • RightCurly: handling of try-with-resources on several lines with CS 7.5. Author: rnveach, Roman Ivanov #3776

Notes:

  • Add the Hibernate Search project to the Checkstyle CI. Author: Roman Ivanov #3790

Release 7.5

Breaking backward compatibility:

  • ParameterName: deprecate 'scope' and 'excludeScope' properties, introduce new property 'accessModifiers'. Author: Andrei Selkin #3675

New:

  • Ant: Cannot override default Checker. Author: rnveach #3530
  • ImportControl should have property which allows to validate specified file path. Author: Jochen Van de Velde #3462

Bug fixes:

  • NullPointerException in AbstractHeaderCheck when cache file specified and no header file. Author: rnveach #3771
  • RequireThisCheck doesn't see outer classes for anonymous classes. Author: Vladislav Lisetskiy #3041
  • NPE on type parameter annotations for this. Author: Markus Rathgeb #3732
  • UnusedImports behaviour is different from documentation. Author: Andrei Selkin #3741
  • Javadoc: Column number of DetailNode is always 0 for first line. Author: kazachka #3507
  • FallThrough check doesn't correctly handle try-with-resources. Author: rnveach #3509
  • RedundantModifier: no violation on final enum field methods. Author: rnveach #3582
  • NPE in RightCurly with LITERAL_DO on do-while without curly braces. Author: rnveach #3681

Notes:

  • reevaluate tokens in google config for NeedBracesCheck. Author: rnveach #3753
  • refactoring: RightCurlyCheck code expression. Author: rnveach #3764
  • Verify tokens in google config. Author: rnveach #3740
  • Verify tokens in checkstyle config. Author: rnveach #3720
  • Strive for 100% mutation coverage. Author: rnveach, Roman Ivanov #3708
  • doc: Fix typo in config_imports.xml. Author: Jochen Van de Velde
  • Investigate pitest tool. Author: Roman Ivanov #3271
  • add pgjdbc project at NoErrorTest group of tests. Author: Roman Ivanov #3670
  • use shippable CI in testing. Author: Oleg Efremenkov #3316
  • doc: fix the escaping of AvoidEscapedUnicodeCharactersCheck's javadocs. Author: Michael Diamond
  • use new checks and new properties from sevntu.checkstyle project. Author: rnveach #3064
  • CI special phase to enforce 644 permissions on all files. Author: Roman Ivanov, MaksimP #3683
  • create xdoc for FileContentsHolder. Author: rnveach #3664
  • doc: Fix incorrect documentation for SuppressWithNearbyCommentFilter. Author: Charlie Pai
  • doc: how to generate sources after import project to IntelliJ IDEA. Author: Roman Ivanov

Release 7.4

New:

  • Support LITERAL_SYNCHRONIZED token for NoWhitespaceAfter Rule. Author: rnveach #2803
  • google_checks.xml : NO space is allowed method method name and its arguments. Author: rnveach #2809
  • Support more tokens in WhitespaceAfter check. Author: MaksimP #3333
  • Checker: option to allow printing exception as violation and continue execution. Author: rnveach #3611
  • ImportControl: allow to load files from resources. Author: Jochen Van de Velde #3450

Bug fixes:

  • NullPointerException when using NeedBraces with tokens LITERAL_CASE, LITERAL_DEFAULT. Author: liscju #3655
  • CustomImportOrder should check that import groups are separated by one line only. Author: kazachka #3551
  • RightCurly was misconfigured in google_checks.xml for do-while blocks. Author: Roman Ivanov #3678
  • keep a map of Check name and it package in source to avoid brute force load by PackageObjectFactory from all packages. Author: Vladislav Lisetskii #3184
  • Duplicated Checks in google_checks.xml config should have "id". Author: Roman Ivanov #3662
  • skip unnecessary exception 'Severity not set, ignoring exception'. Author: Roman Ivanov #3657
  • EmptyLineSeparator causing violation in `package-info.java`. Author: kazachka #3426
  • FinalLocalVariable should not to check multi-catch variables. Author: liscju #3617
  • ImportOrder: Check that import groups aren't separated internally. Author: linelect #2143

Notes:

  • update documentation about getAcceptableTokens for javadoc Checks. Author: Roman Ivanov #3672
  • update documentation for VariableDeclarationUsageDistance with allowedDistance = 0. Author: Roman Ivanov #3665
  • Module term and usage is confusing in test area. Author: rnveach #3667
  • Using the SPDX identifier for the license name. Author: Robert Reiz #3653
  • XDoc: extend validation to Checker and TreeWalker. Author: rnveach #3622
  • travis: use standalone shell files. Author: Roman Ivanov #3632
  • CustomImportControl bad document examples that could lead to false positive on 'special group'. Author: Roman Ivanov #3590
  • Add new Sevntu checks and create UT for missing checks. Author: Roman Ivanov #3628
  • repo files should not have execute permissions. Author: MaksimP #3600
  • use shippable CI in testing. Author: Oleg Efremenkov #3316
  • 100% UT coverage for ParseTreeTablePModel.java. Author: Saideep, Roman Ivanov #3606
  • Set Load external DTD feature to be enabled. Author: Aurimas Liutikas #3605
  • Modules and XDocs: change setter methods to receive similar types with field type for easier xdoc validation (more 2). Author: rnveach #3575
  • ImportControl: Deprecate 'url' property in favor of the 'file' property. Author: Jochen Van de Velde #3584
  • Unexpected loss of coverage for PropertyCacheFile.java. Author: Roman Ivanov #3594
  • Update ISSUE_TEMPLATE.md. Author: Roman Ivanov
  • refactoring to ImportControlCheck. Author: kazachka #3498
  • ThreadLocal usage in single threaded checkstyle. Author: Vladislav Lisetskii #2992
  • Detect final methods in Enumeration for RedundantModifier. Author: rnveach #2068

Release 7.3

Breaking backward compatibility:

  • Javadoc grammar: Delete child nodes in Javadoc TEXT node. Author: rnveach #3170

New:

  • Update Google style coverage to state of 12 July 2016. Author: alberto.cuda #3381
  • Modules and XDocs: changed setter methods to receive similar types with field type for easier xdoc validation. Author: rnveach #3255
  • CLI: Cannot override default Checker. Author: rnveach #3515
  • ParameterNameCheck: new scope and excludeScope properties. Author: alberto.cuda #3473
  • google_checks.xml CustomImportOrder problem. Author: Andrei Selkin #941

Bug fixes:

  • GUI: Add support of DetailNode objects in CodeSelector. Author: kazachka #3432
  • GUI: Inconsistency in AST structure for block-comments. Author: kazachka #3445
  • Checker Cache not saving files that have suppressed violations. Author: rnveach #3488

Notes:

  • ImportOrder: checkstyle_checks.xml does not have separate "java" group. Author: linelect #3577
  • doc: fix broken link to file filters page. Author: Ken Geis
  • use ForbidAnnotationElementValueCheck from sevntu.checkstyle. Author: rnveach #3567
  • Turn on Config Cache File Locally for Developers. Author: rnveach #3487
  • document isCommentNodesRequired method in xdoc. Author: Roman Ivanov #3561
  • Checkstyle tests should not require internet. Author: rnveach #3536
  • doc: note was placed to TranslationCheck that it has problems with Checker cache. Author: Roman Ivanov

Release 7.2

New:

  • DesignForExtension: consider overridable methods and javadoc. Author: Andrei Selkin #3102
  • ImportControl: allow regex in subpackage elements.. Author: Volker Boerchers #2999
  • Allow WhitespaceAround for ARRAY_INIT token. Author: zenigata #3202

Bug fixes:

  • Inconsistency in AST structure for block-comments. Author: kazachka #3431
  • Checker Cache invalidated falsely on load in second run due to external resources. Author: rnveach #3489
  • Wrong warning from AvoidEscapedUnicodeCharacters. Author: Dzmitry Rusak #3476
  • Add METHOD_REF to the list of valid tokens for OperatorCheck. Author: alberto.cuda #3472
  • DetailAST should invalidate childCount cache. Author: rnveach #3486
  • DetailAST should invalidate its methods cache (aka lazy-load). Author: Andrei Selkin #3466

Notes:

  • Rename PkgControl to ImportControl. Author: Jochen Van de Velde #3514
  • split Guard class into two. Author: Jochen Van de Velde #3497
  • openjdk8/9 test code should be parseable by checkstyle. Author: Roman Ivanov #3033
  • use shippable CI in testing. Author: Roman Ivanov #3316

Release 7.1.2

Bug fixes:

  • Wrong order of "default" method modifier. Author: alberto.cuda #3471
  • EqualsHashCode: hashCode without equals is not a violation. Author: rnveach #3308

Notes:

  • Revert "Pull #3162: Update version of commons-collections to 3.2.2 to fix security vulnerability CVE-2015-6420". Author: Roman Ivanov
  • Cut down on Checkstyle's dependencies on Guava. Author: Andrei Selkin #3433
  • doc: fixed the wording in javadoc for TrailingCommentCheck. Author: José Castro
  • doc: added missing slash to backport documentation url (#3457). Author: rnveach
  • doc: added links to cs backport jre6 (#3447). Author: rnveach
  • Replace line-based suppressions with inline ones for Checkstyle's suppressions.xml. Author: Andrei Selkin #2226
  • Update Checkstyle GUI in order to display Javadoc tokens. Author: Baratali Izmailov #408
  • Fix ForbidCertainImports config. Author: Andrei Selkin #3412
  • use CyclomaticComplexity.switchBlockAsSingleDecisionPoint in checkstyle_checks.xml. Author: Andrei Selkin #2874
  • SuppressCommentFilter not working with ClassDataAbstractionCoupling when specified on class. Author: Andrei Selkin #977
  • Resolve IntelliJ IDEA inspection violations for java8. Author: Mariia Mykhailova #3233
  • Replace Guava's Joiner with Java 8 native approach. Author: Andrei Selkin #3406
  • Fix grammar in issue templates. Author: Roman Ivanov #3428
  • spelling: PR instructions, YOU --> YOUR. Author: Elliotte Rusty Harold

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 receive 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 Lisetskii #3220
  • CommentsIndentation : false-positive in empty array declarations. Author: Vladislav Lisetskii #3127
  • CommentsIndentation: false-positive when a singleline comment follows a block comment. Author: Vladislav Lisetskii #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 ability 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 message 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 Lisetskii #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 Lisetskii #2998
  • Indentation: fix line wrap handling. 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 Lisetskii #3005
  • FinalLocalVariable: false positive when variable is assigned multiple times. Author: Andrei Selkin #3006
  • Support for LAMDA token in WhitespaceAround check. Author: Vladislav Lisetskii #2924

Notes:

  • maven-site-plugin:3.5 has problem to build our website. Author: Vladislav Lisetskii, 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 Lisetskii #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 Lisetskii #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 Lisetskii #3035
  • remove dependency to commons-lang3 library. Author: Rasmus Kaj #2428
  • reenable two sevntu checks. Author: Vladislav Lisetskii #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 Lisetskii, 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 coverage table google_style.html should 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 Lisetskii #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 Lisetskii #2869
  • Nesting Checks in each other in config does not produce any error. Author: rnveach #2773
  • Forbid multiple violation for the same line in IndentationCheck. 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 Lisetskii #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 regression testing. Author: Vladislav Lisetskii #2938
  • PMD: resolve problems from DefaultPackage rule. Author: Vladislav Lisetskii, Roman Ivanov #957
  • doc: Improve javadoc of parameters of AnnotationLocationCheck.. Author: liscju
  • fix java8 compilation problems 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 Lisetskii #1159
  • ant with failOnViolation="false" will FAIL. Author: Vladislav Lisetskii #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 Lisetskii #2609
  • spelling: Correct spelling for fast-forward-merge.sh. Author: Thomas Paul Mann
  • UTs should be launched in default locale. Author: Vladislav Lisetskii #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 between 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 Lisetskii #2539

Notes:

  • Add checkstyle messages to xdocs. Author: rnveach #2836
  • Setup 'Circle CI' to run checkstyle-tester project on JDK sources. Author: Vladislav Lisetskii, 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 Lisetskii, 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 Lisetskii #2239
  • OneStatementPerLine: false match with try-with-resources. Author: Jon Bake #2211
  • Performance issue in UnusedImportsCheck. Author: Vladislav Lisetskii #2631
  • Remove unused message. Author: Vladislav Lisetskii #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 Lisetskii #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 Lisetskii #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 Lisetskii #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 Lisetskii #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 Lisetskii #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 Lisetskii #2067
  • FallThroughCheck handles finally incorrectly. Author: Vladislav Lisetskii #1438
  • EqualsAvoidNull check should сheck String concatenations. Author: Vladislav Lisetskii #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 Lisetskii #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 Lisetskii #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 Lisetskii #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 Lisetskii #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 Lisetskii #2474
  • Fix FinalLocalVariable false-negative. Author: Vladislav Lisetskii #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 identification 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 optimization. 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 resolved. 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 Lisetskii #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 Lisetskii #2095
  • Fix IllegalStateException in JavadocTypeCheck. Author: Vladislav Lisetskii #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 interfaces or annotations in Final Class Check. Author: Vladislav Lisetskii #2064
  • Detect nested enums marked as static in RedundantModifier check. Author: Vladislav Lisetskii #1530
  • Fixed NPE in MutableExceptionCheck.isExtendedClassNamedAsException. Author: Andrei Selkin #1903
  • Change message in SummaryJavadocCheck. Author: Vladislav Lisetskii #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 Lisetskii #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 Lisetskii #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 Lisetskii #2195
  • Anchor naming checks in google_style.xml. Author: Vladislav Lisetskii #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 Lisetskii #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 Lisetskii #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 Lisetskii #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 Lisetskii #1214
  • Create separate web page for old release notes. Author: Vladislav Lisetskii #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 Lisetskii #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 Lisetskii
  • 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 dependencies 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 Lisetskii #1367
  • Fix FallThroughCheck fails on if with no else. Author: Andrei Selkin #1395
  • fix JavadocParagraph allows new line before the next paragraph. Author: Vladislav Lisetskii #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 Lisetskii #1158
  • provide human message for SuppressWarningsHolder. Author: Vladislav Lisetskii #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: Baratali 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: deprecate 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 reorganized for easier reading. Author: Aleksandr Ivanov #1376
  • add example for ConstantName in xdoc. Author: Vladislav Lisetskii #1106
  • commented code was removed from CheckerTest. Author: Roman Ivanov
  • fix eclipse package declaration error in InputPackageDeclaration. Author: Vladislav Lisetskii
  • 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 Lisetskii #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 Lisetskii #1275
  • rename fields in ConfigurationBuilder and BaseCheckTestSupport. Author: Vladislav Lisetskii
  • update build procedure to validate all XML files against their schemas. Author: Vladislav Lisetskii #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://sonarcloud.io. 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 Lisetskii #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 Lisetskii #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 Lisetskii #1152
  • fix for JavadocMethodCheck: catch NoClassDefFoundError in ClassResolver. Author: Vladislav Lisetskii #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 Lisetskii #1231
  • move non-compilable input to resources-noncompilable. Author: Vladislav Lisetskii
  • Minor update in FallThroughCheck xdoc and javadoc. Author: Vladislav Lisetskii
  • 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 .gitignore. 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 Lisetskii #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 Lisetskii #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 Lisetskii #1009
  • removing dead code and refactoring in VisibilityModifier check. Author: Vladislav Lisetskii #1107
  • Replace deprecated PosixParser with DefaultParser. Author: Michal Kordas #1099
  • remove dead code from MutableException check. Author: Vladislav Lisetskii #1103
  • remove dead code from FinalClass check. Author: Vladislav Lisetskii #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 'ignoreOverridden' 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.
Old Release Notes 1.0 through 5.9