[gelöst] Fragen zum update D9.5.11 zu D10.0
am 02.12.2023 - 13:31 Uhr in
Hallo communitiy,
aktuell beschäftigt mich das update von 9.5.11 auf Drupal 10. Ich hab einige tutorials durchgeschaut und mich im Selbststudium versucht. Die Seite ist dabei nicht kaputtgegangen, was ich auch schon als Erfolg verbuche.
Also folgendes ist schon geschafft:
- Im webspace passen alle Voraussetzungen, denn ich hab da auch ein Projekt mit D10.0 am Laufen.
- Alle unnötigen/inkompatiblen Module sind entfernt
- alle anderen sind kompatibel und auf dem neuesten Stand (passend zum D9.5.11)
- das update_status Modul meldet einen Prozentsatz von 95%
- was von update_status bemängelt wird kann ich leider nicht ändern - denn bei 3 modulen (adress,backup_migrate, commerce) gibts Probleme, sie sind jedoch grundsätzlich kompatibel.
- composer und drush sind vorhanden und kann ich schon bedienen (bin im 1.Lehrjahr)
Ich habs mit folgendem Befehl versucht und die darauffolgenden 11 Fehlermeldungen erhalten, die sich immer wieder ähneln - ich weiß aber nicht was ich damit anfangen soll. Muss ich da in der composer.lock etwas ändern? Danke für alle weiterführende Hinweise wenn möglich konkret auf die Fehlermeldungen bezogen.
Befehl: composer update --dry-run
Problem 1
- Root composer.json requires drupal/core ^10.0, found drupal/core[10.0.0, ..., 10.1.6] but these were not loaded, likely because it conflicts with another require.
Problem 2
- drupal/backup_migrate is locked to version 5.0.2 and an update of this package was not requested. (...wurde nicht angefragt heißt das wohl)
- drupal/backup_migrate 5.0.2 requires drupal/core ^9.3 || ^10 -> found drupal/core[9.3.0, ..., 9.5.11, 10.0.0, ..., 10.1.6] but these were not loaded, likely because it conflicts with another require.
Problem 3
- drupal/belgrade is locked to version 2.0.0 and an update of this package was not requested.
- drupal/belgrade 2.0.0 requires drupal/core ^9.2 || ^10 -> found drupal/core[9.2.0, ..., 9.5.11, 10.0.0, ..., 10.1.6] but these were not loaded, likely because it conflicts with another require.
Problem 4
- drupal/bootstrap is locked to version 3.29.0 and an update of this package was not requested.
- drupal/bootstrap 3.29.0 requires drupal/core ^9.5 || ^10 -> found drupal/core[9.5.0, ..., 9.5.11, 10.0.0, ..., 10.1.6] but these were not loaded, likely because it conflicts with another require.
Problem 5
- drupal/bootstrap_layouts is locked to version 5.3.0 and an update of this package was not requested.
- drupal/bootstrap_layouts 5.3.0 requires drupal/core ^9.3 || ^10 -> found drupal/core[9.3.0, ..., 9.5.11, 10.0.0, ..., 10.1.6] but these were not loaded, likely because it conflicts with another require.
Problem 6
- drupal/commerce_add_to_cart_link is locked to version 2.0.6 and an update of this package was not requested.
- drupal/commerce_add_to_cart_link 2.0.6 requires drupal/core ^9.2 || ^10 -> found drupal/core[9.2.0, ..., 9.5.11, 10.0.0, ..., 10.1.6] but these were not loaded, likely because it conflicts with another require.
Problem 7
- drupal/core-recommended is locked to version 10.0 and an update of this package was not requested.
- drupal/core-recommended 10.0 requires drupal/core 9.5.11 -> found drupal/core[9.5.11] but it conflicts with your root composer.json require (^10.0).
Problem 8
- drupal/inline_entity_form is locked to version 1.0.0-rc15 and an update of this package was not requested.
- drupal/inline_entity_form 1.0.0-rc15 requires drupal/core ^8.8 || ^9 || ^10 -> found drupal/core[8.8.0, ..., 8.9.20, 9.0.0, ..., 9.5.11, 10.0.0, ..., 10.1.6] but these were not loaded, likely because it conflicts with another require.
Problem 9
- drupal/panels is locked to version 4.6.0 and an update of this package was not requested.
- drupal/panels 4.6.0 requires drupal/core ^8.8 || ^9 -> found drupal/core[8.8.0, ..., 8.9.20, 9.0.0, ..., 9.5.11] but it conflicts with your root composer.json require (^10.0).
Problem 10
- drupal/upgrade_status is locked to version 4.0.0 and an update of this package was not requested.
- drupal/upgrade_status 4.0.0 requires drupal/core ^9 || ^10 -> found drupal/core[9.0.0, ..., 9.5.11, 10.0.0, ..., 10.1.6] but these were not loaded, likely because it conflicts with another require.
Problem 11
- drupal/commerce_wishlist dev-3.x requires drupal/core ^8.9 || ^9 || ^10 -> found drupal/core[8.9.0, ..., 8.9.20, 9.0.0, ..., 9.5.11, 10.0.0, ..., 10.1.6] but these were not loaded, likely because it conflicts with another require.
- drupal/commerce_wishlist 3.x-dev is an alias of drupal/commerce_wishlist dev-3.x and thus requires it to be installed too.
- Root composer.json requires drupal/commerce_wishlist 3.x-dev -> satisfiable by drupal/commerce_wishlist[3.x-dev (alias of dev-3.x)].
Bei meinen ersten Versuchen kamen die unterhalb stehenden Fehlermeldungen, die ich durch Änderungen in der composer lock sogar beheben konnte. Wenn ich es recht verstehe war die Drupal Version vorher "fix" auf D9.5.11 eingestellt, ich hab dann jeweils D10 eingetragen. Im notepad+ Editor ging das sehr einfach. Aber es war ein Blindflug, weil ich nicht sicher war ob das hilft. Also im Folgenden sind diese bereits behobenen Fehlermeldungen zu sehen:
Problem 1
- Root composer.json requires drupal/core ^10.0, found drupal/core[10.0.0, ..., 10.1.6] but the package is fixed to 9.5.11 (lock file version) by a partial update and that version does not match. Make sure you list it as an argument for the update command.
Problem 2
- Root composer.json requires drupal/core-composer-scaffold ^10.0, found drupal/core-composer-scaffold[10.0.0, ..., 10.1.6] but the package is fixed to 9.5.11 (lock file version) by a partial update and that version does not match. Make sure you list it as an argument for the update command.
Problem 3
- Root composer.json requires drupal/core-project-message ^10.0, found drupal/core-project-message[10.0.0, ..., 10.1.6] but the package is fixed to 9.5.11 (lock file version) by a partial update and that version does not match. Make sure you list it as an argument for the update command.
Problem 4
- Root composer.json requires drupal/core-recommended ^10.0, found drupal/core-recommended[10.0.0, ..., 10.1.6] but the package is fixed to 9.5.11 (lock file version) by a partial update and that version does not match. Make sure you list it as an argument for the update command.
Problem 5
- drupal/core-dev[10.0.0, ..., 10.0.11] require symfony/error-handler ^6.2 -> found symfony/error-handler[v6.2.0, ..., v6.4.0] but the package is fixed to v4.4.44 (lock file version) by a partial update and that version does not match. Make sure you list it as an argument for the update command.
- drupal/core-dev[10.1.0, ..., 10.1.6] require symfony/error-handler ^6.3 -> found symfony/error-handler[v6.3.0, v6.3.2, v6.3.5, v6.4.0] but the package is fixed to v4.4.44 (lock file version) by a partial update and that version does not match. Make sure you list it as an argument for the update command.
- Root composer.json requires drupal/core-dev ^10 -> satisfiable by drupal/core-dev[10.0.0, ..., 10.1.6].
- Anmelden oder Registrieren um Kommentare zu schreiben
Ich kann nur auf diese
am 02.12.2023 - 16:12 Uhr
Ich kann nur auf diese Anleitung verweisen. Darin steht genau, was zu tun ist. Sogar der Hinweis, daß Module, die nur mit 10 laufen, aber benötigt werden, vor dem Update mit composer require drupal/[MODUL] --no-update im composer.json schon eingetragen werden können. Die werden dann erst beim finalen composer update mit geladen.
Bitte prüfe, ob Du dem composer erlaubst, neuere Versionen zu benutzen. Einen Update der Hauptrelease (erste Zahl) macht er nicht. Dazu muß man entweder den composer.json editieren oder mit composer require drupal/[MODUL]:^Releasenummer die Version erzwingen. Wenn das ^-Zeichen vor der Releasenummer fehlt, ist die Version gelockt. Dann macht er keinen Update davon.
Die Panels-Version 4.7 ist übrigens schon für Drupal 10 geeignet.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Danke einmal
am 02.12.2023 - 20:40 Uhr
1.) ich werde mal Teil 1 versuchen das mit dem "composer require drupal/[MODUL] --no-update" und melde mich dann wieder.
2.) wie kann ich prüfen, ob ich dem composer erlaube, neuere Versionen zu benutzen?
Jedenfalls laut update_status sind alle Module für D10 geeignet.
Lieben Gruss derweilen,
Martin
Du mußt Dir die
am 03.12.2023 - 11:14 Uhr
Du mußt Dir die composer.json-Datei ansehen. Wenn vor der Revision des Moduls kein ^-Zeichen steht, ist die Version fix. Composer geht aber nie auf eine neue Hauptrelease, also von 3.4.1 auf 4.0.1. Du müßtest in dem Fall im composer.json die Version mit einem Editor auf ^4.0 ändern. Soll es keine stabile Release sein kommt noch ein Anhang dazu etwa ^4.0@alpha oder ^4.0@rc.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Ja hab ich getan
am 03.12.2023 - 11:40 Uhr
Ich hab bei allen Modulen wo es nötig war folgendes gemacht und damit sind alle ^Zeichen vor der Versionsnummer - heißt wohl jetzt wären die zum updaten bereit.
composer require drupal/backup_migrate --no-update
Using version ^5.0 for drupal/backup_migrate
./composer.json has been updated
Aktuell klemmt es bei dem recurly, da weiß ich nicht weiter. Das eine ist ein Alias fürs andere, soll ich beide in der json eintragen?
Problem 1
- drupal/recurly dev-1.x requires drupal/core ^8 || ^9 -> found drupal/core[8.0.0, ..., 8.9.20, 9.0.0, ..., 9.5.11] but it conflicts with your root composer.json require (^10.0).
- drupal/recurly 1.x-dev is an alias of drupal/recurly dev-1.x and thus requires it to be installed too.
- Root composer.json requires drupal/recurly ^1.x-dev -> satisfiable by drupal/recurly[1.x-dev (alias of dev-1.x)].
Use the option --with-all-dependencies (-W) to allow upgrades, downgrades and removals for packages currently locked to specific versions.
Meine json sieht jetzt wie folgt aus:
"name": "drupal/recommended-project",
"description": "Project template for Drupal 9 projects with a relocated document root",
"type": "project",
"license": "GPL-2.0-or-later",
"homepage": "https://www.drupal.org/project/drupal",
"support": {
"docs": "https://www.drupal.org/docs/user_guide/en/index.html",
"chat": "https://www.drupal.org/node/314178"
},
"repositories": [
{
"type": "composer",
"url": "https://packages.drupal.org/8"
}
],
"require": {
"commerceguys/addressing": "^1.4",
"commerceguys/intl": "^1.0.0",
"composer/installers": "^1.9",
"drupal/backup_migrate": "^5.0",
"drupal/belgrade": "^2.0",
"drupal/bootstrap": "^3.29",
"drupal/bootstrap_layouts": "^5.3",
"drupal/commerce_add_to_cart_link": "^2.0",
"drupal/commerce_wishlist": "^3.x-dev",
"drupal/core": "^10.0",
"drupal/core-composer-scaffold": "^10.0",
"drupal/core-project-message": "^10.0",
"drupal/core-recommended": "^10.1",
"drupal/inline_entity_form": "^1.0@RC",
"drupal/panels": "^4.7",
"drupal/recurly": "^1.x-dev",
"drupal/upgrade_status": "^4.0"
},
"conflict": {
"drupal/drupal": "*"
},
"minimum-stability": "stable",
"prefer-stable": true,
"config": {
"allow-plugins": {
"composer/installers": true,
"drupal/core-composer-scaffold": true,
"drupal/core-project-message": true,
"dealerdirect/phpcodesniffer-composer-installer": true
},
"sort-packages": true
},
"extra": {
"drupal-scaffold": {
"locations": {
"web-root": "web/"
}
},
"installer-paths": {
"web/core": [
"type:drupal-core"
],
"web/libraries/{$name}": [
"type:drupal-library"
],
"web/modules/contrib/{$name}": [
"type:drupal-module"
],
"web/profiles/contrib/{$name}": [
"type:drupal-profile"
],
"web/themes/contrib/{$name}": [
"type:drupal-theme"
],
"drush/Commands/contrib/{$name}": [
"type:drupal-drush"
],
"web/modules/custom/{$name}": [
"type:drupal-custom-module"
],
"web/profiles/custom/{$name}": [
"type:drupal-custom-profile"
],
"web/themes/custom/{$name}": [
"type:drupal-custom-theme"
]
},
"drupal-core-project-message": {
"include-keys": [
"homepage",
"support"
],
"post-create-project-cmd-message": [
"<bg=blue;fg=white> </>",
"<bg=blue;fg=white> Congratulations, you’ve installed the Drupal codebase </>",
"<bg=blue;fg=white> from the drupal/recommended-project template! </>",
"<bg=blue;fg=white> </>",
"",
"<bg=yellow;fg=black>Next steps</>:",
" * Install the site: https://www.drupal.org/docs/8/install",
" * Read the user guide: https://www.drupal.org/docs/user_guide/en/index.html",
" * Get support: https://www.drupal.org/support",
" * Get involved with the Drupal community:",
" https://www.drupal.org/getting-involved",
" * Remove the plugin that prints this message:",
" composer remove drupal/core-project-message"
]
}
},
"require-dev": {
"drupal/core-dev": "^10"
}
}
Lies den Tipp noch mal ganz aufmerksam
am 03.12.2023 - 15:08 Uhr
Ich hab bei allen Modulen wo es nötig war folgendes gemacht und damit sind alle ^Zeichen vor der Versionsnummer - heißt wohl jetzt wären die zum updaten bereit.
composer require drupal/backup_migrate --no-update
Using version ^5.0 for drupal/backup_migrate
./composer.json has been updated
Aktuell klemmt es bei dem recurly, da weiß ich nicht weiter. Das eine ist ein Alias fürs andere, soll ich beide in der json eintragen?
Mit dem "^" allein ist es nicht getan, wie Werner schon ausgeführt hat, da das nur Updates innerhalb der Hauptversionsnummer zulässt. D.h. mit "^1" gibt es keine aktuell D10 kompatible Version 5.x.x des besagten Moduls.
# DrupalCenter-Moderator # https://www.drupal.org/u/c-logemann
# CTO der Nodegard GmbH: Tech. Concepts | Security + Availability Operations / Wir unterstützen IT-Abteilungen, Agenturen, Freiberufler:innen
Wie Carsten schon aufgeführt
am 03.12.2023 - 17:22 Uhr
Wie Carsten schon aufgeführt hat: recurly benötigt Version 5. Du hast im composer.json aber Version 1 eingetragen. Also immer auf der Modulseite bei Drupal.org nachsehen, welche Version für Drupal 10 geeignet ist.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Gelingt nicht
am 03.12.2023 - 17:47 Uhr
Nachdem es eine sehr überschaubare Anzahl von Modulen ist, hab ich das durchgesehen und nichts Verändernswertes gefunden. Keine Version 3.2.1 die eventuell auf 4.0 erhöht werden sollte. Aber so widersprüchliche Geschichten wie beim recurly, dass es plötzlich einmal 1.x -dev und einmal dev1.x heisst. Wo kommt das her?
Wenn Du auf der Seite
am 03.12.2023 - 18:17 Uhr
Wenn Du auf der Seite https://www.drupal.org/project/recurly ganz nach unten scrollst, dann siehst Du, daß lediglich die Version
5 für Drupal 10 geeignet ist. Du siehst da sogar den composer-Befehl. Wieso hast Du also im composer.json die Version 1-dev verlangt? Das paßt nicht.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Ok das hatte ich übersehen und nun korrigiert
am 03.12.2023 - 20:48 Uhr
Mit folgendem Ergebnis, also nur mehr 1 Problem zu lösen. Ich kenne mich da vermutlich grundsätzlich nicht aus. In der .json steht die "Rezeptur" des "Kochrezeptes", so hat es mal einer hier im Forum ausgedrückt. Also quasi Bestellliste. Ist es so, wenn ich da alles richtig eintrage, dass der composer sich alles Erforderliche holt? Und welche Funktion hat dann die .lock?
Besteht in meinem Problemfall eine Diskrepanz zwischen json und lock Datei? Ich verstehs grad nicht.
Jedenfalls Danke für eure Geduld - mein Knopf im Hirn löst sich hoffentlich noch heuer.
Problem 1
- drupal/commerce[2.15.0, ..., 2.36.0] require drupal/address ^1.7 -> found drupal/address[1.7.0, ..., 1.12.0] but it conflicts with your root composer.json require (^2.0@beta).
- drupal/commerce[2.17.0, ..., 2.18.0] require drupal/core ^8.7.7 || ^9 -> found drupal/core[8.7.7, ..., 8.9.20, 9.0.0, ..., 9.5.11] but it conflicts with your root composer.json require (^10.1).
- drupal/commerce[2.19.0, ..., 2.24.0] require drupal/core ^8.8 || ^9 -> found drupal/core[8.8.0, ..., 8.9.20, 9.0.0, ..., 9.5.11] but it conflicts with your root composer.json require (^10.1).
- drupal/commerce[2.25.0, ..., 2.28.0] require drupal/core ^8.9 || ^9 -> found drupal/core[8.9.0, ..., 8.9.20, 9.0.0, ..., 9.5.11] but it conflicts with your root composer.json require (^10.1).
- drupal/commerce_wishlist dev-3.x requires drupal/commerce ^2.15 || ^3 -> satisfiable by drupal/commerce[2.15.0, ..., 2.36.0].
- Root composer.json requires drupal/commerce_wishlist dev-3.x -> satisfiable by drupal/commerce_wishlist[dev-3.x].
Geh doch bitte mal meine
am 04.12.2023 - 08:23 Uhr
Geh doch bitte mal meine Anleitung hier Schritt für Schritt durch.
Vielleicht findest Du noch etwas, was Du vergessen hast.
https://www.montviso.de/blog/upgrade-von-drupal-9-auf-10
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
Soweit ich das sehe, will
am 04.12.2023 - 11:14 Uhr
Soweit ich das sehe, will composer auch noch commerce installieren, da Du Teile von commerce verwendest. commerce sollte aber als Version 2.36 installiert werden und ist bisher im composer.json nicht aufgeführt.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Zwischenstopp
am 04.12.2023 - 15:51 Uhr
Liebe supporter:innen,
deine Anleitung montviso hab ich nun auch durchgeackert, den Hinweis von dir Werner ebenfalls berücksichtigt. Es hat nichts geholfen, die Fehlermeldungen beim dry-run werden nicht weniger. Das Herumgemurxe in json und lock Datei bringt nichts weiter, weil ich da etwas vom Grundprinzip noch nicht verstanden habe. Wenn ihr mir da einen Link zusenden könntet wo ich das nachlesen und verstehen kann.
Genug der Experimente, ich setze das Projekt neu und gleich in D10.x auf.
Danke euch,
winterliche Grüße aus Ö,
Martin
Eine Link, wo Du die Lösung
am 05.12.2023 - 07:56 Uhr
Eine Link, wo Du die Lösung findest, gibt es nicht zusätzlich zu denen, die Du schon durchgeackert hast.
Die Probleme sind zu vielfältig, je nach Kombi von Webserver, Drupalversion, Modulen, Theme, PHP Version, Drushversion...
"Das Herumgemurxe in json und lock Datei bringt nichts weiter"
Das steht mal fest. ;-)
Einen habe ich noch für Dich von hier unter "Common errors"
https://www.drupal.org/docs/upgrading-drupal/upgrading-from-drupal-8-or-...
Mit dem Befehl
composer show --no-dev --direct --name-only | xargs
erhälst Du eine Liste von Pachages, auf die Du ein require ausführst.
Also einfach den Befehl ausführen und das Ergebnis in eine Textdatei kopieren.
Das heißt bei mir z.B.
composer/installers dompdf/dompdf drupal/admin_toolbar drupal/augmentor drupal/augmentor_chatgpt drupal/augmentor_google_cloud_speech_to_text-augmentor_google_cloud_speech_to_text drupal/augmentor_openai_gpt3 drupal/blazy drupal/block_class drupal/block_content_permissions drupal/blog drupal/bootstrap_barrio drupal/chatgpt_plugin drupal/ckeditor5_icons drupal/color_field drupal/color_picker drupal/core drupal/core-composer-scaffold drupal/core-project-message drupal/core-recommended drupal/crop drupal/ctools drupal/devel drupal/devel_kint_extras drupal/dropzonejs drupal/editor_advanced_link drupal/embed drupal/entity drupal/entity_browser drupal/entity_browser_enhanced drupal/entity_pager drupal/entity_print drupal/entity_reference_revisions drupal/eu_cookie_compliance drupal/field_group drupal/fontawesome drupal/fullcalendar_view drupal/geocoder drupal/geofield drupal/google_analytics drupal/honeypot drupal/imce drupal/layout_paragraphs drupal/leaflet drupal/linkit drupal/menu_block drupal/metatag drupal/mobile_detect drupal/paragraphs drupal/pathauto drupal/publishcontent drupal/quick_node_clone drupal/rebuild_cache_access drupal/responsive_tables_filter drupal/search_api drupal/search_api_autocomplete drupal/search_api_page drupal/shariff drupal/slick drupal/slick_views drupal/superfish drupal/svg_image drupal/tablefield drupal/token drupal/twig_tweak drupal/upgrade_status drupal/video_embed_field drupal/viewfield drupal/webform drush/drush geocoder-php/nominatim-provider kint-php/kint mglaman/composer-drupal-lenient
Nun machst Du statt Leerzeichen Zeilenumbrüche und schreibst jeweils composer require davor.
Die führst Du alle aus. Bzw. nur die, die nicht Module betreffen, die Du sowieso schon auf neuem Stand hast.
Ich habe diesen Befehl nicht in meinen Blog aufgenommen, weil ich ihn nur einmal gebraucht habe und auch nicht nachvollziehen konnte, warum da, und sonst nicht.
Ansonsten habe ich noch die Linkliste gefunden, mit der ICH mich eingearbeitet habe in das D10 Upgrade:
https://www.kalamuna.com/blog/run-your-drupal-10-upgrade-three-simple-steps
https://drupalize.me/blog/start-drupal-9-readiness-do-list-using-upgrade...
https://www.easternstandard.com/blog/2023/01/drupal-9-to-drupal-10-upgra...
https://insights.daffodilsw.com/blog/upgrade-from-drupal-9-to-drupal-10
https://www.drupal.org/docs/updating-drupal/updating-drupal-core-via-com...
https://www.drupal.org/docs/upgrading-drupal/upgrading-from-drupal-8-or-...
https://dev.acquia.com/blog/top-ten-things-do-right-now-upgrade-drupal-10
https://www.drupal.org/project/drupal/issues/3335486
https://www.drupal.org/docs/upgrading-drupal/upgrading-from-drupal-8-or-...
https://stackoverflow.com/questions/74885881/how-to-install-patched-modu...
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
Das ist jedenfalls fein
am 05.12.2023 - 08:16 Uhr
den Link von "Coomon errors" kannte ich schon - danke für die folgenden Links, das führe ich mir langsam zu Gemüte. Und den composer Befehl: composer show --no-dev --direct --name-only | xargs.
Es war ein bisserl ernüchternd, nach dem großen Hurra, dass mit composer alles so easy ist auf die Feinheiten zu stoßen. In meinem Fall Dutzende Gegenabhängigkeiten, die mit meinem Wissensstand nicht durchzublicken waren. Kleiner Lernerfolg: auch zum 1. Mal in die json geblickt und die Struktur der lock Datei inspiziert.
Kleine Schritte, aber wichtig.
Danke!
Ich weiß. Ich war auch
am 05.12.2023 - 09:13 Uhr
Ich weiß. Ich war auch ernüchtert. Ich mache ja den Zirkus seit Drupal 6 mit und es war eine harte Zeit, als die Sprung von D7 auf D8 kam und ich Composer lernen musste.
Ich hatte mich durchaus gefreut über das Versprechen, von D9 auf D10 sei ein Sonntagsspaziergang.
Ganz so ist es nicht.
Dafür freue ich mich unbeändig über die Smarten Intallationen, die ich gleich sauber unter D10 aufsetze.
Je mehr alten Krempel man rum schleppt, desto schwerer ist es.
Übrigens noch ein Tipp:
Manchmal hilft auch den Ordner vendor und die Datei lock weg werfen und composer update ausführen.
Dann wird das sauber neu aufgesetzt.
Hier beschrieben:
https://github.com/composer/composer/issues/7554
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
Ok, das wußte ich nicht
am 05.12.2023 - 12:41 Uhr
...,daß vendor und .lock so entbehrlich sind. Einfach löschen und beim update werden sie neu "gebildet". Werde ich sicher ausprobieren, denn die Seite läuft noch und ist jetzt einfach mein Experimentierfeld. Danke für die Anregungen, auch die aus der vorangegangenen Email. Ich kann mir den Luxus geben, spielerisch mit dem Problem umzugehen. Das entkrampft die Sache.
Zitat: Ich kann mir den Luxus
am 05.12.2023 - 14:07 Uhr
Ich kann mir den Luxus geben, spielerisch mit dem Problem umzugehen. Das entkrampft die Sache.
Das ist auch die einzig richtige Herangehensweise.
Ich habe immer eigene Projekte, damit ich nicht die Kunden als Versuchskaninchen verwenden muss. ;-)
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
Ich hatte vor zwei Tagen auch
am 05.12.2023 - 23:46 Uhr
Ich hatte vor zwei Tagen auch ein gößeres Problem mit einem Upgrade von D9 nach D10 für einen Kunden. composer ließ sich nicht zum Upgrade bewegen, auch nicht mit Löschen von composer.lock, vendor und core.
Ich habe schließlich mit composer Drupal auf D10 neu aufgesetzt, alle Module nacheinander mit composer zugefügt. Dabei mußte manchmal ein zweites Modul in einer Alpha oder Beta-Version mit installiert werden, damit der composer den require akzeptiert hat. Zum Schluß habe ich dann die settings.php und das files-Verzeichnis an die richtigen Stellen dazu kopiert und damit auch die alte Datenbank angebunden.
Jetzt konnte über drush der update angestoßen werden. Der wollte dann aber die inzwischen fehlenden (legacy) Module und Themes noch zugefügt haben. Dann konnte ich den Update zu Ende bringen und danach die nicht mehr benötigten Module und Themes wieder deinstallieren. War also insgesamt etwas mehr Aufwand als erwartet, hat aber funktioniert.
Lokal ist die Seite damit auf dem aktuellen Stand von Drupal und Modulen. Jetzt muß ich das "nur noch" auf die Live-Seite übertragen, aber dazu gibt es ja das tar-Kommando.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Ja, genau, Werner. Das habe
am 06.12.2023 - 06:51 Uhr
Ja, genau, Werner. Das habe ich auch schon gemacht. Nicht bei D10, aber bei früheren Migrationen.
Ich nehme diese beiden letztgenannten Punkte noch in meine Anleitung unter Troubleshooting auf.
Man muss sich ja mal fragen, warum man das nicht gleich so macht. ;-)
Hast Du die Dateien im Sites Ordner, also settings ect. dann händisch auf die D10 Versionen übertragen?
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
vendor/lock löschen - das macht mich neugierig
am 06.12.2023 - 20:06 Uhr
Wie tue ich da?
Lösche die einfach und mache composer update? Oder wie kommen die beiden wieder neu herbei? In meinem Fall klappt ja gerade der composer update nicht und produziert lauter unauflösbare Fehlermeldungen. Oder anderer Befehl?
Naja, die Fehler kommen bei
am 06.12.2023 - 21:31 Uhr
Naja, die Fehler kommen bei Dir daher, dass im Ordner Vendor bereits Versionen liegen, die nicht kompatibel sind mit den neuen.
Durch das Löschen und danach dem Befehl Update wird alles neu zusammen gestellt.
Mit welchen Versionen entscheidet die Composer.json.
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
Hier ist auch ganz gut
am 06.12.2023 - 21:37 Uhr
Hier ist auch ganz gut erklärt, wann man composer install und wann composer update verwendet.
https://stackoverflow.com/questions/33052195/what-are-the-differences-be...
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
Das bringt schon mehr Licht in die Sache
am 07.12.2023 - 09:40 Uhr
Der letztgenannte Link hat mir weitergeholfen, die Bedeutung von json und lock besser zu verstehen. Die Infos von dem Link würden gut ins Handbuch Drupal passen. Jetzt gibts aber noch den Befehl require. Könnte das wer von euch Kundigen ergänzen bzw. korrigieren? Ich glaube das beschäftigt noch mehr Leute, die gerade von 9 auf 10 updaten.
Wenn wie in meinem Fall json/lock und auch vendor widersprüchliche Infos beinhalten, dann gelingt kein update.
Einen "neuen" vendor + lock bekomme ich wo her? Wird der durch den composer update Befehl generiert, oder muss ich parallel eine neue Insta hernehmen und von dort einen leeren vendor+lock holen?
Wenn Du composer update
am 07.12.2023 - 15:19 Uhr
Wenn Du composer update ausführst, wird der composer.json gelesen, geprüft, ob es für eines der aufgeführten Packages eine neuere (passende) Version gibt und die wird dann geladen und eingetragen (im composer.lock mit der aktuell installierten Version). Packages, die fehlen (z.B. alle, die ins Vendor-Verzeichnis gehören, das aber aktuell nicht existiert), werden geladen und im composer.json und im composer.lock eingetragen. Damit sollte Deine Frage geklärt sein.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *