This week in Drupal Core - April 30th 2014

larowlan's picture

What's new with Drupal 8?

This week saw the release of Drupal 8 alpha 11 and two major patches - one adding PSR-4 autoloading support and another containing the Drupal 6 to Drupal 8 migration path.
The PSR-4 patch added PSR-4 support alongside PSR-0 but it is planned to remove PSR-0 support for module classes before the first beta. We will continue to support PSR-0 for external libraries provided by modules. For more information read the change record.
The Drupal 6 to Drupal 8 migrate path was a huge patch, congratulations to all those involved. For more information keep watching This week in Drupal Core and the Core group. You can take it for a spin with the latest version of drush and drush migrate-manifest.

Where's Drupal 8 at in terms of release?

Just last week!

Last week, we fixed 12 critical issues and 16 major issues, and opened 10 criticals and 16 majors. That puts us overall at 118 release-blocking critical issues and 517 major issues.

7 beta-blocking issues were fixed last week. There are still 28 of 165 beta blockers that must be resolved before we can release a Drupal 8 beta.

How close are we to Beta 1?

It's the end of April, and we are down to just 28 beta-blocking issues. For context, here's how that count has changed over the course of 2014. We started 2014 with 140 known beta blockers and missing change records combined, with 123 of those issues still unresolved. We've identified additional beta-blocking issues along the way, so as we get closer, the picture becomes more complete. In total, we've already fixed 137 beta blockers and completed more than 70 missed change records. The 28 issues that remain are a fraction of more than 200 total.

A chart showing the number of total known beta-blocking issues since January 1, 2014 and the number of these that were unresolved each week.

That said, we need your help. Many of the beta blockers that remain include significant changes, and the community's support and focus on these issues now will pay off at DrupalCon Austin sprints and after. Or, help with one of the approachable tasks for beta 1 we shared last week. (Also see the "Where can I help?" section below.)

...So then when is Drupal 8 released?

We release the first Drupal 8 release candidate when there are 0 critical issues remaining. Right now there are 118 (including the 28 top-priority beta blockers). The number of criticals has been dropping steadily since DrupalCon Prague thanks to 900 Drupal 8 patch contributors during that timeframe alone. (In total, 2035 people have contributed to Drupal 8 patches over the past three years!)

A chart showing the number of unresolved critical issues since March 2011 peaking at 157 in September 2013 and then dropping

That still looks like a lot of remaining criticals -- and it is. However, when we compare it to the total work that's already been done in the cycle, including more than 700 critical issues already fixed, it becomes clear we are in the final phase of Drupal 8's development. (Yep... keep scrolling...)

A chart showing the unresolved criticals for Drupal 8 compared to the much higher total of about 850 known criticals since 2011

If you're as eager to build amazing things with Drupal 8 as we are, please devote what resources you can to resolving the remaining release blockers, or support the indefatigable contributors who continue to shape Drupal 8 directly.

Where can I help?

Top criticals to hit this week

Each week, we check with core maintainers and contributors for the "extra critical" criticals that are blocking other work. These issues are often tough problems with a long history. If you're familiar with the problem space of one of these issues and have the time to dig in, help drive it forward by reviewing, improving, and testing its patch, and by making sure the issue's summary is up to date and any API changes are documented with a draft change record.

More ways to help

Notable Commits

The best of git log --since "2014-04-21" --pretty=oneline (90 commits in total):

  • Issue #1874640 by xjm, Wim Leers: Rename edit module to quickedit.
  • Issue #2231413 by blueminds, tim.plunkett: Link field does not accept a valid path alias.
  • Issue #2218039 by dawehner, sun: Render the maintenance/install page like any other HTML page.
    Removes some of crazy installer-specific logic
  • These three issues move us closer to Symfony 2.4's structure and away from custom code:
    Issue #2223615 by znerol: Use request stack in local task/action manager.
    Issue #2223593 by znerol: Decouple the router.request_context service from the request service.
    Issue #2236207 by znerol: Use router request context instead of request service in system breadcrumbbuilder.
  • Issue #2244185 by damiankloip: Remove cURL dependent options from HTTP client - Removes dependency on cURL
  • Issue #1067408 by alexpott, Jalandhar, jessebeach, Désiré, neetu morwani, dawehner, sun Themes do not have an installation status. Treat themes like modules so we can determine if they're actually used, only enabled themes get loaded / functions get executed, they can manage their data, translations can be imported, etc. One more DrupalWTF removed; DX++
  • Issue #2198429 by alexpott: Make deleted fields work with config synch. Makes field data purging compatible with syncing a module uninstallation.
  • Issue #2225955 by tim.plunkett, Berdir: Improve the DX of writing entity storage classes. Removes a lot of boilerplate code related to storing entities. DX++
  • The PSR-4 patches - these are the big one.No more super-nested directories (lib/Drupal/your_module/FooClass.php becomes just src/FooClass.php)
    Issue #2083547 by donquixote: Implement PSR-4 for module-provided class files.
    Issue #2083547 by donquixote: Introduce core/scripts/, to move module-proided class files to their new PSR-4 location.
  • Issue #2245249 by tim.plunkett: Convert installer forms to FormInterface. Makes the installer less of a special-case; more like other forms
  • Issue #2228261 by beejeebus, kim.pepper, alexpott, Wim Leers: Add a local, PhpStorage-based cache backend.

You can also always check the Change records for Drupal core for the full list of Drupal 8 API changes from Drupal 7.

Drupal 8 Around the Interwebs

Blog posts about Drupal 8 and how much it's going to rock your face.

Drupal 8 in "Real Life"

  • May 2: DrupalJam in the Netherlands has a session on Drupal 8 patterns (plus maybe a streamed Q&A with Dries!)
  • May 2-4: DrupalCamp Toronto schedule is out and there are numerous Drupal 8 sessions.
  • May 16-18: DrupalCamp Spain has several great D8 session proposals and even a sprint on several Drupal 8 topics.
  • May 31-June 8: DrupalCon Austin and extended sprints. This year's North American DrupalCon will include many Drupal 8 sessions, trainings, and sprints. The conference is June 2-6 with the community sprint on Jun 7, and there are plans extended sprints the weekends before and after the conference. See the signup sheet for Austin's extended sprints. Austin will be critical to make progress toward Drupal 8's release, so please plan to participate in the sprints if you can!
  • May 24th-25th:Drupal Camp France
  • Whew! That's a wrap!

    Do you follow Drupal Planet with devotion, or keep a close eye on the Drupal event calendar, or git pull origin 8.x every morning without fail before your coffee? We're looking for more contributors to help compile these posts. You could either take a few hours once every six weeks or so to put together a whole post, or help with one section more regularly. Contact xjm if you'd like to help communicate all the interesting happenings in Drupal 8!