[development] Announcing DRUPAL-7-0-UNSTABLE-8

Angela Byron drupal-devel at webchick.net
Sat Jul 25 06:57:23 UTC 2009


Howdy there, development list!

Sadly, it's been a shamefully long time (almost two months!) since our  
last interim unstable release. But the good news is that this release  
is BURSTING with awesome. That's right. Not merely filled with  
awesome. BURSTING with it. More on that in a second. Since this will  
probably be the last interim unstable release before code freeze, I  
have some unsightly begging to do, and I also want to take as many  
opportunities as possible to point people towards existing efforts.  
This e-mail will be a bit long. You have been warned!

First, remember that there are *less than 6 weeks* until code freeze,  
which is September 1 (same day Drupalcon Paris starts, which you  
already have your ticket for, RIGHT? :)). Remember: at code freeze, we  
need to turn off the glorious fountain of world-dominating awesome  
(also known as new features and API changes), and instead turn our  
attention to removing the scum that's accumulated on its sides and the  
bits of bird poop clogging its nozzles (also known as bug fixing). Hm.  
I think my analogy fell apart there a little bit... Anyway!

The point being: there has NEVER been a more critical time to help  
drive forward important Drupal 7 patches than *right now*! To support  
this, I've identified some of these areas that need assistance inline  
with related new changes. Click a link, get a list of oodles of would- 
be-totally-fantastic things that need people to push them through!

To help these efforts along, every weekend for the entire month of  
August I will heading up "virtual" patch review sprints on IRC in  
#drupal and #drupal-dev. Details on patch review sprints can be found  
at http://drupal.org/node/442368. *Anyone* can drop by, learn the  
ropes of reviewing patches from the Drupal ninjas, and help important  
new features get committed by trying out proposed changes and giving  
feedback.

It would *also* be awesome for these sprints to coincide with "real  
life" patch review sprints at local Drupal meetups, as the LA group  
will be doing at their bug-fixing sprint: http://drupal.org/node/ 
520184. So, please! Organize something in your own community for some  
weekend during the month of August! :) Maybe someone can head up  
compiling a big list of these somewhere.

Finally, I am away for the next week on what my wife informs me is  
commonly referred to as some very bizarre word I've never heard of  
before (must be Sumerian) called "vacation." So I will not be on IRC,  
reading/responding to e-mail, or... committing patches. :( However!  
I'm told that these "vacations" are often very "relaxing" and  
sometimes you even get to catch up on "sleep" (so many of these new  
words!) so when I get back on August 2, I hope to be pounding at the  
issue queue with renewed vigor! A nice big fat RTBC queue waiting for  
me when I get back, filled with many fantastic improvements would be a  
wonderful welcome-home present! :) (Note: *especially* usability- 
related patches: I want end users to feel the same sense of wonder at  
Drupal 7's greatness that developers will feel!)

Ok. Stepping off my soapbox, now. Let's get down to business: what's  
new in DRUPAL-7-0-UNSTABLE-8!

---

Changes for developers:
=======================

- Berdir has been leading the charge on lots of conversions to the new  
database abstraction layer in Drupal 7 (DBTNG). Most of core has now  
been converted, with just *two more* open issues! Check the "DBTNG  
Conversion" tag http://drupal.org/project/issues/search/drupal?status%5B%5D=Open&issue_tags=DBTNG+Conversion 
  or the "database system" component for more general issues: http://drupal.org/project/issues/search/drupal?version 
[]=7.x&component[]=database+system Note that this a *great* place to  
help out as you'll get a real jump-start on the new DBTNG syntax  
you'll need to know to code Drupal 7 modules. (Incidentally, it's also  
a great time to *port* your modules to Drupal 7 to ensure that the new  
DB layer contains everything you'll need to do the job!)

- Speaking of database stuff, Schema API now has support for defining  
foreign key relations between tables. While core doesn't do anything  
with this information yet (due to the fact that we have to support  
stinky old MyISAM tables), contrib modules certainly could. There's  
also now support for queries to ignore slaves when you are using a  
replication set up, which is great for high performance sites.

- The miserable DX suck-fest that is node_get_types() has been split  
up into much more reasonable function names like node_type_get_types()  
and node_type_get_names() etc. YAY!

- Installation Profiles have at long last gotten some love! They now  
come with .info files where all of the various metadata such as name,  
description, dependencies, etc. goes. No more learning obscure PHP  
functions, and this lays important ground work for being able to  
smarten up the packaging system. Hooray! Adrian has big plans for a  
more robust installation profile system. Check the "installation  
profiles" tag for  places to help out: http://drupal.org/project/issues/search/drupal?issue_tags=installation+profiles

- Catch has been going bananas with a code profiler, filling the issue  
queue with all sorts of interesting optimization issues and patches.  
This is an important area, because right now D7's performance as  
compared to D6's is not so hot. Wanna help? Check out issues under the  
"Performance" tag: http://drupal.org/project/issues/search/drupal?issue_tags=Performance

- Field API improvements galore, including conversion of node's "body"  
and "teaser" fields, a query API for our pluggable storage system,  
alter hooks for all of the various metadata and settings, and  
fieldable taxonomy terms. See the "Fields in Core" tag for many, many  
more places to help out! http://drupal.org/project/issues/search/drupal?issue_tags=Fields+in+Core

- Lots of improvements in the testing world, including user interface  
improvements to SimpleTest module (you can now re-run the same batch  
of tests easily), a 'verbose' debugging mode, improved test coverage  
of long-neglected areas such as Poll module, and various under-the- 
hood improvements for rolling out version 2.0 of the testing bot.  
Check out http://drupal.org/project/issues/drupal?component=simpletest.module 
  for issues about SimpleTest, or http://testing.drupal.org/%20PIFR-2-Client-Configuration-FAQs 
  for how you can help bring about the next generation testing  
framework.

- t() now supports additional contextual information for short  
strings, which comes in really handy since words like "View" can often  
mean entirely different things depending on what it's referring to.  
The "i18n sprint" tag at http://drupal.org/project/issues/search/drupal?issue_tags=i18n+sprint 
  has many more issues vying for attention.

Changes for themers:
====================
- Under the banner of "eliminating WTFs/minute for new themers",  
themes no longer auto-recognize scripts.js and style.css: you specify  
those in the .info file same as you do all other CSS/JS files.  
Additionally, themes no longer support the theme_engine prefix name on  
function calls: always use the theme name. http://drupal.org/project/issues/drupal?component=theme+system 
  has lots of other theme improvements that need review and code.

- All dynamic classes in templates are now in a single $classes string  
(and corresponding $classes_array). Good bye, class="node<?php if  
($sticky) { print ' sticky'; } ?><?php if (!$status) { print ' node- 
unpublished'; } ?>" and hello class="<?php print $classes ?>" w00t!  
Check out the tpl-refresh tag for similar .tpl.php clean-up patches: http://drupal.org/project/issues/search/drupal?issue_tags=tpl-refresh

- New functions render(), hide(), and show() have been introduced for  
selecting exactly when and where to print *part* of a complex variable  
such as $content without having to micro-manage the whole thing. I'm  
very tired and doing a horrible job of explaining this, but hopefully http://drupal.org/update/theme/6/7#granular 
  helps.

- jQuery UI now ships with Drupal core! Would love to see some patches  
that take advantage of this library to improve user experience, and/or  
replace our old, crusty custom implementations of stuff like  
autocomplete. Additionally, a new drupal_add_library function was  
added, to provide a centralized registry for JS/CSS libraries such as  
jQuery UI. Are you a JS wizard? Hit up the "javascript" component: http://drupal.org/project/issues/drupal?component=javascript

- Does accessibility tickle your fancy? mgifford and Everett Zufelt  
are heading up a massive movement for making Drupal conform to WAI- 
ARIA standards. http://drupal.org/project/issues/search/drupal?issue_tags=accessibility 
  is the place to be to dive in there.

Changes for end-users:
=====================
- A swanky-looking new admin toolbar, and some re-working of  
administration paths. This isn't quite what you see in the mocks at http://www.d7ux.org/header/ 
  (it's missing icons, for one), but lays the initial ground work for  
further improvements. The "d7ux" tag has a plethora of places to help  
drive this important work home, especially if you have front-end  
development (JavaScript, CSS, etc.) skills. http://drupal.org/project/issues/search/drupal?issue_tags=d7ux

- IMAGE HANDLING IN CORE!! You heard it here first. (Well. Unless you  
heard it on Drupal Planet, or Twitter, or...) So far, we've got  
ImageCache in core - which allows the set up of "image styles" (like  
thumbnail or album cover) with various "image effects" attached (like  
"scale & crop" or "rotate") which can then be applied to any image in  
the system, such as user pictures. Check out the "ImageInCore" tag if  
you want to help quicksketch and drewish drive home the remaining  
patches: http://drupal.org/project/issues/search/drupal?issue_tags=ImageInCore

- Tons of work is being put forth into an effort to move "Plugin  
Manager" into core. What is Plugin Manager you ask? Can you say  
automatic project updates from within Drupal? I *knew* you could! So  
far we have some underlying libraries for handling SSH/SFTP/FTP  
communication, but there's still much more work to be done before this  
is ready, and could use YOUR help. I don't think this one has a tag,  
but http://drupal.org/project/issues/search/drupal?text=plugin+manager+in+core 
  should get you the relevant issues.

- Path and Search module are now enabled in the default profile, thus  
eliminating the first step that 90% of Drupal site builders do once  
they've installed Drupal. Core also ships with an admin role,  
eliminating the second step that 90% of Drupal site builders do once  
they've installed Drupal. ;) There's more of this kind of stuff under  
the "usability" tag: http://drupal.org/project/issues/search/drupal?issue_tags=usability

- The wall of text that appears when you first install Drupal,  
including (mysteriously) to anonymous visitors, and whose instructions  
"helpfully" disappears when you post your first piece of content thus  
leaving you completely straded, has been moved to the landing page of  
the help system. In its place is a simple message that there has been  
no front page content posted yet, and invites you to either create  
content or go change your home page. Drupal's default out-of-the-box  
experience is being discussed at http://drupal.org/node/483987. It  
would be wonderful to have some folks working on this before code  
freeze.

- A variety of help text clean-up patches, mainly in removing useless  
or overly verbose messages. If squeaky-clean text is up your alley,  
try the "user interface text" component: http://drupal.org/project/issues/drupal?component=user+interface+text

- Per-content type block visibility that we ripped out of core in  
Drupal 5 or so is now back! There'll now be a nice little selection  
for showing a block only on "Story" nodes, for example.

- Form element titles no longer end with a colon by default. Goodbye,  
"How old are you?:" You will not be missed!

---

Hm. I think those are all the commit messages that stand out to me at  
this hour. Thanks very much to everyone's tremendous efforts  towards  
these great improvements, and thanks in advance to everyone who helps  
drive us through the most exciting 6 weeks of Drupal yet! :D

-Angie



More information about the development mailing list