Index: drush.php
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/drush/drush.php,v
retrieving revision 1.47
diff -u -u -p -r1.47 drush.php
--- drush.php	12 Mar 2009 17:23:11 -0000	1.47
+++ drush.php	13 Mar 2009 04:42:44 -0000
@@ -79,12 +79,16 @@ function drush_bootstrap($argc, $argv) {
   define('DRUSH_USER',        drush_get_option(array('u', 'user'), 0));
 
   $bootstrap_level = -1;
+
+  // Pull out the latest command so that we can bootstrap to it's requested level.
+  list($command, $arguments) = drush_parse_command($args['commands'], FALSE);
+
   register_shutdown_function('drush_bootstrap_continue');
   if ($drupal_root) {
     // Attempt to bootstrap progressively, until we fail (passing execution on to
     // drush_continue) or complete a full bootstrap.
     drush_drupal_set_environment($drupal_root);
-    drush_drupal_bootstrap($drupal_root);
+    drush_drupal_bootstrap($drupal_root, $command['bootstrap']);
   }
   // We are completely unbootstrapped, or we made it to full bootstrap.
   // Either way, exit so that we continue to dispatch the commands.
Index: includes/command.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/drush/includes/command.inc,v
retrieving revision 1.15
diff -u -u -p -r1.15 command.inc
--- includes/command.inc	12 Mar 2009 15:39:06 -0000	1.15
+++ includes/command.inc	13 Mar 2009 04:42:44 -0000
@@ -25,15 +25,17 @@
  *   Associative array of currently active command descriptors.
  *
  */
-function drush_get_commands() {
+function drush_get_commands($check_bootstrap = TRUE) {
   $commands = drush_command_invoke_all('drush_command');
   
   // Filter out commands which are invalid for the current version of core Drupal.
   $commands = drush_enforce_requirement_core($commands);
-  
-  // Filter out commands which are invalid for the current bootstrap level.
-  $commands = drush_enforce_requirement_bootstrap($commands);
-  
+
+  if ($check_bootstrap) {
+    // Filter out commands which are invalid for the current bootstrap level.
+    $commands = drush_enforce_requirement_bootstrap($commands);
+  }
+
   // Filter out commands which are missing their dependant Drupal modules.
   $commands = drush_enforce_requirement_drupal_dependencies($commands);
   
@@ -73,10 +75,10 @@ function drush_get_commands() {
  *   - A normalized command descriptor (itself an array)
  *   - The command arguments, i.e. the remaining
  */
-function drush_parse_command($commands) {
+function drush_parse_command($commands, $check_bootstrap = TRUE) {
 
   // Get a list of all implemented commands.
-  $implemented = drush_get_commands();
+  $implemented = drush_get_commands($check_bootstrap);
 
   $command = FALSE;
   $arguments = array();
