How's your Drupal 10 migration going?

314 views
Skip to first unread message

Rosie Le Faive

unread,
Oct 18, 2023, 2:08:00 PM10/18/23
to islandora
Hey, 

At today's call we checked in on Drupal 10 migrations. Some of us are done; some of us haven't started. 

A few points came up, which seemed useful to share:

* There's a recent update to advanced_search (2.1.0) that makes it work with Drupal 10.
* There's a similar PR open against views_nested_details that's still in progress but hopefully will be merged soon.
* If you use a Drupal module that's not officially 10-ready but there is a patch to make it so, you could use Drupal's lenient Composer plugin  to let you download the module despite what its info file says, and then patch it yourself (e.g. using the Composer Patches plugin). 
* If you are coming from ISLE and you have the Islandora Install Profile Demo, the task you face is a bit more involved. I'm not sure where documentation is (if you know of it, please comment!) but
  a) you want to get off the install profile by using Drupal's Profile Switcher (switching to minimal, is my guess)
  b) you need to follow the instructions to get off of Islandora Defaults which means you need to first update to the 3.0.1 tag of Islandora Defaults, and then run an update hook. If you fail to follow these instructions, uninstalling Defaults will uninstall nearly all the configuration on your site, and you will not have a good time.  
  c) Then you can do the normal stuff involved in upgrading a Drupal site to 10, which involves updating the version constraints for Drupal and other modules in your composer.json file and running `composer update`.
  d) and you'll probably want to spend a bit of time on theming/writing custom modules because some of the functionality of the install profile was in its built-in module. 


What else do folks need to know or supports are needed for upgrading to Drupal 10? 



Rosie Le Faive

unread,
Oct 19, 2023, 8:19:55 AM10/19/23
to islandora
One more thing - Islandora Repository Reports should now be Drupal 10-ready (pr just completed)

kirstast...@gmail.com

unread,
Oct 19, 2023, 8:49:00 AM10/19/23
to isla...@googlegroups.com

Rosie, this is really helpful. Thank you for everything you’re doing to not just work on Islandora, but keep us all in the loop.

--
Learn more about Islandora in general at islandora.ca and join the community at https://github.com/Islandora/islandora-community/wiki
---
You received this message because you are subscribed to the Google Groups "islandora" group.
To unsubscribe from this group and stop receiving emails from it, send an email to islandora+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/islandora/308c2eae-ee1e-4513-a0d0-cf7e3f807837n%40googlegroups.com.

Alan Stanley

unread,
Oct 23, 2023, 1:19:50 PM10/23/23
to islandora
I've got a couple of sites where I have to decouple the profile before I continue.  This has worked for me and may be a good jumping-off spot for anyone else.
If you've installed islandora_install_profile_demo and switch profiles to basic, Drupal will complain bitterly about a missing Condition.
Move the islandora_install_demo_install_core module into web/modules/custom .  You'll find it in the profile.
Run composer remove islandora/islandora_install_profile_demo
Panic briefly.
Replace all the dependencies that got nuked when you uninstalled the profile.
I just grabbed everything from the profile's composer.json and ran it through a Python script which gave me the following to copy and paste. I cleared the cache and my site was back and running and the profile was gone.


composer require 'composer/installers:^1.9' -W

composer require 'cweagans/composer-patches:^1.7' -W

composer require 'drupal/addtoany:^1.9' -W

composer require 'drupal/admin_toolbar:^3.0' -W

composer require 'drupal/adminimal_theme:^1.6' -W

composer require 'drupal/auto_entitylabel:^3.0@beta' -W

composer require 'drupal/backup_migrate:^5.0' -W

composer require 'drupal/block_class:^1.2' -W

composer require 'drupal/bootstrap_barrio:^5.5' -W

composer require 'drupal/conditional_fields:4.0.0-alpha1' -W

composer require 'drupal/condition_query:^1.2' -W

composer require 'drupal/config_distro_filter:1.0-alpha4' -W

composer require 'drupal/config_ignore:^3.0' -W

composer require 'drupal/config_inspector:^2.0' -W

composer require 'drupal/config_profile:^1.0' -W

composer require 'drupal/config_provider:^2.0' -W

composer require 'drupal/config_split:^1.7' -W

composer require 'drupal/config_suite:^2.0' -W

composer require 'drupal/config_update:^1.7' -W

composer require 'drupal/console:1.9.8' -W

composer require 'drupal/context:^4.1' -W

composer require 'drupal/devel:^4.1' -W

composer require 'drupal/ds:^3.13' -W

composer require 'drupal/environment_indicator:^4.0' -W

composer require 'drupal/facets:^2.0' -W

composer require 'drupal/features:^3.11' -W

composer require 'drupal/file_download_link:^1.1' -W

composer require 'drupal/fixed_block_content:^1.1' -W

composer require 'drupal/fontawesome:^2.17' -W

composer require 'drupal/form_options_attributes:^1.2' -W

composer require 'drupal/formatter_suite:^1.3' -W

composer require 'drupal/groupmedia:2.x-dev' -W

composer require 'drupal/jwt:1.0.0-rc2' -W

composer require 'drupal/layout_library:1.0.0-beta3' -W

composer require 'drupal/libraries:3.0.0-beta2' -W

composer require 'drupal/mailsystem:^4.3' -W

composer require 'drupal/matomo:^1.17' -W

composer require 'drupal/metatag:^1.16' -W

composer require 'drupal/migrate_tools:^5.1' -W

composer require 'drupal/name:1.0.0-rc3' -W

composer require 'drupal/oembed_providers:2.0.0-rc2' -W

composer require 'drupal/paragraphs:^1.10' -W

composer require 'drupal/pathauto:^1.8' -W

composer require 'drupal/pdf:^1.1' -W

composer require 'drupal/quicktabs:^3.0@alpha' -W

composer require 'drupal/redirect:^1.6' -W

composer require 'drupal/registration_role:^1.1' -W

composer require 'drupal/rest_oai_pmh:^1.0' -W

composer require 'drupal/restui:^1.20' -W

composer require 'drupal/search_api:^1.20' -W

composer require 'drupal/search_api_autocomplete:^1.5' -W

composer require 'drupal/search_api_solr:^4.2' -W

composer require 'drupal/simple_sitemap:^3.19' -W

composer require 'drupal/svg_image_field:^2.0' -W

composer require 'drupal/title_field_for_manage_display:^2.0' -W

composer require 'drupal/term_condition:^2.0' -W

composer require 'drupal/tmgmt:^1.12' -W

composer require 'drupal/tmgmt_google:^1.1' -W

composer require 'drupal/transliterate_filenames:^1.5' -W

composer require 'drupal/twig_tweak:^3.1' -W

composer require 'drupal/views_block_area:1.x-dev' -W

composer require 'drupal/views_block_filter_block:^1.0' -W

composer require 'drupal/views_bulk_edit:^2.6' -W

composer require 'drupal/views_bulk_operations:^4.0' -W

composer require 'drupal/views_exposed_filter_blocks:^1.0' -W

composer require 'drupal/views_field_view:^1.0@beta' -W

composer require 'drupal/views_flipped_table:^1.4' -W

composer require 'drush/drush:10.6.2' -W

composer require 'islandora-rdm/islandora_fits:dev-8.x-1.x' -W

composer require 'islandora/controlled_access_terms:2.x-dev' -W

composer require 'islandora/islandora_defaults:2.x-dev' -W

composer require 'islandora/openseadragon:2.x-dev' -W

composer require 'islandora/islandora_base_theme:dev-main' -W

composer require 'islandora/islandora_starter_theme:dev-main' -W

composer require 'mglaman/drupal-check:1.1.10' -W

composer require 'mjordan/islandora_workbench_integration:dev-main' -W

composer require 'oomphinc/composer-installers-extender:^2' -W

composer require 'vlucas/phpdotenv:4.2.0' -W

composer require 'webflo/drupal-finder:^1.2' -W

composer require 'wikimedia/composer-merge-plugin:^2.0' -W

composer require 'zaporylie/composer-drupal-optimizations:^1.2' -W


On Wednesday, October 18, 2023 at 3:08:00 PM UTC-3 Rosie Le Faive wrote:

Alan Stanley

unread,
Nov 9, 2023, 12:07:40 PM11/9/23
to islandora
Another update tip that will save you a lot of stress - If you are updating an old ISLE install you may need to update your load-balancing server ports.
See this commit for reference.

Also!  If you switch to a modern fcrepo container, you can't go back.  The ocfl versions will stop the webapp from running.

Unable to map string 'ocfl_1.1' to a known OCFL version. Known versions: [ocfl_1.0]

Rosie Le Faive

unread,
Nov 24, 2023, 9:38:03 AM11/24/23
to islandora
Another tip from Alan via Slack - the Context condition with  machine name "node_type" is removed from Drupal 10. You can use the "content_entity_type" condition in its stead (easiest to do this in D9 before migrating).
Reply all
Reply to author
Forward
0 new messages