Skip to content

Squiz/FunctionDeclarationArgumentSpacing: handle asym modifiers for constructor property promotion #1121

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conversation

jrfnl
Copy link
Member

@jrfnl jrfnl commented Jun 6, 2025

Description

This commit adds handling of the spacing after asymmetric visibility modifiers used for constructor property promotion to this sniff.

The spacing requirements are aligned with the spacing expectations of the Squiz.WhiteSpace.ScopeKeywordSpacing sniff, so the sniffs should not conflict with each other.

Additionally, the new check has a dedicated error code, which means that - if there would be a conflict anywhere - the asym visibility spacing check within this sniff can easily be turned off.

Includes tests.

Suggested changelog entry

  • Added support for PHP 8.4 asymmetric visibility modifiers to the following sniffs:
    • Squiz.Functions.FunctionDeclarationArgumentSpacing

Related issues/external references

Follow up on #851
Follow up on #1116

Related to #734

@jrfnl jrfnl added this to the 3.13.1 milestone Jun 6, 2025
@jrfnl jrfnl mentioned this pull request Jun 6, 2025
43 tasks
Base automatically changed from php-8.4/feature/file-methods-support-asym-visibility to master June 9, 2025 01:45
@jrfnl jrfnl marked this pull request as ready for review June 9, 2025 01:55
…onstructor property promotion

This commit adds handling of the spacing after asymmetric visibility modifiers used for constructor property promotion to this sniff.

The spacing requirements are aligned with the spacing expectations of the `Squiz.WhiteSpace.ScopeKeywordSpacing` sniff, so the sniffs should not conflict with each other.

Additionally, the new check has a dedicated error code, which means that - if there would be a conflict anywhere - the asym visibility spacing check within this sniff can easily be turned off.

Includes tests.
@jrfnl jrfnl force-pushed the php-8.4/feature/squiz-functiondeclarationargspacing-support-asym-visibility branch from 9fa77a2 to af2465a Compare June 9, 2025 02:37
@jrfnl
Copy link
Member Author

jrfnl commented Jun 9, 2025

Rebased without changes to get a proper build.

@jrfnl jrfnl merged commit d4e23ce into master Jun 9, 2025
62 checks passed
@jrfnl jrfnl deleted the php-8.4/feature/squiz-functiondeclarationargspacing-support-asym-visibility branch June 9, 2025 03:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant