Commit Graph

172 Commits

Author SHA1 Message Date
Zooko O'Whielacronx
e449052a17 util: dictutil: add DictOfSets.union(key, values) and DictOfSets.update(otherdictofsets) 2009-01-12 10:55:39 -07:00
Zooko O'Whielacronx
c01cfc0035 util: log: allow empty msgs (because downloader is using the "format" alternative with no "msg" argument) 2009-01-07 11:54:11 -07:00
Zooko O'Whielacronx
2122ba78b3 util: deferredutil: undo my recent patch to use our own implementation of gatherResults
It seems to cause lots of failures on some builders.
2009-01-07 11:00:05 -07:00
Zooko O'Whielacronx
79535e4f5b util: deferredutil: implement our own gatherResults instead of using Twisted's
Because we want to maintain backwards compatibility to Twisted 2.4.0.
2009-01-07 10:32:07 -07:00
Zooko O'Whielacronx
78306cf7fa trivial: M-x whitespace-cleanup 2009-01-07 10:25:28 -07:00
Zooko O'Whielacronx
8e92dd1231 trivial: whitespace cleanup 2009-01-06 11:20:58 -07:00
Zooko O'Whielacronx
d4a5f9131b util: base32: require str-not-unicode inputs -- effectively rolls back [3306] and [3307] 2009-01-06 10:41:22 -07:00
Zooko O'Whielacronx
5d5e89d96d util: add gatherResults which is a deferred-list-like thing that doesn't wrap failures in a FirstError 2009-01-04 10:52:02 -07:00
Zooko O'Whielacronx
b8904e023c trivial: remove unused import -- thanks, pyflakes 2008-12-31 15:25:56 -07:00
Zooko O'Whielacronx
c00d20361f rrefutil: generically wrap any errback from callRemote() in a ServerFailure instance
This facilitates client code to easily catch ServerFailures without also catching exceptions arising from client-side code.
See also:
http://foolscap.lothar.com/trac/ticket/105 # make it easy to distinguish server-side failures/exceptions from client-side
2008-12-31 14:28:30 -07:00
Zooko O'Whielacronx
ce5effbedf util/base32: the identity trans table needn't have any contents -- we are using string.translate solely to delete known chars 2008-12-22 17:48:08 -07:00
Zooko O'Whielacronx
3a26a4bd58 util/base32: allow unicode inputs to a2b() or could_be_base32_encoded(), and encode them with utf-8 before processing them 2008-12-22 17:47:13 -07:00
Zooko O'Whielacronx
dde2376c4e util/base32: loosen the precondition forbidding unicode and requiring str -- now it requires either unicode or str
Hopefully this will make it so that tests pass with François Deppierraz's patch to fix the tahoe cli's handling of unicode argument.
2008-12-22 16:22:37 -07:00
Zooko O'Whielacronx
f1fbd4feae dirnode: don't check MAC on entries in dirnodes
In an ancient version of directories, we needed a MAC on each entry.  In modern times, the entire dirnode comes with a digital signature, so the MAC on each entry is redundant.
With this patch, we no longer check those MACs when reading directories, but we still produce them so that older readers will accept directories that we write.
2008-12-21 17:35:18 -07:00
Zooko O'Whielacronx
2b2c2a566b util: logging: refactor some common logging behavior into mixins 2008-12-16 17:38:07 -07:00
Zooko O'Whielacronx
5fb44a3e79 pyutil: assertutil: copy in simplified assertutil from pyutil 2008-12-16 17:37:45 -07:00
Zooko O'Whielacronx
e29e4c04d9 pyutil: assertutil: simplify handling of exception during formatting of precondition message, and reduce dependency to just the Python Standard Library's logging module 2008-12-10 07:10:57 -07:00
Brian Warner
39a41f1d85 util/abbreviate: add abbreviated-size parser 2008-12-01 17:24:12 -07:00
Brian Warner
bf06492a90 #538: fetch version and attach to the rref. Make IntroducerClient demand v1 support. 2008-11-21 20:07:27 -07:00
Brian Warner
7391f63fc1 util/abbreviate: little utility to abbreviate seconds and bytes 2008-11-18 20:11:42 -07:00
Brian Warner
fc7cd23bd1 limiter.py: fix stack blowout by inserting an eventual-send between _done and maybe_start_task. This was causing failures during a 'tahoe manifest' of a large set of directories 2008-11-14 21:11:44 -07:00
Zooko O'Whielacronx
9c35ca76a4 util: copy in pyutil.fileutil.ReopenableNamedTemporaryFile 2008-11-04 17:47:15 -07:00
Zooko O'Whielacronx
cef24792e7 util: copy in nummedobj from pyutil 2008-11-04 13:55:50 -07:00
Zooko O'Whielacronx
fb85a6280f util: copy in dictutil from pyutil 2008-11-04 13:53:27 -07:00
Brian Warner
c205a54965 util/cachedir.py: add a cache-directory manager class, which expires+deletes unused files after a while 2008-10-30 13:01:20 -07:00
Brian Warner
b73c380cdb move testutil into test/common_util.py, since it doesn't count as 'code under test' for our pyflakes numbers 2008-10-28 21:28:31 -07:00
Brian Warner
294e3fb682 util: move PollMixin to a separate file (pollmixin.py), so testutil can be moved into test/ 2008-10-28 21:15:48 -07:00
Brian Warner
2d4e895096 iputil.py: avoid a DNS lookup at startup (which may timeout tests when run on a partially-offline host) by using 198.41.0.4 instead of A.ROOT-SERVERS.NET 2008-10-28 13:36:46 -07:00
Zooko O'Whielacronx
57d9f6beb6 repairer: fix flaw in testutil.flip_one_bit() that Brian pointed out 2008-10-16 12:48:48 -07:00
Zooko O'Whielacronx
8a6d1e5da6 repairer: test all different kinds of corruption that can happen to share files on disk 2008-10-14 16:09:20 -07:00
Brian Warner
b0a00e0f33 util/time_format.py: accept space separator, add unit tests 2008-10-13 15:52:58 -07:00
Brian Warner
93725a6935 util/limiter: add a repr 2008-10-07 13:19:45 -07:00
Brian Warner
1e3500ae5f testutil.PollMixin: set default timeout (to 100s), emit a more helpful error when the timeout is hit 2008-09-29 22:23:09 -07:00
Brian Warner
98c8e25709 netstring: add required_trailer= argument 2008-09-26 09:57:54 -07:00
Brian Warner
e8cf581e3f move netstring() and split_netstring() into a separate util.netstring module 2008-09-25 21:38:24 -07:00
Brian Warner
0a59991ce6 various: use util.log.err instead of twisted.log.err, so we get both Incidents and trial-test-flunking 2008-09-20 10:35:45 -07:00
Brian Warner
8854d0c1b5 util.log: send log.err to Twisted too, so that Trial tests are flunked 2008-09-20 10:34:27 -07:00
Brian Warner
bab799297f testutil.PollMixin: use a custom exception (and convert it) to avoid the ugly 'stash' cycle 2008-09-02 20:32:51 -07:00
Zooko O'Whielacronx
9d14341c7d test: add testutil.flip_one_bit which flips a randomly chosen bit of the input string 2008-07-28 16:42:17 -07:00
Brian Warner
dba0ad3d28 test_mutable.py: add more tests of post-mapupdate corruption, to support #474 testing 2008-06-24 11:08:10 -07:00
Brian Warner
fe44b8fb4b util.dictutil: move DictOfSets out to a separate utility module 2008-05-21 09:43:49 -07:00
Brian Warner
1121df6664 testutil.shouldFail: mention the 'which' string in substring failures too 2008-05-16 16:08:38 -07:00
Brian Warner
d76cf6f748 limiter: fix bug that ignores the limit= argument 2008-05-07 18:35:53 -07:00
Brian Warner
c7e441309d add a basic concurrency limiter utility 2008-05-07 16:53:30 -07:00
ben
c85869fc08 support freebsd 6 2008-04-28 00:41:40 -07:00
Brian Warner
81ab1ec785 testutil: factor stall() out into a common location 2008-04-22 16:47:15 -07:00
Brian Warner
b6b3b6b1bd testutil: minor reformatting 2008-04-17 19:56:45 -07:00
Zooko O'Whielacronx
bdda08df8c copy pyutil.time_format into src/allmydata/util
time_format() provides a good format for logging timestamps
2007-08-14 09:33:49 -07:00
Zooko O'Whielacronx
fc3bd0c987 use added secret to protect convergent encryption
Now upload or encode methods take a required argument named "convergence" which can be either None, indicating no convergent encryption at all, or a string, which is the "added secret" to be mixed in to the content hash key.  If you want traditional convergent encryption behavior, set the added secret to be the empty string.

This patch also renames "content hash key" to "convergent encryption" in a argument names and variable names.  (A different and larger renaming is needed in order to clarify that Tahoe supports immutable files which are not encrypted content-hash-key a.k.a. convergent encryption.)

This patch also changes a few unit tests to use non-convergent encryption, because it doesn't matter for what they are testing and non-convergent encryption is slightly faster.
2008-03-24 09:46:06 -07:00
Zooko O'Whielacronx
b2f5ac9a0a Merge patch which switches to SHA-256d with patch that adds punctuation and capitalization to the comment about the hash value. 2008-02-15 13:16:43 -07:00