Brian Warner [Thu, 7 Jun 2007 20:15:58 +0000 (13:15 -0700)]
encode/download: reduce memory footprint by deleting large intermediate buffers as soon as possible, improve hash tree usage
Brian Warner [Thu, 7 Jun 2007 20:14:14 +0000 (13:14 -0700)]
encode.py: fix generation of plaintext/crypttext merkle trees
Brian Warner [Thu, 7 Jun 2007 19:38:22 +0000 (12:38 -0700)]
hashtree.BadHashError: mention which leaf caused the problem
Brian Warner [Fri, 8 Jun 2007 02:23:33 +0000 (19:23 -0700)]
iputil.get_local_ip_for: tolerate running on a disconnected host
Brian Warner [Thu, 7 Jun 2007 07:15:41 +0000 (00:15 -0700)]
fetch plaintext/crypttext merkle trees during download, but don't check the segments against them yet
Brian Warner [Thu, 7 Jun 2007 06:50:02 +0000 (23:50 -0700)]
download.py: refactor get-thingA-from-somebody to reuse the logic for other things
Brian Warner [Thu, 7 Jun 2007 09:56:16 +0000 (02:56 -0700)]
encode.py: fix pyflakes warning
Brian Warner [Thu, 7 Jun 2007 02:40:20 +0000 (19:40 -0700)]
encode: add plaintext/crypttext merkle trees to the shares, and the thingA block. Still needs tests and download-side verification.
Brian Warner [Wed, 6 Jun 2007 21:06:57 +0000 (14:06 -0700)]
runner.py: allow --multiple to enable starting/stopping/creating multiple nodes at once
robk-org [Tue, 5 Jun 2007 01:48:53 +0000 (18:48 -0700)]
log a prominent warning message in the case that the introducer cannot be reached
robk-org [Tue, 5 Jun 2007 01:46:37 +0000 (18:46 -0700)]
catch failures in startService() and abort process
robk-org [Tue, 5 Jun 2007 01:45:40 +0000 (18:45 -0700)]
add a missing up-call in introducer.startService()
robk-org [Wed, 6 Jun 2007 19:49:03 +0000 (12:49 -0700)]
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
Brian Warner [Wed, 6 Jun 2007 19:40:16 +0000 (12:40 -0700)]
encode.py: clean up handling of lost peers during upload, add some logging
Brian Warner [Wed, 6 Jun 2007 18:37:19 +0000 (11:37 -0700)]
runner.py: allow all directory-using commands (create/start/stop) to accept argv[-1] as well as --basedir
Brian Warner [Wed, 6 Jun 2007 18:36:48 +0000 (11:36 -0700)]
bin/allmydata-tahoe: also update PYTHONPATH so that child processes (like twistd) will work
Brian Warner [Wed, 6 Jun 2007 18:24:00 +0000 (11:24 -0700)]
bin/allmydata-tahoe: add a sys.path-modifying preamble to make it easy to run from source
Brian Warner [Wed, 6 Jun 2007 17:32:40 +0000 (10:32 -0700)]
encode: tolerate lost peers, as long as we still get enough shares out. Closes #17.
Brian Warner [Wed, 6 Jun 2007 16:49:42 +0000 (09:49 -0700)]
roadmap.txt: minor cleanups
Brian Warner [Wed, 6 Jun 2007 16:49:18 +0000 (09:49 -0700)]
README: mention strports-ness of NODE/webport, closes #55
Brian Warner [Sat, 2 Jun 2007 01:48:01 +0000 (18:48 -0700)]
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.
Brian Warner [Fri, 1 Jun 2007 01:32:21 +0000 (18:32 -0700)]
node.py: multi-class exception calls need parentheses
Brian Warner [Fri, 1 Jun 2007 01:31:36 +0000 (18:31 -0700)]
download.py: refactor bucket_failed() a bit, add some docs
Brian Warner [Fri, 1 Jun 2007 01:31:01 +0000 (18:31 -0700)]
test_system.py: minor reformatting
Brian Warner [Thu, 31 May 2007 20:44:22 +0000 (13:44 -0700)]
node.py: add logging of startup/shutdown, for the cygwin test_system failure
Brian Warner [Thu, 31 May 2007 19:01:14 +0000 (12:01 -0700)]
test_system.py: add a log message to help track down the occasional cygwin failure
Brian Warner [Thu, 31 May 2007 18:21:06 +0000 (11:21 -0700)]
node.py: log twisted version along with tahoe/foolscap/zfec versions
Brian Warner [Wed, 30 May 2007 00:39:39 +0000 (17:39 -0700)]
check_memory: getting closer, now we have memusage numbers for uploads of 10kB and 10MB files
Zooko O'Whielacronx [Fri, 25 May 2007 23:00:19 +0000 (16:00 -0700)]
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!
Zooko O'Whielacronx [Fri, 25 May 2007 22:49:57 +0000 (15:49 -0700)]
amdlib.util: merge in changes to humanreadable.py that were made in pyutil
Zooko O'Whielacronx [Fri, 25 May 2007 22:48:01 +0000 (15:48 -0700)]
mark #22 finished in source:roadmap.txt
Brian Warner [Fri, 25 May 2007 00:34:42 +0000 (17:34 -0700)]
check_memory.py: finish the failsafe-shutdown code
Brian Warner [Thu, 24 May 2007 18:20:39 +0000 (11:20 -0700)]
runner.py: spoke too soon. Really fix #51 this time.
Brian Warner [Thu, 24 May 2007 18:10:19 +0000 (11:10 -0700)]
runner.py: expanduser() basedirs, so '~' works. Closes #51.
Brian Warner [Thu, 24 May 2007 01:12:42 +0000 (18:12 -0700)]
.darcs-boringfile: ignore the buildbot's source-stampfile
Brian Warner [Thu, 24 May 2007 00:57:48 +0000 (17:57 -0700)]
makefile: add a test-clean target
Brian Warner [Thu, 24 May 2007 00:55:04 +0000 (17:55 -0700)]
test_node.py: hush pyflakes warnings
Brian Warner [Thu, 24 May 2007 00:54:48 +0000 (17:54 -0700)]
node.py: hush pyflakes warnings
Brian Warner [Thu, 24 May 2007 00:51:28 +0000 (17:51 -0700)]
makefile: add a test-darcs-boringfile target
Brian Warner [Thu, 24 May 2007 00:37:20 +0000 (17:37 -0700)]
test_introducer_and_vdrive: remove the assumption that startService returns a Deferred
Brian Warner [Thu, 24 May 2007 00:25:49 +0000 (17:25 -0700)]
test_system.py: check size in web-ui display. closes #37
Zooko O'Whielacronx [Wed, 23 May 2007 22:11:23 +0000 (15:11 -0700)]
add in-line doc that Josh wrote as he was trying to understand this code
Zooko O'Whielacronx [Wed, 23 May 2007 22:08:55 +0000 (15:08 -0700)]
add unit test for "advertised_ip_addresses" feature and fix bug in that feature uncovered by this unit test
Zooko O'Whielacronx [Wed, 23 May 2007 22:08:03 +0000 (15:08 -0700)]
make stopService() defer until startService() completes (fixes a problem with the new not-yet-committed unit test)
Zooko O'Whielacronx [Wed, 23 May 2007 22:01:49 +0000 (15:01 -0700)]
fix one last use of "--root" in building which was corrupting the pathnames in .pyc files
Brian Warner [Wed, 23 May 2007 19:48:52 +0000 (12:48 -0700)]
node.py: use 'node.pem' for all nodes
Rather than use separate client.pem and introducer.pem files, use 'node.pem'
for all nodes regardless of what type it is. This is slightly cleaner, but
introduces a compatibility. Users who upgrade to this change should do
'mv client.pem node.pem' to avoid generating a new certificate and thus
changing their TubID.
Brian Warner [Wed, 23 May 2007 19:41:23 +0000 (12:41 -0700)]
node.py: use Tub's certFile= argument instead of doing it ourselves
Zooko O'Whielacronx [Tue, 22 May 2007 21:08:30 +0000 (14:08 -0700)]
rename all "*PBURL*" to "*FURL*"
This breaks backwards compatibility with Tahoe v0.2 -- the first public release of Tahoe.
Zooko O'Whielacronx [Tue, 22 May 2007 21:06:37 +0000 (14:06 -0700)]
refactor iputil and make it return addresses in descending order of goodness instead of in a set
Actually of course iputil can't tell exactly how good they are, and a wise user
of iputil will try all of them. But you can't try all of them simultaneously,
so you might as well try the best ones first.
Zooko O'Whielacronx [Tue, 22 May 2007 21:06:00 +0000 (14:06 -0700)]
don't check for existence of portnum file and then try to open it -- instead try to open it and catch exception
This avoids a race condition, also known as time-of-check-to-time-of-use.
Zooko O'Whielacronx [Tue, 22 May 2007 21:04:16 +0000 (14:04 -0700)]
don't test for existence of certfile and then try to open it -- instead try to open it and catch exception
This avoids a race condition, also known as time-of-check-to-time-of-use.
Zooko O'Whielacronx [Tue, 22 May 2007 21:01:40 +0000 (14:01 -0700)]
fix handling of local_ip file and rename it to advertised_ip_addresses and document it in README
Zooko O'Whielacronx [Tue, 22 May 2007 20:59:17 +0000 (13:59 -0700)]
raise constraint on FURLs from 150 chars to 1000 chars
Brian Warner [Wed, 23 May 2007 18:18:49 +0000 (11:18 -0700)]
change uri-packer-unpacker to deal with dictionaries, not fragile tuples
Zooko O'Whielacronx [Mon, 21 May 2007 20:42:51 +0000 (13:42 -0700)]
update docs, remove extraneous licence text, sort module names in import statement
closes #46 ?
Zooko O'Whielacronx [Mon, 21 May 2007 19:19:39 +0000 (12:19 -0700)]
add roadmap element: XML-RPC interface
as per ticket #48
http://allmydata.org/trac/tahoe/ticket/48
Zooko O'Whielacronx [Mon, 21 May 2007 17:47:14 +0000 (10:47 -0700)]
don't use --root, instead use --single-version-externally-managed
fixes #35
Brian Warner [Wed, 16 May 2007 19:02:58 +0000 (12:02 -0700)]
make-version.py: remove the strip-until-<changelog> workaround
Brian Warner [Wed, 16 May 2007 18:57:20 +0000 (11:57 -0700)]
make-version.py: use 'subprocess' module instead of 'commands', to improve windows compatibility
Zooko O'Whielacronx [Wed, 16 May 2007 15:40:19 +0000 (08:40 -0700)]
enable private upload, in which the file is inserted at the grid layer but not at the vdrive layer
This patch is actually by Faried Nawaz, as per ticket #33:
http://allmydata.org/trac/tahoe/ticket/33
Brian Warner [Wed, 16 May 2007 01:13:02 +0000 (18:13 -0700)]
README: mention the additional included libraries (zfec, foolscap, pycrypto)
Brian Warner [Wed, 16 May 2007 00:33:52 +0000 (17:33 -0700)]
update to foolscap-0.1.4
Brian Warner [Wed, 16 May 2007 00:10:42 +0000 (17:10 -0700)]
make-version.py: accomodate windows by ignoring the junk that appears at the start of 'darcs changes'
Zooko O'Whielacronx [Wed, 16 May 2007 15:34:33 +0000 (08:34 -0700)]
update README concerning dependent libraries that the user has to install
Brian Warner [Tue, 8 May 2007 02:10:24 +0000 (19:10 -0700)]
UNDO: forget about old peers (closes #26)
Add a new method to RIIntroducer, to allow the central introducer node to
remove peers from the active set after they've gone away. Without this,
client nodes accumulate stale peer FURLs forever. This introduces a
compatibility break, as old introducers won't know about the 'lost_peers'
message, although the errors produced are probably harmless.
Brian Warner [Tue, 8 May 2007 02:10:24 +0000 (19:10 -0700)]
forget about old peers (closes #26)
Add a new method to RIIntroducer, to allow the central introducer node to
remove peers from the active set after they've gone away. Without this,
client nodes accumulate stale peer FURLs forever. This introduces a
compatibility break, as old introducers won't know about the 'lost_peers'
message, although the errors produced are probably harmless.
Zooko O'Whielacronx [Wed, 9 May 2007 23:04:05 +0000 (16:04 -0700)]
manually merge recent changes to pyutil's copy of "version.py" with allmydata's copy of "version.py"
Zooko O'Whielacronx [Wed, 9 May 2007 17:50:48 +0000 (10:50 -0700)]
zfec: disable the feature of leaving unit test tmp dirs lying around for post-mortem analysis
fixes #41 in the allmydata.org trac
http://allmydata.org/trac/tahoe/ticket/41
Zooko O'Whielacronx [Sun, 6 May 2007 21:26:42 +0000 (14:26 -0700)]
fix typo in CREDITS file
Zooko O'Whielacronx [Sun, 6 May 2007 21:11:43 +0000 (14:11 -0700)]
add CREDITS file where people who contribute source code, docs, web page updates, etc., are recorded
Brian Warner [Sat, 5 May 2007 00:00:18 +0000 (17:00 -0700)]
do not include foolscap or zfec coverage in the figleaf reports for the moment: they have their own test suites
Faried Nawaz [Fri, 4 May 2007 20:07:32 +0000 (13:07 -0700)]
display file size in directory.xhtml
Brian Warner [Fri, 4 May 2007 07:45:23 +0000 (00:45 -0700)]
test_introducer.py: turn off the defer.setDebugging(True) call that was left over from a troubleshooting session: it slows down the test suite by a factor of 2
Brian Warner [Fri, 4 May 2007 07:07:06 +0000 (00:07 -0700)]
add deb-etch target, rearrange make-version a bit, closes #23
Zooko O'Whielacronx [Fri, 4 May 2007 17:06:01 +0000 (10:06 -0700)]
add link to ticket #36 -- FUSE integration
Zooko O'Whielacronx [Fri, 4 May 2007 05:57:52 +0000 (22:57 -0700)]
add link to ticket #34 -- disk space limits in storage servers
Brian Warner [Fri, 4 May 2007 04:12:15 +0000 (21:12 -0700)]
makefile: delete .pycs before running tests, since our build process puts the wrong filenames into them
Brian Warner [Fri, 4 May 2007 03:31:51 +0000 (20:31 -0700)]
.darcs-boringfile: ignore some build/ directories for foolscap and zfec
Brian Warner [Fri, 4 May 2007 03:31:27 +0000 (20:31 -0700)]
version.py: handle both '0.2.0' and '0.2.0-1', remove 'tags' for now
Brian Warner [Fri, 4 May 2007 03:14:07 +0000 (20:14 -0700)]
update version-number handling, pull release tags from darcs history
Brian Warner [Fri, 4 May 2007 02:42:20 +0000 (19:42 -0700)]
TAG allmydata-tahoe-0.2.0
Zooko O'Whielacronx [Wed, 2 May 2007 23:23:23 +0000 (16:23 -0700)]
tahoe v0.2.0-0-UNSTABLE
Zooko O'Whielacronx [Wed, 2 May 2007 22:31:05 +0000 (15:31 -0700)]
bump test timeout even higher
It does indeed take longer than 2400 seconds to run test_upload_and_download on a virtual windows machine when the underlying real machine is heavily loaded down with filesystem analysis runs...
Brian Warner [Wed, 2 May 2007 22:20:40 +0000 (15:20 -0700)]
import foolscap-0.1.3
Zooko O'Whielacronx [Wed, 2 May 2007 22:25:49 +0000 (15:25 -0700)]
TAG zfec v1.0.0
Zooko O'Whielacronx [Wed, 2 May 2007 22:25:41 +0000 (15:25 -0700)]
zfec: v1.0.0
Zooko O'Whielacronx [Wed, 2 May 2007 20:52:11 +0000 (13:52 -0700)]
fix small typo in relnotes.txt
Zooko O'Whielacronx [Wed, 2 May 2007 20:06:14 +0000 (13:06 -0700)]
small edit to target market
Zooko O'Whielacronx [Wed, 2 May 2007 19:54:26 +0000 (12:54 -0700)]
re-re-factored the download and install instructions
Now the instructions about how to download debian packages live on a separate
page of the wiki instead of on the front page or in the README. The README is
only about building from source. The front page contains pointers to those two
other pages (the debiandownloadpage and the README).
Brian Warner [Wed, 2 May 2007 18:55:47 +0000 (11:55 -0700)]
import new foolscap snapshot, still 0.1.2+ but very close to 0.1.3 . This version is fully compatible with the previous 0.1.2+ snapshot
Zooko O'Whielacronx [Wed, 2 May 2007 06:42:01 +0000 (23:42 -0700)]
fix the TESTING THAT IT IS PROPERLY INSTALLED section
My oh-so-useful test subject here skipped that section because he thought it was part of a section that he was finished with.
Zooko O'Whielacronx [Wed, 2 May 2007 06:38:39 +0000 (23:38 -0700)]
fix README on how to install The Debian Way
Zooko O'Whielacronx [Wed, 2 May 2007 06:16:06 +0000 (23:16 -0700)]
clarify instructions on how to get build dependencies for debian
My test subject here didn't used "locate" to find something named
"debian/control" somewhere on his filesystem... :-)
Zooko O'Whielacronx [Wed, 2 May 2007 06:11:05 +0000 (23:11 -0700)]
move the debian packaging dependencies to the place where they are needed in the README
Zooko O'Whielacronx [Wed, 2 May 2007 05:52:40 +0000 (22:52 -0700)]
add warning that "make test" can take a long time
Zooko O'Whielacronx [Wed, 2 May 2007 05:44:33 +0000 (22:44 -0700)]
fix error in README about windows builds
Zooko O'Whielacronx [Wed, 2 May 2007 05:40:24 +0000 (22:40 -0700)]
two more fixes for README
Zooko O'Whielacronx [Wed, 2 May 2007 05:37:35 +0000 (22:37 -0700)]
add another note about where to run "make"
Zooko O'Whielacronx [Wed, 2 May 2007 05:34:33 +0000 (22:34 -0700)]
make big distinction between downloading precompiled packages and building yourself
Both of my two test subjects here stumbled on this by thinking that building on debian was related to building debian packages was related to downloading precompiled packages.
Zooko O'Whielacronx [Wed, 2 May 2007 05:11:49 +0000 (22:11 -0700)]
tweak README to be more helpful about a small detail