GTFS-привязки в реальном времени с Laravel - PullRequest
0 голосов
/ 22 февраля 2019

У меня проблема с установкой привязок Google GTFS-Realtime * библиотеки 1002 *.

При запуске composer require google/gtfs-realtime-bindings:^0.0.2 появляется следующая ошибка:

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for google/gtfs-realtime-bindings ^0.0.2 -> satisfiable by google/gtfs-realtime-bindings[0.0.2].
    - Conclusion: remove symfony/console v4.2.3
    - Conclusion: don't install symfony/console v4.2.3
    - google/gtfs-realtime-bindings 0.0.2 requires centraldesktop/protobuf-php 0.5.* -> satisfiable by centraldesktop/protobuf-php[0.5.0, 0.5.1, 0.5.2].
    - centraldesktop/protobuf-php 0.5.2 requires symfony/console 2.* -> satisfiable by symfony/console[2.0.4, 2.0.5, 2.0.6, 2.0.7, 2.0.x-dev, 2.1.x-dev, 2.2.x-dev, 2.3.x-dev, 2.4.x-dev, 2.5.x-dev, 2.6.x-dev, 2.7.x-dev, 2.8.x-dev, v2.0.10, v2.0.12, v2.0.13, v2.0.14, v2.0.15, v2.0.16, v2.0.17, v2.0.18, v2.0.19, v2.0.20, v2.0.21, v2.0.22, v2.0.23, v2.0.24, v2.0.25, v2.0.9, v2.1.0, v2.1.1, v2.1.10, v2.1.11, v2.1.12, v2.1.13, v2.1.2, v2.1.3, v2.1.4, v2.1.5, v2.1.6, v2.1.7, v2.1.8, v2.1.9, v2.2.0, v2.2.1, v2.2.10, v2.2.11, v2.2.2, v2.2.3, v2.2.4, v2.2.5, v2.2.6, v2.2.7, v2.2.8, v2.2.9, v2.3.0, v2.3.1, v2.3.10, v2.3.11, v2.3.12, v2.3.13, v2.3.14, v2.3.15, v2.3.16, v2.3.17, v2.3.18, v2.3.19, v2.3.2, v2.3.20, v2.3.21, v2.3.22, v2.3.23, v2.3.24, v2.3.25, v2.3.26, v2.3.27, v2.3.28, v2.3.29, v2.3.3, v2.3.30, v2.3.31, v2.3.32, v2.3.33, v2.3.34, v2.3.35, v2.3.36, v2.3.37, v2.3.38, v2.3.39, v2.3.4, v2.3.40, v2.3.41, v2.3.42, v2.3.5, v2.3.6, v2.3.7, v2.3.8, v2.3.9, v2.4.0, v2.4.0-BETA1, v2.4.0-BETA2, v2.4.0-RC1, v2.4.1, v2.4.10, v2.4.2, v2.4.3, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.4.9, v2.5.0, v2.5.0-BETA1, v2.5.0-BETA2, v2.5.0-RC1, v2.5.1, v2.5.10, v2.5.11, v2.5.12, v2.5.2, v2.5.3, v2.5.4, v2.5.5, v2.5.6, v2.5.7, v2.5.8, v2.5.9, v2.6.0, v2.6.0-BETA1, v2.6.0-BETA2, v2.6.1, v2.6.10, v2.6.11, v2.6.12, v2.6.13, v2.6.2, v2.6.3, v2.6.4, v2.6.5, v2.6.6, v2.6.7, v2.6.8, v2.6.9, v2.7.0, v2.7.0-BETA1, v2.7.0-BETA2, v2.7.1, v2.7.10, v2.7.11, v2.7.12, v2.7.13, v2.7.14, v2.7.15, v2.7.16, v2.7.17, v2.7.18, v2.7.19, v2.7.2, v2.7.20, v2.7.21, v2.7.22, v2.7.23, v2.7.24, v2.7.25, v2.7.26, v2.7.27, v2.7.28, v2.7.29, v2.7.3, v2.7.30, v2.7.31, v2.7.32, v2.7.33, v2.7.34, v2.7.35, v2.7.36, v2.7.37, v2.7.38, v2.7.39, v2.7.4, v2.7.40, v2.7.41, v2.7.42, v2.7.43, v2.7.44, v2.7.45, v2.7.46, v2.7.47, v2.7.48, v2.7.49, v2.7.5, v2.7.50, v2.7.6, v2.7.7, v2.7.8, v2.7.9, v2.8.0, v2.8.0-BETA1, v2.8.1, v2.8.10, v2.8.11, v2.8.12, v2.8.13, v2.8.14, v2.8.15, v2.8.16, v2.8.17, v2.8.18, v2.8.19, v2.8.2, v2.8.20, v2.8.21, v2.8.22, v2.8.23, v2.8.24, v2.8.25, v2.8.26, v2.8.27, v2.8.28, v2.8.29, v2.8.3, v2.8.30, v2.8.31, v2.8.32, v2.8.33, v2.8.34, v2.8.35, v2.8.36, v2.8.37, v2.8.38, v2.8.39, v2.8.4, v2.8.40, v2.8.41, v2.8.42, v2.8.43, v2.8.44, v2.8.45, v2.8.46, v2.8.47, v2.8.48, v2.8.49, v2.8.5, v2.8.6, v2.8.7, v2.8.8, v2.8.9].
    - centraldesktop/protobuf-php 0.5.0 requires symfony/console 2.3.* -> satisfiable by symfony/console[2.3.x-dev, v2.3.0, v2.3.1, v2.3.10, v2.3.11, v2.3.12, v2.3.13, v2.3.14, v2.3.15, v2.3.16, v2.3.17, v2.3.18, v2.3.19, v2.3.2, v2.3.20, v2.3.21, v2.3.22, v2.3.23, v2.3.24, v2.3.25, v2.3.26, v2.3.27, v2.3.28, v2.3.29, v2.3.3, v2.3.30, v2.3.31, v2.3.32, v2.3.33, v2.3.34, v2.3.35, v2.3.36, v2.3.37, v2.3.38, v2.3.39, v2.3.4, v2.3.40, v2.3.41, v2.3.42, v2.3.5, v2.3.6, v2.3.7, v2.3.8, v2.3.9].
    - centraldesktop/protobuf-php 0.5.1 requires symfony/console 2.3.* -> satisfiable by symfony/console[2.3.x-dev, v2.3.0, v2.3.1, v2.3.10, v2.3.11, v2.3.12, v2.3.13, v2.3.14, v2.3.15, v2.3.16, v2.3.17, v2.3.18, v2.3.19, v2.3.2, v2.3.20, v2.3.21, v2.3.22, v2.3.23, v2.3.24, v2.3.25, v2.3.26, v2.3.27, v2.3.28, v2.3.29, v2.3.3, v2.3.30, v2.3.31, v2.3.32, v2.3.33, v2.3.34, v2.3.35, v2.3.36, v2.3.37, v2.3.38, v2.3.39, v2.3.4, v2.3.40, v2.3.41, v2.3.42, v2.3.5, v2.3.6, v2.3.7, v2.3.8, v2.3.9].
    - Can only install one of: symfony/console[2.0.4, v4.2.3].
    [...]
    - Can only install one of: symfony/console[v2.8.9, v4.2.3].
    - Installation request for symfony/console (locked at v4.2.3) -> satisfiable by symfony/console[v4.2.3].


Installation failed, reverting ./composer.json to its original content.

Для меняпохоже, у centraldesktop/protobuf-php есть конфликт зависимостей с Laravel.Оба требуют symfony/console, protobuf0.5 - 2.*, а Laravel - ^4.1.

Это моя первая проблема с конфликтом зависимостей, и я не знаю, как ее решить.Я пытался добавить "symfony/console": "dev-master as 2.8", но это не сработало.

У кого-нибудь есть идеи о том, как я могу из этого выбраться?

Спасибо

1 Ответ

0 голосов
/ 22 февраля 2019

Да, ваша оценка верна.Для gtfs-realtime-bindings требуется centraldesktop / protobuf-php: 0.5. *, что является нежелательным требованием для symfony / console.В более поздней версии они изменили его на требование только разработчика (даже тогда только консоль 3.x).

Я не думаю, что вы можете безопасно понизить версию Symfony / console.Вместо этого я хотел бы создать Pull Request для gtfs-realtime-bindings, в котором минимальная требуемая версия centraldesktop / protobuf-php увеличивается до ^1.0.Это может потребовать других изменений в коде, поскольку могут быть критические изменения от 0,5 до 1,0.К сожалению, centraldesktop / Protobuf-PHP не предоставляет руководство по обновлению, поэтому вам необходимо выяснить, не происходит ли что-либо с помощью тестов или проверок кода в вашей IDE.К счастью, gtfs-realtime-bindings протестирован и выглядит довольно маленьким, так что это обновление должно быть управляемым, даже если вы не знаете все внутренние компоненты.Кроме того, когда вы открываете пулл-запрос, который находится в процессе разработки, вас наверняка поддержат сопровождающие.

Другой вариант - поиск альтернативных реализаций привязок или написание собственных.

...