drupal 8 - build week update

22
Drupal 8 Angie "webchick" Byron Acquia Build Week August 17, 2015

Upload: angela-byron

Post on 12-Apr-2017

1.266 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Drupal 8 - Build Week Update

Drupal 8Angie "webchick" Byron

Acquia Build Week August 17, 2015

Page 2: Drupal 8 - Build Week Update

Agenda

• What's in D8?

• Where's D8 at?

• What's the hold-up?

• What about contrib?

• What about migration path?

Page 3: Drupal 8 - Build Week Update

What's in D8?In case you have never seen a Driesnote…

Page 4: Drupal 8 - Build Week Update

End-user stuff

Improved authoring experience

Mobile++Previews that

actually work. :P

In-place editing Easier menus

Page 5: Drupal 8 - Build Week Update

Site Builder Stuff

Views in core

A bleeping search on the bleeping moules page!

Moar fields in core

Moar fieldable entities in core

Multilingual++

Page 6: Drupal 8 - Build Week Update

Themer Stuff

Twig HTML5

Useful external libraries

Kill IE8 and below with FIRE.

Page 7: Drupal 8 - Build Week Update

Developer Stuff

Configuration Management

GREAT opportunity to re-write all of your modules to

lots of OO PHP and YAML files! ;)

Web Services

Useful external libraries

Page 8: Drupal 8 - Build Week Update

"Hello world"example.hello: path: '/hello' defaults: _controller: '\Drupal\example\ExampleController::hello' requirements: _permission: 'access content'

example.routing.yml

<?php

namespace Drupal\example;

use Drupal\Core\Controller\ControllerBase;use Symfony\Component\HttpFoundation\Response;

/** * Returns responses for Example module routes. */ class ExampleController extends ControllerBase { public function hello() { return new Response($this->t('Hello world.')); } }

src/ExampleController.php

example.info.yml

name: Example type: module description: 'Example' core: 8.x

"Proudly Invented Elsewhere":

- YAML - OOP

- PHP5.5- Symfony

Page 9: Drupal 8 - Build Week Update

Where's D8 at?When can I use it already?!

Page 10: Drupal 8 - Build Week Update

The final countdown• 11 release blockers ("critical

issues") remaining.

• At 0, we start bi-weekly release candidates.

• Release at least 6 weeks later, if incoming criticals deemed manageable.

• Released "when it's ready."

https://www.drupal.org/drupal-8.0/get-involved

Page 11: Drupal 8 - Build Week Update

After 8.0.0? Semantic versioning!

• Drupal 6 support dropped 3 months after Drupal 8.0.0's release.

• Bug fix/security releases continue on monthly schedule as now in D6/D7.

• New "feature releases" of Drupal 8 every 6 months (8.1.x, 8.2.x…) with non-BC breaking improvements.

• Drupal 9 not branched until much later, when there's enough "meat" (completed change proposals which can't be committed to 8.x) to make a compelling product

• Drupal 8 enters "LTS" mode (security fixes only) after Drupal 9.0.0

D6 SUPPORT ENDS

8.2.08.1.0

NEWFEATURES

NEWFEATURES

NEW FEATURES

Page 12: Drupal 8 - Build Week Update

What's the hold-up?Why can't I use it already?!

Page 13: Drupal 8 - Build Week Update

Security• openssl_random_pseudo_bytes()

is broken on PHP < 5.6.12, 5.5.28, 5.4.44

• Remove or document every SafeMarkup::set() call

• Remove as much of the SafeMarkup class's methods as possible

• …plus, any private "critical" or "highly critical" D6/D7 core issues

Page 14: Drupal 8 - Build Week Update

Upgrade Path• Provide a beta to beta/rc upgrade

path BLOCKED

• Automatic entity updates can fail when there is existing content, leaving the site's schema in an unpredictable state BLOCKER

• Update test database dump should be based on beta 12 and contain content

Page 15: Drupal 8 - Build Week Update

Performance/Scalability• aka, "The Cloud Team Rejoices" ;)

• Create standardized core profiling scenarios and start tracking metrics for them

• Twig should not rely on loading php from shared file system

• Replace Symfony container with a Drupal one, stored in cache

• Resolve infinite stampede in mtime protected PHP storage

Page 16: Drupal 8 - Build Week Update

The Drupal 8.0.0-rc1 Release Checklist

• Stuff like:

• Update to latest versions of external libraries

• Re-profile to check for regressions

• Manual testing in latest supported browsers (including mobile)

• Automated tests against all supported environments (e.g. SQLite, PostgreSQL, PHP 7)

https://www.drupal.org/node/2485119

Page 17: Drupal 8 - Build Week Update

What about contrib?I dareth ask…

Page 18: Drupal 8 - Build Week Update

Status of some of the big ones

In core / Done Usable 6+ months out

• Views • Date • Entity Reference • Quick Edit • WYSIWYG • Mobile-Friendly

Toolbar • Responsive

Images/Tables • i18n

• Token • Features • Pathauto • CTools • Page Manager • Devel

• Rules • Panels • Panels IPE • Commerce • Media

Page 19: Drupal 8 - Build Week Update

Biggest needs?• Time. Get my boss to prioritize D8 (employees) /

Pay my rent so I can prioritize D8 (freelancers)

• Sprints. Especially for "hard problems" that need a whiteboard and booze.

• Money. This helps buy time and fund sprints; some modules (e.g. Rules) have crowd-funding efforts.

• Key Drupalists. e.g. "More Tim Plunkett, please." ;)

• Triage. Help with my issue queue (support requests, patch reviews) so I can stay focused on D8.

Page 20: Drupal 8 - Build Week Update

What about the upgrade path?

Please don't hit me…

Page 21: Drupal 8 - Build Week Update

What's the skinny?• Upgrade path between 8.x versions

• Not supported in core yet; possibly by next week. :) See https://www.drupal.org/project/head2head in contrib for now

• Migration path between major versions (6/7 => 8)

• Build out your Drupal 8 site as a new site, then migrate content, users, etc. over.

• Drupal 6 => 8 migrations already in! Drupal 7 => 8 migrations are in progress.

• Must port your own custom code; stick with well-used contrib modules if you can!

• Drupal Module Upgrader (previous Acquia hackathon project!) can help alleviate lots of tedium.

Page 22: Drupal 8 - Build Week Update

In short…• D8 is awesome

• We need to get it done

• We also need lots of contributed modules and a migration path for it to be adopted

• You can help!