@@ -6,6 +6,68 @@ The file documents changes to the PHP_CodeSniffer project.
66
77_Nothing yet._
88
9+ ## [3.12.2] - 2025-04-13
10+
11+ ### Added
12+ - Added support for PHP 8.4 `final` properties to the following sniffs:
13+ - Generic.PHP.LowerCaseConstant [#948]
14+ - Generic.PHP.UpperCaseConstant [#948]
15+ - Squiz.Commenting.DocCommentAlignment [#951]
16+ - Squiz.Commenting.VariableComment [#949]
17+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patches.
18+
19+ ### Changed
20+ - Tokenizer/PHP: a PHP open tag at the very end of a file will now always be tokenized as T_OPEN_TAG, independently of the PHP version. [#937]
21+ - Previously, a PHP open tag at the end of a file was not tokenized as an open tag on PHP < 7.4 and the tokenization would depend on the `short_open_tag` setting.
22+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
23+ - PEAR.Commenting.FunctionComment: improved message for "blank lines between docblock and declaration" check. [#830]
24+ - The documentation for the following sniffs has been improved:
25+ - Generic.Functions.OpeningFunctionBraceBsdAllman
26+ - Generic.Functions.OpeningFunctionBraceKernighanRitchie
27+ - Generic.WhiteSpace.LanguageConstructSpacing
28+ - Thanks to [Rodrigo Primo][@rodrigoprimo] for the patches.
29+ - Various housekeeping, including improvements to the tests and documentation.
30+ - Thanks to [Rodrigo Primo][@rodrigoprimo] and [Juliette Reinders Folmer][@jrfnl] for their contributions.
31+
32+ ### Fixed
33+ - Fixed bug [#830] : PEAR.Commenting.FunctionComment will no longer remove blank lines within attributes.
34+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
35+ - Fixed bug [#929] : Generic.PHP.ForbiddenFunctions: prevent false positives/negatives for code interlaced with comments.
36+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
37+ - Fixed bug [#934] : Generic.PHP.LowerCaseConstant and Generic.PHP.UpperCaseConstant will now correctly ignore DNF types for properties.
38+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
39+ - Fixed bug [#936] : Squiz.Commenting.FunctionCommentThrowTag: sniff would bow out when function has attributes attached, leading to false negatives.
40+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
41+ - Fixed bug [#940] : Squiz.Commenting.VariableComment: false positive for missing docblock for properties using DNF types.
42+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
43+ - Fixed bug [#944] : Squiz.Commenting.FunctionComment did not support DNF/intersection types in `@param` tags.
44+ - Thanks to [Jeffrey Angenent][@devfrey] for the patch.
45+ - Fixed bug [#945] : Squiz.WhiteSpace.FunctionSpacing would get confused when there are two docblocks above a function declaration.
46+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
47+ - Fixed bug [#947] : Squiz.Commenting.FunctionCommentThrowTag: prevent false positives/negatives for code interlaced with comments.
48+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
49+ - Fixed bug [#951] : Squiz.Commenting.DocCommentAlignment did not examine docblocks for `final` classes.
50+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
51+ - Fixed bug [#955] : Potential race condition, leading to a fatal error, when both the `Diff` + the `Code` reports are requested and caching is on.
52+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
53+ - Fixed bug [#956] : Generic.WhiteSpace.ScopeIndent: undefined array index notice when running in debug mode.
54+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
55+
56+ [#830]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/830
57+ [#929]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/929
58+ [#934]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/934
59+ [#936]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/936
60+ [#937]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/937
61+ [#940]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/940
62+ [#944]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/944
63+ [#945]: https://github.com/PHPCSStandards/PHP_CodeSniffer/issues/945
64+ [#947]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/947
65+ [#948]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/948
66+ [#949]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/949
67+ [#951]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/951
68+ [#955]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/955
69+ [#956]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/956
70+
971## [3.12.1] - 2025-04-04
1072
1173### Added
@@ -7450,6 +7512,7 @@ Additionally, thanks to [Alexander Turek][@derrabus] for consulting on the repo
74507512-->
74517513
74527514[Unreleased]: https://github.com/PHPCSStandards/PHP_CodeSniffer/compare/master...HEAD
7515+ [3.12.2]: https://github.com/PHPCSStandards/PHP_CodeSniffer/compare/3.12.1...3.12.2
74537516[3.12.1]: https://github.com/PHPCSStandards/PHP_CodeSniffer/compare/3.12.0...3.12.1
74547517[3.12.0]: https://github.com/PHPCSStandards/PHP_CodeSniffer/compare/3.11.3...3.12.0
74557518[3.11.3]: https://github.com/PHPCSStandards/PHP_CodeSniffer/compare/3.11.2...3.11.3
@@ -7613,6 +7676,7 @@ Additionally, thanks to [Alexander Turek][@derrabus] for consulting on the repo
76137676[@Decave]: https://github.com/Decave
76147677[@dereuromark]: https://github.com/dereuromark
76157678[@derrabus]: https://github.com/derrabus
7679+ [@devfrey]: https://github.com/devfrey
76167680[@deviantintegral]: https://github.com/deviantintegral
76177681[@dhensby]: https://github.com/dhensby
76187682[@dingo-d]: https://github.com/dingo-d
0 commit comments