Zooko O'Whielacronx
de73332dfa
TAG allmydata-tahoe-0.3.0
2007-06-11 09:22:21 -07:00
Zooko O'Whielacronx
ef5f50716e
update the relnotes.txt for v0.3
2007-06-11 09:21:42 -07:00
Brian Warner
363ed1264a
webish: show vdrive and introducer connectedness separately
...
Also don't offer a link to the vdrive webpages if we don't have a vdrive.furl
2007-06-09 21:03:57 -07:00
Brian Warner
956d5ae256
rename fileid/verifierid to plaintext_hash/crypttext_hash
2007-06-09 20:46:04 -07:00
Brian Warner
dac76b508c
thingA.txt has finally been renamed
2007-06-09 20:32:34 -07:00
Brian Warner
5abc034378
update thingA/uri-extension docs
2007-06-09 20:31:48 -07:00
Brian Warner
584dc4ae94
handle uri_extension with a non-bencode serialization scheme
2007-06-08 16:17:54 -07:00
Brian Warner
c9ef291c02
rename thingA to 'uri extension'
2007-06-08 15:59:16 -07:00
Brian Warner
72bc8627de
consolidate multiple definitions of NotEnoughPeersError
2007-06-07 22:20:55 -07:00
Brian Warner
f62a544b93
remove several leftover defintions of netstring()
2007-06-07 22:13:18 -07:00
Brian Warner
6df5c856ac
test_client.py: improve test coverage a bit
2007-06-07 22:09:02 -07:00
Brian Warner
243300f843
docs/thingA.txt: describe what this does, even if it doesn't yet have a name
2007-06-07 21:50:58 -07:00
Brian Warner
c049941529
move almost all hashing to SHA256, consolidate into hashutil.py
...
The only SHA-1 hash that remains is used in the permutation of nodeids,
where we need to decide if we care about performance or long-term security.
I suspect that we could use a much weaker hash (and faster) hash for
this purpose. In the long run, we'll be doing thousands of such hashes
for each file uploaded or downloaded (one per known peer).
2007-06-07 21:47:21 -07:00
Brian Warner
cabba59fe7
test_encode.py: even more testing of merkle trees, getting fairly comprehensive now
2007-06-07 21:24:39 -07:00
Brian Warner
053109b28b
add tests for bad/inconsistent plaintext/crypttext merkle tree hashes
2007-06-07 19:32:29 -07:00
Brian Warner
4f001bedb3
test_encode.py: further refactoring of send_and_recover
2007-06-07 18:36:25 -07:00
Brian Warner
c7160af7ee
test_encode.py: refactor send_and_recover a bit
2007-06-07 18:24:26 -07:00
Brian Warner
8907e04ef5
client.py: allow operation without vdrive.furl, for storage-only no-UI nodes
2007-06-07 17:55:49 -07:00
Brian Warner
59f4a5abe8
client.py: use persistent FURLs for our Node, to reduce spurious connection attempts ( #26 )
2007-06-07 15:32:21 -07:00
Brian Warner
f3846da4ab
encode.py: hush pyflakes warnings
2007-06-07 13:18:55 -07:00
Brian Warner
b2caf7fb9a
encode/download: reduce memory footprint by deleting large intermediate buffers as soon as possible, improve hash tree usage
2007-06-07 13:15:58 -07:00
Brian Warner
c81f2b01ff
encode.py: fix generation of plaintext/crypttext merkle trees
2007-06-07 13:14:14 -07:00
Brian Warner
a383c17444
hashtree.BadHashError: mention which leaf caused the problem
2007-06-07 12:38:22 -07:00
Brian Warner
2db17df833
iputil.get_local_ip_for: tolerate running on a disconnected host
2007-06-07 19:23:33 -07:00
Brian Warner
e04ff3adac
fetch plaintext/crypttext merkle trees during download, but don't check the segments against them yet
2007-06-07 00:15:41 -07:00
Brian Warner
fae4e8f9a3
download.py: refactor get-thingA-from-somebody to reuse the logic for other things
2007-06-06 23:50:02 -07:00
Brian Warner
dcf5abb51c
encode.py: fix pyflakes warning
2007-06-07 02:56:16 -07:00
Brian Warner
5cbdc240e2
encode: add plaintext/crypttext merkle trees to the shares, and the thingA block. Still needs tests and download-side verification.
2007-06-06 19:40:20 -07:00
Brian Warner
208a932d10
runner.py: allow --multiple to enable starting/stopping/creating multiple nodes at once
2007-06-06 14:06:57 -07:00
robk-org
0bcf29fba4
log a prominent warning message in the case that the introducer cannot be reached
2007-06-04 18:48:53 -07:00
robk-org
7c479ba8a7
catch failures in startService() and abort process
2007-06-04 18:46:37 -07:00
robk-org
92395125fa
add a missing up-call in introducer.startService()
2007-06-04 18:45:40 -07:00
robk-org
03e9b0d4d7
change the 'ez_setup.py' script to have distinct desired & minimum required versions of setuptools
...
and change zfec/setup.py's invocation of ez_setup to require 0.6a9 (which happens to be the default
version installed by apt-get on dapper machines) while leaving the default (desired) version at 0.6c5
2007-06-06 12:49:03 -07:00
Brian Warner
f4c048bbeb
encode.py: clean up handling of lost peers during upload, add some logging
2007-06-06 12:40:16 -07:00
Brian Warner
daa4c32381
runner.py: allow all directory-using commands (create/start/stop) to accept argv[-1] as well as --basedir
2007-06-06 11:37:19 -07:00
Brian Warner
e5fdf0daca
bin/allmydata-tahoe: also update PYTHONPATH so that child processes (like twistd) will work
2007-06-06 11:36:48 -07:00
Brian Warner
3c0485204e
bin/allmydata-tahoe: add a sys.path-modifying preamble to make it easy to run from source
2007-06-06 11:24:00 -07:00
Brian Warner
6bb9debc16
encode: tolerate lost peers, as long as we still get enough shares out. Closes #17 .
2007-06-06 10:32:40 -07:00
Brian Warner
fcd7842ff2
roadmap.txt: minor cleanups
2007-06-06 09:49:42 -07:00
Brian Warner
0e3358e508
README: mention strports-ness of NODE/webport, closes #55
2007-06-06 09:49:18 -07:00
Brian Warner
3dfd26970b
move validation data to thingA, URI has storage_index plus thingA hash
...
This (compatibility-breaking) change moves much of the validation data and
encoding parameters out of the URI and into the so-called "thingA" block
(which will get a better name as soon as we find one we're comfortable with).
The URI retains the "storage_index" (a generalized term for the role that
we're currently using the verifierid for, the unique index for each file
that gets used by storage servers to decide which shares to return), the
decryption key, the needed_shares/total_shares counts (since they affect
peer selection), and the hash of the thingA block.
This shortens the URI and lets us add more kinds of validation data without
growing the URI (like plaintext merkle trees, to enable strong incremental
plaintext validation), at the cost of maybe 150 bytes of alacrity. Each
storage server holds an identical copy of the thingA block.
This is an incompatible change: new messages have been added to the storage
server interface, and the URI format has changed drastically.
2007-06-01 18:48:01 -07:00
Brian Warner
d1d7cdd859
node.py: multi-class exception calls need parentheses
2007-05-31 18:32:21 -07:00
Brian Warner
7124f94461
download.py: refactor bucket_failed() a bit, add some docs
2007-05-31 18:31:36 -07:00
Brian Warner
edaed9c32c
test_system.py: minor reformatting
2007-05-31 18:31:01 -07:00
Brian Warner
4f0e944087
node.py: add logging of startup/shutdown, for the cygwin test_system failure
2007-05-31 13:44:22 -07:00
Brian Warner
8875adf807
test_system.py: add a log message to help track down the occasional cygwin failure
2007-05-31 12:01:14 -07:00
Brian Warner
1160c1def2
node.py: log twisted version along with tahoe/foolscap/zfec versions
2007-05-31 11:21:06 -07:00
Brian Warner
ea78b4b605
check_memory: getting closer, now we have memusage numbers for uploads of 10kB and 10MB files
2007-05-29 17:39:39 -07:00
Zooko O'Whielacronx
04b649f971
switch from FieldStorage.value to FieldStorage.file
...
Unfortunately this doesn't make the O(n) memory usage go away. It might reduce the constants -- I'm not sure. I look forward to enhancement #54 -- memory usage tests!
2007-05-25 16:00:19 -07:00
Zooko O'Whielacronx
763cfc7874
amdlib.util: merge in changes to humanreadable.py that were made in pyutil
2007-05-25 15:49:57 -07:00