What's Changed
- refactor: increase performance by ~7% thanks to Tokens::block*Cache hit increased by ~12% by @keradus in #6176
- refactor: Tokens - fast check for non-block in 'detectBlockType', evaluate definitions only once in 'getBlockEdgeDefinitions' by @keradus in #7655
- refactor: Tokens::clearEmptyTokens - play defensive with cache clearing by @keradus in #7658
- feat:
@PhpCsFixer
ruleset - enable no_whitespace_before_comma_in_array.after_heredoc by @mvorisek in #7670 - feat: Add
spacing
option toPhpdocAlignFixer
by @kusab85 in #6505 - feat: Add
union_types
option tophpdoc_to_param_type
,phpdoc_to_property_type
, andphpdoc_to_return_type
fixers by @localheinz in #7672 - feat: Add support for official Docker images of Fixer by @hgiesenow in #7555
- feat: Introduce
heredoc_closing_marker
fixer by @mvorisek in #7660 - feat: Introduce
multiline_string_to_heredoc
fixer by @mvorisek in #7665 - feat: Introduce
NumericLiteralSeparatorFixer
by @muuvmuuv in #6761 - feat: no_superfluous_phpdoc_tags - support for arrow function by @keradus in #7666
- feat: Simplify closing marker when possible in
heredoc_closing_marker
fixer by @mvorisek in #7676 - feat: Support typed properties and attributes in
fully_qualified_strict_types
by @mvorisek in #7659 - fix:
BinaryOperatorSpacesFixer
- align correctly when multiple shifts occurs in single line by @wadakatu in #7593 - fix:
ClassReferenceNameCasingFixer
capitalizes the property name after the nullsafe operator by @erickskrauch in #7696 - fix:
fully_qualified_strict_types
withleading_backslash_in_global_namespace
enabled - handle reserved types in phpDoc by @mvorisek in #7648 - fix:
no_superfluous_phpdoc_tags
must honor multiline docs by @mvorisek in #7697 - fix:
NoSpaceAroundDoubleColonFixer
must run beforeMethodChainingIndentationFixer
by @mho22 in #7723 - fix:
numeric_literal_separator
- Handle zero-leading floats properly by @muuvmuuv in #7737 - fix: Improve progress bar visual layer by @Slamdunk in #7708
- fix: indentation of control structure body without braces by @julienfalque in #7663
- fix: make sure all PHP extensions required by PHPUnit are installed by @kubawerlos in #7727
- fix: PhpdocToReturnTypeFixerTest - support for arrow functions by @keradus in #7645
- fix: Several improvements for
fully_qualified_strict_types
(respect declared symbols, relative imports, leading backslash in global namespace) by @mvorisek in #7679 - fix: SimplifiedNullReturnFixer - support array return typehint by @keradus in #7728
- fix: Support numeric values without leading zero in
numeric_literal_separator
by @muuvmuuv in #7735 - chore: better identify EXPERIMENTAL rules by @keradus in #7729
- chore: fix issue detected by unlocked PHPStan + upgrade dev-tools by @keradus in #7678
- chore: handle extract() by @keradus in #7684
- chore: Mention contributors in app info by @mvorisek in #7668
- chore: no need to mark private methods as internal by @keradus in #7715
- chore: ProjectCodeTests - dry for function usage extractions by @keradus in #7690
- chore: reduce PHPStan baseline by @keradus in #7644
- chore: use numeric literal separator for PHP version IDs by @keradus in #7712
- chore: use numeric_literal_separator for project by @keradus in #7713
- chore: Utils::sortElements - better typing by @keradus in #7646
- CI: Allow running Stale Bot on demand by @Wirone in #7711
- CI: Fix PHP 8.4 by @Wirone in #7702
- CI: Give write permissions to Stale Bot by @Wirone in #7716
- CI: Use
actions/stale
v9 by @Wirone in #7710 - docs: Add information about allowing maintainers to update PRs by @Wirone in #7683
- docs: CONTRIBUTING.md - update Opening a PR by @keradus in #7691
- docs: Display/include tool info/version by default in commands and reports by @keradus in #7733
- DX:
NumericLiteralSeparatorFixer
- change default strategy touse_separator
by @keradus in #7730 - DX: fix deprecation tests warnings for PHP 7.4 by @mvorisek in #7725
- DX: update
host.docker.internal
in Compose override template by @julienfalque in #7661 - test: ensure we do not forget to run any test related to
short_open_tag
by @keradus in #7638
New Contributors
- @hgiesenow made their first contribution in #7555
- @erickskrauch made their first contribution in #7696
- @mho22 made their first contribution in #7723
Full Changelog: v3.46.0...v3.47.0