UT Drupal Kit 2.15 Release

ITS is happy to announce the immediate availability of UT Drupal Kit 2.15, the latest maintenance release for our University distribution of the Drupal web content management system and the final scheduled release for 2018.

The 2.15 release includes an important change to default PHP behavior for Pantheon sites, multiple updates to Drupal core, contrib module updates, several minor bugfixes, and an update to the front-end package list for themes built on the Forty Acres-based STARTERKIT theme.

PHP 7 BY DEFAULT ON PANTHEON CUSTOM UPSTREAM

In August of 2018, Pantheon started specifying PHP 7.1 as the default PHP version in the pantheon.upstream.yml file for their Drupal 7 upstream repository. However, this change occurred after the last release of the UT Drupal Kit custom upstream on Pantheon, so all UT Drupal Kit sites have remained on PHP 5.6 by default until now.

As of version 7.61, Drupal core now passes all tests for compatibility with PHP 7.2, and Pantheon has followed suit by again updating the default PHP version in pantheon.upstream.yml. However, in testing the UT Drupal Kit codebase with PHP 7.2, we have encountered some deprecation notices associated with the Field Collection module, and are therefore staying with PHP 7.1 as the new default for the UTDK custom upstream on Pantheon until this issue is resolved.

We have extensively tested the UTDK codebase with PHP 7.0 and 7.1, and have been running many sites under these older versions of PHP 7 on Pantheon for over a year with no issues (please see “PHP 7, the UT Drupal Kit, and You” from April 2017 for additional discussion). However, any sites with custom code, additional contrib modules, or even certain configurations could still potentially uncover untested cases and encounter PHP 7 incompatibilities. Therefore, we strongly recommend that site owners thoroughly test this release in the DEV/TEST environments before deploying it to the LIVE environment.

If you wish to apply the upstream updates without testing PHP 7 compatibility for your site at this time, then you can first add a pantheon.yml file to the site repository to pin the site’s PHP version to 5.6 until such time as you can test and deploy PHP 7 to your site using Pantheon’s recommended approach. But keep in mind that PHP 5.6’s security support phase ends at the end of 2018. Pantheon will continue to offer PHP 5 support for the time being, but they will eventually remove unsupported versions of PHP from the platform.

DRUPAL CORE UPDATES

The 2.15 release incorporates two versions of Drupal core that have been released since the last UTDK release in August 2018.

Version 7.60 was a security-only release, and the only major change in version 7.61 was compatibility with PHP 7.2 (though as noted, this compatibility does not currently extend to the full UT Drupal Kit codebase).

For complete details about these core updates, please review the release notes:

CONTRIB UPDATES

The 2.15 release includes updates to the following contrib modules:

Please note that because of the interval since the last Drupal Kit release, and depending on the current version of the Drupal Kit distribution on your installed site, some of these contrib updates may represent jumps of multiple versions.

Please check your currently installed module versions and review the release notes on Drupal.org for any additional releases that will be incorporated in this update.

BUG FIXES

  • Fixed an issue that could result in blocks not being visible on Page Builder-enabled content types due to naming conflicts
  • Updated CSS to eliminate orphaned text on floated images placed inside the WYSIWYG A or WYSIWYG B fields
  • Fixed an issue in which use of the <nolink> attribute on a Hero Photo field’s link attribute could cause improper rendering

FRONT-END PACKAGE UPDATES

The list of packages defined in the STARTERKIT subtheme’s package.json and package-lock.json files have updated in this release in order to maintain compatibility with the current stable releases of node and npm.

For full details and instructions for updating your subtheme, please review our special release notes.

HOW TO UPDATE THE UT DRUPAL KIT

Complete instructions and download links for updating a UT Drupal Kit site are available on the documentation wiki. Pantheon site dashboards that use the UT Drupal Kit distribution should see the upstream updates available now; see the Pantheon documentation for more information on applying upstream updates.

Please review the changelog and special release notes thoroughly, and always make backups of your code, files, and database before proceeding with an update!

NEXT RELEASES

The UT Drupal Kit is released on a bi-monthly maintenance release schedule, with releases targeted for the second Tuesday of the month. The first planned release for next year is UT Drupal Kit 7.x-2.16, due on February 12, 2019.

If you have questions or concerns about the UT Drupal Kit, please feel free to email us at drupal-kit-support@utlists.utexas.edu.

Understanding the new `pantheon.upstream.yml` file

With the 7.x-2.9 update of the UT Drupal Kit, astute developers will notice a new file in the document root of their git repo called pantheon.upstream.yml, whose contents look like this:

# IMPORTANT NOTE:
# Do not edit this file unless you are doing so in your custom upstream repository.
# Override the defaults specified here in a site-specific `pantheon.yml` file.
# For more information see: https://pantheon.io/docs/pantheon-upstream-yml
api_version: 1
php_version: 5.6

This change was announced as part of Pantheon’s move to making PHP 7 the default version of PHP for all WordPress and Drupal 8 sites. The pantheon.upstream.yml file allows maintainers of custom upstreams such as the UT Drupal Kit to keep the default PHP version for their site pegged at 5.6.

I’m already using PHP 7 in my UT Drupal Kit site. How does this affect me?

If you have already specified PHP 7 as the default version in a pantheon.yml file in your site repository, nothing will change. Configuration options defined in pantheon.yml override any defined in pantheon.upstream.yml.

My Drupal 7 site is on Pantheon, but doesn’t use the UT Drupal Kit upstream. How does this affect me?

Since Drupal 7 is not 100% compatible with PHP 7, this same pantheon.upstream.yml file is also included in Pantheon’s base Drupal 7 upstream repository. So you should have already seen this file show up as a commit waiting to be merged from the Drupal 7 upstream.

Again, no action should be needed on your part in order to maintain the status quo — if you had already put a pantheon.yml file in place to upgrade your site to PHP 7, it will override the pantheon.upstream.yml file. If you do not have a pantheon.yml file in place, your site would have already been using PHP 5.5 or 5.6, and this new file will simply preserve that as the default going forward.

I’m using the UT Drupal Kit on UT Web or a VM. How does this affect me?

The pantheon.upstream.yml file is not included as part of the standalone UT Drupal Kit download, so this does not affect sites that are not hosted on Pantheon.

Will the UT Drupal Kit ever default to PHP 7 on Pantheon?

Probably not until we have a Drupal 8 version of the Kit.

As discussed in our previous post, “PHP 7, the UT Drupal Kit, and You!” there are sufficient unknowns with regard to total compatibility with Drupal core, all of the contrib modules included with the Drupal Kit, and the wide range of customizations already present in deployed sites, that we are not comfortable making this the default version.

We do have a number of Drupal Kit-based sites maintained by ITS that are running on PHP 7 without problems. If you are interested in trying this for yourself, feel free to experiment with creating a pantheon.yml file of your own and deploying PHP 7 to your DEV (or better yet, a multidev!) environment and putting your site through its paces.

Where can I learn more?