Last updated 17 February 2018.

This page is targeted towards Drupal contributors hoping to jump in and make the next release a success. For an overview of the high level strategic focus areas in Drupal core for a more general audience, see strategic initiatives. For a full list of efforts that core contributors are working on, see community initiatives.

Disclaimers

  • This is a proposal for areas of focus, in relative priority order. (Meaning, things closer to the top will generally get more time/focus/attention from committers than things closer to the bottom, where both are competing for such at the same time.) There is general consensus from committers that these are all good, important things to work on.
  • There is no guarantee of the proposed timelines, nor even that any of this actually happens. Drupal remains a "do-ocracy," and things only get done when someone actually does them. :)
  • There is also no guarantee that prioritized items will automatically get committed; the core gates and normal review process still apply.

Drupal 8.6.0+ Goals

Important Dates

See https://www.drupal.org/core/release-cycle-overview for more:

  • 8.6.0 Feature Freeze: Week of July 18, 2018
  • 8.6.0 Release: September 5, 2018
  • 8.7.0 Feature Freeze January 2019
  • 8.7.0 Release: March 19, 2019

Priorities

Note: UNDER HEAVY CONSTRUCTION!

At a high-level, here are the priorities for 8.6/8.7(+), in descending order of importance (even though they're all important):

  1. Migrate
  2. Media
  3. API-First
  4. Layouts
  5. Workflow
  6. JavaScript Modernization
  7. Community Initiatives
  8. Community Challenges

#2: Media #

Overall roadmap: #2825215: Media initiative: Essentials - first round of improvements in core
Overall mockups: https://preview.uxpin.com/c9905d865a57bed1fc72be93a4e937f126dac889#/page...

Media Library (Target: 8.6 - September 2018) #

Provide a Views-based browser for previously uploaded media.

Media browsing interface showing thumbnails in a grid

"As a content author, I want to be able to browse existing media that has been uploaded to my site."
#2834729: [PP-1] Create an MVP for adding and re-using Media

Select/add new media (Target: 8.6 - September 2018) #

Add media to content via a Media field, either by selecting from existing media or by uploading new media (including basic bulk upload support).

On node form, ability to browse from existing vs. upload new

"As a content author, I want to be able to select from existing media, or add new media, from the content entry form."
#2831940: Create file field widget on top of media entity / #2831941: [PP-1] Re-create Image field widget on top of media entity / #2831943: Users expect rendered media, not links, and configuring the entity reference display and view mode properly is challenging

Remote media (Target: 8.6 - September 2018) #

Add support for oEmbed to embed external media.

Remote media support

"As a content author, I want to be able to reference external media—such as YouTube videos—from my content."
#2831944: Implement media source plugin for remote video via oEmbed

WYSIWYG integration (Target: 8.7 - March 2019) #

Allow embedding media from the WYSIWYG editor vs. a media field.

Media button in WYSIWYG highlighted

"As a content author, I want to be able to embed media into my content from the WYSIWYG editor."
#2801307: Support WYSIWYG embedding of entities other than files

Migration support (Target: 8.7 - March 2019) #

Source + Destination plugins for Media in Drupal 8.

"As a site builder, I want to be able to migrate my Drupal 6/7/8 File and Image fields into Drupal 8 Media fields."
#2835825: Media: Migration integration

Use Media by Default (Target: 8.7 - March 2019) #

Use media on the article node type in Standard profile.

"As a site builder, I want to Drupal 8's media capabilities to be available out of the box."
"As a site builder, I want my site users' file and image uploads to be compatible with other media."

[#???]

Streamlined bulk-upload form (Target: 8.7+ - March 2019+) #

An improved media bulk upload experience which exposes all fields on a single form.

Multiple media items on a single form

"As a content author, I want to be able to easily upload multiple media items at once."
[#???]
#2820235: Add inline entity form to core as experimental (possible blocker)

Media Metadata improvements (Target: 8.7+ - March 2019+) #

@todo: Human-readable description here. :)

"As a site builder, I want a simple and intuitive tool to configure the metadata-to-drupal-fields mappings on my media entities."

#2836153: Improve metadata mapping UI on Media type form
#2862467: Add complex field mapping to media module

#?: JavaScript Modernization #

@todo.

~*~*~*~*~*~*~*~*OLD 8.5 STUFF, TO BE INTEGRATED / ARCHIVED~*~*~*~*~*~*~

See discussion at: #2905741: *DRAFT* Proposed product goals for Drupal 8.5/8.6(+) core

In general:

  1. Complete previous goals that got close, but ultimately missed 8.4.0's cut-off.
  2. Focus on providing more user-facing functionality, since 8.4 was more of an API-focused release.
  3. Try to take on fewer priorities at the same time, in order to better ensure success.

At a high-level, here are the priorities for 8.5/8.6(+), in descending order of importance (even though they're all important):

  1. Migrate
  2. Media
  3. API-First
  4. Layouts
  5. Workflow
  6. Outside-In
  7. Out-of-the-Box
  8. Community Initiatives
  9. Community Challenges

#1: Migrate #

Overall roadmap: #2735059: [META] Stabilize the older Drupal to newer Drupal migration system

Proposed Migrate UI for Drupal 8.5

Short description Issue User story
Target: Drupal 8.5 (March 2018)
Stabilize the Migrate module (stable core) #2859225: [policy, no patch] Mark Migrate (not Migrate Drupal) as Stable
#2876085: Before upgrading, audit for potential ID conflicts
"As a developer, I want a stable Migration API in core from which to base my custom site migrations."
Stabilize the Migrate Drupal module (stable core) #2905736: [policy, no patch] Mark Migrate Drupal as beta / #2746527: [META] Handle data related to Drupal 6 and 7 node translations with different IDs "As a developer and/or a site builder, I want a stable and functionally complete Drupal 6 and Drupal 7 to Drupal 8 migration path."
Enhance Migrate Drupal UI with rollbacks and incremental migrations (stable core) #2687843: Add back incremental migrations through the UI "As a site builder, I want to be able to re-run migrations multiple times to incrementally check progress."
Stabilize the Migrate Drupal UI (stable core) #2905491: [policy, no patch] Mark Migrate Drupal UI as beta "As a site builder, I want a simple UI—equivalent to update.php in Drupal 7 and below—that I can use to perform major Drupal version upgrades."
Target: Drupal 8.6+ (Date TBD; fall of 2018+)
Rollback functionality. #2687849: Add back rollbacks through the UI "As a site builder, I want t be able to roll back if I run into problems during the migration."
Add Migrate Tools to Drush (contrib) [#???] "As a developer, I want to be able to use Drush to perform migrations without the need of a separate module."

Note that due to their importance in fostering Drupal 8 adoption, Migrate modules will be marked stable as soon as it is feasible to do so, rather than waiting for 8.5.0's release.

#3: API-First #

Overall roadmap: #2757967: API-first initiative
8.5.x roadmap: #2905563: REST: top priorities for Drupal 8.5.x

Short description Issue User story
Target: Drupal 8.5 (March 2018)
Address serialization gaps “As a developer, I want to be able to access the full set of Drupal’s data via the REST API?”
Improved documentation (Drupal.org) [#???] (Improve https://www.drupal.org/docs/8/core/modules/rest/1-getting-started-rest-c... + https://www.drupal.org/docs/8/core/modules/rest/overview) "As a developer, I want excellent REST + Serialization documentation on d.o that makes it easy for me to get started."
Improved test coverage (stable core) #2824572: Write EntityResourceTestBase subclasses for every other entity type. / #2800873: Add XML GET REST test coverage, work around XML encoder quirks "As a developer, I want reliable JSON, HAL+JSON, and read-only XML serialization support for all entities in Drupal."
File upload support (stable core) #1927648: Allow creation of file entities from binary data via REST requests "As a developer, I want to be able to upload files via REST, JSON API and GraphQL."
More granular permissions (stable core) #2824408: To be able to create/update/delete Term entities via REST, one should not have to grant the 'administer taxonomy' permission / #2808217: To be able to view Vocabulary config entities via REST, one should not have to grant the 'administer taxonomy' permission "As a developer, I don’t want to grant administrative permissions to read vocabularies or create terms."
Better validation (stable core) #2821077: PATCHing entities validates the entire entity, also unmodified fields, so unmodified fields can throw validation errors / #2820364: Entity + Field validation constraints are processed in the incorrect order "As a developer, I don’t want unmodified fields to throw validation errors when PATCHing entities via REST."
"As a developer, I want understandable validation errors when PATCHING or POSTing entities via REST."
Improved performance (stable core) #2765959: Make 4xx REST responses cacheable by (Dynamic) Page Cache + comprehensive cacheability test coverage "As a developer, I want faster REST responses for authenticated users."
Config entity support (stable core) #2300677: [PP-1] POST/PATCH/DELETE config entities via REST for config entity types that support validation + #2869792: Add constraints to all config entity types "As a developer, I want to securely modify config entities—such as content types and taxonomy vocabularies—via REST, JSON API and GraphQL."
Translation support (stable core) #2135829: [PP-1] EntityResource: translations support "As a developer, I want to be able to read and modify entity translations via REST."
Target: Drupal 8.6+ (Date TBD; fall of 2018+)
JSON API (stable core) #2931785: The path for JSON API to core "As a developer, I want JSON API to be part of Drupal core"
TBD; See #2757967: API-first initiative

#4: Layouts #

Overall roadmap: #2884601: Add a Layout Builder to core

Layout Builder UI

Short description Issue User story
Target: Drupal 8.5 (March 2018)
Custom Landing Pages (experimental core) #2884601: Add a Layout Builder to core
#2905922: Implementation issue for Layout Builder
"As a content author, I want to create custom landing pages, by creating one or more page sections and choosing from pre-defined layouts within them."
Sections-based UI for Field Layout (experimental core) #2922033: Use the Layout Builder for EntityViewDisplays "As a site builder, I want to be able to configure a default layout for my content types the same way I can configure an individual landing page's layout."
Target: Drupal 8.6+ (Date TBD; fall of 2018+)
Stabilize Layouts (stable core) [#???] "As a site builder, I want core's layout functionality to be stable and usable in production websites."
Form Layouts (experimental core) [#???] "As a site builder, I want the UI for laying out forms to match that of laying out content."

#5: Workflow #

Overall roadmap: #2721129: Workflow Initiative

Workspaces UI

Short description Issue User story
Target: Drupal 8.5 (March 2018)
Stable Content Moderation module (stable core) #2755073: WI: Content Moderation module roadmap
#2843494: WI: Workflows module roadmap
#2897132: Mark Content Moderation module as stable
#2897130: Mark workflows module as stable
"As a content author, I want to be able to create and moderate drafts of my content."
"As a site builder, I want stable content moderation functionality that I can deploy in production."
Workspaces (experimental core) #2732071: WI: Phase G1: Workspace module
#2784921: Add Workspaces experimental module
"As a content author, I want the ability to stage collections of content (e.g. article, sidebar, and navigation) from one environment to another."
More revisionable entities (stable core) #2725433: WI: Phase A: Use the revision API in more places "As a site builder, I want my content authors to be able to create drafts of lots of different types of content: taxonomy terms, menu links, and path aliases."
Target: Drupal 8.6+ (Date TBD; fall of 2018+)
Full-Site Previews (experimental core) #2732081: WI: Phase G2: Full-site preview with Workspace UI "As a content author, I want the ability to see what proposed edits to collections of content (e.g. article, sidebar, and navigation) all look like so they can be reviewed as a whole before publishing."
Undo functionality (experimental core) #2786135: WI: Phase E: Introduce Trash module "As a content author, I want the ability to easily undo deletion of content."
Parent revision support (stable core) #2786133: WI: Phase B: Extend the revision API with support for parents "As a developer, I want one single way of handling hierarchies in Drupal."
Conflict resolution (experimental core) #2867707: WI: Phase H: Replication and conflict management "As a content author, I want my CMS to alert me if changes I'm about to make are going to overwrite others' changes, and give me the opportunity to fix them."

#6: Outside-In #

Overall roadmap: #2762505: Introduce "outside in" quick edit pattern to core

Settings Tray

Short description Issue User story
Target: Drupal 8.5 (March 2018)
Stabilize Settings Tray module (stable core) [#???] As a content author, I want to be able to make configuration changes to my website from the front-end."
As a site builder, I want the settings tray module to be stable so that I may rely on it in my production websites."
Generic off-canvas tray (stable core) #2784443: Move off-canvas functionality from Settings tray module into drupal.dialog.ajax library so that other modules can use it As a developer, I want the tray to be a generic component that I can integrate with without requiring the Settings Tray module."
Place blocks from front-end (stable core) #2739075: [plan] Make Place Blocks module functionality part of the Block module (etc.) As a site builder and content author, I want to be able to place and reorder blocks from the front-end of my site."
Target: Drupal 8.6+ (Date TBD; fall of 2018+)
Unified authoring experience (stable core) #2732443: Finalize the behavior for triggering view/edit/build modes from the toolbar (and fix the "disappearing toolbar") "As a content author, I want a unified authoring experience between Quick Edit, Settings Tray, Contextual Links, and other UI-based editing functionality."

#7: Out-of-the-Box Experience (new!) #

Overall roadmap: #2847582: Out of The Box experience initiative

Out of the Box screenshot

Short description Issue User story
Target: Drupal 8.5 (March 2018)
New demo profile (experimental core) #2809635: Create experimental installation profile
#79582: Add example content to the experimental out-of-the-box demo install profile
"As an evaluator, I want Drupal to demonstrate to me the basics of what it does out of the box with preconfigured functionality and sample content."
New core theme for demo profile (experimental core) #2900720: Designs for the Out of the Box experience intiative
#2904243: Implement the Out of the Box designs as a theme for demo_umami
"As an evaluator, I want Drupal to look stunning out of the box."
Target: Drupal 8.6+ (Date TBD; fall of 2018+)
New core theme for demo profile (stable core) [#???] "As an evaluator, I want Drupal's superb out-of-the-box experience to be stable and recommended to me during installation."

#8: Other active, community-driven initiatives #

These are initiatives driven from community activity/interest, which have committer buy-in, and a team actively working on them. For a full list, see Active initiatives in the Drupal core ideas queue.

Challenges raised by the community #

These are challenges that need an agreed-upon implementation strategy, buy-in from committers, and a team behind them to be elevated to the previous section. For a list of all such challenges, or to help move these along to "active initiatives," see the links at Drupal core community initiatives.

Past releases