Drush Code Sprint, June 27+28 2011
The first ever Drush code sprint takes place on Monday and Tuesday of next week at MIT in Cambridge, MA USA. The Drush maintainers are flying in from all over the USA and Canada to focus on Drush core, and readying for a release of Drush 5. See http://piratepad.net/CzHfSVWAzX for a list of projects that we hope to undertake.
We've added some interesting new features and capabilities since Drush 4. Here are some already committed features. Some of these have also been backported to recent releases of Drush4.
- Unit test suite. Powered by phpunit, our new test suite keeps the bugs away, and encourages sweeping, aggressive refactoring.
- Windows compatibility has been vastly improved. If you use Drush on Windows, we already recommend using a HEAD development snapshot over Drush 4.
- archive-dump command. Creates a tarball from any existing Drupal site. The tarball contains the code, files, and database dump for that site. These contents are organized into a standard called the Site Archive format. This format is already accepted for import into Acquia hosting, Pantheon hosting, and more to come.
- New cache-* commands exercise Drupal's cache API for setting and getting values.
- Commands executed on remote sites now show feedback in real time, instead of waiting until completion.
- Drush shell aliases are analogous to [alias] in .gitconfig file. That is, one can specify an associative array of "personal" aliases in a drushrc.php file. Those personal (or organizational) aliases are like mini scripts that can call bash commands along with drush commands including hard coded options and arguments. For example:
$options['shell-aliases'] = array(
'pull' => '!git pull', // we've all done it.
'pulldb' => '!git pull && drush updatedb',
'newdb' => drush sql-sync @prod @self
'noncore' => 'pm-list --no-core',
'wipe' => 'cache-clear all',