? 881530_vocabulary_field_machine_names.1.patch
? 881530_vocabulary_field_machine_names.2.patch
? 881530_vocabulary_field_machine_names.3.patch
? 881530_vocabulary_field_machine_names.4.patch
? 881530_vocabulary_field_machine_names.5.patch
? 881530_vocabulary_field_machine_names.6.patch
? 911354-host-profile.1.patch
? taxonomy_machine_names.patch
? taxonomy_term_list.1.patch
? sites/all/modules/head2head/920748_vocabulary_machine_names.1.patch
? sites/default/files
? sites/default/settings.php
Index: modules/forum/forum.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/forum/forum.install,v
retrieving revision 1.50
diff -u -p -r1.50 forum.install
--- modules/forum/forum.install	22 Aug 2010 13:55:53 -0000	1.50
+++ modules/forum/forum.install	28 Sep 2010 16:00:27 -0000
@@ -52,7 +52,7 @@ function forum_enable() {
       'settings' => array(
         'allowed_values' => array(
           array(
-            'vid' => $vocabulary->vid,
+            'vocabulary' => $vocabulary->machine_name,
             'parent' => 0,
           ),
         ),
Index: modules/simpletest/tests/upgrade/upgrade.taxonomy.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/simpletest/tests/upgrade/upgrade.taxonomy.test,v
retrieving revision 1.3
diff -u -p -r1.3 upgrade.taxonomy.test
--- modules/simpletest/tests/upgrade/upgrade.taxonomy.test	19 Sep 2010 18:45:51 -0000	1.3
+++ modules/simpletest/tests/upgrade/upgrade.taxonomy.test	28 Sep 2010 16:00:27 -0000
@@ -34,8 +34,8 @@ class UpgradePathTaxonomyTestCase extend
         foreach ($field['settings']['allowed_values'] as $tree) {
           // Prefer valid taxonomy term reference fields for a given vocabulary
           // when they exist.
-          if (empty($instances[$tree['vid']]) || $instances[$tree['vid']] == 'taxonomyextra') {
-            $instances[$tree['vid']] = $field['field_name'];
+          if (empty($instances[$tree['vocabulary']]) || $instances[$tree['vocabulary']] == 'taxonomyextra') {
+            $instances[$tree['vocabulary']] = $field['field_name'];
           }
         }
       }
@@ -59,8 +59,10 @@ class UpgradePathTaxonomyTestCase extend
 
     // Check that the node type 'page' has been associated to a taxonomy
     // reference field for each vocabulary.
-    $vocabularies = taxonomy_get_vocabularies();
-    $voc_keys = array_keys($vocabularies);
+    $voc_keys = array();
+    foreach (taxonomy_get_vocabularies() as $vocab) {
+      $voc_keys[] = $vocab->machine_name;
+    }
     $instances = $this->instanceVocabularies('node', 'page');
     $inst_keys = array_keys($instances);
     sort($voc_keys);
Index: modules/taxonomy/taxonomy.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/taxonomy/taxonomy.install,v
retrieving revision 1.48
diff -u -p -r1.48 taxonomy.install
--- modules/taxonomy/taxonomy.install	28 Sep 2010 03:30:37 -0000	1.48
+++ modules/taxonomy/taxonomy.install	28 Sep 2010 16:00:27 -0000
@@ -408,7 +408,7 @@ function taxonomy_update_7004() {
         'required' => $vocabulary->required ? TRUE : FALSE,
         'allowed_values' => array(
           array(
-            'vid' => $vocabulary->vid,
+            'vocabulary' => $vocabulary->machine_name,
             'parent' => 0,
           ),
         ),
@@ -466,7 +466,7 @@ function taxonomy_update_7004() {
   $allowed_values = array();
   foreach (_update_7002_taxonomy_get_vocabularies() as $vocabulary) {
     $allowed_values[] = array(
-      'vid' => $vocabulary->vid,
+      'vocabulary' => $vocabulary->machine_name,
       'parent' => 0,
     );
   }
Index: modules/taxonomy/taxonomy.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/taxonomy/taxonomy.module,v
retrieving revision 1.607
diff -u -p -r1.607 taxonomy.module
--- modules/taxonomy/taxonomy.module	26 Sep 2010 23:31:36 -0000	1.607
+++ modules/taxonomy/taxonomy.module	28 Sep 2010 16:00:27 -0000
@@ -1058,7 +1058,7 @@ function taxonomy_implode_tags($tags, $v
  *
  * Field settings:
  * - allowed_values: a list array of one or more vocabulary trees:
- *   - vid: a vocabulary ID.
+ *   - vocabulary: a vocabulary machine name.
  *   - parent: a term ID of a term whose children are allowed. This should be
  *     '0' if all terms in a vocabulary are allowed. The allowed values do not
  *     include the parent term.
@@ -1074,7 +1074,7 @@ function taxonomy_field_info() {
       'settings' => array(
         'allowed_values' => array(
           array(
-            'vid' => '0',
+            'vocabulary' => '',
             'parent' => '0',
           ),
         ),
@@ -1148,8 +1148,8 @@ function taxonomy_field_validate($entity
         $validate = FALSE;
         foreach ($field['settings']['allowed_values'] as $settings) {
           // If no parent is specified, check if the term is in the vocabulary.
-          if (isset($settings['vid']) && empty($settings['parent'])) {
-            if ($settings['vid'] == $terms[$item['tid']]->vid) {
+          if (isset($settings['vocabulary']) && empty($settings['parent'])) {
+            if ($settings['vocabulary'] == $terms[$item['tid']]->vocabulary_machine_name) {
               $validate = TRUE;
               break;
             }
@@ -1258,10 +1258,11 @@ function taxonomy_field_formatter_view($
 function taxonomy_allowed_values($field) {
   $options = array();
   foreach ($field['settings']['allowed_values'] as $tree) {
-    $terms = taxonomy_get_tree($tree['vid'], $tree['parent']);
-    if ($terms) {
-      foreach ($terms as $term) {
-        $options[$term->tid] = str_repeat('-', $term->depth) . $term->name;
+    if ($vocabulary = taxonomy_vocabulary_machine_name_load($tree['vocabulary'])) {
+      if ($terms = taxonomy_get_tree($vocabulary->vid, $tree['parent'])) {
+        foreach ($terms as $term) {
+          $options[$term->tid] = str_repeat('-', $term->depth) . $term->name;
+        }
       }
     }
   }
@@ -1360,9 +1361,11 @@ function taxonomy_autocomplete_validate(
   if ($tags = $element['#value']) {
     // Collect candidate vocabularies.
     $field = $form_state['field'][$element['#field_name']][$element['#language']]['field'];
-    $vids = array();
+    $vocabularies = array();
     foreach ($field['settings']['allowed_values'] as $tree) {
-      $vids[] = $tree['vid'];
+      if ($vocabulary = taxonomy_vocabulary_machine_name_load($tree['vocabulary'])) {
+        $vocabularies[$vocabulary->vid] = $vocabulary;
+      }
     }
 
     // Translate term names into actual terms.
@@ -1370,14 +1373,14 @@ function taxonomy_autocomplete_validate(
     foreach ($typed_terms as $typed_term) {
       // See if the term exists in the chosen vocabulary and return the tid;
       // otherwise, create a new 'autocreate' term for insert/update.
-      if ($possibilities = taxonomy_term_load_multiple(array(), array('name' => trim($typed_term), 'vid' => $vids))) {
+      if ($possibilities = taxonomy_term_load_multiple(array(), array('name' => trim($typed_term), 'vid' => array_keys($vocabularies)))) {
         $term = array_pop($possibilities);
       }
       else {
-        $vocabulary = taxonomy_vocabulary_load($vids[0]);
+        $vocabulary = reset($vocabularies);
         $term = array(
           'tid' => 'autocreate',
-          'vid' => $vids[0],
+          'vid' => $vocabulary->vid,
           'name' => $typed_term,
           'vocabulary_machine_name' => $vocabulary->machine_name,
         );
@@ -1403,17 +1406,17 @@ function taxonomy_field_settings_form($f
   $vocabularies = taxonomy_get_vocabularies();
   $options = array();
   foreach ($vocabularies as $vocabulary) {
-    $options[$vocabulary->vid] = $vocabulary->name;
+    $options[$vocabulary->machine_name] = $vocabulary->name;
   }
   $form['allowed_values'] = array(
     '#tree' => TRUE,
   );
 
   foreach ($field['settings']['allowed_values'] as $delta => $tree) {
-    $form['allowed_values'][$delta]['vid'] = array(
+    $form['allowed_values'][$delta]['vocabulary'] = array(
       '#type' => 'select',
       '#title' => t('Vocabulary'),
-      '#default_value' => $tree['vid'],
+      '#default_value' => $tree['vocabulary'],
       '#options' => $options,
       '#required' => TRUE,
       '#description' => t('The vocabulary which supplies the options for this field.'),
Index: modules/taxonomy/taxonomy.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/taxonomy/taxonomy.test,v
retrieving revision 1.92
diff -u -p -r1.92 taxonomy.test
--- modules/taxonomy/taxonomy.test	28 Sep 2010 03:30:37 -0000	1.92
+++ modules/taxonomy/taxonomy.test	28 Sep 2010 16:00:27 -0000
@@ -379,7 +379,7 @@ class TaxonomyTermTestCase extends Taxon
       'settings' => array(
         'allowed_values' => array(
           array(
-            'vid' => $this->vocabulary->vid,
+            'vocabulary' => $this->vocabulary->machine_name,
             'parent' => 0,
           ),
         ),
@@ -845,7 +845,7 @@ class TaxonomyTermFieldTestCase extends 
       'settings' => array(
         'allowed_values' => array(
           array(
-            'vid' => $this->vocabulary->vid,
+            'vocabulary' => $this->vocabulary->machine_name,
             'parent' => '0',
           ),
         ),
@@ -905,7 +905,7 @@ class TaxonomyTermFieldTestCase extends 
       'settings' => array(
         'allowed_values' => array(
           array(
-            'vid' => $this->vocabulary->vid,
+            'vocabulary' => $this->vocabulary->machine_name,
             'parent' => '0',
           ),
         ),
@@ -981,7 +981,7 @@ class TaxonomyTokenReplaceTestCase exten
       'settings' => array(
         'allowed_values' => array(
           array(
-            'vid' => $this->vocabulary->vid,
+            'vocabulary' => $this->vocabulary->machine_name,
             'parent' => 0,
           ),
         ),
Index: profiles/standard/standard.install
===================================================================
RCS file: /cvs/drupal/drupal/profiles/standard/standard.install,v
retrieving revision 1.23
diff -u -p -r1.23 standard.install
--- profiles/standard/standard.install	7 Sep 2010 18:01:32 -0000	1.23
+++ profiles/standard/standard.install	28 Sep 2010 16:00:27 -0000
@@ -297,7 +297,7 @@ function standard_install() {
     'settings' => array(
       'allowed_values' => array(
         array(
-          'vid' => $vocabulary->vid,
+          'vocabulary' => $vocabulary->machine_name,
           'parent' => 0,
         ),
       ),
