Improvements to core

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.

Note: Patch Spotlight is deprecated. All initiatives should be catalogued now under sub-pages of http://drupal.org/community-initiatives/drupal-core.

Crell's picture

The Core Initiative Trinity

The twin deep-engineering Core Initiatives of Configuration and Web Services have been taking a long hard look at Drupal's basic, underlying architecture of late. We're swirling around three fundamental pieces that should, we believe, revolutionize Drupal core and Drupal development, allowing for a quantum leap in Drupal's capabilities. (Excited yet?) The catch is, we have to get these right. More than that, we need to nail these. For that reason, we're trying to solicit wider feedback on a few key architectural questions. I have tried to summarize the situation and the challenges below, and invite informed, insightful feedback from the community.

The three cornerstones of this new approach are Configuration, Context, and Plugins. All three are things that Drupal core does not, in fact, provide in anything resembling a useful way. We need to get all three of them into core, however, and they need to work together well. The problem is that there are very good reasons for all of them to require one of the others first, which creates a circular dependency. We need to sort out that problem before we can get building.

Read more
donquixote's picture

Router, tabs and breadcrumbs.

A follow-up to chx' Menu needs to be torn apart.
(this linked thing is a wiki page, so no discussion possible over there)

What chx said:

1. Router system with access control.
1. Tabs with access control.
1. Menu links

These three have little to do in common and yet we keep them together.

Chx actually said more than this, but for now all I want is a problem description.

Changes that I hope we can agree on:

Read more
Crell's picture

Butler in Chicago

I'm a bit late in getting this out, but such is life when moving and attending a wedding. :-)

We had a good Core Conversation on Butler in Chicago. Sadly Dries ended up not being able to attend, but just about everyone else was on board with the roadmap. The roadmap itself hasn't changed much since Copenhagen, but things are moving again. There was also considerable talk of very, very interesting tie-ins to the configuration/deployment core initiatives, as having a more robust pre-database configuration option should help resolve a lot of the challenges we were looking at.

Slides from the presentation are attached below.

Next steps:

Read more
arianek's picture

Sprint based development for Drupal 8

Hi Drupalfolk -

I documented a bunch of the ideas/discussion points from Dries' D8 core convo on a blog post:

http://affinitybridge.com/blog/drupal-8-git-sprints-efficient-smooth

I am considering making a page/section in the Initiatives section on d.o but would really like a bit more input first - I got a lot of positive tweets and a couple more detailed comments, but I still am not sure exactly how much support there would be for this, nor how much more detail would need to be hashed out for it to become a method that people would be comfortable experimenting with.

Read more

Automated performance testing for core - BOF/discussion notes

This is a summary of some of the discussions around automated performance testing of core at DrupalCon Chicago. It's incomplete, but this is a wiki so please help fill in the gaps.

Test runs

Rather than trying to integrate this with PIFR, we want to run tests against git branches triggered by git pushes. Initially this would allow for post-commit/push testing of HEAD, which would only find regressions after the fact, but from there we can extend this to forks of HEAD in sandboxes, per-issue branches etc.

Read more

Entities in Drupal 8 - Notes from BOF

Notes from the Entities in Drupal 8 BOF at Drupalcon Chicago

Participants: pwolanin, yched, fago, catch, frando, plach, scor

Entity objects, OO in general

  • Keep the Entity controllers, add RUD methods (as in entity API module)

  • Entities will be actual classes (not just stdClass) that implement an EntityInterface, with methods that are mostly routers onto functions or the methods of the EntityController. So $node->save() calls the node controller's save() methods with $node as argument.

Read more
jensimmons's picture

HTML5 Code Sprint in NYC & Galway

Start: 
2011-01-22 12:00 - 19:00 America/New_York
Organizers: 
Event type: 
Sprint

Let's have a code sprint to work on HTML5 implementation for Drupal 7 and Drupal 8. It will be in Brooklyn (signup to find out where) with very limited space!

We'll work on the HTML5 Base theme, HTML5 form element implementation (in HTML5 Tools + Elements), overall planning & scheming (in preparation for March's DrupalCon), and whatever else you want.

I'll provide yummy squash & sweet potato soup (vegan/wheat-free) and snacks for eating whenever people want.

You bring a laptop, knowledge about HTML5, and ideas about what we need to do next to get HTML5 support into core.

Read more

Drupal 8 first things

In my opinion these are the things we should do before Chicago -- and only these aside of course from non API breaking bug fixes. Please edit this list responsibly -- this is not just "chx's favorite topics" (guess what do I care about profile module?). Also please add some important frontend features. I enabled comments too -- do not discuss any specific issue (is it _hook_ or __ ?) but rather what needs to be worked on. Specifics go to the issue queue.

Read more

What defines Drupal?

We all use Drupal, build with it, code for it, sometimes even code it. But what is Drupal, really? What gives it its distinct identity? This page tries to gather the defining choices the project team has been focusing on over the course of years.

[Editor's note: If this is going to go into the Handbook, it needs more editing. See the style guide at http://drupal.org/node/338208 ]

Community experience

  • The people on IRC channels #drupal, #drupal-contribute, and topical/regional channels
Read more
donquixote's picture

Drupal core release management: Exceptions to the feature freeze?

With the current release strategy for Drupal core, there is little that can change to a major release once it is published as a stable release.
Even worse: The feature freeze for D7 is now one year ago, and we still don't have a beta.
In some issues we can read things like "Too late. Let's clean this mess up in D8.".

Can we afford to work with a core that is already outdated the day it is published? Is there no way out?

The feature freeze has very good reasons:
- More energy is left for bugfixing.

Read more
juan_g's picture

Criteria for Drupal 7 beta?

Now that some developers and companies are responding to Dries' Drupal 7: let's get it done, it's likely they will give more priority to fix and/or review beta blocker issues. So, it would be useful a clearer criteria about what's a beta blocker, and better consistency between the beta blocker list and the beta blocker tag.

The list in Drupal core improvements (6 issues) is more complete but updated every one or two weeks, and the tag in the issue queue (3 issues) is currently not complete but more real-time.

If we add tags step by step following the beta blocker criteria mentioned in the list, then the cumulative results are now the following for open, not fixed, critical D7 issues:

Read more

Thoughts

This is a re-think of some Drupal things. It's not yet a coherent vision. Coding this would probably require starting from scratch, taking (significant) pieces from Drupal as you go.

Entities and fields. That's the world. There is hardly anything else but entities and fields.

Read more
myke's picture

Drupal 8 and Staging

I would like to start a discussion about staging in Drupal 8...

By staging, I mean having a test site, where you can make changes and test them out, before pushing them to the production site and making them live for everybody.

Read more
mfer's picture

Pluggable Page Response Attachments

The idea is to standardize the 'page' attachments (js, css, libraries, html head, response headers) into a common (or very similar) interface and pluggable system.

Imagine something like:

<?php
drupal_attach
('js')
  ->
add('/path/to/file')
  ->
add(array('foo' => 'bar'), array('type' => 'setting'));
?>

The interface would have methods for:

  • add - add something to the queue (ordering is though weighting?).
  • get - get a list of what has been added.
  • render - convert the content to html or what other ways it should be sent (for example, being sent with an AJAX response to be loaded in a page).

There would be a default class for each of these and they could be overridden with variables or if there is a plugin config system in place for it.

drupal_attach() is a factory to get the right object based on the properly configured class.

Read more
pwolanin's picture

How can we aggregate unoffical roadmaps into a larger plan?

I wrote at http://acquia.com/blog/drupalcon-buzz-can-we-say-r-word-drupal-8 asking questions about whether we need to collect together various roadmaps and plans in a central place to communicate a "plan" to developers and Drupal users.

What do you think? How could we make that work and keep it up to date throughout a core development cycle? Do you think that would be valuable or a distraction?

Read more
jhodgdon's picture

Core Drupal Search Architecture for D8

Today at DrupalCon San Francisco, 11 of us gathered to discuss what the ideal architecture would be for Search in Drupal Core. Present were maintainers/users of core Search, various contrib search modules, Lucene, and Solr:
http://drupal.org/user/153120 - janusman
http://drupal.org/user/277371 - awolfey
http://drupal.org/user/29191 - douggreen
http://drupal.org/user/266779 - cpliaka
http://drupal.org/user/472460 - jpmckinney
http://drupal.org/user/10297 - unexpand
http://drupal.org/user/733232 - nihiliad
http://drupal.org/user/49851 - pwolanin

Read more

Core dev summit API breakout sessions notes

Additional notes taken from after the session by catch/bangpound/pwolanin:

define a base interface
define an abstract base class
The class has static class methods for CRUD
Instances of the class are the things we work with.

We might have one or more additional classes which implement one or mode additional Interfaces. E.g. for fieldable objects.

We need some generic top-level functions that wrap static class methods.

int entity_create($entity_type, Array $values) // returns object Id. @throws Exception on failure.

Read more

Expand the router system and eliminate blocks by it

For a given path instead of having a single page callback we store a page array skeleton. This very much like the Drupal 7 page array but instead of the content it contains the necessary callbacks and optional cache keys which can be used to actually populate the page array. This totally happens to eliminate the block system as well. This page array skeleton as it evolves into a full page array can be the context itself.

For added crazy, it should be possible to parallelize the creation of the page later.

Read more

Abstract language system's path handling

Drupal's localization system implements URL, path, and domain based context-management functionality (toggled using the variable_get('language_negotiation', LANGUAGE_NEGOTIATION_NONE) switch). This code overlaps with (and conflicts with) Domain Access module, PURL module, and a number of other third-party tools for building large sites.

The tools implemented in the language system allow the following elements of the URL to control the site's current language:

<

ul>

Read more
Subscribe with RSS Syndicate content

Improvements to core

Group categories

Category

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds:

Hot content this week