chore(deps): update all non-major dependencies (minor)
This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| friendsofphp/php-cs-fixer | require-dev | minor |
3.4.0 -> 3.8.0
|
| phpstan/phpstan | require-dev | minor |
1.7.15 -> 1.8.0
|
| vimeo/psalm | require-dev | minor |
4.23.0 -> 4.24.0
|
Release Notes
FriendsOfPHP/PHP-CS-Fixer
v3.8.0
- bug #6322 PhpdocTypesFixer - fix recognizing callable (kubawerlos)
- bug #6331 ClassReferenceNameCasingFixer - Fix false hits (SpacePossum)
- bug #6333 BinaryOperatorSpacesFixer - Fix for alignment in
elseif(paulbalandan, SpacePossum) - bug #6337 PhpdocTypesFixer - fix recognising callable without return type (kubawerlos)
- feature #6286 DateTimeCreateFromFormatCallFixer - Introduction (liquid207)
- feature #6312 TypesSpacesFixer - add option for CS of catching multiple types of exceptions (SpacePossum)
- minor #6326 Bump migration sets used to PHP7.4 (SpacePossum)
- minor #6328 DX: .gitignore ASC file (keradus)
v3.7.0
- bug #6112 [BinaryOperatorSpacesFixer] Fix align of
=inside calls of methods (VincentLanglet) - bug #6279 ClassReferenceNameCasingFixer - Fix for double arrow (SpacePossum)
- bug #6280 Fix bunch of enum issus (SpacePossum)
- bug #6283 ClassReferenceNameCasingFixer - detect imports (SpacePossum)
- feature #5892 NewWithBracesFixer - option to remove braces (jrmajor)
- feature #6081 Allow multiline constructor arguments in an anonymous classes (jrmajor, SpacePossum)
- feature #6274 SingleLineCommentSpacingFixer - Introduction (SpacePossum)
- feature #6300 OrderedClassElementsFixer - handle enums (gharlan)
- feature #6304 NoTrailingCommaInSinglelineFunctionCallFixer - Introduction (SpacePossum)
- minor #6277 Add
is_scalar,sizeof,ini_getin list of compiled functions (jderusse) - minor #6284 ClassReferenceNameCasingFixer - Update doc (SpacePossum)
- minor #6289 PHP7.4 - clean up tests (SpacePossum)
- minor #6290 PHP7.4 - properties types (SpacePossum)
- minor #6291 PHP7.4 - remove run time checks (SpacePossum)
- minor #6292 PhpUnitDedicateAssertFixer - Fix more count cases (SpacePossum)
- minor #6294 PhpUnitDedicateAssertFixer - add assertInstanceOf support (SpacePossum)
- minor #6295 PhpUnitTestCaseIndicator - Check if PHPUnit-test class extends anothe… (SpacePossum)
- minor #6298 Fix checkbashisms download ans SCA violations (SpacePossum)
- minor #6301 BracesFixer - handle enums (gharlan)
- minor #6302 Bump checkbashisms version (kubawerlos)
- minor #6303 PHP8 - Utilize "get_debug_type" (SpacePossum)
- minor #6316 bump xdebug-handler (SpacePossum)
- minor #6327 bump polyfills (SpacePossum)
v3.6.0
- bug #6063 PhpdocTypesOrderFixer - Improve nested types support (ruudk, julienfalque)
- bug #6197 FullyQualifiedStrictTypesFixer - fix same classname is imported from … (SpacePossum)
- bug #6241 NoSuperfluousPhpdocTagsFixer - fix for reference and splat operator (kubawerlos)
- bug #6243 PhpdocTypesOrderFixer - fix for intersection types (kubawerlos)
- bug #6254 PhpUnitDedicateAssertFixer - remove
is_resource. (drupol) - bug #6264 TokensAnalyzer - fix isConstantInvocation detection for mulitple exce… (SpacePossum)
- bug #6265 NullableTypeDeclarationForDefaultNullValueFixer - handle "readonly" a… (SpacePossum)
- bug #6266 SimplifiedIfReturnFixer - handle statement in loop without braces (SpacePossum)
- feature #6262 ClassReferenceNameCasingFixer - introduction (SpacePossum)
- feature #6267 NoUnneededImportAliasFixer - Introduction (SpacePossum)
- minor #6199 HeaderCommentFixer - support monolithic files with shebang (kubawerlos, keradus)
- minor #6231 Fix priority descriptions and tests. (SpacePossum)
- minor #6237 DX: Application - better display version when displaying gitSha (keradus)
- minor #6242 Annotation - improve on recognising types with reference and splat operator (kubawerlos)
- minor #6250 Tokens - optimize cache clear (SpacePossum)
- minor #6269 Docs: redo warnings in RST docs to fix issue on website docs (keradus)
- minor #6270 ClassReferenceNameCasingFixer - Add missing test cases for catch (SpacePossum)
- minor #6273 Add priority test (SpacePossum)
v3.5.0
- bug #6058 Fix
Tokens::insertSlicesnot moving around all affected tokens (paulbalandan, SpacePossum) - bug #6160 NonPrintableCharacterFixer - fix for when removing non-printable character break PHP syntax (kubawerlos)
- bug #6165 DeclareEqualNormalizeFixer - fix for declare having multiple directives (kubawerlos)
- bug #6170 NonPrintableCharacterFixer - fix for string in single quotes, having non-breaking space, linebreak, and single quote inside (kubawerlos)
- bug #6181 UseTransformer - Trait import in enum fix (PHP8.1) (SpacePossum)
- bug #6188 PhpdocTo(Param|Property|Return)TypeFixer - fix for type intersections (kubawerlos)
- bug #6202 SquareBraceTransformer - fix for destructing square brace after double arrow (kubawerlos)
- bug #6209 OrderedClassElementsFixer - PHP8.0 support abstract private methods in traits (SpacePossum)
- bug #6224 ArgumentsAnalyzer - support PHP8.1 readonly (SpacePossum)
- feature #4571 BlankLineBeforeStatementFixer - can now add blank lines before doc-comments (addiks, SpacePossum)
- feature #5953 GetClassToClassKeywordFixer - introduction (paulbalandan)
- minor #6108 Drop support for Symfony v4 (keradus)
- minor #6163 CI: update used PHP version (keradus)
- minor #6167 SingleSpaceAfterConstructFixer - allow multiline const (y_ahiru, SpacePossum)
- minor #6168 indexes -> indices (SpacePossum)
- minor #6171 Fix tests and CS (SpacePossum)
- minor #6172 DX: Tokens::insertSlices - groom code and fix tests (keradus)
- minor #6174 PhpdocAlignFixer: fix property-read/property-write descriptions not getting aligned (antichris)
- minor #6177 DX: chmod +x for benchmark.sh file (keradus)
- minor #6180 gitlab reporter - add fixed severity to match format (cbourreau)
- minor #6183 Simplify DiffConsoleFormatter (kubawerlos)
- minor #6184 Do not support array of patterns in Preg methods (kubawerlos)
- minor #6185 Upgrade PHPStan (kubawerlos)
- minor #6189 Finder - fix usage of ignoreDotFiles (kubawerlos)
- minor #6190 DX: DiffConsoleFormatter - escape - (keradus)
- minor #6194 Update Docker setup (julienfalque)
- minor #6196 clean ups (SpacePossum)
- minor #6198 DX: format dot files (kubawerlos)
- minor #6200 DX: Composer's branch-alias leftovers cleanup (kubawerlos)
- minor #6203 Bump required PHP to 7.4 (keradus)
- minor #6205 DX: bump PHPUnit to v9, PHPUnit bridge to v6 and Prophecy-PHPUnit to v2 (keradus)
- minor #6210 NullableTypeDeclarationForDefaultNullValueFixer - fix tests (HypeMC)
- minor #6212 bump year 2021 -> 2022 (SpacePossum)
- minor #6215 DX: Doctrine\Annotation\Tokens - fix phpstan violations (keradus)
- minor #6216 DX: Doctrine\Annotation\Tokens - drop unused methods (keradus)
- minor #6217 DX: lock SCA tools for MR builds (keradus)
- minor #6218 Use composer/xdebug-handler v3 (gharlan)
- minor #6222 Show runtime on version command (SpacePossum)
- minor #6229 Simplify Tokens::isMonolithicPhp tests (kubawerlos)
- minor #6232 Use expectNotToPerformAssertions where applicable (SpacePossum)
- minor #6233 Update Tokens::isMonolithicPhp (kubawerlos)
- minor #6236 Annotation - improve getting variable name (kubawerlos)
phpstan/phpstan
v1.8.0
Major new features 🚀
- Collectors - allows writing custom rules that target the whole project
- New
rememberPossiblyImpureFunctionValuesconfig parameter (defaults totrue) (https://github.com/phpstan/phpstan-src/commit/50ed38f04de93b4d0ea9573d0a4789853a4b9f32), #7529 * Read more: https://phpstan.org/config-reference#rememberpossiblyimpurefunctionvalues
Bleeding edge 🔪
- Check that each trait is used and analysed at least once - level 4 (https://github.com/phpstan/phpstan-src/commit/c4d05276fb8605d6ac20acbe1cc5df31cd6c10b0)
- Check that PHPStan class in class constant fetch is covered by backward compatibility promise (https://github.com/phpstan/phpstan-src/commit/9e007251ce61788f6a0319a53f1de6cf801ed233)
If you want to see the shape of things to come and adopt bleeding edge features early, you can include this config file in your project's phpstan.neon:
includes:
- vendor/phpstan/phpstan/conf/bleedingEdge.neon
Of course, there are no backwards compatibility guarantees when you include this file. The behaviour and reported errors can change in minor versions with this file included. Learn more
Improvements 🔧
- Type a ranged value for
filter_var(FILTER_VALIDATE_INT)(#1443), #7494, thanks @zonuexe! - Allow BooleanAnd and BooleanOr as standalone expressions with right sides always false (https://github.com/phpstan/phpstan-src/commit/f9374e74beec7082228454693dcdc14000070266), #2741
- Added
@apiannotation toNodeScopeResolver::processStmtNodes()(#1464), thanks @vojtech-dobes! - Add
ClassReflection->is()shortcut (#1468), thanks @janedbal! - Force update of the PHPStan Pro PHAR in case of crash (https://github.com/phpstan/phpstan-src/commit/b95606ec291a7cf926ca757e544bfa089da950aa)
- Intersect optimization for large unions (#1471), thanks @neclimdul!
- Update phpdoc-parser (https://github.com/phpstan/phpstan-src/commit/7aa19e02c60c75961333d99cfb5c4704796d6e55)
- Simplify parsing of type alias import (https://github.com/phpstan/phpdoc-parser/pull/137), thanks @jiripudil!
- Support
@template-contravarianttags (https://github.com/phpstan/phpdoc-parser/pull/140), thanks @autaut03!
Bugfixes 🐛
- Prevent crashing for negative bit shifts (#1447), #7490, thanks @rvanvelzen!
- Fix infinite recursion for template intersection type accepts() (#1450), #7500, thanks @rvanvelzen!
- Run with parallel runner only when
proc_openis not disabled (#1451), #7488, thanks @mvorisek! - Suppress
is_filewarnings inbin/phpstan(#1466), thanks @mvorisek! - Fix specifying types for chained assignments (#1473), #7142, thanks @rvanvelzen!
- Consider autoloaders passed in
-a(https://github.com/phpstan/phpstan-src/commit/78016fe92840c02a5981f4ab2ea28fc2d3e49f27)
Function signature fixes 🤖
-
Closure::bind()with$newScope = null(#1446), #7489, thanks @rvanvelzen! -
Closure::bindTo()with$newScope = null(#1448), thanks @mvorisek! - Fix return type for
imagesxandimagesyfunctions (#1452), thanks @norkunas! - Add
NoRewindIteratorstub (#1453), thanks @drupol! - Add
LimitIteratorstub (#1455), thanks @drupol! - Add
InfiniteIteratorstub (#1454), thanks @drupol! - Add
CachingIteratorstub (#1456), thanks @drupol! - Add
RegexIteratorstub (#1462), thanks @drupol! - Add
EmptyIteratorstub (#1472), thanks @drupol! - Narrow return type of
array_keysslightly (#1474), thanks @Seldaek!
vimeo/psalm
v4.24.0
What's Changed
Features
- Infer object shape when array or scalar is cast to object by @theodorejb in https://github.com/vimeo/psalm/pull/7935
- Improve @return annotation for implode() so that it can handle non-empty-array of non-empty-strings case by @hirokinoue in https://github.com/vimeo/psalm/pull/7967
- Bugfix/#7912 class APCuIterator does not exist by @KevinVanSonsbeek in https://github.com/vimeo/psalm/pull/7982
- Improve @psalm-internal and prevent usage of IssueBuffer::add(). by @AndrolGenhald in https://github.com/vimeo/psalm/pull/8165
- Encapsed literal strings by @AndrolGenhald in https://github.com/vimeo/psalm/pull/8164
Fixes
- fix missing is_a() parameter type by @staabm in https://github.com/vimeo/psalm/pull/7951
- Improve array_unique callmap stubs by @mathroc in https://github.com/vimeo/psalm/pull/7981
- Precise stat return type by @VincentLanglet in https://github.com/vimeo/psalm/pull/8032
- Bugfix/splfileobject fputcsv invalidnamedargument by @KevinVanSonsbeek in https://github.com/vimeo/psalm/pull/8042
- Fix
TypeCombiner::combineto not modify TIntRange arguments. by @AndrolGenhald in https://github.com/vimeo/psalm/pull/8049 - Coerce null to empty string in array keys by @weirdan in https://github.com/vimeo/psalm/pull/8064
- Fix generic object comparison to use template constraint as default. by @AndrolGenhald in https://github.com/vimeo/psalm/pull/8069
- Fix possibly empty array shape appearing non-empty (fixes #8048). by @AndrolGenhald in https://github.com/vimeo/psalm/pull/8051
- fix #8099: ob_implicit_flush argument type changed to bool by @SamMousa in https://github.com/vimeo/psalm/pull/8100
- number_format: allow third and forth parameters to be nullable by @drealecs in https://github.com/vimeo/psalm/pull/8114
- Add ReflectionClass & ReflectionObject::isEnum() by @BenMorel in https://github.com/vimeo/psalm/pull/8117
- Add missing ldap_unbind mapping for php 8.1 by @othercorey in https://github.com/vimeo/psalm/pull/8126
- Fix signatures of ldap_* functions by @othercorey in https://github.com/vimeo/psalm/pull/8147
- Fix datefmt_* function signatures by @othercorey in https://github.com/vimeo/psalm/pull/8153
- Fix filter_var and filter_var_array signatures by @othercorey in https://github.com/vimeo/psalm/pull/8152
- Fix array_* function signatures by @othercorey in https://github.com/vimeo/psalm/pull/8151
- Add ReflectionProperty properties by @BenMorel in https://github.com/vimeo/psalm/pull/8148
- Fix crash when redefining method with fewer params (fixes #8141). by @AndrolGenhald in https://github.com/vimeo/psalm/pull/8174
Docs
- fix small error in plugins_type_system.md by @mathroc in https://github.com/vimeo/psalm/pull/7914
- Clarify in docs that zero is not considered a positive-int by @bdsl in https://github.com/vimeo/psalm/pull/8060
Internal changes
- Fix conflict of option -c with shell completion by @GromNaN in https://github.com/vimeo/psalm/pull/7988
- change cache hash type for better performance by @kkmuffme in https://github.com/vimeo/psalm/pull/7997
- micro-optimize condition by @kkmuffme in https://github.com/vimeo/psalm/pull/8009
- igbinary_serialize code was missing in file by @kkmuffme in https://github.com/vimeo/psalm/pull/8007
- Performance only load files once by @kkmuffme in https://github.com/vimeo/psalm/pull/8011
- Fix syntax check failures by @weirdan in https://github.com/vimeo/psalm/pull/8028
- Backport #7506 by @weirdan in https://github.com/vimeo/psalm/pull/8027
- Run Shepherd with 8.0 by @weirdan in https://github.com/vimeo/psalm/pull/8029
- Performance: cut the selected_text from snippet by @kkmuffme in https://github.com/vimeo/psalm/pull/8055
- store origin location by ID to speed up psalm by up to 75% by @kkmuffme in https://github.com/vimeo/psalm/pull/8054
- tests: add test that validates the callmap in the current runtime by @SamMousa in https://github.com/vimeo/psalm/pull/8104
- Callmap validation ignore list cleanup by @SamMousa in https://github.com/vimeo/psalm/pull/8144
Other changes
- fix false positives for partially invalid phpdoc by @kkmuffme in https://github.com/vimeo/psalm/pull/8056
New Contributors
- @GromNaN made their first contribution in https://github.com/vimeo/psalm/pull/7988
- @SamMousa made their first contribution in https://github.com/vimeo/psalm/pull/8100
Full Changelog: https://github.com/vimeo/psalm/compare/4.23.0...4.24.0
Configuration
-
If you want to rebase/retry this MR, click this checkbox.
This MR has been generated by Renovate Bot.