Naoray / laravel-package-maker

Get a :package: skeleton and all other `make` commands from laravel base for package development.
MIT License
153 stars 32 forks source link

Make Command not working #71

Open karmendra opened 3 years ago

karmendra commented 3 years ago

Laravel 8.24 PHP 7.4.10 Homestead 9 (vagrant up via an admin cmd in windows 10)

After installing package version 4.0.4

I ran php artisan package:save Vend\Pack packages/vend/pack/ to save the package credentials.

Then to create a notification I run php artisan make:package:notification MyNotification command

but we get following error:

There are no commands defined in the "make:package" namespace.  

Did you mean this?                                              
      make          

What am I missing here, why is this not working?

Naoray commented 3 years ago

I renamed the command signatures a couple of versions ago to package:command_name so in your example you should try package:notification ...

karmendra commented 3 years ago

The documentation still shows the older method.

When I tried package:notification MyNotification I get following error Maximum function nesting level of '512' reached, aborting!

vagrant@homestead:~/code/laraveltest$ php artisan package:notification MyNotification

   Error 

  Maximum function nesting level of '512' reached, aborting!

  at vendor/nesbot/carbon/src/Carbon/CarbonTimeZone.php:37
     33 
     34     protected static function getDateTimeZoneNameFromMixed($timezone)
     35     {
     36         if (\is_null($timezone)) {
     37             return date_default_timezone_get();
     38         }
     39 
     40         if (\is_string($timezone)) {
     41             $timezone = preg_replace('/^\s*([+-]\d+)(\d{2})\s*$/', '$1:$2', $timezone);

      +510 vendor frames 
  511 artisan:37
      Illuminate\Foundation\Console\Kernel::handle()

Form laravel log:

[2021-01-24 22:48:04] local.ERROR: Maximum function nesting level of '512' reached, aborting! {"exception":"[object] (Error(code: 0): Maximum function nesting level of '512' reached, aborting! at /home/vagrant/code/laraveltest/vendor/nesbot/carbon/src/Carbon/CarbonTimeZone.php:37)
[stacktrace]
#0 /home/vagrant/code/laraveltest/vendor/nesbot/carbon/src/Carbon/CarbonTimeZone.php(37): date_default_timezone_get()
#1 /home/vagrant/code/laraveltest/vendor/nesbot/carbon/src/Carbon/CarbonTimeZone.php(22): Carbon\\CarbonTimeZone::getDateTimeZoneNameFromMixed()
#2 /home/vagrant/code/laraveltest/vendor/nesbot/carbon/src/Carbon/CarbonTimeZone.php(95): Carbon\\CarbonTimeZone->__construct()
#3 /home/vagrant/code/laraveltest/vendor/nesbot/carbon/src/Carbon/Traits/Date.php(624): Carbon\\CarbonTimeZone::instance()
#4 /home/vagrant/code/laraveltest/vendor/nesbot/carbon/src/Carbon/Traits/Creator.php(85): Carbon\\Carbon::safeCreateDateTimeZone()
#5 /home/vagrant/code/laraveltest/vendor/nesbot/carbon/src/Carbon/Traits/Creator.php(250): Carbon\\Carbon->__construct()
#6 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Support/InteractsWithTime.php(62): Carbon\\Carbon::now()
#7 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Cache/FileStore.php(258): Illuminate\\Cache\\FileStore->currentTime()
#8 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Cache/FileStore.php(61): Illuminate\\Cache\\FileStore->getPayload()
#9 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Cache/Repository.php(97): Illuminate\\Cache\\FileStore->get()
#10 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php(406): Illuminate\\Cache\\Repository->get()
#11 /home/vagrant/code/laraveltest/vendor/naoray/laravel-package-maker/src/Traits/CreatesPackageStubs.php(113): Illuminate\\Cache\\CacheManager->__call()
#12 /home/vagrant/code/laraveltest/vendor/naoray/laravel-package-maker/src/Traits/CreatesPackageStubs.php(81): Naoray\\LaravelPackageMaker\\Commands\\Foundation\\NotificationMakeCommand->getNamespaceInput()
#13 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Console/GeneratorCommand.php(176): Naoray\\LaravelPackageMaker\\Commands\\Foundation\\NotificationMakeCommand->rootNamespace()
#14 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Console/GeneratorCommand.php(183): Illuminate\\Console\\GeneratorCommand->qualifyClass()
...
... #14 repeats till #495
...
#495 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Console/GeneratorCommand.php(139): Illuminate\\Console\\GeneratorCommand->qualifyClass()
#494 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Console/GeneratorCommand.php(183): Illuminate\\Console\\GeneratorCommand->qualifyClass()
#495 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Console/GeneratorCommand.php(139): Illuminate\\Console\\GeneratorCommand->qualifyClass()
#496 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Foundation/Console/NotificationMakeCommand.php(38): Illuminate\\Console\\GeneratorCommand->handle()
#497 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Foundation\\Console\\NotificationMakeCommand->handle()
#498 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Container/Util.php(40): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#499 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\\Container\\Util::unwrapIfClosure()
#500 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\\Container\\BoundMethod::callBoundMethod()
#501 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Container/Container.php(610): Illuminate\\Container\\BoundMethod::call()
#502 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Console/Command.php(136): Illuminate\\Container\\Container->call()
#503 /home/vagrant/code/laraveltest/vendor/symfony/console/Command/Command.php(255): Illuminate\\Console\\Command->execute()
#504 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Console/Command.php(121): Symfony\\Component\\Console\\Command\\Command->run()
#505 /home/vagrant/code/laraveltest/vendor/symfony/console/Application.php(971): Illuminate\\Console\\Command->run()
#506 /home/vagrant/code/laraveltest/vendor/symfony/console/Application.php(290): Symfony\\Component\\Console\\Application->doRunCommand()
#507 /home/vagrant/code/laraveltest/vendor/symfony/console/Application.php(166): Symfony\\Component\\Console\\Application->doRun()
#508 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Console/Application.php(93): Symfony\\Component\\Console\\Application->run()
#509 /home/vagrant/code/laraveltest/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(129): Illuminate\\Console\\Application->run()
#510 /home/vagrant/code/laraveltest/artisan(37): Illuminate\\Foundation\\Console\\Kernel->handle()
#511 {main}
"} 
twaframework commented 3 years ago

php artisan packages:controller TestController not working for me. There is no error message but the Controller is not created.

Naoray commented 3 years ago

@karmendra I did not have the time to look into the issue yet. Will do it within the next weeks.

@twaframework please create a new issue and document exactly the steps you pursued that resulted into the bug you described.

heyiammushu commented 3 years ago

Yeah, faced the same issue, got the "Maximum function nesting level of '512' reached, aborting! " exception while attempting to create with package:<> command, which is triggered by xdebug limits, I believe. When I am increasing limit of xdebug.max_nesting_level= in configs there is no exception throwned, but still nothing has been created and no messages after executing.