-
-
Notifications
You must be signed in to change notification settings - Fork 914
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
BusinessTimes mixin issues #11251
Comments
This bug report is missing a link to reproduction at phpstan.org/try. It will most likely be closed after manual review. |
Please post the mininal reproduction steps:
Alternatively, create a small reproducing repository that shows how PHPStan crashes. Thanks. |
composer.json In the ServiceProvider public function enableBusinessTimeMixin(): void
{
BusinessTime::enable(
[
\Illuminate\Support\Carbon::class,
],
[
'monday' => ['08:30-17:30'],
'tuesday' => ['08:30-17:30'],
'wednesday' => ['08:30-17:30'],
'thursday' => ['08:30-17:30'],
'friday' => ['08:30-17:30'],
'saturday' => [],
'sunday' => [],
'holidaysAreClosed' => true,
'holidays' => [
'region' => 'us-national',
],
]
);
} /**
* @param BasePayload $payload
* @param mixed[] $metadata
* @return Carbon|CarbonImmutable|CarbonInterface
*/
public static function calculateDueDate(BasePayload $payload, array $metadata): Carbon|CarbonImmutable|CarbonInterface
{
// Default due time is 8 business hours
$defaultTime = 9;
if (
$payload->type === CustomerRequestType::CERTIFICATE_REQUEST &&
$metadata['request_waiver_subrogation'] === true
) {
$defaultTime = 18;
}
return Carbon::now()->addOpenHours($defaultTime);
} I had to change the extension of the phpstan config because it wasn't letting me upload the file. Thank you for your help in advance. |
I'm sorry, but 10 kB composer.json isn't minimal by any means. Please try to remove stuff from composer.json until the problem no longer reproduces and then go one step back. Also provide valid PHP code that leads to the internal error you're experiencing. The code you provided is missing many parts it's referencing, like BusinessTime class or CustomerRequestType class/enum. Ideally publish the minimal code as a public GitHub repository I can inspect. |
Alright, still not sure how this issue possible, but I'm trying to prevent it with this commit: phpstan/phpstan-src@25658f6 Try |
This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
Bug report
Phpstan is throwing an internal error when using the Cmixin library BusinessTime https://github.com/kylekatarnls/business-time.
StackTrace:
Internal error: Method diffInBusinessHours() was not found in reflection of class Carbon\Carbon. while analysing file /Users/raimiralvarez/Projects/janus-phoenix/packages/data-dashboard/src/Data/RequestInfo.php
Post the following stack trace to https://github.com/phpstan/phpstan/issues/new?template=Bug_report.yaml:
## phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/ClassReflection.php(560)
#0 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/Php/PhpMethodReflection.php(210): PHPStan\Reflection\ClassReflection->getNativeMethod('diffInBusinessH...')
#1 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/Dummy/ChangedTypeMethodReflection.php(69): PHPStan\Reflection\Php\PhpMethodReflection->getPrototype()
#2 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/ResolvedMethodReflection.php(52): PHPStan\Reflection\Dummy\ChangedTypeMethodReflection->getPrototype()
#3 /Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan-strict-rules/src/Rules/StrictCalls/DynamicCallOnStaticMethodsRule.php(59): PHPStan\Reflection\ResolvedMethodReflection->getPrototype()
#4 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/FileAnalyser.php(120): PHPStan\Rules\StrictCalls\DynamicCallOnStaticMethodsRule->processNode(Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope))
#5 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Node/ClassStatementsGatherer.php(109): PHPStan\Analyser\FileAnalyser->PHPStan\Analyser{closure}(Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope))
#6 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(616): PHPStan\Node\ClassStatementsGatherer->invoke(Object(PhpParser\Node\Expr\MethodCall), Object(PHPStan\Analyser\MutatingScope))
#7 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(691): PHPStan\Analyser\NodeScopeResolver::PHPStan\Analyser{closure}(Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope))
#8 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(3070): PHPStan\Analyser\NodeScopeResolver::PHPStan\Analyser{closure}(Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope))
#9 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(1756): PHPStan\Analyser\NodeScopeResolver->callNodeCallbackWithExpression(Object(Closure), Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope), Object(PHPStan\Analyser\ExpressionContext))
#10 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(2573): PHPStan\Analyser\NodeScopeResolver->processExprNode(Object(PhpParser\Node\Stmt\Expression), Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\ExpressionContext))
#11 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(1782): PHPStan\Analyser\NodeScopeResolver->processExprNode(Object(PhpParser\Node\Stmt\Expression), Object(PhpParser\Node\Expr\Ternary),
Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\ExpressionContext))
#12 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(3801): PHPStan\Analyser\NodeScopeResolver->PHPStan\Analyser{closure}(Object(PHPStan\Analyser\MutatingScope))
#13 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(1791): PHPStan\Analyser\NodeScopeResolver->processAssignVar(Object(PHPStan\Analyser\MutatingScope), Object(PhpParser\Node\Stmt\Expression),
Object(PhpParser\Node\Expr\PropertyFetch), Object(PhpParser\Node\Expr\Ternary), Object(Closure), Object(PHPStan\Analyser\ExpressionContext), Object(Closure), true)
#14 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(702): PHPStan\Analyser\NodeScopeResolver->processExprNode(Object(PhpParser\Node\Stmt\Expression), Object(PhpParser\Node\Expr\Assign),
Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\ExpressionContext))
#15 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(439): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\Expression), Object(PHPStan\Analyser\MutatingScope),
Object(Closure), Object(PHPStan\Analyser\StatementContext))
#16 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(641): PHPStan\Analyser\NodeScopeResolver->processStmtNodes(Object(PhpParser\Node\Stmt\ClassMethod), Array,
Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\StatementContext))
#17 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(439): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\ClassMethod), Object(PHPStan\Analyser\MutatingScope),
Object(PHPStan\Node\ClassStatementsGatherer), Object(PHPStan\Analyser\StatementContext))
#18 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(752): PHPStan\Analyser\NodeScopeResolver->processStmtNodes(Object(PhpParser\Node\Stmt\Class), Array,
Object(PHPStan\Analyser\MutatingScope), Object(PHPStan\Node\ClassStatementsGatherer), Object(PHPStan\Analyser\StatementContext))
#19 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(439): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\Class), Object(PHPStan\Analyser\MutatingScope),
Object(Closure), Object(PHPStan\Analyser\StatementContext))
#20 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(722): PHPStan\Analyser\NodeScopeResolver->processStmtNodes(Object(PhpParser\Node\Stmt\Namespace_), Array,
Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\StatementContext))
#21 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(407): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\Namespace_), Object(PHPStan\Analyser\MutatingScope),
Object(Closure), Object(PHPStan\Analyser\StatementContext))
#22 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/FileAnalyser.php(179): PHPStan\Analyser\NodeScopeResolver->processNodes(Array, Object(PHPStan\Analyser\MutatingScope), Object(Closure))
#23 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Command/WorkerCommand.php(139): PHPStan\Analyser\FileAnalyser->analyseFile('/Users/raimiral...', Array, Object(PHPStan\Rules\LazyRegistry),
Object(PHPStan\Collectors\Registry), NULL)
#24 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/evenement/evenement/src/Evenement/EventEmitterTrait.php(97): PHPStan\Command\WorkerCommand::PHPStan\Command{closure}(Array)
#25 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/clue/ndjson-react/src/Decoder.php(117): _PHPStan_01e5828ef\Evenement\EventEmitter->emit('data', Array)
#26 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/evenement/evenement/src/Evenement/EventEmitterTrait.php(97): _PHPStan_01e5828ef\Clue\React\NDJson\Decoder->handleData(Array)
#27 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/react/stream/src/Util.php(62): _PHPStan_01e5828ef\Evenement\EventEmitter->emit('data', Array)
#28 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/evenement/evenement/src/Evenement/EventEmitterTrait.php(97): _PHPStan_01e5828ef\React\Stream\Util::_PHPStan_01e5828ef\React\Stream{closure}('{"action":"anal...')
#29 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/react/stream/src/DuplexResourceStream.php(154): _PHPStan_01e5828ef\Evenement\EventEmitter->emit('data', Array)
#30 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/react/event-loop/src/StreamSelectLoop.php(201): _PHPStan_01e5828ef\React\Stream\DuplexResourceStream->handleData(Resource id #12309)
#31 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/react/event-loop/src/StreamSelectLoop.php(173): _PHPStan_01e5828ef\React\EventLoop\StreamSelectLoop->waitForStreamActivity(NULL)
#32 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Command/WorkerCommand.php(99): _PHPStan_01e5828ef\React\EventLoop\StreamSelectLoop->run()
#33 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Command/Command.php(259): PHPStan\Command\WorkerCommand->execute(Object(_PHPStan_01e5828ef\Symfony\Component\Console\Input\ArgvInput),
Object(_PHPStan_01e5828ef\Symfony\Component\Console\Output\ConsoleOutput))
#34 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(870):
_PHPStan_01e5828ef\Symfony\Component\Console\Command\Command->run(Object(_PHPStan_01e5828ef\Symfony\Component\Console\Input\ArgvInput), Object(_PHPStan_01e5828ef\Symfony\Component\Console\Output\ConsoleOutput))
#35 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(261): _PHPStan_01e5828ef\Symfony\Component\Console\Application->doRunCommand(Object(PHPStan\Command\WorkerCommand),
Object(PHPStan_01e5828ef\Symfony\Component\Console\Input\ArgvInput), Object(PHPStan_01e5828ef\Symfony\Component\Console\Output\ConsoleOutput))
#36 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(157):
PHPStan_01e5828ef\Symfony\Component\Console\Application->doRun(Object(PHPStan_01e5828ef\Symfony\Component\Console\Input\ArgvInput), Object(PHPStan_01e5828ef\Symfony\Component\Console\Output\ConsoleOutput))
#37 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(124): PHPStan_01e5828ef\Symfony\Component\Console\Application->run()
#38 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(125): PHPStan_01e5828ef{closure}()
#39 /Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan(8): require('phar:///Users/r...')
#40 /Users/raimiralvarez/Projects/janus-phoenix/vendor/bin/phpstan(119): include('/Users/raimiral...')
#41 {main}
Internal error: Method addOpenHours() was not found in reflection of class Illuminate\Support\Carbon. while analysing file /Users/raimiralvarez/Projects/janus-phoenix/packages/data-dashboard/src/Models/CustomerRequest.php
Post the following stack trace to https://github.com/phpstan/phpstan/issues/new?template=Bug_report.yaml:
## phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/ClassReflection.php(560)
#0 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/Php/PhpMethodReflection.php(210): PHPStan\Reflection\ClassReflection->getNativeMethod('addOpenHours')
#1 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/Dummy/ChangedTypeMethodReflection.php(69): PHPStan\Reflection\Php\PhpMethodReflection->getPrototype()
#2 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/ResolvedMethodReflection.php(52): PHPStan\Reflection\Dummy\ChangedTypeMethodReflection->getPrototype()
#3 /Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan-strict-rules/src/Rules/StrictCalls/DynamicCallOnStaticMethodsRule.php(59): PHPStan\Reflection\ResolvedMethodReflection->getPrototype()
#4 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/FileAnalyser.php(120): PHPStan\Rules\StrictCalls\DynamicCallOnStaticMethodsRule->processNode(Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope))
#5 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Node/ClassStatementsGatherer.php(109): PHPStan\Analyser\FileAnalyser->PHPStan\Analyser{closure}(Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope))
#6 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(616): PHPStan\Node\ClassStatementsGatherer->invoke(Object(PhpParser\Node\Expr\MethodCall), Object(PHPStan\Analyser\MutatingScope))
#7 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(3070): PHPStan\Analyser\NodeScopeResolver::PHPStan\Analyser{closure}(Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope))
#8 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(1756): PHPStan\Analyser\NodeScopeResolver->callNodeCallbackWithExpression(Object(Closure), Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope), Object(PHPStan\Analyser\ExpressionContext))
#9 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(662): PHPStan\Analyser\NodeScopeResolver->processExprNode(Object(PhpParser\Node\Stmt\Return), Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\ExpressionContext))
#10 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(439): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\Return), Object(PHPStan\Analyser\MutatingScope),
Object(Closure), Object(PHPStan\Analyser\StatementContext))
#11 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(641): PHPStan\Analyser\NodeScopeResolver->processStmtNodes(Object(PhpParser\Node\Stmt\ClassMethod), Array,
Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\StatementContext))
#12 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(439): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\ClassMethod), Object(PHPStan\Analyser\MutatingScope),
Object(PHPStan\Node\ClassStatementsGatherer), Object(PHPStan\Analyser\StatementContext))
#13 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(4248): PHPStan\Analyser\NodeScopeResolver->processStmtNodes(Object(PhpParser\Node\Stmt\Trait), Array,
Object(PHPStan\Analyser\MutatingScope), Object(PHPStan\Node\ClassStatementsGatherer), Object(PHPStan\Analyser\StatementContext))
#14 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(4263): PHPStan\Analyser\NodeScopeResolver->processNodesForTraitUse(Object(PhpParser\Node\Stmt\Trait),
Object(PHPStan\Reflection\ClassReflection), Object(PHPStan\Analyser\MutatingScope), Array, Object(PHPStan\Node\ClassStatementsGatherer))
#15 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(4259): PHPStan\Analyser\NodeScopeResolver->processNodesForTraitUse(Array, Object(PHPStan\Reflection\ClassReflection),
Object(PHPStan\Analyser\MutatingScope), Array, Object(PHPStan\Node\ClassStatementsGatherer))
#16 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(4263): PHPStan\Analyser\NodeScopeResolver->processNodesForTraitUse(Object(PhpParser\Node\Stmt\Namespace),
Object(PHPStan\Reflection\ClassReflection), Object(PHPStan\Analyser\MutatingScope), Array, Object(PHPStan\Node\ClassStatementsGatherer))
#17 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(4202): PHPStan\Analyser\NodeScopeResolver->processNodesForTraitUse(Array, Object(PHPStan\Reflection\ClassReflection),
Object(PHPStan\Analyser\MutatingScope), Array, Object(PHPStan\Node\ClassStatementsGatherer))
#18 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(862): PHPStan\Analyser\NodeScopeResolver->processTraitUse(Object(PhpParser\Node\Stmt\TraitUse), Object(PHPStan\Analyser\MutatingScope),
Object(PHPStan\Node\ClassStatementsGatherer))
#19 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(439): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\TraitUse), Object(PHPStan\Analyser\MutatingScope),
Object(PHPStan\Node\ClassStatementsGatherer), Object(PHPStan\Analyser\StatementContext))
#20 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(752): PHPStan\Analyser\NodeScopeResolver->processStmtNodes(Object(PhpParser\Node\Stmt\Class), Array,
Object(PHPStan\Analyser\MutatingScope), Object(PHPStan\Node\ClassStatementsGatherer), Object(PHPStan\Analyser\StatementContext))
#21 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(439): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\Class), Object(PHPStan\Analyser\MutatingScope),
Object(Closure), Object(PHPStan\Analyser\StatementContext))
#22 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(722): PHPStan\Analyser\NodeScopeResolver->processStmtNodes(Object(PhpParser\Node\Stmt\Namespace), Array,
Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\StatementContext))
#23 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(407): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\Namespace), Object(PHPStan\Analyser\MutatingScope),
Object(Closure), Object(PHPStan\Analyser\StatementContext))
#24 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/FileAnalyser.php(179): PHPStan\Analyser\NodeScopeResolver->processNodes(Array, Object(PHPStan\Analyser\MutatingScope), Object(Closure))
#25 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Command/WorkerCommand.php(139): PHPStan\Analyser\FileAnalyser->analyseFile('/Users/raimiral...', Array, Object(PHPStan\Rules\LazyRegistry),
Object(PHPStan\Collectors\Registry), NULL)
#26 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/evenement/evenement/src/Evenement/EventEmitterTrait.php(97): PHPStan\Command\WorkerCommand::PHPStan\Command{closure}(Array)
#27 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/clue/ndjson-react/src/Decoder.php(117): _PHPStan_01e5828ef\Evenement\EventEmitter->emit('data', Array)
#28 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/evenement/evenement/src/Evenement/EventEmitterTrait.php(97): _PHPStan_01e5828ef\Clue\React\NDJson\Decoder->handleData(Array)
#29 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/react/stream/src/Util.php(62): _PHPStan_01e5828ef\Evenement\EventEmitter->emit('data', Array)
#30 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/evenement/evenement/src/Evenement/EventEmitterTrait.php(97): _PHPStan_01e5828ef\React\Stream\Util::_PHPStan_01e5828ef\React\Stream{closure}('{"action":"anal...')
#31 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/react/stream/src/DuplexResourceStream.php(154): _PHPStan_01e5828ef\Evenement\EventEmitter->emit('data', Array)
#32 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/react/event-loop/src/StreamSelectLoop.php(201): _PHPStan_01e5828ef\React\Stream\DuplexResourceStream->handleData(Resource id #12309)
#33 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/react/event-loop/src/StreamSelectLoop.php(173): _PHPStan_01e5828ef\React\EventLoop\StreamSelectLoop->waitForStreamActivity(NULL)
#34 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Command/WorkerCommand.php(99): _PHPStan_01e5828ef\React\EventLoop\StreamSelectLoop->run()
#35 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Command/Command.php(259): PHPStan\Command\WorkerCommand->execute(Object(_PHPStan_01e5828ef\Symfony\Component\Console\Input\ArgvInput),
Object(_PHPStan_01e5828ef\Symfony\Component\Console\Output\ConsoleOutput))
#36 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(870):
_PHPStan_01e5828ef\Symfony\Component\Console\Command\Command->run(Object(_PHPStan_01e5828ef\Symfony\Component\Console\Input\ArgvInput), Object(_PHPStan_01e5828ef\Symfony\Component\Console\Output\ConsoleOutput))
#37 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(261): _PHPStan_01e5828ef\Symfony\Component\Console\Application->doRunCommand(Object(PHPStan\Command\WorkerCommand),
Object(_PHPStan_01e5828ef\Symfony\Component\Console\Input\ArgvInput), Object(_PHPStan_01e5828ef\Symfony\Component\Console\Output\ConsoleOutput))
#38 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(157):
_PHPStan_01e5828ef\Symfony\Component\Console\Application->doRun(Object(PHPStan_01e5828ef\Symfony\Component\Console\Input\ArgvInput), Object(PHPStan_01e5828ef\Symfony\Component\Console\Output\ConsoleOutput))
#39 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(124): PHPStan_01e5828ef\Symfony\Component\Console\Application->run()
#40 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(125): PHPStan_01e5828ef{closure}()
#41 /Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan(8): require('phar:///Users/r...')
#42 /Users/raimiralvarez/Projects/janus-phoenix/vendor/bin/phpstan(119): include('/Users/raimiral...')
#43 {main}
Internal error: Method isBusinessDay() was not found in reflection of class Carbon\Carbon. while analysing file /Users/raimiralvarez/Projects/janus-phoenix/packages/utility/src/Rules/BusinessDayRule.php
Post the following stack trace to https://github.com/phpstan/phpstan/issues/new?template=Bug_report.yaml:
## phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/ClassReflection.php(560)
#0 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/Php/PhpMethodReflection.php(210): PHPStan\Reflection\ClassReflection->getNativeMethod('isBusinessDay')
#1 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/Dummy/ChangedTypeMethodReflection.php(69): PHPStan\Reflection\Php\PhpMethodReflection->getPrototype()
#2 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/ResolvedMethodReflection.php(52): PHPStan\Reflection\Dummy\ChangedTypeMethodReflection->getPrototype()
#3 /Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan-strict-rules/src/Rules/StrictCalls/DynamicCallOnStaticMethodsRule.php(59): PHPStan\Reflection\ResolvedMethodReflection->getPrototype()
#4 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/FileAnalyser.php(120): PHPStan\Rules\StrictCalls\DynamicCallOnStaticMethodsRule->processNode(Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope))
#5 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Node/ClassStatementsGatherer.php(109): PHPStan\Analyser\FileAnalyser->PHPStan\Analyser{closure}(Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope))
#6 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(616): PHPStan\Node\ClassStatementsGatherer->invoke(Object(PhpParser\Node\Expr\MethodCall), Object(PHPStan\Analyser\MutatingScope))
#7 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(3070): PHPStan\Analyser\NodeScopeResolver::PHPStan\Analyser{closure}(Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope))
#8 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(1756): PHPStan\Analyser\NodeScopeResolver->callNodeCallbackWithExpression(Object(Closure), Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope), Object(PHPStan\Analyser\ExpressionContext))
#9 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(662): PHPStan\Analyser\NodeScopeResolver->processExprNode(Object(PhpParser\Node\Stmt\Return), Object(PhpParser\Node\Expr\MethodCall),
Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\ExpressionContext))
#10 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(439): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\Return), Object(PHPStan\Analyser\MutatingScope),
Object(Closure), Object(PHPStan\Analyser\StatementContext))
#11 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(641): PHPStan\Analyser\NodeScopeResolver->processStmtNodes(Object(PhpParser\Node\Stmt\ClassMethod), Array,
Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\StatementContext))
#12 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(439): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\ClassMethod), Object(PHPStan\Analyser\MutatingScope),
Object(PHPStan\Node\ClassStatementsGatherer), Object(PHPStan\Analyser\StatementContext))
#13 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(752): PHPStan\Analyser\NodeScopeResolver->processStmtNodes(Object(PhpParser\Node\Stmt\Class), Array,
Object(PHPStan\Analyser\MutatingScope), Object(PHPStan\Node\ClassStatementsGatherer), Object(PHPStan\Analyser\StatementContext))
#14 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(439): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\Class), Object(PHPStan\Analyser\MutatingScope),
Object(Closure), Object(PHPStan\Analyser\StatementContext))
#15 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(722): PHPStan\Analyser\NodeScopeResolver->processStmtNodes(Object(PhpParser\Node\Stmt\Namespace), Array,
Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\StatementContext))
#16 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(407): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\Namespace), Object(PHPStan\Analyser\MutatingScope),
Object(Closure), Object(PHPStan\Analyser\StatementContext))
#17 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/FileAnalyser.php(179): PHPStan\Analyser\NodeScopeResolver->processNodes(Array, Object(PHPStan\Analyser\MutatingScope), Object(Closure))
#18 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Command/WorkerCommand.php(139): PHPStan\Analyser\FileAnalyser->analyseFile('/Users/raimiral...', Array, Object(PHPStan\Rules\LazyRegistry),
Object(PHPStan\Collectors\Registry), NULL)
#19 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/evenement/evenement/src/Evenement/EventEmitterTrait.php(97): PHPStan\Command\WorkerCommand::PHPStan\Command{closure}(Array)
#20 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/clue/ndjson-react/src/Decoder.php(117): _PHPStan_01e5828ef\Evenement\EventEmitter->emit('data', Array)
#21 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/evenement/evenement/src/Evenement/EventEmitterTrait.php(97): _PHPStan_01e5828ef\Clue\React\NDJson\Decoder->handleData(Array)
#22 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/react/stream/src/Util.php(62): _PHPStan_01e5828ef\Evenement\EventEmitter->emit('data', Array)
#23 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/evenement/evenement/src/Evenement/EventEmitterTrait.php(97): _PHPStan_01e5828ef\React\Stream\Util::_PHPStan_01e5828ef\React\Stream{closure}('{"action":"anal...')
#24 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/react/stream/src/DuplexResourceStream.php(154): _PHPStan_01e5828ef\Evenement\EventEmitter->emit('data', Array)
#25 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/react/event-loop/src/StreamSelectLoop.php(201): _PHPStan_01e5828ef\React\Stream\DuplexResourceStream->handleData(Resource id #12309)
#26 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/react/event-loop/src/StreamSelectLoop.php(173): _PHPStan_01e5828ef\React\EventLoop\StreamSelectLoop->waitForStreamActivity(NULL)
#27 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/src/Command/WorkerCommand.php(99): _PHPStan_01e5828ef\React\EventLoop\StreamSelectLoop->run()
#28 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Command/Command.php(259): PHPStan\Command\WorkerCommand->execute(Object(_PHPStan_01e5828ef\Symfony\Component\Console\Input\ArgvInput),
Object(_PHPStan_01e5828ef\Symfony\Component\Console\Output\ConsoleOutput))
#29 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(870):
_PHPStan_01e5828ef\Symfony\Component\Console\Command\Command->run(Object(_PHPStan_01e5828ef\Symfony\Component\Console\Input\ArgvInput), Object(_PHPStan_01e5828ef\Symfony\Component\Console\Output\ConsoleOutput))
#30 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(261): _PHPStan_01e5828ef\Symfony\Component\Console\Application->doRunCommand(Object(PHPStan\Command\WorkerCommand),
Object(_PHPStan_01e5828ef\Symfony\Component\Console\Input\ArgvInput), Object(_PHPStan_01e5828ef\Symfony\Component\Console\Output\ConsoleOutput))
#31 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(157):
_PHPStan_01e5828ef\Symfony\Component\Console\Application->doRun(Object(_PHPStan_01e5828ef\Symfony\Component\Console\Input\ArgvInput), Object(_PHPStan_01e5828ef\Symfony\Component\Console\Output\ConsoleOutput))
#32 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(124): _PHPStan_01e5828ef\Symfony\Component\Console\Application->run()
#33 phar:///Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(125): _PHPStan_01e5828ef{closure}()
#34 /Users/raimiralvarez/Projects/janus-phoenix/vendor/phpstan/phpstan/phpstan(8): require('phar:///Users/r...')
#35 /Users/raimiralvarez/Projects/janus-phoenix/vendor/bin/phpstan(119): include('/Users/raimiral...')
#36 {main}
Code snippet that reproduces the problem
Idk how to install pacakges in the playground :(
Expected output
Phpstan not throwing an internal error
Did PHPStan help you today? Did it make you happy in any way?
No response
The text was updated successfully, but these errors were encountered: