@@ -6,6 +6,76 @@ The file documents changes to the PHP_CodeSniffer project.
66
77_Nothing yet._
88
9+ ## [3.13.0] - 2025-05-11
10+
11+ ### Added
12+ - Added support for PHP 8.4 asymmetric visibility modifiers to the tokenizer. [#871]
13+ - Thanks to [Daniel Scherzer][@DanielEScherzer] for the patch.
14+ - Added support for PHP 8.4 `final` properties to the following sniffs:
15+ - PSR2.Classes.PropertyDeclaration [#950]
16+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patches.
17+
18+ ### Changed
19+ - Generic.WhiteSpace.LanguageConstructSpacing: will now also check the spacing after the `goto` language construct keyword. [#917]
20+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
21+ - The PSR2.Classes.PropertyDeclaration will now check that the `final` modifier keyword is placed before a visibility keyword. [#950]
22+ - Errors will be reported via a new `FinalAfterVisibility` error code.
23+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
24+ - Improved Help information about the `--reports` CLI flag. [#1078]
25+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
26+ - The documentation for the following sniffs has been improved:
27+ - PSR1.Files.SideEffects
28+ - PSR2.ControlStructures.SwitchDeclaration
29+ - PSR2.Namespaces.NamespaceDeclaration
30+ - Thanks to [Rodrigo Primo][@rodrigoprimo] for the patches.
31+ - Various housekeeping, including improvements to the tests and documentation.
32+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for their contributions.
33+
34+ ### Deprecated
35+
36+ - Nearly everything which was soft deprecated before is now hard deprecated and will show deprecation notices:
37+ - This applies to:
38+ - All sniffs which will be removed in 4.0. [#888]
39+ - The deprecated Generator methods. [#889]
40+ - The old array property setting format (via comma separated strings). [#890]
41+ - Sniffs not implementing the `PHP_CodeSniffer\Sniffs\Sniff` interface. [#891]
42+ - Sniffs not following the naming conventions. [#892]
43+ - Standards called Internal. [#893]
44+ - Sniffs which don't listen for PHP, like JS/CSS specific sniffs. [#894]
45+ - The deprecation notices can be silenced by using the `-q` (=quiet) CLI flag.
46+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patches.
47+
48+ ### Fixed
49+ - Fixed bug [#1040] : Generic.Strings.UnnecessaryHeredoc - false positive for heredocs containing escape sequences.
50+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
51+ - Fixed bug [#1040] : Generic.Strings.UnnecessaryHeredoc - fixer would not clean up escape sequences which aren't necessary in nowdocs.
52+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
53+ - Fixed bug [#1048] : A file under scan would sometimes be updated with partial fixes, even though the file "failed to fix".
54+ - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
55+
56+ ### Other
57+ **Calling all testers!**
58+
59+ The first beta release for PHP_CodeSniffer 4.0 has been tagged. Please help by testing the beta release and reporting any issues you run into.
60+ Upgrade guides for both [ruleset maintainers/end-users][wiki-upgrade-guide-users-40], as well as for [sniff developers and integrators][wiki-upgrade-guide-devs-40], have been published to the Wiki to help smooth the transition.
61+
62+ [wiki-upgrade-guide-users-40]: https://github.com/PHPCSStandards/PHP_CodeSniffer/wiki/Version-4.0-User-Upgrade-Guide
63+ [wiki-upgrade-guide-devs-40]: https://github.com/PHPCSStandards/PHP_CodeSniffer/wiki/Version-4.0-Developer-Upgrade-Guide
64+
65+ [#871]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/871
66+ [#888]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/888
67+ [#889]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/889
68+ [#890]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/890
69+ [#891]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/891
70+ [#892]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/892
71+ [#893]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/893
72+ [#894]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/894
73+ [#917]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/917
74+ [#950]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/950
75+ [#1040]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/1040
76+ [#1048]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/1048
77+ [#1078]: https://github.com/PHPCSStandards/PHP_CodeSniffer/pull/1078
78+
979## [3.12.2] - 2025-04-13
1080
1181### Added
@@ -7512,6 +7582,7 @@ Additionally, thanks to [Alexander Turek][@derrabus] for consulting on the repo
75127582-->
75137583
75147584[Unreleased]: https://github.com/PHPCSStandards/PHP_CodeSniffer/compare/master...HEAD
7585+ [3.13.0]: https://github.com/PHPCSStandards/PHP_CodeSniffer/compare/3.12.2...3.13.0
75157586[3.12.2]: https://github.com/PHPCSStandards/PHP_CodeSniffer/compare/3.12.1...3.12.2
75167587[3.12.1]: https://github.com/PHPCSStandards/PHP_CodeSniffer/compare/3.12.0...3.12.1
75177588[3.12.0]: https://github.com/PHPCSStandards/PHP_CodeSniffer/compare/3.11.3...3.12.0
0 commit comments