Рейтинг:0

Проблема с привязкой к версии при обновлении

флаг cn

Каждый раз, когда я запускаю команду composer для обновления Drupal 8.9.16 до Drupal 9, она уведомляет меня о проблеме с модулем.

Например, я запускаю:

композитор требует drupal/core --with-all-dependencies

Я получил:

Использование версии ^9.2 для drupal/core
./composer.json обновлен
Запуск обновления композитора drupal/core --with-all-dependencies
Сбор патчей из patch-файла.
Загрузка репозиториев композитора с информацией о пакете
Обновление зависимостей
Ваши требования не могут быть разрешены для устанавливаемого набора пакетов.

  Проблема 1
    - drupal/twig_tweak привязан к версии 2.9.0 и обновление этого пакета не запрашивалось.
    - drupal/twig_tweak 2.9.0 требует drupal/core ^8.7 || ^9.0 -> удовлетворяется drupal/core[9.2.0-alpha1, ..., 9.3.x-dev].
    - drupal/core[9.2.0-alpha1, ..., 9.3.x-dev] требует symfony/routing ^4.4 -> удовлетворяется symfony/routing[v4.4.0-BETA1, ..., 4.4.x-dev ].
    - symfony/routing v4.4.25 конфликтует с symfony/routing v4.4.25.
    - symfony/routing v4.4.24 конфликтует с symfony/routing v4.4.24.
    - symfony/routing v4.4.22 конфликтует с symfony/routing v4.4.22.
.....
.....

В данном случае twig_tweak уже 2.9.0, который поддерживает Drupal 9, но жалуется на это. Я удалял проблемный модуль из composer.json, а затем запускал обновление композитора, но каждый раз, когда я бегу композитор требует drupal/core --with-all-dependencies появляется другой модуль с той же проблемой. Я чувствую, что могу делать что-то не так.

флаг cn
Используете ли вы `core-recommended`, как описано в документации? https://www.drupal.org/docs/updating-drupal/updating-drupal-core-через-композитор
albertski avatar
флаг cn
Мой composer.json в настоящее время не использует `core-recommended`.
флаг cn
Вам необходимо обновить все предоставленные модули перед попыткой обновления ядра — см. https://www.drupal.org/docs/upgrading-drupal/how-to-prepare-your-drupal-7-or-8-site-for. -drupal-9/обновление-a-drupal-8-сайт. [Статус обновления](https://www.drupal.org/project/upgrade_status) очень полезен для получения списка того, что нуждается в обновлении и что доступно.
albertski avatar
флаг cn
Привет @Clive, я запустил статус обновления, и все должно быть обновлено, но я все еще получаю эти ошибки. Например, в этом случае twig-tweak имеет версию 2.9.0, которая должна поддерживать Drupal 9.
флаг cn
Вы использовали композитор для обновления модулей? Если нет, то композитор не узнает, что ты это сделал
albertski avatar
флаг cn
@Clive Я обновил все с помощью composer.
флаг cn
Предполагая, что ваш проект зарегистрирован в системе контроля версий, попробуйте удалить `composer.lock` и `/vendor`, а затем запустить `composer update`. Это ядерный вариант, но я использовал его на нескольких сайтах для обновления до D9.
Рейтинг:-1
флаг cn

Если вам нужно обновить текущий код, выполните следующие действия:

Шаг 1: Запустите команду:

обновление композитора

Шаг 2: Вам необходимо обновить текущий код с помощью обновления до Drupal 8 и обновить, используя пользовательскую тему и версию модуля.

core_version_requirement: ^8.9 || ^9

Итак, текущий код и модули готовы к обновлению с помощью Drupal 9. Таким образом, мы можем уменьшить количество ошибок.

Шаг 3: Создайте папку по умолчанию и сделайте файл редактируемым.

chmod 777 веб/сайты/по умолчанию найти веб/сайты/по умолчанию -имя "*settings.php" -exec chmod 777 {} ; найти web/sites/default -name "*services.yml" -exec chmod 777 {} ;

Шаг 4: Запустите эти команды (эта команда редактирует ваш файл Composer, чтобы он был готов к обновлению)

композитор требует drupal/core-recommended:^9 drupal/core-composer-scaffold:^9 drupal/core-project-message:^9 --update-with-dependencies --no-update

Если у вас установлен drupal/core-dev.

композитор требует drupal/core-dev:^9 --dev --update-with-dependencies --no-update

Шаг 5: Запустите команду

composer require "drupal/core:9.2.1 as 8.9.16" --no-update && composer update

Шаг 6: Запустите Команда Drush updateb

Если у вас возникнут проблемы с ядром, тогда

Шаг 6.1: Запустите Композитор устарел "drupal/*" и обновите этот указанный модуль до версии Drupal 9 и обновите соответствующие пользовательские модули и темы с помощью Drupal 9.

Шаг 6.2: $config_directories['синхронизация'] изменить на $settings["config_sync_directory"]

https://www.drupal.org/docs/upgrading-drupal/upgrading-from-drupal-8-to-drupal-9-или-позже

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.