Commit Graph

8505 Commits

Author SHA1 Message Date
Brian Warner
1a6da72861 don't include test code itself in the test-coverage numbers 2007-04-16 12:32:45 -07:00
Brian Warner
2d832efa64 fec: add test for mathutil 2007-04-16 12:01:58 -07:00
Brian Warner
8e9d090bdb fec: remove unused mathutil.linear_fit_slope 2007-04-16 11:51:36 -07:00
Brian Warner
8aa2694595 fec.util.mathutil.permute: fix docstring 2007-04-16 11:51:04 -07:00
Brian Warner
652e8a735f interfaces: use explicit TupleOf and ChoiceOf constraints, since the upcoming version of Foolscap changes the meaning of bare tuples (from ChoiceOf to TupleOf) 2007-04-13 19:04:38 -07:00
Brian Warner
03fbee6ade encode.py: remove an unused import 2007-04-12 20:09:32 -07:00
Brian Warner
0ecb26ec44 test_hashtree.py: get full coverage for hashtree.py 2007-04-12 19:58:13 -07:00
Brian Warner
30133a7cdf hash trees: further cleanup, to make sure we're validating the right thing
hashtree.py: improve the methods available for finding out which hash nodes
 are needed. Change set_hashes() to require that every hash provided can
 be validated up to the root.
download.py: validate from the top down, including the URI-derived roothash
 in the share hash tree, and stashing the thus-validated share hash for use
 in the block hash tree.
2007-04-12 19:41:48 -07:00
Brian Warner
d351cd7674 download: always validate the blockhash, and don't let the bucket trick us into not validating hashes 2007-04-12 15:18:46 -07:00
Brian Warner
2e314ad47f hashtree.py: reindent from 2-spaces to 4-spaces. No functional changes. 2007-04-12 14:24:11 -07:00
Brian Warner
d8215e0c6f rename chunk.py to hashtree.py 2007-04-12 13:13:25 -07:00
Brian Warner
8f58b30db9 verify hash chains on incoming blocks
Implement enough of chunk.IncompleteHashTree to be usable.
Rearrange download: all block/hash requests now go through
a ValidatedBucket instance, which is responsible for retrieving
and verifying hashes before providing validated data. Download
was changed to use ValidatedBuckets everywhere instead of
unwrapped RIBucketReader references.
2007-04-12 13:07:40 -07:00
Zooko O'Whielacronx
234951041f oops -- the previous commit of iputil wasn't the right version
Too bad synchronizing pyutil and allmydata.util includes a manual step.
2007-04-16 15:12:01 -07:00
Zooko O'Whielacronx
ac4d23d336 port iputil to Windows (and Irix, and NetBSD, and Solaris 2, ...) 2007-04-16 14:59:13 -07:00
Zooko O'Whielacronx
0f54468f66 pyfec: bump version number to 1.0.0a1-2-STABLE 2007-04-15 12:08:12 -07:00
Zooko O'Whielacronx
278f9ad5c9 pyfec: add mention of sha256sum to README 2007-04-15 12:07:35 -07:00
Zooko O'Whielacronx
b4e25737ff pyfec: bump the performance measurement bragging up higher in the README 2007-04-14 18:03:54 -07:00
Zooko O'Whielacronx
625f230954 pyfec: bump version number to 1.0.0a1-1-STABLE 2007-04-14 17:50:40 -07:00
Zooko O'Whielacronx
2d9f728e27 pyfec: add -f option to fec, add more user-friendly handling of filesystem errors and user errors 2007-04-14 17:48:32 -07:00
Zooko O'Whielacronx
502c979307 pyfec: add bragging about how fec is way faster than "par2" 2007-04-14 17:47:48 -07:00
Zooko O'Whielacronx
049d8d1576 pyfec: more progress indicators, handling of already-existent outfile 2007-04-14 16:00:59 -07:00
Zooko O'Whielacronx
554be1ba6a pyfec: argparse: add a feature of exclusivecreate to the argparse FileType 2007-04-14 16:00:33 -07:00
Zooko O'Whielacronx
c5c7605d54 pyfec: argparse: simplify 2007-04-14 15:43:41 -07:00
Zooko O'Whielacronx
7bc14c45ee pyfec: fix up docs, version numbers, bump version to 1.0.0a1-0-STABLE 2007-04-14 12:54:51 -07:00
Zooko O'Whielacronx
f9b0ea3416 pyfec: update README and bump version number to 0.9.9-0-STABLE 2007-04-14 12:02:18 -07:00
Zooko O'Whielacronx
ee66b02989 pyfec: add bin/fec and bin/unfec, do better handling and reporting of various errors 2007-04-14 12:00:10 -07:00
Zooko O'Whielacronx
7c3b35d286 pyfec: new filefec with compressed metadata, better error handling, much better unit tests 2007-04-14 11:19:24 -07:00
Zooko O'Whielacronx
2bd0a2c3a1 pyfec: import a copy of the argparse module 2007-04-14 11:05:54 -07:00
Zooko O'Whielacronx
7aba6f1dd7 pyfec: import a copy of mathutil.py from the pyutil library 2007-04-14 10:54:43 -07:00
Zooko O'Whielacronx
2d858d8a6d pyfec: import a copy of fileutil.py from the pyutil library 2007-04-14 10:54:02 -07:00
Zooko O'Whielacronx
89f036c012 pyfec: add easyfec.Decoder(), which is easier to use than fec.Decoder() 2007-04-14 10:52:45 -07:00
Zooko O'Whielacronx
50353b982b pyfec: tighten internal datatype from int to short and undo attempt to make it unsigned (Python doesn't do unsigned short) 2007-04-14 10:51:48 -07:00
Zooko O'Whielacronx
3a2056a16f give it a version number -- v0.9
I intend to bump it to 1.0 after adding the cmdline tools.
2007-04-11 10:49:33 -07:00
Zooko O'Whielacronx
8a86d3edc3 import Version from pyutil 2007-04-11 10:48:44 -07:00
Zooko O'Whielacronx
c8b1eec75a merge changes and fix wrong type -- k and m need more than 8 bits (because they are the count rather than the index, i.e. they are 1-indexed) 2007-04-11 10:34:27 -07:00
Zooko O'Whielacronx
1b23579715 pyfec: make unit test failures print out a few useful bytes instead of kibibytes 2007-01-31 19:02:57 -07:00
Zooko O'Whielacronx
18de69456c pyfec: add variant of randomized test which happens to match the interface to benchutil 2007-01-31 22:55:28 -07:00
Zooko O'Whielacronx
367faeef6a pyfec: make randomized unit tests more comprehensive 2007-01-31 19:02:24 -07:00
Zooko O'Whielacronx
7b9630d59c pyfec: tighten internal C types 2007-01-31 13:55:31 -07:00
Zooko O'Whielacronx
10530a25bc pyfec: fix precondition checks on k and m to actually check the value before coercing it into a smaller type (oops) 2007-01-31 19:01:40 -07:00
Zooko O'Whielacronx
9c50c156dd pyfec: loosen preconditions -- you can have up to 256 total shares, not up to 255 total shares 2007-01-31 16:53:16 -07:00
Zooko O'Whielacronx
f7ddd89a90 silence warning when building 2007-04-11 08:50:59 -07:00
Zooko O'Whielacronx
08bdde9e4a port GNUmakefile to Windows, cygwin, Linux, MacOSX/PPC, MacOSX/Intel
And of course it may well work on lots of other modern unixes, too, especially the more GNUish ones.
2007-04-10 12:24:32 -07:00
Zooko O'Whielacronx
c8ac7a1a11 merge TODO into roadmap.txt 2007-04-10 10:33:38 -07:00
Zooko O'Whielacronx
19b1b80b5f add TODO: port to Windows 2007-04-10 09:27:58 -07:00
Zooko O'Whielacronx
746b247bfc update TODO (add operational TODOs) 2007-04-09 16:20:34 -07:00
Zooko O'Whielacronx
a1bec401a3 tweak README 2007-04-09 16:14:44 -07:00
Brian Warner
64ea644a48 test_util: add more coverage for assertutil.py 2007-04-08 13:02:13 -07:00
Brian Warner
6f4280cc38 test_util: add full coverage for mathutil.py 2007-04-08 12:43:01 -07:00
Brian Warner
d8b71b85f8 download: retrieve share hashes when downloading. We don't really do much validation with them yet, though. 2007-04-06 22:51:19 -07:00