Обязательные зависимости не обновляются - PullRequest
0 голосов
/ 31 декабря 2018

Я обновляю некоторые пакеты с composer.Я использую Laravel5.6 в своем проекте.

Я пытаюсь использовать PHPStan до версии 0.10.7.Моя текущая версия 0.9.2.

Проблема

Когда я пытаюсь выполнить обновление, отображается сообщение об успешном завершении, но при проверке вывода пакетов outdate оно все еще УСТАРЕЛО.

То, что я пробовал

Использование composer why-not phpstan/phpstan 0.10.7 дало мне следующий вывод:

laravel/laravel  my-branch-test  requires (for development)  phpstan/phpstan (^0.9.2)                      
phpstan/phpstan  0.10.7          requires                    nikic/php-parser (^4.0.2)                     
laravel/laravel  my-branch-test  does not require            nikic/php-parser (but v3.1.5 is installed)    
phpstan/phpstan  0.10.7          requires                    phpstan/phpdoc-parser (^0.3)                  
laravel/laravel  my-branch-test  does not require            phpstan/phpdoc-parser (but 0.2 is installed)  

Затем я попытался обновить nikic/php-parser и phpdoc-parser и повторнозапустить composer update phpstan/phpstan но это дало мне тот же результат, что и раньше.(не обновляется)

ОБНОВЛЕНИЕ : запуск composer update phpstan/phpstan --with-dependencies дал мне следующий вывод: (но все еще не обновил phpstan)

composer update phpstan/phpstan --with-dependencies
Do not run Composer as root/super user! See https://getcomposer.org/root for details
Loading composer repositories with package information
Updating dependencies (including require-dev)                              
Package operations: 0 installs, 11 updates, 0 removals
  - Updating ocramius/package-versions (1.2.0 => 1.3.0): Loading from cache
  - Updating symfony/finder (v4.1.4 => v4.2.1): Loading from cache
  - Updating symfony/polyfill-mbstring (v1.9.0 => v1.10.0): Loading from cache
  - Updating jean85/pretty-package-versions (1.1 => 1.2): Loading from cache
  - Updating nette/utils (v2.4.9 => v2.5.3): Loading from cache
  - Updating nette/php-generator (v3.0.2 => v3.0.5): Loading from cache
  - Updating nette/neon (v2.4.2 => v2.4.3): Loading from cache
  - Updating nette/di (v2.4.10 => v2.4.14): Loading from cache
  - Updating nette/bootstrap (v2.4.5 => v2.4.6): Loading from cache
  - Updating nette/finder (v2.4.1 => v2.4.2): Loading from cache
  - Updating nette/robot-loader (v3.0.3 => v3.1.0): Loading from cache
Package sebastian/git is abandoned, you should avoid using it. No replacement was suggested.
Writing lock file
Generating autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover
Discovered Package: barryvdh/laravel-debugbar
Discovered Package: caffeinated/modules
Discovered Package: fideloper/proxy
Discovered Package: jenssegers/agent
Discovered Package: laravel/tinker
Discovered Package: rap2hpoutre/laravel-log-viewer
Discovered Package: rcrowe/twigbridge
Package manifest generated successfully.
ocramius/package-versions:  Generating version class...
ocramius/package-versions: ...done generating version class

Код

В моем файле composer.json пакет указан как:

"require-dev": {
    "phpstan/phpstan": "^0.9.2",

Есть идеи?

1 Ответ

0 голосов
/ 03 января 2019

Проблема здесь заключалась в том, что другие пакеты, которые я использовал, тоже использовали пакет nikic/php-parser, но рассматривали только непрерывные изменения (nikic/php-parser":"^3.0"), «блокируя» обновление до > 4.0.

Из-за того, что composer не может установить две версии одного и того же пакета , мое решение пока не обновляло phpstan.

Я буду ждать библиотек, которым требуется nikic/php-parser, чтобы обновить свои требования до 4.0 и выше или изменит эти пакеты в будущем.

...