Home

>

Tools

>

Drupal

>

Releases

>

8.6.0-alpha1

Drupal Release: 8.6.0-alpha1

Pre Release

Tag Name: 8.6.0-alpha1

Release Date: 7/19/2018

Drupal LogoDrupal

Highly flexible, open-source content management system known for complex, scalable web applications. Preferred by government, educational, and large enterprise websites requiring advanced customization and security features. Robust module ecosystem.

TL;DR

Drupal 8.6.0-alpha1 introduces significant enhancements to the Media system with the new Media Library module, improved remote video embedding via oEmbed, and various UI improvements. This release also brings better multilingual support, enhanced entity caching, improved testing frameworks, and numerous accessibility improvements. The Umami demo profile has been expanded with new content and better browser compatibility. This alpha release represents a major step forward in Drupal's content management capabilities while addressing numerous bugs and performance issues.

Highlight of the Release

    • Introduction of the Media Library module to core
    • New oEmbed-based remote video media source
    • Improved entity caching using cache backends instead of static caches
    • Enhanced multilingual migration support
    • Ability to install sites from existing configuration
    • Improved accessibility features across the platform
    • Enhanced Umami demo profile with new content and better browser compatibility

Migration Guide

Media System Changes

If you're using the Media module, be aware of these changes:

  • The new Media Library module is now available in core. If you were using a contributed Media Library module, you should plan to migrate to the core version.
  • Remote video embedding now uses oEmbed. If you were using a custom solution for embedding videos, consider updating to use the new core functionality.
  • Media types can now change their media source during creation. Review your media type creation code if you're programmatically creating media types.

Entity API Changes

  • Entity caching now uses cache backends instead of static caches. If your code was relying on the static caching behavior, you may need to update it.
  • New hooks are available for revision creation events. If you need to react to revision creation, consider using these new hooks.
  • The term entity type's "parent" field now specifies "target_bundles" setting. If you were relying on the previous behavior, review your code.

Testing Framework Changes

  • Many tests have been converted from WebTestBase to BrowserTestBase or KernelTestBase. If you extend these tests, you'll need to update your code.
  • JavascriptTestBase tests now use DrupalSelenium2Driver. Update your JavaScript tests accordingly.
  • PHPUnit-based tests that still inherit from WTB/TB will now fail. Update these tests to use the appropriate base classes.

Configuration System Changes

  • Sites can now be installed from existing configuration if the config directory is set in settings.php. If you have custom installation profiles, review how they handle configuration.
  • Config import validation now provides better error messages. Review your config import processes to handle these messages appropriately.

JavaScript Changes

  • Several JavaScript coding standards have been updated. Review your JavaScript code for compatibility with the new standards.
  • CKEditor has been updated to 4.10.0. Test your custom CKEditor plugins with this new version.

Deprecated Code

  • Several functions and classes have been deprecated. Check the deprecation notices and update your code accordingly:
    • MigrateCckFieldInterface is deprecated in favor of \Drupal\migrate_drupal\Annotation\MigrateField
    • Several entity.inc functions have been deprecated
    • EntityCacheTagsTestBase has been deprecated

Upgrade Recommendations

This is an alpha release (8.6.0-alpha1) and is not recommended for production sites. It should only be used for testing and development purposes.

For developers and site builders who want to test the new features:

  • Create a clone of your production site for testing
  • Ensure you have a complete backup before upgrading
  • Test thoroughly, especially if you use the Media module or have multilingual content
  • Report any issues you find to the Drupal issue queue

For production sites:

  • Wait for the stable 8.6.0 release before upgrading
  • Monitor the release notes for any critical issues that might affect your site
  • Plan for testing the new Media Library and remote video embedding features if you use media functionality

When 8.6.0 stable is released, a direct update from 8.5.x to 8.6.0 should be possible following the standard Drupal update procedure.

Bug Fixes

Entity and Field Handling

  • Fixed issue where BaseFieldOverride entity fails to normalize default values correctly when a callback is specified.
  • Fixed adding NOT NULL to base fields with multiple columns.
  • Fixed EntityReferenceFieldItemList::referencedEntities() not working for computed fields.
  • Fixed term entity type's "parent" field not specifying "target_bundles" setting.
  • Fixed issue where entity reference field subclasses lose non-default properties upon denormalization.

Caching and Performance

  • Replaced hard-coded static cache of entities with cache backends.
  • Fixed missing contexts preventing caching of block access.
  • Fixed issue where config save resets overridden configuration too late.

Multilingual and Migration

  • Fixed problems creating a d6 user profile field storage with a name longer than 32 characters.
  • Fixed migration lookup process plugin not checking validity of provided migrations.
  • Fixed D7 comment field values not being migrated properly.
  • Fixed migration failing to create instance when non-bundleable entity type exists.

UI and Accessibility

  • Fixed node type body class not being present on node preview page.
  • Fixed double underscores not being preserved in main views CSS classes defined in views UI.
  • Fixed user cancel link not redirecting to the homepage.
  • Fixed URL with trailing space not being recognized as <front>.
  • Fixed colored background of link focus in a sentence being too weak.
  • Fixed links in footer for better accessibility.

JavaScript and AJAX

  • Fixed ajax.js insert command sometimes wrapping content in a div, producing invalid HTML.
  • Fixed view inside core modal not refreshing correctly when reopened.
  • Fixed any AJAX call disregarding machine name verification leading to fatal errors.

Other

  • Fixed scale and crop image effect not being editable in Large 3:2 (768x512) image style.
  • Fixed activity tracker not being enabled if there are unpublished nodes.
  • Fixed Drush site-install command not working when settings.php is present.
  • Fixed LegacyMessenger::deleteByType not deleting anything.
  • Fixed invalid conf file warnings when skip_permissions_hardening is on.

New Features

Media System Enhancements

  • Media Library Module: Added the Media Library module to Drupal core, providing an improved interface for managing media assets.
  • Remote Video via oEmbed: Implemented media source plugin for remote video via oEmbed, allowing easier embedding of videos from external sources.
  • Media Type Management: Added ability to change the media source when creating a new media type.

Content Management Improvements

  • Crop Anchor Option: Added crop anchor option to Scale and Crop image effect, giving more control over image cropping.
  • Entity Revision Hooks: Added hooks to act on new revision creation events.
  • Typed Data Enhancements: Added support for config entities in typed data EntityAdapter.

Installation and Configuration

  • Config-based Installation: Added ability to install a site from existing configuration if the config directory is set in settings.php.
  • Profile-specific Installation: Allow a site-specific profile to be installed from existing config.

Multilingual Enhancements

  • Multilingual Migration: Added support to migrate multilingual revisions and improved migration of i18n localized translations.
  • Transliteration Improvements: Fixed incorrect transliteration of some Russian Cyrillic characters.

UI Improvements

  • Off-canvas Dialog Positioning: Allow off-canvas dialog to be rendered at the top of the page.
  • Details and Accordion Update: Updated details and accordion elements based on Seven Style Guide.
  • Umami Demo Enhancements: Added new articles to Umami demo (Baking mishaps, Mocktails) and improved browser compatibility.

Developer Tools

  • Testing Framework: Improved testing framework with better browser test support and conversion of many tests to PHPUnit.
  • JavaScript Modernization: Updated JavaScript coding standards and tooling.

Security Updates

  • Updated Symfony components to address security vulnerabilities.
  • Fixed potential security issues in entity access handling.

Access Control Improvements

  • Enhanced hook_entity_field_access() to allow granting field-level access to User fields by changing 'forbidden' to 'neutral'.
  • Improved EntityCreateAccessCheck to provide more useful error messages when no bundle is specified.
  • Fixed missing contexts preventing proper caching of block access, which could lead to security issues.

Performance Improvements

Entity Caching

  • Replaced hard-coded static cache of entities with cache backends, significantly improving entity caching performance and memory usage.
  • Optimized EntityOperations::entityView() for better performance when rendering entities.

Database Operations

  • Added Schema::findPrimaryKeyColumns method to remove database-specific logic from tests, improving database abstraction.
  • Fixed dropping of columns in a composite primary key on MariaDB >=10.2.8 and made it consistent across database drivers.
  • Fixed risky count() in SQLite Statement, improving SQLite performance.

Testing Performance

  • Improved testing framework performance by converting many web tests to browser tests.
  • Added support for concurrent testing in the drupalci.yml configuration.
  • Optimized JavaScript testing infrastructure.

AJAX and JavaScript

  • Removed call_user_func_array from OptionsRequestSubscriber for better performance.
  • Updated CKEditor library to 4.10.0 with performance improvements.
  • Improved AJAX response handling for better performance.

Configuration

  • Optimized config import validation for better performance during site installation.
  • Improved handling of configuration overrides for better performance.

Impact Summary

Drupal 8.6.0-alpha1 represents a significant step forward in Drupal's media handling capabilities with the introduction of the Media Library module and improved remote video embedding via oEmbed. These changes will greatly enhance the content editing experience, making media management more intuitive and powerful.

The release also brings important improvements to entity caching, replacing static caches with cache backends, which should result in better performance and memory usage for sites with complex entity relationships. This change is particularly important for high-traffic sites and those with many entities.

Multilingual sites will benefit from enhanced migration support for Drupal 6/7 multilingual content, improved transliteration, and better handling of i18n localized translations. These improvements make Drupal 8 an even stronger platform for multilingual websites.

Developers will appreciate the improved testing framework, with many tests converted to PHPUnit and better browser test support. The new hooks for revision creation events provide more flexibility for custom code that needs to react to content changes.

Site builders gain the ability to install sites from existing configuration, making it easier to replicate site configurations across environments. The enhanced Umami demo profile provides better examples of Drupal's capabilities out of the box.

Accessibility improvements throughout the platform ensure that Drupal continues to be a leader in creating inclusive web experiences. The use of the prefers-reduced-motion media query for batch progress bars and improved link focus styling are just two examples of this commitment.

As an alpha release, this version should not be used on production sites, but it provides a preview of the exciting features coming in Drupal 8.6.0.

Statistics:

File Changed300
Line Additions2,282
Line Deletions3,156
Line Changes5,438
Total Commits250

User Affected:

  • Can now use the new Media Library module for improved media management
  • Benefit from improved remote video embedding via oEmbed support
  • Experience better UI for off-canvas dialogs and contextual controls
  • Gain access to improved image handling with new crop anchor options

Contributors:

alexpottlarowlangobaxjmwebchickeffulgentsia