rectorphp/rector-doctrine

CorrectDefaultTypesOnEntityPropertyRector fails on default negative integer

Closed this issue · 0 comments

Setting a default value to a negative integer where the entity property default type is integer throws a system error.

https://getrector.com/demo/9a115ab7-81a5-4624-a6c2-f24c89e4e845

[ERROR] Could not process "file.php" file, due to:
"System error: ""

     Stack trace:                                                                                                   
     #0                                                                                                             
     vendor/rector/rector/vendor/rector/rector-doctrine/rules/CodeQuality/Rector/Property/CorrectDefaultTypesOnEntit
     yPropertyRector.php(95):                                                                                       
     Rector\Doctrine\CodeQuality\Rector\Property\CorrectDefaultTypesOnEntityPropertyRector->refactorToIntType(Objec 
     t(PhpParser\Node\Stmt\PropertyProperty), Object(PhpParser\Node\Stmt\Property))                                 
     #1 vendor/rector/rector/src/Rector/AbstractRector.php(200):                                                    
     Rector\Doctrine\CodeQuality\Rector\Property\CorrectDefaultTypesOnEntityPropertyRector->refactor(Object(PhpPars 
     er\Node\Stmt\Property))                                                                                        
     #2 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(176):                          
     Rector\Core\Rector\AbstractRector->enterNode(Object(PhpParser\Node\Stmt\Property))                             
     #3 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(105):                          
     PhpParser\NodeTraverser->traverseArray(Array)                                                                  
     #4 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(196):                          
     PhpParser\NodeTraverser->traverseNode(Object(PhpParser\Node\Stmt\Class_))                                      
     #5 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(105):                          
     PhpParser\NodeTraverser->traverseArray(Array)                                                                  
     #6 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(196):                          
     PhpParser\NodeTraverser->traverseNode(Object(PhpParser\Node\Stmt\Namespace_))                                  
     #7 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(85):                           
     PhpParser\NodeTraverser->traverseArray(Array)                                                                  
     #8 vendor/rector/rector/src/PhpParser/NodeTraverser/RectorNodeTraverser.php(43):                               
     PhpParser\NodeTraverser->traverse(Array)                                                                       
     #9 vendor/rector/rector/src/Application/FileProcessor.php(44):                                                 
     Rector\Core\PhpParser\NodeTraverser\RectorNodeTraverser->traverse(Array)                                       
     #10 vendor/rector/rector/src/Application/FileProcessor/PhpFileProcessor.php(115):                              
     Rector\Core\Application\FileProcessor->refactor(Object(Rector\Core\ValueObject\Application\File))              
     #11 vendor/rector/rector/packages/Parallel/WorkerRunner.php(136):                                              
     Rector\Core\Application\FileProcessor\PhpFileProcessor->process(Object(Rector\Core\ValueObject\Application\Fil 
     e), Object(Rector\Core\ValueObject\Configuration))                                                             
     #12 vendor/rector/rector/packages/Parallel/WorkerRunner.php(107):                                              
     Rector\Parallel\WorkerRunner->processFile(Object(Rector\Core\ValueObject\Application\File),                    
     Object(Rector\Core\ValueObject\Configuration), Array)                                                          
     #13 vendor/rector/rector/vendor/evenement/evenement/src/Evenement/EventEmitterTrait.php(97):                   
     Rector\Parallel\WorkerRunner->Rector\Parallel\{closure}(Array)                                                 
     #14 vendor/rector/rector/vendor/clue/ndjson-react/src/Decoder.php(117):                                        
     RectorPrefix202307\Evenement\EventEmitter->emit('data', Array)                                                 
     #15 vendor/rector/rector/vendor/evenement/evenement/src/Evenement/EventEmitterTrait.php(97):                   
     RectorPrefix202307\Clue\React\NDJson\Decoder->handleData(Array)                                                
     #16 vendor/rector/rector/vendor/react/stream/src/Util.php(62):                                                 
     RectorPrefix202307\Evenement\EventEmitter->emit('data', Array)                                                 
     #17 vendor/rector/rector/vendor/evenement/evenement/src/Evenement/EventEmitterTrait.php(97):                   
     RectorPrefix202307\React\Stream\Util::RectorPrefix202307\React\Stream\{closure}('{"action":"main...')          
     #18 vendor/rector/rector/vendor/react/stream/src/DuplexResourceStream.php(154):                                
     RectorPrefix202307\Evenement\EventEmitter->emit('data', Array)                                                 
     #19 vendor/rector/rector/vendor/react/event-loop/src/StreamSelectLoop.php(201):                                
     RectorPrefix202307\React\Stream\DuplexResourceStream->handleData(Resource id #2544)                            
     #20 vendor/rector/rector/vendor/react/event-loop/src/StreamSelectLoop.php(173):                                
     RectorPrefix202307\React\EventLoop\StreamSelectLoop->waitForStreamActivity(NULL)                               
     #21 vendor/rector/rector/src/Console/Command/WorkerCommand.php(63):                                            
     RectorPrefix202307\React\EventLoop\StreamSelectLoop->run()                                                     
     #22 vendor/rector/rector/vendor/symfony/console/Command/Command.php(325):                                      
     Rector\Core\Console\Command\WorkerCommand->execute(Object(RectorPrefix202307\Symfony\Component\Console\Input\A 
     rgvInput), Object(RectorPrefix202307\Symfony\Component\Console\Output\ConsoleOutput))                          
     #23 vendor/rector/rector/vendor/symfony/console/Application.php(944):                                          
     RectorPrefix202307\Symfony\Component\Console\Command\Command->run(Object(RectorPrefix202307\Symfony\Component\ 
     Console\Input\ArgvInput), Object(RectorPrefix202307\Symfony\Component\Console\Output\ConsoleOutput))           
     #24 vendor/rector/rector/vendor/symfony/console/Application.php(326):                                          
     RectorPrefix202307\Symfony\Component\Console\Application->doRunCommand(Object(Rector\Core\Console\Command\Work 
     erCommand), Object(RectorPrefix202307\Symfony\Component\Console\Input\ArgvInput),                              
     Object(RectorPrefix202307\Symfony\Component\Console\Output\ConsoleOutput))                                     
     #25 vendor/rector/rector/src/Console/ConsoleApplication.php(54):                                               
     RectorPrefix202307\Symfony\Component\Console\Application->doRun(Object(RectorPrefix202307\Symfony\Component\Co 
     nsole\Input\ArgvInput), Object(RectorPrefix202307\Symfony\Component\Console\Output\ConsoleOutput))             
     #26 vendor/rector/rector/vendor/symfony/console/Application.php(212):                                          
     Rector\Core\Console\ConsoleApplication->doRun(Object(RectorPrefix202307\Symfony\Component\Console\Input\ArgvIn 
     put), Object(RectorPrefix202307\Symfony\Component\Console\Output\ConsoleOutput))                               
     #27 vendor/rector/rector/bin/rector.php(132): RectorPrefix202307\Symfony\Component\Console\Application->run()  
     #28 vendor/rector/rector/bin/rector(4): require_once('v...')                                                   
     #29 vendor/bin/rector(115): include('v...')                                                                    
     #30 {main}". On line: 136