Only in allmydata-tahoe-1.8.2-pristine: allmydata-tahoe-1.8.2
diff -ur allmydata-tahoe-1.8.2-bug1418/build/lib.linux-i686-2.6/allmydata/immutable/encode.py allmydata-tahoe-1.8.2-pristine/build/lib.linux-i686-2.6/allmydata/immutable/encode.py
--- allmydata-tahoe-1.8.2-bug1418/build/lib.linux-i686-2.6/allmydata/immutable/encode.py	2011-06-22 07:42:18.000000000 +0200
+++ allmydata-tahoe-1.8.2-pristine/build/lib.linux-i686-2.6/allmydata/immutable/encode.py	2011-01-30 18:39:34.000000000 +0100
@@ -105,7 +105,6 @@
         def _got_size(size):
             self.log(format="file size: %(size)d", size=size)
             self.file_size = size
-            precondition(isinstance(self.file_size, (int, long)), self.file_size)
         d.addCallback(_got_size)
         d.addCallback(lambda res: eu.get_all_encoding_parameters())
         d.addCallback(self._got_all_encoding_parameters)
@@ -119,7 +118,6 @@
     def _got_all_encoding_parameters(self, params):
         assert not self._codec
         k, happy, n, segsize = params
-        precondition(isinstance(segsize, (int, long)), segsize)
         self.required_shares = k
         self.servers_of_happiness = happy
         self.num_shares = n
@@ -131,7 +129,6 @@
 
         self.num_segments = mathutil.div_ceil(self.file_size,
                                               self.segment_size)
-        precondition(isinstance(self.num_segments, (int, long)), self.num_segments)
 
         self._codec = CRSEncoder()
         self._codec.set_params(self.segment_size,
diff -ur allmydata-tahoe-1.8.2-bug1418/build/lib.linux-i686-2.6/allmydata/immutable/upload.py allmydata-tahoe-1.8.2-pristine/build/lib.linux-i686-2.6/allmydata/immutable/upload.py
--- allmydata-tahoe-1.8.2-bug1418/build/lib.linux-i686-2.6/allmydata/immutable/upload.py	2011-06-22 07:42:18.000000000 +0200
+++ allmydata-tahoe-1.8.2-pristine/build/lib.linux-i686-2.6/allmydata/immutable/upload.py	2011-01-30 18:39:34.000000000 +0100
@@ -608,7 +608,6 @@
         d = self.original.get_all_encoding_parameters()
         def _got(encoding_parameters):
             (k, happy, n, segsize) = encoding_parameters
-            precondition(isinstance(segsize, (int, long)), segsize)
             self._segment_size = segsize # used by segment hashers
             self._encoding_parameters = encoding_parameters
             self.log("my encoding parameters: %s" % (encoding_parameters,),
@@ -916,7 +915,6 @@
         share_size = encoder.get_param("share_size")
         block_size = encoder.get_param("block_size")
         num_segments = encoder.get_param("num_segments")
-        precondition(isinstance(num_segments, (int, long)), num_segments)
         k,desired,n = encoder.get_param("share_counts")
 
         self._peer_selection_started = time.time()
@@ -1272,8 +1270,6 @@
         if self._all_encoding_parameters:
             return defer.succeed(self._all_encoding_parameters)
 
-        precondition(self.max_segment_size is None or isinstance(self.max_segment_size, (int, long)), self.max_segment_size)
-        precondition(isinstance(self.default_max_segment_size, (int, long)), self.default_max_segment_size)
         max_segsize = self.max_segment_size or self.default_max_segment_size
         k = self.encoding_param_k or self.default_encoding_param_k
         happy = self.encoding_param_happy or self.default_encoding_param_happy
@@ -1281,13 +1277,10 @@
 
         d = self.get_size()
         def _got_size(file_size):
-            precondition(isinstance(file_size, (int, long)), file_size)
             # for small files, shrink the segment size to avoid wasting space
             segsize = min(max_segsize, file_size)
-            precondition(isinstance(segsize, (int, long)), segsize)
             # this must be a multiple of 'required_shares'==k
             segsize = mathutil.next_multiple(segsize, k)
-            precondition(isinstance(segsize, (int, long)), segsize)
             encoding_parameters = (k, happy, n, segsize)
             self._all_encoding_parameters = encoding_parameters
             return encoding_parameters
diff -ur allmydata-tahoe-1.8.2-bug1418/build/lib.linux-i686-2.6/allmydata/storage/crawler.py allmydata-tahoe-1.8.2-pristine/build/lib.linux-i686-2.6/allmydata/storage/crawler.py
--- allmydata-tahoe-1.8.2-bug1418/build/lib.linux-i686-2.6/allmydata/storage/crawler.py	2011-03-30 16:17:50.000000000 +0200
+++ allmydata-tahoe-1.8.2-pristine/build/lib.linux-i686-2.6/allmydata/storage/crawler.py	2011-01-30 18:39:34.000000000 +0100
@@ -443,7 +443,7 @@
     when more than one share is placed on a single server.
     """
 
-    minimum_cycle_time = 4*24*60*60 # we don't need this more than once an hour
+    minimum_cycle_time = 60*60 # we don't need this more than once an hour
 
     def __init__(self, server, statefile, num_sample_prefixes=1):
         ShareCrawler.__init__(self, server, statefile)
diff -ur allmydata-tahoe-1.8.2-bug1418/build/lib.linux-i686-2.6/allmydata/storage/expirer.py allmydata-tahoe-1.8.2-pristine/build/lib.linux-i686-2.6/allmydata/storage/expirer.py
--- allmydata-tahoe-1.8.2-bug1418/build/lib.linux-i686-2.6/allmydata/storage/expirer.py	2011-03-30 16:18:20.000000000 +0200
+++ allmydata-tahoe-1.8.2-pristine/build/lib.linux-i686-2.6/allmydata/storage/expirer.py	2011-01-30 18:39:34.000000000 +0100
@@ -46,7 +46,7 @@
     """
 
     slow_start = 360 # wait 6 minutes after startup
-    minimum_cycle_time = 14*24*60*60 # not more than twice per day
+    minimum_cycle_time = 12*60*60 # not more than twice per day
 
     def __init__(self, server, statefile, historyfile,
                  expiration_enabled, mode,
diff -ur allmydata-tahoe-1.8.2-bug1418/build/lib.linux-i686-2.6/allmydata/util/mathutil.py allmydata-tahoe-1.8.2-pristine/build/lib.linux-i686-2.6/allmydata/util/mathutil.py
--- allmydata-tahoe-1.8.2-bug1418/build/lib.linux-i686-2.6/allmydata/util/mathutil.py	2011-06-23 08:16:03.000000000 +0200
+++ allmydata-tahoe-1.8.2-pristine/build/lib.linux-i686-2.6/allmydata/util/mathutil.py	2011-01-30 18:39:34.000000000 +0100
@@ -28,7 +28,7 @@
 def is_power_of_k(n, k):
     return k**int(math.log(n, k) + 0.5) == n
 
-def next_power_of_k_math(n, k):
+def next_power_of_k(n, k):
     if n == 0:
         x = 0
     else:
@@ -38,20 +38,6 @@
     else:
         return k**x
 
-def next_power_of_k_alt(n, k):
-    p = 1
-    while p < n:
-        p *= k
-    return p
-
-def next_power_of_k(n, k):
-    try:
-        return next_power_of_k_math(n, k)
-    except ValueError, e:
-        print "XXX n: %s :: %s, k: %s :: %s, next_power_of_k_alt: %s" % (n, type(n), k, type(k), next_power_of_k_alt(n, k))
-        e.args = tuple(e.args + (n, k, next_power_of_k_alt(n, k)))
-        raise
-
 def ave(l):
     return sum(l) / len(l)
 
diff -ur allmydata-tahoe-1.8.2-bug1418/src/allmydata/immutable/encode.py allmydata-tahoe-1.8.2-pristine/src/allmydata/immutable/encode.py
--- allmydata-tahoe-1.8.2-bug1418/src/allmydata/immutable/encode.py	2011-06-22 07:53:05.000000000 +0200
+++ allmydata-tahoe-1.8.2-pristine/src/allmydata/immutable/encode.py	2011-01-30 18:39:34.000000000 +0100
@@ -105,7 +105,6 @@
         def _got_size(size):
             self.log(format="file size: %(size)d", size=size)
             self.file_size = size
-            precondition(isinstance(self.file_size, (int, long)), self.file_size)
         d.addCallback(_got_size)
         d.addCallback(lambda res: eu.get_all_encoding_parameters())
         d.addCallback(self._got_all_encoding_parameters)
@@ -119,7 +118,6 @@
     def _got_all_encoding_parameters(self, params):
         assert not self._codec
         k, happy, n, segsize = params
-        precondition(isinstance(segsize, (int, long)), segsize)
         self.required_shares = k
         self.servers_of_happiness = happy
         self.num_shares = n
@@ -131,7 +129,6 @@
 
         self.num_segments = mathutil.div_ceil(self.file_size,
                                               self.segment_size)
-        precondition(isinstance(self.num_segments, (int, long)), self.num_segments)
 
         self._codec = CRSEncoder()
         self._codec.set_params(self.segment_size,
diff -ur allmydata-tahoe-1.8.2-bug1418/src/allmydata/immutable/upload.py allmydata-tahoe-1.8.2-pristine/src/allmydata/immutable/upload.py
--- allmydata-tahoe-1.8.2-bug1418/src/allmydata/immutable/upload.py	2011-06-22 07:53:05.000000000 +0200
+++ allmydata-tahoe-1.8.2-pristine/src/allmydata/immutable/upload.py	2011-01-30 18:39:34.000000000 +0100
@@ -608,7 +608,6 @@
         d = self.original.get_all_encoding_parameters()
         def _got(encoding_parameters):
             (k, happy, n, segsize) = encoding_parameters
-            precondition(isinstance(segsize, (int, long)), segsize)
             self._segment_size = segsize # used by segment hashers
             self._encoding_parameters = encoding_parameters
             self.log("my encoding parameters: %s" % (encoding_parameters,),
@@ -916,7 +915,6 @@
         share_size = encoder.get_param("share_size")
         block_size = encoder.get_param("block_size")
         num_segments = encoder.get_param("num_segments")
-        precondition(isinstance(num_segments, (int, long)), num_segments)
         k,desired,n = encoder.get_param("share_counts")
 
         self._peer_selection_started = time.time()
@@ -1272,8 +1270,6 @@
         if self._all_encoding_parameters:
             return defer.succeed(self._all_encoding_parameters)
 
-        precondition(self.max_segment_size is None or isinstance(self.max_segment_size, (int, long)), self.max_segment_size)
-        precondition(isinstance(self.default_max_segment_size, (int, long)), self.default_max_segment_size)
         max_segsize = self.max_segment_size or self.default_max_segment_size
         k = self.encoding_param_k or self.default_encoding_param_k
         happy = self.encoding_param_happy or self.default_encoding_param_happy
@@ -1281,13 +1277,10 @@
 
         d = self.get_size()
         def _got_size(file_size):
-            precondition(isinstance(file_size, (int, long)), file_size)
             # for small files, shrink the segment size to avoid wasting space
             segsize = min(max_segsize, file_size)
-            precondition(isinstance(segsize, (int, long)), segsize)
             # this must be a multiple of 'required_shares'==k
             segsize = mathutil.next_multiple(segsize, k)
-            precondition(isinstance(segsize, (int, long)), segsize)
             encoding_parameters = (k, happy, n, segsize)
             self._all_encoding_parameters = encoding_parameters
             return encoding_parameters
diff -ur allmydata-tahoe-1.8.2-bug1418/src/allmydata/storage/crawler.py allmydata-tahoe-1.8.2-pristine/src/allmydata/storage/crawler.py
--- allmydata-tahoe-1.8.2-bug1418/src/allmydata/storage/crawler.py	2011-03-30 16:17:50.000000000 +0200
+++ allmydata-tahoe-1.8.2-pristine/src/allmydata/storage/crawler.py	2011-01-30 18:39:34.000000000 +0100
@@ -443,7 +443,7 @@
     when more than one share is placed on a single server.
     """
 
-    minimum_cycle_time = 4*24*60*60 # we don't need this more than once an hour
+    minimum_cycle_time = 60*60 # we don't need this more than once an hour
 
     def __init__(self, server, statefile, num_sample_prefixes=1):
         ShareCrawler.__init__(self, server, statefile)
diff -ur allmydata-tahoe-1.8.2-bug1418/src/allmydata/storage/expirer.py allmydata-tahoe-1.8.2-pristine/src/allmydata/storage/expirer.py
--- allmydata-tahoe-1.8.2-bug1418/src/allmydata/storage/expirer.py	2011-03-30 16:18:20.000000000 +0200
+++ allmydata-tahoe-1.8.2-pristine/src/allmydata/storage/expirer.py	2011-01-30 18:39:34.000000000 +0100
@@ -46,7 +46,7 @@
     """
 
     slow_start = 360 # wait 6 minutes after startup
-    minimum_cycle_time = 14*24*60*60 # not more than twice per day
+    minimum_cycle_time = 12*60*60 # not more than twice per day
 
     def __init__(self, server, statefile, historyfile,
                  expiration_enabled, mode,
diff -ur allmydata-tahoe-1.8.2-bug1418/src/allmydata/util/mathutil.py allmydata-tahoe-1.8.2-pristine/src/allmydata/util/mathutil.py
--- allmydata-tahoe-1.8.2-bug1418/src/allmydata/util/mathutil.py	2011-06-23 07:55:20.000000000 +0200
+++ allmydata-tahoe-1.8.2-pristine/src/allmydata/util/mathutil.py	2011-01-30 18:39:34.000000000 +0100
@@ -28,7 +28,7 @@
 def is_power_of_k(n, k):
     return k**int(math.log(n, k) + 0.5) == n
 
-def next_power_of_k_math(n, k):
+def next_power_of_k(n, k):
     if n == 0:
         x = 0
     else:
@@ -38,20 +38,6 @@
     else:
         return k**x
 
-def next_power_of_k_alt(n, k):
-    p = 1
-    while p < n:
-        p *= k
-    return p
-
-def next_power_of_k(n, k):
-    try:
-        return next_power_of_k_math(n, k)
-    except ValueError, e:
-        print "XXX n: %s :: %s, k: %s :: %s, next_power_of_k_alt: %s" % (n, type(n), k, type(k), next_power_of_k_alt(n, k))
-        e.args = tuple(e.args + (n, k, next_power_of_k_alt(n, k)))
-        raise
-
 def ave(l):
     return sum(l) / len(l)
 
Only in allmydata-tahoe-1.8.2-pristine/support/lib/python2.6/site-packages: argparse-1.2.1-py2.6.egg
Only in allmydata-tahoe-1.8.2-bug1418/support/lib/python2.6/site-packages: argparse-1.2-py2.6.egg
diff -ur allmydata-tahoe-1.8.2-bug1418/support/lib/python2.6/site-packages/easy-install.pth allmydata-tahoe-1.8.2-pristine/support/lib/python2.6/site-packages/easy-install.pth
--- allmydata-tahoe-1.8.2-bug1418/support/lib/python2.6/site-packages/easy-install.pth	2011-03-30 16:21:04.000000000 +0200
+++ allmydata-tahoe-1.8.2-pristine/support/lib/python2.6/site-packages/easy-install.pth	2011-06-23 08:59:02.000000000 +0200
@@ -3,10 +3,10 @@
 /home/rycee/allmydata-tahoe-1.8.2/src
 ./mock-0.6.0-py2.6.egg
 ./foolscap-0.6.1-py2.6.egg
-./simplejson-2.1.3-py2.6-linux-i686.egg
+./simplejson-2.1.6-py2.6-linux-i686.egg
 ./zfec-1.4.10-py2.6-linux-i686.egg
 ./pyutil-1.8.4-py2.6.egg
-./argparse-1.2-py2.6.egg
+./argparse-1.2.1-py2.6.egg
 ./zbase32-1.1.3-py2.6.egg
 /usr/lib/pymodules/python2.6
 ./Twisted-10.2.0-py2.6-linux-i686.egg
Only in allmydata-tahoe-1.8.2-bug1418/support/lib/python2.6/site-packages: simplejson-2.1.3-py2.6-linux-i686.egg
Only in allmydata-tahoe-1.8.2-pristine/support/lib/python2.6/site-packages: simplejson-2.1.6-py2.6-linux-i686.egg
Binary files allmydata-tahoe-1.8.2-bug1418/support/lib/python2.6/site-packages/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/internet/_sigchld.so and allmydata-tahoe-1.8.2-pristine/support/lib/python2.6/site-packages/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/internet/_sigchld.so differ
Binary files allmydata-tahoe-1.8.2-bug1418/support/lib/python2.6/site-packages/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/protocols/_c_urlarg.so and allmydata-tahoe-1.8.2-pristine/support/lib/python2.6/site-packages/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/protocols/_c_urlarg.so differ
Binary files allmydata-tahoe-1.8.2-bug1418/support/lib/python2.6/site-packages/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/python/_epoll.so and allmydata-tahoe-1.8.2-pristine/support/lib/python2.6/site-packages/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/python/_epoll.so differ
Binary files allmydata-tahoe-1.8.2-bug1418/support/lib/python2.6/site-packages/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/python/_initgroups.so and allmydata-tahoe-1.8.2-pristine/support/lib/python2.6/site-packages/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/python/_initgroups.so differ
Binary files allmydata-tahoe-1.8.2-bug1418/support/lib/python2.6/site-packages/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/runner/portmap.so and allmydata-tahoe-1.8.2-pristine/support/lib/python2.6/site-packages/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/runner/portmap.so differ
Binary files allmydata-tahoe-1.8.2-bug1418/support/lib/python2.6/site-packages/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/test/raiser.so and allmydata-tahoe-1.8.2-pristine/support/lib/python2.6/site-packages/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/test/raiser.so differ
Binary files allmydata-tahoe-1.8.2-bug1418/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/internet/_sigchld.so and allmydata-tahoe-1.8.2-pristine/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/internet/_sigchld.so differ
Binary files allmydata-tahoe-1.8.2-bug1418/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/protocols/_c_urlarg.so and allmydata-tahoe-1.8.2-pristine/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/protocols/_c_urlarg.so differ
Binary files allmydata-tahoe-1.8.2-bug1418/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/python/_epoll.so and allmydata-tahoe-1.8.2-pristine/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/python/_epoll.so differ
Binary files allmydata-tahoe-1.8.2-bug1418/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/python/_initgroups.so and allmydata-tahoe-1.8.2-pristine/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/python/_initgroups.so differ
Binary files allmydata-tahoe-1.8.2-bug1418/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/runner/portmap.so and allmydata-tahoe-1.8.2-pristine/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/runner/portmap.so differ
Binary files allmydata-tahoe-1.8.2-bug1418/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/test/raiser.so and allmydata-tahoe-1.8.2-pristine/Twisted-10.2.0-py2.6-linux-i686.egg/twisted/test/raiser.so differ
