Code that doesn't expect named arguments usages
Here are code pieces that we found that may work not correctly with named arguments:
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/ConstantCanBeUsedInspector.java#L124
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/PrintfScanfArgumentsInspector.java#L82
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/SimpleXmlLoadFileUsageInspector.java#L51 -https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/TypesCastingCanBeUsedInspector.java#L79 -https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/UnqualifiedReferenceInspector.java#L168
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/arrays/ArrayPushMissUseInspector.java#L62
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/arrays/InArrayMissUseInspector.java#L60
- https://github.com/kalessil/phpinspectionsea/blob/dbdf0e2fea67c8ec102dcef7e49c72f458385030/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/arrays/SlowArrayOperationsInLoopInspector.java#L79
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/arrays/TypeUnsafeArraySearchInspector.java#L67
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/dateTime/DateTimeSetTimeUsageInspector.java#L51
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/dateTime/DateTimeSetTimeUsageInspector.java#L72
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/dateTime/StrtotimeUsageInspector.java#L71
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/deprecations/DynamicCallsToScopeIntrospectionInspector.java#L80 -https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/deprecations/MktimeUsageInspector.java#L57
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/fileSystem/CascadingDirnameCallsInspector.java#L97
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/fileSystem/FopenBinaryUnsafeUsageInspector.java#L64
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/strings/CascadeStringReplacementInspector.java#L87
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/strings/CaseInsensitiveStringFunctionsMissUseInspector.java#L69
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/strings/FixedTimeStartWithInspector.java#L67
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/strings/StrContainsCanBeUsedInspector.java#L66
- https://github.com/kalessil/phpinspectionsea/blob/2642310484b66d9d5c7d8cf4f5e8854c5b93151f/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/strings/StrEndsWithCanBeUsedInspector.java#L63
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/strings/StringCaseManipulationInspector.java#L68
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/apiUsage/strings/StringsFirstCharactersCompareInspector.java#L49
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/codeStyle/ArgumentEqualsDefaultValueInspector.java#L94
- https://github.com/kalessil/phpinspectionsea/blob/a96aa1af81ce9931abe94f47a89f5c58bf529f4d/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/codeStyle/StaticClosureCanBeUsedInspector.java#L150
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/languageConstructions/ArgumentUnpackingCanBeUsedInspector.java#L50
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/languageConstructions/InstanceofCanBeUsedInspector.java#L82
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/languageConstructions/PowerOperatorCanBeUsedInspector.java#L53
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/languageConstructions/VariableFunctionsUsageInspector.java#L73
- https://github.com/kalessil/phpinspectionsea/blob/0bbbe936f6a7e664ce20d6ca8a4e77edd4277cd3/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/languageConstructions/nullCoalescing/NullCoalescingOperatorCanBeUsedInspector.java#L172
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/phpUnit/PhpUnitDeprecationsInspector.java#L55
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/phpUnit/strategy/AssertBoolInvertedStrategy.java#L89
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/regularExpressions/apiUsage/PlainApiUseCheckStrategy.java#L92
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/regularExpressions/optimizeStrategy/UnnecessaryCaseManipulationCheckStrategy.java#L34
- https://github.com/kalessil/phpinspectionsea/blob/46a91091a1417ccc3eae13647c4519df182b3757/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/security/CurlSslServerSpoofingInspector.java#L69
- https://github.com/kalessil/phpinspectionsea/blob/46a91091a1417ccc3eae13647c4519df182b3757/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/security/EncryptionInitializationVectorRandomnessInspector.java#L61
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/security/NonSecureUniqidUsageInspector.java#L81
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/semanticalAnalysis/IncorrectRandomRangeInspector.java#L62
- https://github.com/kalessil/phpinspectionsea/blob/b83ce4aa06c3a650dd93a1fec7d051a8dde45a72/src/main/java/com/kalessil/phpStorm/phpInspectionsEA/inspectors/semanticalAnalysis/binaryOperations/strategy/MisplacedOperatorStrategy.java#L54
Generally now it's necessary to take named arguments into account to provide correct behaviour for PHP 8. In 203 build we do have some methods for this to ease the migration. If index is accessible it's recommended to use com.jetbrains.php.PhpWorkaroundUtil#resolveMappedParameterIndex(com.intellij.psi.PsiElement), this method will resolve parameter index taking into account both named argument part and position.
references: https://jetbrains.org/intellij/sdk/docs/products/phpstorm/php_open_api_breaking_changes_203.html
Hey @wbars, many thanks for sharing the potential issues list and migration path. Much appreciated!