UT Drupal Kit 3.12.0 release notes
Release date - June 5, 2023
Contents
Release summary
The 3.12.0 release is part of the UT Drupal Kit’s normal, bi-monthly maintenance release schedule.
This release is notable in that it includes a major version update from Drupal 9 to Drupal 10. Campus developers should carefully read the release notes below before updating. Site managers and content editors, on the other hand, should not expect any noteworthy changes: site display, behavior, and editing experience are not changing in any substantive way.
Major version update: Drupal 9 to 10
Note
The 3.12.0 release increments the version of Drupal core from 9.5.8 to 10.0.9.
Action is required by developers maintaining Drupal Kit sites. We encourage developers to reach out to drupal-kit-support@utlists.utexas.edu with any questions or concerns after reading the contents below.
The update from Drupal 9 to Drupal 10 is a major version update. Most notably, it:
removes Drupal APIs deprecated during the Drupal 9 development cycle
requires a minimum PHP version of 8.1
includes a major version update of CKEditor (v4 to v5)
includes a major version update for the Symfony framework (v4 to v6)
To reduce the surface area of code change included the 3.12.0 release, many changes related to the Drupal major version update were introduced in previous releases, as noted in the table below. Depending on the version of the Drupal Kit sites are currently running, developers may or may not need to address the items below:
Change |
Update actions |
|---|---|
|
The |
The minimum PHP version is 8.1 |
The |
CKEditor version 4 is removed |
The |
All contributed code must be Drupal 10-compatible |
Developers who have added contributed modules or themes beyond those included with the Drupal Kit will need to audit them for Drupal 10 compatibility and potentially update or find a replacement. The Drupal Kit team is available for consultation. |
Drupal 9 API deprecations must be replaced |
Developers who have added custom modules or themes are responsible for making them Drupal 10 compatible. The Drupal Kit team is available for consultation. |
Symfony 4 API deprecations must be replaced |
Developers who have added custom modules or themes are responsible for making them Symfony 6 compatible. The Drupal Kit team is available for consultation. |
New major version for Enterprise Authentication integration on Pantheon |
Developers who have integrated Enterprise Authentication on existing Pantheon sites will need to make sure their codebase can use version 4 of the |
Twig templates must be compatible with version 3 |
Developers who have added custom Twig templates should audit them for compatibility with Twig 3. The Drupal Kit team is available for consultation. |
Bootstrap dropdown library removed from Forty Acres
Previous releases of the Forty Acres theme included a Bootstrap framework library for inserting dropdown menus through HTML snippets. The latest version of CKEditor (the rich text editor that Drupal uses) does not accept the HTML format prescribed for these dropdowns. We therefore designated the dropdown capability as no longer supported within rich text editing and removed the dropdown library from Forty Acres.
Developers wanting to use the dropdown functionality directly in HTML code (e.g., Twig templates) may do so by adding the Bootstrap library to their codebase. See https://getbootstrap.com/docs/4.0/components/dropdowns/ .
Contributed module updates
The following contributed modules are updated in this release.
Modules included with the UT Drupal Kit installation profile
Admin Toolbar: from 3.3.0 to 3.3.2
Features: from 3.12.0 to 5.0.0-alpha1
CKEditor 4 Height: removed from codebase
Layout Builder Modal: removed from codebase
Linkit: from 6.0.0-beta4 to 6.0.0-rc1
Page Title Visibility: from 1.5.0 to 1.6.0
Pathologic: from 1.0.0-alpha3 to 2.0.0-alpha1
Modules included with the News add-on
Search API: from 1.28.0 to 1.29.0
Modules included with the Event add-on
FullCalendar View: from 5.1.11 to 5.1.12
Modules included with the Profile add-on
Bootstrap Horizontal Tabs: from 2.0.2 to 2.0.4
All changes since 3.11.3
UTexas installation profile (14)
Bug: Test expectation for Flex HTML toolbar is out of date with latest revision #2178
Task: Remove layout_builder_modal and media_library_theme_reset from codebase (3.12.0) #2122
Task: Remove ckeditorheight contributed module #2061
Enhancement: Make streaming media embedded in rich text editors easier to remove #2151
Task: Drupal 10 Compatibility: Update to Twig 3 syntax #1809
Task: Drupal 10 Compatibility: getSubscribedEvents must declare array type hint #2172
Task: Drupal 10: MimeTypeGuesser::guess() is deprecated #2182
Task: Update core version requirement to Drupal 10.0.7 #2175
Task: Use develop version of Forty Acres in automated testing #2186
Task: Update to Drupal 10-compatible release of Pathologic #2187
Task: Update to Features 5.0.0-alpha1 #2190
Task: Update outdated description of UTexas installation profile #2211
Task: Update contributed dependencies (automated) #2214
Bug: Promo Unit: PHP notice: unserialize(): Passing null to parameter #1 ($data) of type string is deprecated #2218
Forty Acres theme (4)
Task: Status messages template references a Classy library removed in Drupal 10 #478
Bug: Visited links titles on search results pages are blue, not orange #473
Bug: Bootstrap “Dropdown” component does not render correctly with CKEditor 5 #457
Bug: Forty Acres references incorrect location of icons used in status messages #485
Bug: Warning: Undefined array key “#bundle” in forty_acres_preprocess_field() #487
Profile add-on (3)
News add-on (3)
Event add-on (6)
Task: Require Drupal 10-compatible version of date_augmenter #258
Task: Drupal 10 Compatibility: RouteSubscriberBase, MimeTypeGuesser #257
Bug: Smart Date 3.6.1 has a Symfony 6 (Drupal 10) incompatibility #259
Bug: [META] AddToCal Augment: Multiple import problems in ICS file related to VTIMEZONE #200
Task: Update fullcalendar_view to latest compatible release #263
Bug: smart_date_recur does not perform accessCheck() required for Drupal 10 #268
Upstream repository (3)
Documentation (2)
Enterprise Login integration (5)
Task: Create a 3.x release that explicitly requires drupal/core ^9 #43
Task: Fork the simplesamlphp library as simplesamlphp/simplesaml instead of utexas/simplesamlphp #50
Task: Add architecture decision record explaining rationale for forked version of simplesamlphp #49
Bug: simplesamlphp does not have an official Drupal 10-compatible release #45
Task: Apply team’s commonly-used patches of drupal/simplesamlphp_auth on utexas/simplesamlphp_auth #46