-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
PHP 8.2 | Tokenizer, File, sniffs: account for new true
type
#3662
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
jrfnl
force-pushed
the
PHP-8.2/account-for-true-type
branch
from
October 8, 2022 23:14
f70a6bc
to
473de76
Compare
Previously, `false` and `null` were already allowed in union types. As of PHP 8.2, `true` has been added to the supported types in PHP and can also be used in union types. Also see: https://3v4l.org/ZpfID This commit adjusts the Tokenizer to correctly retokenize the `T_BITWISE_OR` character to `T_UNION_TYPE` when `true` is included in a union type. Includes unit tests. Refs: * https://wiki.php.net/rfc/true-type
As of PHP 8.2, `true`, `false` and `null` will be allowed as stand-alone types. `true` can now also be used in union types (was already allowed for `false` and `null`). The `true` and the `false` types are allowed to be nullable, the `null` type is not (but that's not the concern of this method). Also see: https://3v4l.org/ZpfID This commit adjusts the `File::getMethodProperties()` method to take `true` into account. `false` and `null` were already handled due to these previously already being allowed in union types. Includes unit tests. Refs: * https://wiki.php.net/rfc/null-false-standalone-types * https://wiki.php.net/rfc/true-type
As of PHP 8.2, `true`, `false` and `null` will be allowed as stand-alone types. `true` can now also be used in union types (was already allowed for `false` and `null`). The `true` and the `false` types are allowed to be nullable, the `null` type is not (but that's not the concern of this method). Also see: https://3v4l.org/ZpfID This commit adjusts the `File::getMethodParameters()` method to take `true` into account. `false` and `null` were already handled due to these previously already being allowed in union types. Includes unit tests. Refs: * https://wiki.php.net/rfc/null-false-standalone-types * https://wiki.php.net/rfc/true-type
As of PHP 8.2, `true`, `false` and `null` will be allowed as stand-alone types. `true` can now also be used in union types (was already allowed for `false` and `null`). The `true` and the `false` types are allowed to be nullable, the `null` type is not (but that's not the concern of this method). Also see: https://3v4l.org/ZpfID This commit adjusts the `File::getMemberProperties()` method to take `true` into account. `false` and `null` were already handled due to these previously already being allowed in union types. Includes unit tests. Includes minor touch up of some pre-existing tests. Refs: * https://wiki.php.net/rfc/null-false-standalone-types * https://wiki.php.net/rfc/true-type
As of PHP 8.2, `true`, `false` and `null` will be allowed as stand-alone types. The `true` and the `false` types are allowed to be nullable, the `null` type is not (but that's not the concern of the sniff). Also see: https://3v4l.org/ZpfID This commit adjusts the sniff to take `true` into account. `false` and `null` were already handled due to these previously already being allowed in union types. Includes unit tests. Refs: * https://wiki.php.net/rfc/null-false-standalone-types * https://wiki.php.net/rfc/true-type
As of PHP 8.2, `true`, `false` and `null` will be allowed as stand-alone types. The `true` and the `false` types are allowed to be nullable, the `null` type is not (but that's not the concern of the sniff). Also see: https://3v4l.org/ZpfID This adjusts the sniff to take these new types into account. Includes unit tests. Refs: * https://wiki.php.net/rfc/null-false-standalone-types * https://wiki.php.net/rfc/true-type
jrfnl
force-pushed
the
PHP-8.2/account-for-true-type
branch
from
March 2, 2023 03:43
473de76
to
3e3620f
Compare
@gsherwood Could this please be earmarked for |
5 tasks
5 tasks
This was referenced Nov 9, 2023
Merged
This was referenced Nov 24, 2023
Closing as replaced by PHPCSStandards/PHP_CodeSniffer#49 |
FYI: this fix is included in today's PHP_CodeSniffer 3.8.0 release. As per #3932, development on PHP_CodeSniffer will continue in the PHPCSStandards/PHP_CodeSniffer repository. If you want to stay informed, you may want to start "watching" that repo (or watching releases from that repo). |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PHP 8.2 | Tokenizer/PHP: allow for true in union types
Previously,
false
andnull
were already allowed in union types. As of PHP 8.2,true
has been added to the supported types in PHP and can also be used in union types.Also see: https://3v4l.org/ZpfID
This commit adjusts the Tokenizer to correctly retokenize the
T_BITWISE_OR
character toT_UNION_TYPE
whentrue
is included in a union type.Includes unit tests.
Refs:
PHP 8.2 | File::getMethodProperties(): allow for true in types
As of PHP 8.2,
true
,false
andnull
will be allowed as stand-alone types.true
can now also be used in union types (was already allowed forfalse
andnull
).The
true
and thefalse
types are allowed to be nullable, thenull
type is not (but that's not the concern of this method).Also see: https://3v4l.org/ZpfID
This commit adjusts the
File::getMethodProperties()
method to taketrue
into account.false
andnull
were already handled due to these previously already being allowed in union types.Includes unit tests.
Refs:
PHP 8.2 | File::getMethodParameters(): allow for true in types
As of PHP 8.2,
true
,false
andnull
will be allowed as stand-alone types.true
can now also be used in union types (was already allowed forfalse
andnull
).The
true
and thefalse
types are allowed to be nullable, thenull
type is not (but that's not the concern of this method).Also see: https://3v4l.org/ZpfID
This commit adjusts the
File::getMethodParameters()
method to taketrue
into account.false
andnull
were already handled due to these previously already being allowed in union types.Includes unit tests.
Refs:
PHP 8.2 | File::getMemberProperties(): allow for true in types
As of PHP 8.2,
true
,false
andnull
will be allowed as stand-alone types.true
can now also be used in union types (was already allowed forfalse
andnull
).The
true
and thefalse
types are allowed to be nullable, thenull
type is not (but that's not the concern of this method).Also see: https://3v4l.org/ZpfID
This commit adjusts the
File::getMemberProperties()
method to taketrue
into account.false
andnull
were already handled due to these previously already being allowed in union types.Includes unit tests.
Includes minor touch up of some pre-existing tests.
Refs:
PHP 8.2 | Generic/LowerCaseType: allow for stand-alone true/false/null
As of PHP 8.2,
true
,false
andnull
will be allowed as stand-alone types.The
true
and thefalse
types are allowed to be nullable, thenull
type is not (but that's not the concern of the sniff).Also see: https://3v4l.org/ZpfID
This commit adjusts the sniff to take
true
into account.false
andnull
were already handled due to these previously already being allowed in union types.Includes unit tests.
Refs:
PHP 8.2 | PSR12/NullableTypeDeclaration: allow for nullable true/false]
As of PHP 8.2,
true
,false
andnull
will be allowed as stand-alone types.The
true
and thefalse
types are allowed to be nullable, thenull
type is not (but that's not the concern of the sniff).Also see: https://3v4l.org/ZpfID
This adjusts the sniff to take these new types into account.
Includes unit tests.
Refs: