Index: rules/rules.export.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/rules/rules/Attic/rules.export.inc,v
retrieving revision 1.1.2.11
diff -u -p -r1.1.2.11 rules.export.inc
--- rules/rules.export.inc	5 Aug 2010 14:51:41 -0000	1.1.2.11
+++ rules/rules.export.inc	2 Oct 2010 11:37:37 -0000
@@ -37,6 +37,10 @@ function rules_item_rule_set_export($set
     $rule_set['categories'][$module] = $module;
     $rule_set['status'] = 'default';
   }
+  // Sort the elements to avoid problems DIFFing the output between exports.
+  if (!empty($export)) {
+    ksort($export);
+  }
 }
 
 
@@ -64,6 +68,9 @@ function rules_item_rule_export($rule_na
     // they aren't saved yet.
     $counter++;
 
+    // Sort the elements to avoid problems DIFFing the output between exports.
+    ksort($rule);
+
     if (strpos($rule_name, $module) !== 0) {
       // Make sure the name isn't already taken.
       $rules = rules_get_configured_items('rules');
Index: rules/rules.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/rules/rules/Attic/rules.module,v
retrieving revision 1.1.2.74
diff -u -p -r1.1.2.74 rules.module
--- rules/rules.module	10 Aug 2010 08:28:00 -0000	1.1.2.74
+++ rules/rules.module	2 Oct 2010 11:37:37 -0000
@@ -1097,3 +1097,24 @@ function rules_import_hook($rule) {
   }
   return $rule;
 }
+
+/**
+ * Implementation of hook_default_variables().
+ */
+function rules_default_variables() {
+  // Variables provided by this module.
+  $variables = array(
+    // A nicer name for this module's display.
+    '#title' => 'Rules',
+
+    'rules_clean_path',
+    'rules_counter',
+    'rules_debug',
+    'rules_forms_events',
+    'rules_hide_token_message',
+    'rules_inactive_sets',
+    'rules_shows_fixed',
+  );
+  
+  return $variables;
+}
