[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