Drupal 9 => Drupal 10 migráció (upgrade)

A Drupal 8-ban új felépítést vezettek be a fejlesztők, amely gond nélkül tovább upgradelhető Drupal 9-re, de a Drupal 10-ben jó néhány már nem folytatott modult kivettek és ezért a Drupal 9 =>Drupal 10 upgrade kissé macerás lett.

Az upgrade menete:

  • Frissíted a Drupal 9-et a legutolsó változatra: 9.5.11
  • Minden változás előtt lemented a Drupal kódot és az adatbázist!
  • A CKEditor 5-öt élesíted
  • Átírod a szövegformátumok alapértelmezett szerkesztőjét CKEditor 5-re:
    Configuration > Content authoring > Text formats and editors
  • Minden modult, ami a CKeditor 4-hez tartozik uninstallálod
    • Minden CKEditor
    • svg_image
    • FontAwesome
  • Ckeditor 4-et uninstallálod.
  • Minden egyéb Deprecated-del jelölt modult uninstallálsz.
  • Minden modult frissítesz Drupal 10 kompatibilisre, vagy uninstallálod, ha nem az!
  • Állítsd be a admin/appearance helyen admin témának a Claro témát. Ez már a 9.4.x óta a default admin téma.
  • Uninstallálj minden nem kompatibilis témát szintén itt: admin/appearance
    • Seven
    • bartik
    • Régi site témája => Majd új témát kell készíteni
  • Ha a drush nem működik, akkor letörlöd és újra telepíted a drush-t.
  • composer remove drush/drush
                    composer require drush/drush
  • Telepíted az upgrade_status modult!
  • composer require drupal/upgrade_status
  • Utána engedélyezed:
  • drush en upgrade_status.
  • Ettől kezdve a Reports > Upgrade Statusvagy /admin/reports/upgrade-status helyen ellenőrizheted, hogy hogyan áll a frissítés állapota.
  • Innen még találhatsz olyan modulokat, amelyek nem kompatibilisek a Drupal 10-zel. Ezeket uninstalláld, illetve ha uninstallálva vannak, de ott vannak a contrib könyvtárban, akkor jobb, ha letörlöd őket.
  • Seven admin témát is majd uninstallálnod kell

Ha composerrel akarsz frissíteni, akkor ezt használd:

composer require drupal/core-recommended:^10 --with-all-dependencies
  • A site root könyvtárában a  composer.json file-ban megkeresed a require részt és átírod a tartalmát erre:
  "require": {
        "composer/installers": "^2.0",
        "drupal/core-composer-scaffold": "^10",
        "drupal/core-project-message": "^10",
        "drupal/core-recommended": "^10",
        "drupal/core-vendor-hardening": "^9.5",
    },
  • Elindítod a composer update parancsot.

Ha kézzel akarsz frissíteni, akkor, mint korábban a kis verzióknál írd felül az egész site-ot az új verzióval.

Ha nincsen, akkor telepíted a drush-t és elindítod az adatbázis update-et.

drush updb

Előfordult problémák

  • Előfordulhat, hogy a drush segítségével a phpass modult - php password compatibility modul, a core része - engedélyezned kell.
		drush en phpass
  • Az Upgrade_status modul panaszkodik a PHPSTAN és al moduljai hiányára. Megoldás:
composer require  --dev phpstan/phpstan phpstan/extension-installer mglaman/phpstan-drupal phpstan/phpstan-deprecation-rules