Brian Warner [Fri, 30 Mar 2007 20:20:01 +0000 (13:20 -0700)]
add new test for doing an encode/decode round trip, and make it almost work
Brian Warner [Fri, 30 Mar 2007 19:36:16 +0000 (12:36 -0700)]
uri.py: share counts are not base32-encoded
Brian Warner [Fri, 30 Mar 2007 19:30:14 +0000 (12:30 -0700)]
upload: change _compute_uri a bit, get infile in a different way
Brian Warner [Fri, 30 Mar 2007 18:53:03 +0000 (11:53 -0700)]
switch upload to use encode_new, fix a few things (but not nearly all of them)
Brian Warner [Fri, 30 Mar 2007 18:32:57 +0000 (11:32 -0700)]
test_encode: make sure encode_new can produce the data it is supposed to
Brian Warner [Fri, 30 Mar 2007 18:32:47 +0000 (11:32 -0700)]
chunk.py: remove unused non-tagged hash code
Brian Warner [Fri, 30 Mar 2007 18:32:13 +0000 (11:32 -0700)]
encode_new: use tagged (sha256) hashes everywhere
Zooko O'Whielacronx [Fri, 30 Mar 2007 19:12:23 +0000 (12:12 -0700)]
import fileutil, some of which came from amdlib.util and some of which came from the pyutil library
Zooko O'Whielacronx [Fri, 30 Mar 2007 17:52:19 +0000 (10:52 -0700)]
finish storage server and write new download
Zooko O'Whielacronx [Fri, 30 Mar 2007 17:52:11 +0000 (10:52 -0700)]
TODOs
Zooko O'Whielacronx [Fri, 30 Mar 2007 03:19:52 +0000 (20:19 -0700)]
new upload and storage server
Zooko O'Whielacronx [Fri, 30 Mar 2007 03:19:38 +0000 (20:19 -0700)]
add TODO
Brian Warner [Fri, 30 Mar 2007 02:49:40 +0000 (19:49 -0700)]
chunk.py: fix a pyflakes warning
Brian Warner [Thu, 29 Mar 2007 21:48:42 +0000 (14:48 -0700)]
update feisty packaging
Brian Warner [Thu, 29 Mar 2007 21:36:15 +0000 (14:36 -0700)]
first attempt at adding debian packaging support for ubuntu 'feisty'
Brian Warner [Thu, 29 Mar 2007 21:32:28 +0000 (14:32 -0700)]
node creation: be willing to utilize a pre-existing (but empty) directory
Brian Warner [Thu, 29 Mar 2007 21:31:55 +0000 (14:31 -0700)]
webish: add 'my nodeid' to the page
Zooko O'Whielacronx [Fri, 30 Mar 2007 01:12:35 +0000 (18:12 -0700)]
change HashTree to use new hashutil convenience methods, thus fixing a security flaw
Zooko O'Whielacronx [Fri, 30 Mar 2007 01:11:30 +0000 (18:11 -0700)]
hashutil: convenience methods for tagged and encoded hashes
In various cases, including Merkle Trees, it is useful to tag and encode the inputs to your secure hashes to prevent security flaws due to ambiguous meanings of hash values.
Zooko O'Whielacronx [Thu, 29 Mar 2007 21:01:28 +0000 (14:01 -0700)]
change #!/usr/bin/python to #!/usr/bin/env python
Note that using "whatever version of python the name 'python' maps to in the current shell environment" is more error-prone that specifying which python you mean, such as by executing "/usr/bin/python setup.py" instead of executing "./setup.py". When you build tahoe (by running "make") it will make a copy of bin/allmydata-tahoe in instdir/bin/allmydata-tahoe with the shebang line rewritten to execute the specific version of python that was used when building instead of to execute "/usr/bin/env python".
However, it seems better that the default for lazy people be "whatever 'python' means currently" instead of "whatever 'python' meant to the manufacturer of your operating system".
Brian Warner [Thu, 29 Mar 2007 19:22:41 +0000 (12:22 -0700)]
debian: add python-nevow to the sid dependencies
Brian Warner [Thu, 29 Mar 2007 19:22:14 +0000 (12:22 -0700)]
debian: add python-twisted, python-nevow, python-pyopenssl to the dapper dependencies
Brian Warner [Thu, 29 Mar 2007 19:16:39 +0000 (12:16 -0700)]
fix the sid debian packaging too
Brian Warner [Thu, 29 Mar 2007 19:07:24 +0000 (12:07 -0700)]
probably fix the debian dapper packaging to include pyfec and crypto.. sid still needs to be fixed
Peter Secor [Thu, 29 Mar 2007 19:02:32 +0000 (12:02 -0700)]
tahoe readme - updated to included all packages and clarify text
Brian Warner [Thu, 29 Mar 2007 18:21:17 +0000 (11:21 -0700)]
test_iputil: remove the test that only works on linux, since we're using the cross-unix 'get_local_addresses_async' anyways. This should allow the tests to pass on OS-X
Brian Warner [Thu, 29 Mar 2007 18:16:29 +0000 (11:16 -0700)]
introducer: add some comments about separating nodeid from tubid
Brian Warner [Wed, 28 Mar 2007 22:31:51 +0000 (15:31 -0700)]
hush pyflakes warnings in codec and test_codec
Brian Warner [Wed, 28 Mar 2007 20:30:17 +0000 (13:30 -0700)]
encode_new.py: rearrange methods into the order in which they should be called
Brian Warner [Wed, 28 Mar 2007 19:52:44 +0000 (12:52 -0700)]
update memory-footprint and share-size docs in ICodecEncoder
Zooko O'Whielacronx [Wed, 28 Mar 2007 22:22:51 +0000 (15:22 -0700)]
pyfec: more thanks to Brian
Brian Warner [Wed, 28 Mar 2007 20:09:53 +0000 (13:09 -0700)]
pyfec: fix another error path, combine the type-level docstring with the (hitherto unlinked) init docstring
Brian Warner [Wed, 28 Mar 2007 19:53:12 +0000 (12:53 -0700)]
pyfec: fix some error-checking, add more unit tests
Brian Warner [Wed, 28 Mar 2007 18:31:31 +0000 (11:31 -0700)]
document a proposed IDecoder interface, still pretty bare-bones
Brian Warner [Wed, 28 Mar 2007 18:24:53 +0000 (11:24 -0700)]
document IEncoder, add Encoder.set_landlords()
Brian Warner [Wed, 28 Mar 2007 18:06:19 +0000 (11:06 -0700)]
encode_new.py: add comments, make variable names more illuminating
Brian Warner [Wed, 28 Mar 2007 17:48:29 +0000 (10:48 -0700)]
added a README explaining how to get started and what library dependencies are needed
Zooko O'Whielacronx [Wed, 28 Mar 2007 07:06:03 +0000 (00:06 -0700)]
remove left-over early encode mechanism
Zooko O'Whielacronx [Wed, 28 Mar 2007 07:05:16 +0000 (00:05 -0700)]
switch to pyfec
Zooko O'Whielacronx [Wed, 28 Mar 2007 06:53:32 +0000 (23:53 -0700)]
pyfec: correctly handle wrongly typed input by raising exception
Zooko O'Whielacronx [Wed, 28 Mar 2007 05:57:15 +0000 (22:57 -0700)]
fix test_codec and test_upload to handle current API
Zooko O'Whielacronx [Wed, 28 Mar 2007 05:56:45 +0000 (22:56 -0700)]
pyfec: fix bug in easyfec
Zooko O'Whielacronx [Wed, 28 Mar 2007 03:14:30 +0000 (20:14 -0700)]
pyfec: add easyfec wrapper which takes a single string and splits it into input shares and pads, then passes it on to the inner fec object
Zooko O'Whielacronx [Wed, 28 Mar 2007 03:14:06 +0000 (20:14 -0700)]
pyfec: add documentation, assertion, licence information
Zooko O'Whielacronx [Wed, 28 Mar 2007 01:18:39 +0000 (18:18 -0700)]
pyfec: add benchmark measurement on my cool new MacBook Pro
Brian Warner [Wed, 28 Mar 2007 05:17:31 +0000 (22:17 -0700)]
update ReplicatingEncoder and decoder to match the current ICodecEncoder/decoder interface
Brian Warner [Wed, 28 Mar 2007 03:14:45 +0000 (20:14 -0700)]
ICodecEncoder: resolve some questions about the API, still more to examine
Brian Warner [Wed, 28 Mar 2007 02:05:09 +0000 (19:05 -0700)]
update the docs on ICodecEncoder and ICodecDecoder
Brian Warner [Wed, 28 Mar 2007 00:44:49 +0000 (17:44 -0700)]
fix some python2.5 incompatibilities, and remove an old webish display that suggested we might know about peers but not be connected to them
Zooko O'Whielacronx [Wed, 28 Mar 2007 00:42:59 +0000 (17:42 -0700)]
add verbosity option to bench
Brian Warner [Wed, 28 Mar 2007 00:16:13 +0000 (17:16 -0700)]
test_introducer: flushEventualQueue at the end of the test run
Brian Warner [Tue, 27 Mar 2007 23:12:11 +0000 (16:12 -0700)]
complete the Introducer changes, separate out vdrive access, make everything work again
Zooko O'Whielacronx [Wed, 7 Mar 2007 07:30:17 +0000 (00:30 -0700)]
add link to mailing list
Peter Secor [Wed, 7 Mar 2007 06:29:08 +0000 (23:29 -0700)]
pyfec repository description of how to download the code via darcs
Zooko O'Whielacronx [Fri, 23 Mar 2007 23:20:26 +0000 (16:20 -0700)]
merge incomplete stuff with other patches
Zooko O'Whielacronx [Fri, 23 Mar 2007 23:15:57 +0000 (16:15 -0700)]
incomplete work to be finished elsewhere
Brian Warner [Fri, 23 Mar 2007 05:22:00 +0000 (22:22 -0700)]
hush a pyflakes warning
Zooko O'Whielacronx [Thu, 22 Mar 2007 21:39:30 +0000 (14:39 -0700)]
separate queen's service of introduction-to-the-network from queen's service of providing-access-to-the-vdrive
Brian Warner [Mon, 12 Mar 2007 23:28:37 +0000 (16:28 -0700)]
more work on a memory-footprint test program
Brian Warner [Fri, 9 Mar 2007 01:12:24 +0000 (18:12 -0700)]
start work on a memory-measuring test tool
Brian Warner [Fri, 9 Mar 2007 00:54:38 +0000 (17:54 -0700)]
add test-pyfec target, not added to the main 'test' target because it adds 20 seconds to the test run
Brian Warner [Fri, 9 Mar 2007 00:30:09 +0000 (17:30 -0700)]
test_system.py: remove the lowered (20s) timeouts, since some buildslaves require more like 30 or 40 seconds to complete the test
Brian Warner [Thu, 8 Mar 2007 23:13:14 +0000 (16:13 -0700)]
test_observer: improve test coverage
Brian Warner [Thu, 8 Mar 2007 22:28:13 +0000 (15:28 -0700)]
Makefile: add an upload-figleaf target, rather than having the buildbot create the rsync command itself
Brian Warner [Thu, 8 Mar 2007 22:12:52 +0000 (15:12 -0700)]
node.py: switch to using get_local_addresses_async, which is slightly more portable (most forms of unix)
Brian Warner [Thu, 8 Mar 2007 22:10:36 +0000 (15:10 -0700)]
rearrange service startup a bit, now Node.startService() returns a Deferred that fires when the tub is actually ready, and there is also a Node.when_tub_ready() hook. This allows get_local_addresses() to be slow and not break everything. Changed all necessary test cases to accomodate this slow startup.
Brian Warner [Thu, 8 Mar 2007 22:09:29 +0000 (15:09 -0700)]
test_observer.py: remove the code that allows observers to run out-of-order, our use of foolscap.eventual removes this error case
Brian Warner [Thu, 8 Mar 2007 22:07:38 +0000 (15:07 -0700)]
add OneShotObserverList from the amdlib tree
Brian Warner [Thu, 8 Mar 2007 03:31:49 +0000 (20:31 -0700)]
control.py: fix get_memory_usage, add a sample client tool
Brian Warner [Thu, 8 Mar 2007 03:03:47 +0000 (20:03 -0700)]
iputil: switch to a scapy-inspired SIOCGIFADDR approach, very linux-specific now
Brian Warner [Thu, 8 Mar 2007 02:29:00 +0000 (19:29 -0700)]
iputil: use the subprocess module instead of os.popen
Brian Warner [Thu, 8 Mar 2007 02:20:27 +0000 (19:20 -0700)]
control: add RIControlClient, fix some pyflakes warnings
Brian Warner [Thu, 8 Mar 2007 02:16:06 +0000 (19:16 -0700)]
add a local foolscap control interface, to upload/download files and check memory usage
Brian Warner [Thu, 8 Mar 2007 01:47:40 +0000 (18:47 -0700)]
iputil: use explicit /sbin/ifconfig, to avoid depending upon PATH
Brian Warner [Thu, 8 Mar 2007 01:43:17 +0000 (18:43 -0700)]
change node startup to put all local addresses in the PBURL, including 127.0.0.1. This should facilitate testing on both connected and disconnected systems.
Brian Warner [Thu, 8 Mar 2007 01:22:30 +0000 (18:22 -0700)]
iputil: add get_local_addresses(), an attempt to enumerate all IPv4 addresses on this host. This is pretty unix-specific for right now (it calls ifconfig)
Brian Warner [Thu, 8 Mar 2007 01:21:42 +0000 (18:21 -0700)]
util.iputil: try to survive not having a global network connection at all
Brian Warner [Tue, 6 Mar 2007 03:57:38 +0000 (20:57 -0700)]
add some questions to allmydata.interfaces
Brian Warner [Tue, 6 Mar 2007 02:46:06 +0000 (19:46 -0700)]
Makefile: update figleaf code to use INSTDIR instead of now-obsolete builddir.py
Brian Warner [Fri, 2 Feb 2007 23:45:45 +0000 (16:45 -0700)]
dummy line to show off buildbot
Brian Warner [Fri, 2 Feb 2007 00:13:01 +0000 (17:13 -0700)]
hush pyflakes warnings
Zooko O'Whielacronx [Thu, 1 Feb 2007 23:30:13 +0000 (16:30 -0700)]
update the use of the encoder API in download.py
Zooko O'Whielacronx [Thu, 1 Feb 2007 23:07:07 +0000 (16:07 -0700)]
fix purely syntactic merge conflict
Zooko O'Whielacronx [Thu, 1 Feb 2007 23:07:00 +0000 (16:07 -0700)]
use pyfec instead of py_ecc for erasure coding and update API to codec
Zooko O'Whielacronx [Thu, 1 Feb 2007 22:55:26 +0000 (15:55 -0700)]
add mathutil.next_power_of_k() and mathutil.ave()
Zooko O'Whielacronx [Thu, 1 Feb 2007 22:49:52 +0000 (15:49 -0700)]
"make clean" recursively runs cleanup in subprojects (pyfec and Crypto)
Zooko O'Whielacronx [Thu, 1 Feb 2007 22:52:35 +0000 (15:52 -0700)]
pyfec: version number bump to v0.99
Zooko O'Whielacronx [Thu, 1 Feb 2007 22:49:15 +0000 (15:49 -0700)]
pyfec: add ACK and TODO
Zooko O'Whielacronx [Thu, 1 Feb 2007 17:37:48 +0000 (10:37 -0700)]
pyfec: add TODO
Zooko O'Whielacronx [Thu, 1 Feb 2007 17:28:46 +0000 (10:28 -0700)]
pyfec: fix typo in unit test
Zooko O'Whielacronx [Thu, 1 Feb 2007 07:03:25 +0000 (00:03 -0700)]
pyfec: fix preconditions and typing, remove unused error-checking, tidy-up naming and documentation
Zooko O'Whielacronx [Wed, 31 Jan 2007 20:54:20 +0000 (13:54 -0700)]
pyfec: licensing tweak
Brian Warner [Thu, 1 Feb 2007 10:39:13 +0000 (03:39 -0700)]
Makefile: $(PWD) doesn't always work, in particular the buildslaves don't
update environment variables like $(PWD) when the launch commands.
Brian Warner [Thu, 1 Feb 2007 02:12:33 +0000 (19:12 -0700)]
Makefile: parameterize 'trial' and 'python' to enable a python2.5 builder
Brian Warner [Wed, 31 Jan 2007 01:10:37 +0000 (18:10 -0700)]
Makefile: count-lines: ignore build/* files, also add total number of .py files
Brian Warner [Wed, 31 Jan 2007 01:03:45 +0000 (18:03 -0700)]
add new build/instdir directories to the boringfile
Zooko O'Whielacronx [Tue, 30 Jan 2007 23:33:05 +0000 (16:33 -0700)]
rename Crypto to allmydata.Crypto
This kind of makes me think that there is a general principle that things
shouldn't know their own names. After all, a name is what *other* people use
to refer to you. And in the general case, some other people might refer to you
in ways incompatible with the ways that other people refer to you.
Zooko O'Whielacronx [Tue, 30 Jan 2007 23:32:52 +0000 (16:32 -0700)]
cleanup new "instdir" on "make clean"
Zooko O'Whielacronx [Tue, 30 Jan 2007 22:58:45 +0000 (15:58 -0700)]
pyfec: make it compatible with Python 2.4 as well as Python 2.5
Zooko O'Whielacronx [Tue, 30 Jan 2007 19:08:46 +0000 (12:08 -0700)]
pyfec: silence compiler warnings, add -Wall to debugmode compilation