Skip to content

Commit

Permalink
Updated Rector to commit 1c20d81c56a0ec9cb7663421add2bd1004278370
Browse files Browse the repository at this point in the history
rectorphp/rector-src@1c20d81 Bump to PHPStan 1.12.2 and Fix test (#6289)
  • Loading branch information
TomasVotruba committed Sep 5, 2024
1 parent e7b6113 commit 9fd26b5
Show file tree
Hide file tree
Showing 9 changed files with 35 additions and 17 deletions.
2 changes: 1 addition & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
],
"require": {
"php": "^7.2|^8.0",
"phpstan/phpstan": "^1.11.11"
"phpstan/phpstan": "^1.12.2"
},
"autoload": {
"files": [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,9 @@
use PHPStan\Type\UnionType;
use Rector\Php\PhpVersionProvider;
use Rector\PhpParser\Node\BetterNodeFinder;
use Rector\PHPStanStaticTypeMapper\Enum\TypeKind;
use Rector\Rector\AbstractScopeAwareRector;
use Rector\StaticTypeMapper\StaticTypeMapper;
use Rector\TypeDeclaration\NodeAnalyzer\ReturnAnalyzer;
use Rector\TypeDeclaration\NodeAnalyzer\TypeNodeUnwrapper;
use Rector\TypeDeclaration\TypeAnalyzer\ReturnStrictTypeAnalyzer;
Expand Down Expand Up @@ -70,7 +72,12 @@ final class ReturnTypeFromStrictTypedCallRector extends AbstractScopeAwareRector
* @var \Rector\TypeDeclaration\NodeAnalyzer\ReturnAnalyzer
*/
private $returnAnalyzer;
public function __construct(TypeNodeUnwrapper $typeNodeUnwrapper, ReturnStrictTypeAnalyzer $returnStrictTypeAnalyzer, ReturnTypeInferer $returnTypeInferer, BetterNodeFinder $betterNodeFinder, PhpVersionProvider $phpVersionProvider, ClassMethodReturnTypeOverrideGuard $classMethodReturnTypeOverrideGuard, ReturnAnalyzer $returnAnalyzer)
/**
* @readonly
* @var \Rector\StaticTypeMapper\StaticTypeMapper
*/
private $staticTypeMapper;
public function __construct(TypeNodeUnwrapper $typeNodeUnwrapper, ReturnStrictTypeAnalyzer $returnStrictTypeAnalyzer, ReturnTypeInferer $returnTypeInferer, BetterNodeFinder $betterNodeFinder, PhpVersionProvider $phpVersionProvider, ClassMethodReturnTypeOverrideGuard $classMethodReturnTypeOverrideGuard, ReturnAnalyzer $returnAnalyzer, StaticTypeMapper $staticTypeMapper)
{
$this->typeNodeUnwrapper = $typeNodeUnwrapper;
$this->returnStrictTypeAnalyzer = $returnStrictTypeAnalyzer;
Expand All @@ -79,6 +86,7 @@ public function __construct(TypeNodeUnwrapper $typeNodeUnwrapper, ReturnStrictTy
$this->phpVersionProvider = $phpVersionProvider;
$this->classMethodReturnTypeOverrideGuard = $classMethodReturnTypeOverrideGuard;
$this->returnAnalyzer = $returnAnalyzer;
$this->staticTypeMapper = $staticTypeMapper;
}
public function getRuleDefinition() : RuleDefinition
{
Expand Down Expand Up @@ -152,7 +160,14 @@ public function refactorWithScope(Node $node, Scope $scope) : ?Node
if ($this->phpVersionProvider->isAtLeastPhpVersion(PhpVersionFeature::UNION_TYPES)) {
/** @var PhpParserUnionType[] $returnedStrictTypes */
$unwrappedTypes = $this->typeNodeUnwrapper->unwrapNullableUnionTypes($returnedStrictTypes);
$node->returnType = new PhpParserUnionType($unwrappedTypes);
$unionType = new PhpParserUnionType($unwrappedTypes);
$type = $this->staticTypeMapper->mapPhpParserNodePHPStanType($unionType);
$returnType = $this->staticTypeMapper->mapPHPStanTypeToPhpParserNode($type, TypeKind::RETURN);
// verify type transformed into node
if (!$returnType instanceof Node) {
return null;
}
$node->returnType = $unionType;
return $node;
}
return null;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,9 @@ public function resolveMethodCallReturnType($call) : ?Type
$returnType = $parametersAcceptorWithPhpDocs->getReturnType();
}
if ($returnType instanceof MixedType) {
if ($returnType->isExplicitMixed()) {
return $returnType;
}
return null;
}
return $this->normalizeStaticType($call, $returnType);
Expand Down
4 changes: 2 additions & 2 deletions src/Application/VersionResolver.php
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,12 @@ final class VersionResolver
* @api
* @var string
*/
public const PACKAGE_VERSION = '340e5226000cba351cc282ca572af6f76418e1bd';
public const PACKAGE_VERSION = '1c20d81c56a0ec9cb7663421add2bd1004278370';
/**
* @api
* @var string
*/
public const RELEASE_DATE = '2024-09-04 10:15:14';
public const RELEASE_DATE = '2024-09-06 04:13:29';
/**
* @var int
*/
Expand Down
2 changes: 1 addition & 1 deletion vendor/autoload.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,4 +22,4 @@

require_once __DIR__ . '/composer/autoload_real.php';

return ComposerAutoloaderInit405b802987ff3d3f3036f8eb8aeba1f9::getLoader();
return ComposerAutoloaderInit71df4959ab5d17cc3273dd40c295b701::getLoader();
10 changes: 5 additions & 5 deletions vendor/composer/autoload_real.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

// autoload_real.php @generated by Composer

class ComposerAutoloaderInit405b802987ff3d3f3036f8eb8aeba1f9
class ComposerAutoloaderInit71df4959ab5d17cc3273dd40c295b701
{
private static $loader;

Expand All @@ -22,17 +22,17 @@ public static function getLoader()
return self::$loader;
}

spl_autoload_register(array('ComposerAutoloaderInit405b802987ff3d3f3036f8eb8aeba1f9', 'loadClassLoader'), true, true);
spl_autoload_register(array('ComposerAutoloaderInit71df4959ab5d17cc3273dd40c295b701', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
spl_autoload_unregister(array('ComposerAutoloaderInit405b802987ff3d3f3036f8eb8aeba1f9', 'loadClassLoader'));
spl_autoload_unregister(array('ComposerAutoloaderInit71df4959ab5d17cc3273dd40c295b701', 'loadClassLoader'));

require __DIR__ . '/autoload_static.php';
call_user_func(\Composer\Autoload\ComposerStaticInit405b802987ff3d3f3036f8eb8aeba1f9::getInitializer($loader));
call_user_func(\Composer\Autoload\ComposerStaticInit71df4959ab5d17cc3273dd40c295b701::getInitializer($loader));

$loader->setClassMapAuthoritative(true);
$loader->register(true);

$filesToLoad = \Composer\Autoload\ComposerStaticInit405b802987ff3d3f3036f8eb8aeba1f9::$files;
$filesToLoad = \Composer\Autoload\ComposerStaticInit71df4959ab5d17cc3273dd40c295b701::$files;
$requireFile = \Closure::bind(static function ($fileIdentifier, $file) {
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
$GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
Expand Down
8 changes: 4 additions & 4 deletions vendor/composer/autoload_static.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

namespace Composer\Autoload;

class ComposerStaticInit405b802987ff3d3f3036f8eb8aeba1f9
class ComposerStaticInit71df4959ab5d17cc3273dd40c295b701
{
public static $files = array (
'ad155f8f1cf0d418fe49e248db8c661b' => __DIR__ . '/..' . '/react/promise/src/functions_include.php',
Expand Down Expand Up @@ -2792,9 +2792,9 @@ class ComposerStaticInit405b802987ff3d3f3036f8eb8aeba1f9
public static function getInitializer(ClassLoader $loader)
{
return \Closure::bind(function () use ($loader) {
$loader->prefixLengthsPsr4 = ComposerStaticInit405b802987ff3d3f3036f8eb8aeba1f9::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInit405b802987ff3d3f3036f8eb8aeba1f9::$prefixDirsPsr4;
$loader->classMap = ComposerStaticInit405b802987ff3d3f3036f8eb8aeba1f9::$classMap;
$loader->prefixLengthsPsr4 = ComposerStaticInit71df4959ab5d17cc3273dd40c295b701::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInit71df4959ab5d17cc3273dd40c295b701::$prefixDirsPsr4;
$loader->classMap = ComposerStaticInit71df4959ab5d17cc3273dd40c295b701::$classMap;

}, null, ClassLoader::class);
}
Expand Down
2 changes: 1 addition & 1 deletion vendor/composer/installed.php

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion vendor/scoper-autoload.php
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ function humbug_phpscoper_expose_class($exposed, $prefixed) {
}
}
humbug_phpscoper_expose_class('AutoloadIncluder', 'RectorPrefix202409\AutoloadIncluder');
humbug_phpscoper_expose_class('ComposerAutoloaderInit405b802987ff3d3f3036f8eb8aeba1f9', 'RectorPrefix202409\ComposerAutoloaderInit405b802987ff3d3f3036f8eb8aeba1f9');
humbug_phpscoper_expose_class('ComposerAutoloaderInit71df4959ab5d17cc3273dd40c295b701', 'RectorPrefix202409\ComposerAutoloaderInit71df4959ab5d17cc3273dd40c295b701');
humbug_phpscoper_expose_class('Product', 'RectorPrefix202409\Product');

// Function aliases. For more information see:
Expand Down

0 comments on commit 9fd26b5

Please sign in to comment.