zfec: a few debugging and in-line comment tweaks
authorzooko <zooko@zooko.com>
Fri, 9 Nov 2007 16:45:23 +0000 (22:15 +0530)
committerzooko <zooko@zooko.com>
Fri, 9 Nov 2007 16:45:23 +0000 (22:15 +0530)
darcs-hash:3a3ee6328a6ad7de8d8011aa935f4b70d763850e

zfec/setup.py
zfec/zfec/easyfec.py
zfec/zfec/filefec.py

index 6f849f9fae505154c03ff398d1117c5eeda73fc2..50210cac010a9b9bb2f93e9094dcd74d128e1267 100755 (executable)
@@ -31,8 +31,7 @@ use_setuptools(min_version=min_version, download_delay=0)
 
 from setuptools import Extension, find_packages, setup
 
-DEBUGMODE=False
-# DEBUGMODE=True
+DEBUGMODE=("--debug" in sys.argv)
 
 extra_compile_args=[]
 extra_link_args=[]
index db39f5bf71f699064125bf611dbffbe019ef418f..3ee44c278bd52ddc4351206caf44105de300d886 100644 (file)
@@ -10,6 +10,17 @@ def div_ceil(n, d):
     """
     return (n/d) + (n%d != 0)
 
+from base64 import b32encode
+def ab(x): # debuggery
+    if len(x) >= 3:
+        return "%s:%s" % (len(x), b32encode(x[-3:]),)
+    elif len(x) == 2:
+        return "%s:%s" % (len(x), b32encode(x[-2:]),)
+    elif len(x) == 1:
+        return "%s:%s" % (len(x), b32encode(x[-1:]),)
+    elif len(x) == 0:
+        return "%s:%s" % (len(x), "--empty--",)
+
 class Encoder(object):
     def __init__(self, k, m):
         self.fec = zfec.Encoder(k, m)
index 135f4a26257cdff7a04bf69c3aa07196a119a1c5..80df5b7f31718a4cf21a87b47c76fb00e968ebd4 100644 (file)
@@ -6,6 +6,17 @@ import array, os, re, struct, traceback
 
 CHUNKSIZE = 4096
 
+from base64 import b32encode
+def ab(x): # debuggery
+    if len(x) >= 3:
+        return "%s:%s" % (len(x), b32encode(x[-3:]),)
+    elif len(x) == 2:
+        return "%s:%s" % (len(x), b32encode(x[-2:]),)
+    elif len(x) == 1:
+        return "%s:%s" % (len(x), b32encode(x[-1:]),)
+    elif len(x) == 0:
+        return "%s:%s" % (len(x), "--empty--",)
+
 class InsufficientShareFilesError(zfec.Error):
     def __init__(self, k, kb, *args, **kwargs):
         zfec.Error.__init__(self, *args, **kwargs)
@@ -216,9 +227,9 @@ def encode_to_files(inf, fsize, dirname, prefix, k, m, suffix=".fec", overwrite=
     return 0
 
 # Note: if you really prefer base-2 and you change this code, then please
-# denote 2^20 as "MiB" instead of "MB" in order to avoid ambiguity.
-# Thanks.
+# denote 2^20 as "MiB" instead of "MB" in order to avoid ambiguity.  See:
 # http://en.wikipedia.org/wiki/Megabyte
+# Thanks.
 MILLION_BYTES=10**6
 
 def decode_from_files(outf, infiles, verbose=False):