Brian Warner [Sat, 11 Jun 2011 19:02:34 +0000 (12:02 -0700)]
Rename test_package_initialization.py to (much shorter) test_import.py .
The former name was making my 'ls' listings hard to read, by forcing them
down to just two columns.
Zooko O'Whielacronx [Sat, 11 Jun 2011 16:37:41 +0000 (09:37 -0700)]
tests: fix tests to accomodate [
20110611153758-92b7f-
0ba5e4726fb6318dac28fb762a6512a003f4c430]
Apparently none of the two authors (stercor, terrell), three reviewers (warner, davidsarah, terrell), or one committer (me) actually ran the tests. This is presumably due to #20.
fixes #1412
Zooko O'Whielacronx [Sat, 11 Jun 2011 15:37:58 +0000 (08:37 -0700)]
wui: right-align the size column in the WUI
Thanks to Ted "stercor" Rolle Jr. and Terrell Russell.
fixes #1412
Zooko O'Whielacronx [Fri, 10 Jun 2011 12:16:56 +0000 (05:16 -0700)]
docs: three minor fixes
CREDITS for arc for stats tweak
fix link to .zip file in quickstart.rst (thanks to ChosenOne for noticing)
English usage tweak
david-sarah [Thu, 9 Jun 2011 22:37:19 +0000 (15:37 -0700)]
docs/running.rst: fix stray HTML (not .rst) link noticed by ChosenOne.
wilcoxjg [Fri, 27 May 2011 12:01:35 +0000 (05:01 -0700)]
server.py: get_latencies now reports percentiles _only_ if there are sufficient observations for the interpretation of the percentile to be unambiguous.
interfaces.py: modified the return type of RIStatsProvider.get_stats to allow for None as a return value
NEWS.rst, stats.py: documentation of change to get_latencies
stats.rst: now documents percentile modification in get_latencies
test_storage.py: test_latencies now expects None in output categories that contain too few samples for the associated percentile to be unambiguously reported.
fixes #1392
secorp [Mon, 25 Apr 2011 01:03:08 +0000 (18:03 -0700)]
corrected "k must never be smaller than N" to "k must never be greater than N"
david-sarah [Tue, 17 May 2011 01:12:14 +0000 (18:12 -0700)]
docs: revert link in relnotes.txt from NEWS.rst to NEWS, since the former did not exist at revision 5000.
david-sarah [Tue, 17 May 2011 01:02:55 +0000 (18:02 -0700)]
docs: convert NEWS to NEWS.rst and change all references to it.
david-sarah [Thu, 12 May 2011 14:05:59 +0000 (07:05 -0700)]
docs: remove out-of-date docs/testgrid/introducer.furl and containing directory. fixes #1404
david-sarah [Sun, 30 Jan 2011 17:49:23 +0000 (10:49 -0700)]
scripts/common.py: don't assume that the default alias is always 'tahoe' (it is, but the API of get_alias doesn't say so). refs #1342
Zooko O'Whielacronx [Fri, 28 Jan 2011 15:20:06 +0000 (08:20 -0700)]
setup: don't catch all Exception from check_requirement(), but only PackagingError and ImportError
I noticed this because I had accidentally inserted a bug which caused AssertionError to be raised from check_requirement().
Zooko O'Whielacronx [Tue, 10 May 2011 19:36:53 +0000 (12:36 -0700)]
M-x whitespace-cleanup
Zooko O'Whielacronx [Tue, 10 May 2011 19:36:33 +0000 (12:36 -0700)]
docs: fix typo in running.rst, thanks to arch_o_median
david-sarah [Fri, 4 Feb 2011 21:49:02 +0000 (14:49 -0700)]
relnotes.txt: don't claim to work on Cygwin (which has been untested for some time). refs #1342
david-sarah [Fri, 4 Feb 2011 21:41:16 +0000 (14:41 -0700)]
relnotes.txt: forseeable -> foreseeable. refs #1342
Zooko O'Whielacronx [Tue, 10 May 2011 19:16:50 +0000 (12:16 -0700)]
replace remaining .html docs with .rst docs
Remove install.html (long since deprecated).
Also replace some obsolete references to install.html with references to quickstart.rst.
Fix some broken internal references within docs/historical/historical_known_issues.txt.
Thanks to Ravi Pinjala and Patrick McDonald.
refs #1227
Zooko O'Whielacronx [Thu, 28 Apr 2011 05:52:32 +0000 (22:52 -0700)]
docs: FTP-and-SFTP.rst: fix a minor error and update the information about which version of Twisted fixes #1297
francois [Thu, 28 Apr 2011 05:53:12 +0000 (22:53 -0700)]
munin tahoe_files plugin: fix incorrect file count
fixes #1391
david-sarah [Mon, 11 Apr 2011 19:07:38 +0000 (12:07 -0700)]
Fix a test failure in test_package_initialization on Python 2.4.x due to exceptions being stringified differently than in later versions of Python. refs #1389
david-sarah [Sun, 10 Apr 2011 15:58:44 +0000 (08:58 -0700)]
tests: add test for including the ImportError message and traceback entry in the summary of errors from importing dependencies. refs #1389
david-sarah [Sun, 10 Apr 2011 15:57:05 +0000 (08:57 -0700)]
allmydata/__init__.py: preserve the message and last traceback entry (file, line number, function, and source line) of ImportErrors in the package versions string. fixes #1389
Zooko O'Whielacronx [Thu, 7 Apr 2011 17:22:31 +0000 (10:22 -0700)]
remove unused variable detected by pyflakes
david-sarah [Fri, 1 Apr 2011 20:27:50 +0000 (13:27 -0700)]
allmydata/__init__.py: Nicer reporting of unparseable version numbers in dependencies. fixes #1388
Brian Warner [Fri, 25 Mar 2011 23:25:11 +0000 (16:25 -0700)]
update FTP-and-SFTP.rst: the necessary patch is included in Twisted-10.1
Brian Warner [Sun, 27 Feb 2011 02:12:03 +0000 (19:12 -0700)]
control.py: remove all uses of s.get_serverid()
Brian Warner [Sun, 27 Feb 2011 02:11:59 +0000 (19:11 -0700)]
web: remove some uses of s.get_serverid(), not all
Brian Warner [Sun, 27 Feb 2011 02:11:56 +0000 (19:11 -0700)]
immutable/downloader/fetcher.py: remove all get_serverid() calls
Brian Warner [Sun, 27 Feb 2011 02:11:53 +0000 (19:11 -0700)]
immutable/downloader/fetcher.py: fix diversity bug in server-response handling
When blocks terminate (either COMPLETE or CORRUPT/DEAD/BADSEGNUM), the
_shares_from_server dict was being popped incorrectly (using shnum as the
index instead of serverid). I'm still thinking through the consequences of
this bug. It was probably benign and really hard to detect. I think it would
cause us to incorrectly believe that we're pulling too many shares from a
server, and thus prefer a different server rather than asking for a second
share from the first server. The diversity code is intended to spread out the
number of shares simultaneously being requested from each server, but with
this bug, it might be spreading out the total number of shares requested at
all, not just simultaneously. (note that SegmentFetcher is scoped to a single
segment, so the effect doesn't last very long).
Brian Warner [Sun, 27 Feb 2011 02:11:50 +0000 (19:11 -0700)]
immutable/downloader/share.py: reduce get_serverid(), one left, update ext deps
test_download.py: create+check MyShare instances better, make sure they share
Server objects, now that finder.py cares
Brian Warner [Sun, 27 Feb 2011 02:11:46 +0000 (19:11 -0700)]
immutable/downloader/finder.py: reduce use of get_serverid(), one left
Brian Warner [Sun, 27 Feb 2011 02:11:42 +0000 (19:11 -0700)]
immutable/offloaded.py: reduce use of get_serverid() a bit more
Brian Warner [Sun, 27 Feb 2011 02:11:38 +0000 (19:11 -0700)]
immutable/upload.py: reduce use of get_serverid()
Brian Warner [Sun, 27 Feb 2011 02:11:34 +0000 (19:11 -0700)]
immutable/checker.py: remove some uses of s.get_serverid(), not all
Brian Warner [Sun, 27 Feb 2011 02:11:32 +0000 (19:11 -0700)]
add remaining get_* methods to storage_client.Server, NoNetworkServer, and
MockIServer stubs
Brian Warner [Sun, 27 Feb 2011 02:11:28 +0000 (19:11 -0700)]
upload.py: rearrange _make_trackers a bit, no behavior changes
Brian Warner [Sun, 27 Feb 2011 02:11:24 +0000 (19:11 -0700)]
happinessutil.py: finally rename merge_peers to merge_servers
Brian Warner [Sun, 27 Feb 2011 02:11:20 +0000 (19:11 -0700)]
test_upload.py: factor out FakeServerTracker
Brian Warner [Sun, 27 Feb 2011 02:11:15 +0000 (19:11 -0700)]
test_upload.py: server-vs-tracker cleanup
Brian Warner [Sun, 27 Feb 2011 02:11:11 +0000 (19:11 -0700)]
happinessutil.py: server-vs-tracker cleanup
Brian Warner [Sun, 27 Feb 2011 02:11:07 +0000 (19:11 -0700)]
upload.py: more tracker-vs-server cleanup
Brian Warner [Sun, 27 Feb 2011 02:11:03 +0000 (19:11 -0700)]
upload.py: fix var names to avoid confusion between 'trackers' and 'servers'
Brian Warner [Sun, 27 Feb 2011 02:11:00 +0000 (19:11 -0700)]
refactor: s/peer/server/ in immutable/upload, happinessutil.py, test_upload
No behavioral changes, just updating variable/method names and log messages.
The effects outside these three files should be minimal: some exception
messages changed (to say "server" instead of "peer"), and some internal class
names were changed. A few things still use "peer" to minimize external
changes, like UploadResults.timings["peer_selection"] and
happinessutil.merge_peers, which can be changed later.
Brian Warner [Sun, 27 Feb 2011 02:10:56 +0000 (19:10 -0700)]
storage_client.py: clean up test_add_server/test_add_descriptor, remove .test_servers
Brian Warner [Sun, 27 Feb 2011 02:10:51 +0000 (19:10 -0700)]
test_client.py, upload.py:: remove KiB/MiB/etc constants, and other dead code
Zooko O'Whielacronx [Thu, 17 Mar 2011 16:59:09 +0000 (09:59 -0700)]
test: increase timeout on a network test because Francois's ARM machine hit that timeout
I'm skeptical that the test was proceeding correctly but ran out of time. It seems more likely that it had gotten hung. But if we raise the timeout to an even more extravagant number then we can be even more certain that the test was never going to finish.
Brian Warner [Tue, 22 Feb 2011 01:43:23 +0000 (17:43 -0800)]
docs/configuration.rst: add a "Frontend Configuration" section
this points to docs/frontends/*.rst, which were previously underlinked
Brian Warner [Mon, 21 Feb 2011 06:15:44 +0000 (22:15 -0800)]
web/filenode.py: avoid calling req.finish() on closed HTTP connections. Closes #1366
david-sarah [Mon, 21 Feb 2011 01:58:17 +0000 (17:58 -0800)]
Add unit tests for cross_check_pkg_resources_versus_import, and a regression test for ref #1355. This requires a little refactoring to make it testable.
david-sarah [Mon, 21 Feb 2011 02:01:25 +0000 (18:01 -0800)]
allmydata/__init__.py: .name was used in place of the correct .__name__ when printing an exception. Also, robustify string formatting by using %r instead of %s in some places. fixes #1355.
Brian Warner [Mon, 21 Feb 2011 01:58:04 +0000 (17:58 -0800)]
Refactor StorageFarmBroker handling of servers
Pass around IServer instance instead of (peerid, rref) tuple. Replace
"descriptor" with "server". Other replacements:
get_all_servers -> get_connected_servers/get_known_servers
get_servers_for_index -> get_servers_for_psi (now returns IServers)
This change still needs to be pushed further down: lots of code is now
getting the IServer and then distributing (peerid, rref) internally.
Instead, it ought to distribute the IServer internally and delay
extracting a serverid or rref until the last moment.
no_network.py was updated to retain parallelism.
Brian Warner [Mon, 31 Jan 2011 02:01:01 +0000 (18:01 -0800)]
TAG allmydata-tahoe-1.8.2
Brian Warner [Mon, 31 Jan 2011 01:59:45 +0000 (17:59 -0800)]
update docs for the 1.8.2 release
david-sarah [Fri, 28 Jan 2011 06:22:49 +0000 (22:22 -0800)]
SFTP: report unknown sizes as "0" instead of "?", to satisfy some clients. fixes #1337
david-sarah [Fri, 28 Jan 2011 19:24:52 +0000 (11:24 -0800)]
Change tests for check_requirement to ensure that it accepts None in the comment field of a (version, location, comment) triple, and add a test that it raises ImportError when a module couldn't be imported. Also fix typo in a comment. refs #1339
Zooko O'Whielacronx [Mon, 31 Jan 2011 00:04:20 +0000 (16:04 -0800)]
setup: comment out the setup_requires on setuptools_darcs in order to work-around distribute bug 55
Note that we still inject the setuptools_darcs egg at the beginning of setup.py, which makes the setuptools_darcs plugin work when building dists from tahoe-lafs source so those dists have all of the needed files.
http://bitbucket.org/tarek/distribute/issue/55/revision-control-plugin-automatically-installed-as-a-build-dependency-is-not-present-when-another-build-dependency-is-being
Zooko O'Whielacronx [Fri, 28 Jan 2011 15:07:00 +0000 (07:07 -0800)]
docs: edit running.html, change "http://allmydata.org" to "http://tahoe-lafs.org" in NEWS and README.txt, add Josh Wilcox to CREDITS for his contribution of doc patches
Zooko O'Whielacronx [Fri, 28 Jan 2011 14:15:46 +0000 (06:15 -0800)]
setup: adjust tests to use the new interface of check_requirement which has a 3-tuples instead of a 2-tuple
fixes #1339
david-sarah [Fri, 28 Jan 2011 05:41:50 +0000 (21:41 -0800)]
src/allmydata/__init__.py: fix #1339, give an indication in the --version[-and-path] output of when the imported setuptools is distribute, and use a separate element in _vers_and_locs_list tuples for information other than the package name and location. This also changes slightly how the sqlite version is reported.
Brian Warner [Wed, 26 Jan 2011 06:14:31 +0000 (22:14 -0800)]
TAG allmydata-tahoe-1.8.2b1
Brian Warner [Wed, 26 Jan 2011 06:04:39 +0000 (22:04 -0800)]
update NEWS with all significant user-visible changes since last release
david-sarah [Sun, 23 Jan 2011 02:39:55 +0000 (18:39 -0800)]
docs/configuration.rst: fix a typo in the previous correction, and correct another error ('[storage]readonly_storage' should be '[storage]readonly').
david-sarah [Sun, 23 Jan 2011 02:23:04 +0000 (18:23 -0800)]
docs/configuration.rst: correct an error in the Example section ('[helper]run_helper' should be '[helper]enabled').
david-sarah [Sun, 23 Jan 2011 02:00:11 +0000 (18:00 -0800)]
docs/configuration.rst: correct the name of 'tahoe-client.tac' and document other .tac files. Also make the capitalization consistent in that section.
david-sarah [Sun, 23 Jan 2011 01:50:04 +0000 (17:50 -0800)]
CLI: improve help synopsis for 'tahoe create-key-generator'.
david-sarah [Sat, 22 Jan 2011 04:02:20 +0000 (20:02 -0800)]
Don't put debugging information in 'My versions' section of the Welcome page. Also remove the extra blank line between version and command output when --version[-and-path] is used. refs #1306
david-sarah [Sat, 22 Jan 2011 02:47:41 +0000 (18:47 -0800)]
NEWS, docs/quickstart.html: pywin32 is no longer required on Windows. refs #1274
david-sarah [Sat, 22 Jan 2011 02:07:52 +0000 (18:07 -0800)]
Makefile, setup.py: add more source files to pyflakes target and fix their warnings.
david-sarah [Sat, 22 Jan 2011 02:00:51 +0000 (18:00 -0800)]
Remove obsolete and bit-rotted 'setup.py check-auto-deps' command. Building and running bin/tahoe is a more thorough check.
david-sarah [Sat, 22 Jan 2011 01:55:25 +0000 (17:55 -0800)]
Makefile: remove stale commented-out targets for figleaf.
david-sarah [Sat, 22 Jan 2011 01:50:50 +0000 (17:50 -0800)]
misc/build_helpers/run-with-pythonpath.py: fix pyflakes unused import warning.
david-sarah [Sat, 22 Jan 2011 01:45:44 +0000 (17:45 -0800)]
Makefile: remove a stale comment about a bug fixed in Tahoe v1.3.0. refs #455
david-sarah [Sat, 22 Jan 2011 01:42:56 +0000 (17:42 -0800)]
tests: use verlib to compare versions, and get the versions of Twisted and Nevow from get_package_versions() instead of pkg_resources. refs #1287
david-sarah [Sat, 22 Jan 2011 01:40:06 +0000 (17:40 -0800)]
src/allmydata/web/common.py: ensure that filenames in 'humanized failures' are quoted.
david-sarah [Sat, 22 Jan 2011 01:39:13 +0000 (17:39 -0800)]
twisted/allmydata_trial.py: fix stale comment that referred to trial_figleaf.py (replaced with trial_coverage.py).
david-sarah [Sat, 22 Jan 2011 01:27:00 +0000 (17:27 -0800)]
CLI: improve help synopses for some commands.
david-sarah [Sat, 22 Jan 2011 01:24:42 +0000 (17:24 -0800)]
src/allmydata/_auto_deps.py: setuptools is still an install requirement even in frozen builds, because .tac files import pkg_resources. refs #585
david-sarah [Fri, 21 Jan 2011 08:04:29 +0000 (00:04 -0800)]
Make bb-freeze (and probably other static packaging tools) work. This updates various places where we assumed that the tahoe process was executed via the Python interpreter. It also allows tests to recursively invoke the same tahoe.exe, rather than bin/tahoe. refs #585
david-sarah [Fri, 21 Jan 2011 08:03:28 +0000 (00:03 -0800)]
Make 'setup.py trial' and 'setup.py test' pass --version-and-path to bin/tahoe by default.
david-sarah [Fri, 21 Jan 2011 07:59:13 +0000 (23:59 -0800)]
Change --version and --version-and-path to not exit immediately, if a command is given.
david-sarah [Fri, 21 Jan 2011 07:32:34 +0000 (23:32 -0800)]
src/allmydata/_auto_deps.py: 'pysqlite.dbapi2' module should have been 'pysqlite2.dbapi2'. refs #1306
david-sarah [Fri, 21 Jan 2011 07:21:36 +0000 (23:21 -0800)]
src/allmydata/util/iputil.py: correct an error in the address-matching regexps introduced by the previous patch to iputil. refs #1274
Zooko O'Whielacronx [Fri, 21 Jan 2011 05:30:38 +0000 (21:30 -0800)]
setup: increase version number requirement on darcsver from >= 1.7.1 to >= 1.7.2
Zooko O'Whielacronx [Fri, 21 Jan 2011 05:28:38 +0000 (21:28 -0800)]
setup: upgrade bundled version of darcsver from 1.7.1 to 1.7.2 to support the new bbfreeze feature (by, strangely, having darcsver write out unix newlines regardless of what the underlying platform prefers)
david-sarah [Fri, 21 Jan 2011 06:04:49 +0000 (22:04 -0800)]
Add src/allmydata/util/verlib.py, which is a copy of verlib from https://bitbucket.org/tarek/distutilsversion/src/
17df9a7d96ef . It is used to normalize and compare versions of dependencies. refs #1258
david-sarah [Fri, 21 Jan 2011 05:36:10 +0000 (21:36 -0800)]
Refactor _auto_deps.py and __init__.py, adding more robust checking of dependency versions, and not trusting pkg_resources to get the versions right. refs #1258, #1287
david-sarah [Fri, 21 Jan 2011 02:10:11 +0000 (18:10 -0800)]
Apply pyflakes to more files and fix the resulting warnings.
david-sarah [Thu, 20 Jan 2011 08:48:27 +0000 (00:48 -0800)]
src/allmydata/util/iputil.py: loosen regexps and ensure that 'LANG=en_US.UTF-8' is set in the environment, to minimize problems with localized output of IP-address-finding tools. refs #1274
david-sarah [Thu, 20 Jan 2011 04:32:38 +0000 (20:32 -0800)]
Eliminate dependencies on pywin32, even via Twisted. refs #1274
david-sarah [Wed, 19 Jan 2011 23:44:29 +0000 (15:44 -0800)]
Makefile: consistently use TAHOE macro to run bin/tahoe. Use '$(TAHOE) debug repl' instead of $(RUNPP) -p. refs #1296
david-sarah [Wed, 19 Jan 2011 23:37:37 +0000 (15:37 -0800)]
Makefile: consistently use 'tahoe debug trial' to run tests. refs #1296
david-sarah [Wed, 19 Jan 2011 23:33:05 +0000 (15:33 -0800)]
setup.py: add descriptions for some of the setup commands. ref #1306
david-sarah [Wed, 19 Jan 2011 23:31:45 +0000 (15:31 -0800)]
setup.py: create bin/tahoe.pyscript on Unix as well as Windows for consistency, and to reduce conditional code. ref #1306
david-sarah [Wed, 19 Jan 2011 08:21:45 +0000 (00:21 -0800)]
src/allmydata/test/test_runner.py: add test_import_from_repl, which checks that we are running the right code in a bin/tahoe subprocess. refs #1258
david-sarah [Wed, 19 Jan 2011 08:19:55 +0000 (00:19 -0800)]
docs/frontends/CLI.rst, src/allmydata/test/trialtest.py: add trailing newlines. refs #1296
david-sarah [Wed, 19 Jan 2011 07:59:11 +0000 (23:59 -0800)]
Eliminate direct dependencies of Tahoe-LAFS on pywin32 (rebased to trunk). refs #1274
david-sarah [Wed, 19 Jan 2011 05:11:37 +0000 (21:11 -0800)]
Add support to bin/tahoe for invoking a runner command prefixed with @, with the Tahoe libraries on the PYTHONPATH. This is documented in 'tahoe debug --help'.
david-sarah [Wed, 19 Jan 2011 06:08:08 +0000 (22:08 -0800)]
trivial: add comment in scripts/debug.py about trial option parsing. refs #1296
david-sarah [Wed, 19 Jan 2011 06:06:39 +0000 (22:06 -0800)]
Update foolscap requirement to >= 0.6.1. fixes #1329
david-sarah [Wed, 19 Jan 2011 04:53:24 +0000 (20:53 -0800)]
bin/tahoe-script.template, src/windows/fixups.py: simplify the method of stripping initial arguments in sys.argv on Windows. This helps with bb-freeze and running tahoe via 'coverage'. Also includes some wording changes and minor refactoring of bin/tahoe-script.template. refs #585, #1303