Mon Jul 2 19:18:47 BST 2012 david-sarah@jacaranda.org
* Failing to load a crawler state pickle uses default values, but the exception clause to detect this failure is too narrow; it can also fail with EOFError or KeyError for example.
Sun Oct 9 05:40:22 BST 2011 david-sarah@jacaranda.org
* check-miscaptures.py: check while loops and list comprehensions as well as for loops. Also fix a pyflakes warning. refs #1555
Sun Oct 9 05:48:00 BST 2011 david-sarah@jacaranda.org
* check-miscaptures.py: Python doesn't really have declarations; report the topmost assignment. refs #1555
Sun Oct 9 05:50:23 BST 2011 david-sarah@jacaranda.org
* check-miscaptures.py: handle corner cases around default arguments correctly. Also make a minor optimization when there are no assigned variables to consider. refs #1555
Sun Oct 9 06:03:01 BST 2011 david-sarah@jacaranda.org
* check-miscaptures.py: report the number of files that were not analysed due to syntax errors (and don't count them in the number of suspicious captures). refs #1555
Fri Oct 7 08:41:21 BST 2011 david-sarah@jacaranda.org
* Add misc/coding_tools/check-miscaptures.py to detect incorrect captures of variables declared in a for loop, and a 'make check-miscaptures' Makefile target to run it. (It is also run by 'make code-checks'.) This is a rewritten version that reports much fewer false positives, by determining captured variables more accurately. fixes #1555
Wed Nov 9 18:36:32 GMT 2011 Brian Warner <warner@lothar.com>
* setup.py: umask=022 for 'sdist', to avoid depending on environment
The new tarball-building buildslave had a bogus umask set, causing the 1.9.0
tarballs to be non-other-user-readable (go-rwx), which is a hassle for
packaging. (The umask was correct on the old buildslave, but it was moved to
a new host shortly before the release). This should make sure tarballs are
correct despite the host's setting.
Note to others: processes run under twistd get umask=077 unless you arrange
otherwise.
Thu Nov 17 22:54:23 GMT 2011 Brian Warner <warner@lothar.com>
* remove remaining uses of nevow's "formless" module
We're slowly moving away from Nevow, and marcusw's previous patch removed
uses of the formless CSS file, so now we can stop testing that nevow can find
that file, and remove the lingering unused "import formless" call.
Fri Nov 18 00:20:13 GMT 2011 david-sarah@jacaranda.org
* docs/known_issues.rst: describe when the unauthorized access attack is known to be possible, and fix a link.
Mon Dec 5 05:50:49 GMT 2011 Brian Warner <warner@lothar.com>
* setup.py: stop putting pyutil.version_class/etc in _version.py
allmydata.__version__ can just be a string, it doesn't need to be an instance
of some fancy NormalizedVersion class. Everything inside Tahoe uses
str(__version__) anyways.
Mon Dec 5 04:40:01 GMT 2011 Brian Warner <warner@lothar.com>
* setup.py: get version from git or darcs
This replaces the setup.cfg aliases that run "darcsver" before each major
command with the new "update_version". update_version is defined in setup.py,
and tries to get a version string from either darcs or git (or leaves the
existing _version.py alone if neither VC metadata is available).
Also clean up a tiny typo in verlib.py that messed up syntax hilighting.
Sun Nov 20 23:24:26 GMT 2011 david-sarah@jacaranda.org
* Use a private/drop_upload_dircap file instead of the [drop_upload]upload.dircap option in tahoe.cfg. Fail if the upload.dircap option is used, or options are missing. Also updates tests and docs. fixes #1593
Sun Nov 20 23:24:26 GMT 2011 david-sarah@jacaranda.org
* Use a private/drop_upload_dircap file instead of the [drop_upload]upload.dircap option in tahoe.cfg. Fail if the upload.dircap option is used, or options are missing. Also updates tests and docs. fixes #1593
Sun Jan 8 22:12:50 GMT 2012 Brian Warner <warner@lothar.com>
* fix bundled data under git, remove setuptools_darcs
This uses explicitly enumerated packages= and package_data= arguments to
setup(), rather than relying upon the convenient (but darcs-specific)
functions which would determine these values by asking the revision-control
system.
Note that darcsver is still used, when building from a darcs tree.
Sun Jan 22 21:18:56 GMT 2012 zooko@zooko.com
* docs: a newline between the utf-8 BOF and the comment in order to prevent trac from misrendering the comment
sheesh
Sun Jan 22 21:17:31 GMT 2012 zooko@zooko.com
* docs: a comment to inform the (human) reader about encoding and to prevent someone from moving the title up to where it will interact with the utf-8 BOM and cause trac to mis-render the title
Tue Dec 6 17:19:08 GMT 2011 zooko@zooko.com
* doc: about.rst: use unicode emdash, use non-embedded URIs, add clarificaiton of when a file gets its mutable-or-immutable nature
embedded URIs, although documented here:
http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html#embedded-uris
generate messages like this from rst2html --verbose:
quickstart.rst:3: (INFO/1) Duplicate explicit target name: "the tahoe-dev mailing list".
Also this patch prepends a "utf-8 BOM" to the beginning of the file.
Tue Jan 24 20:52:09 GMT 2012 Brian Warner <warner@lothar.com>
* Add test_verify_mdmf_all_bad_sharedata
test_verify_mdmf_all_bad_sharedata tests for the regression described
in ticket 1648. In particular, it will trigger the misplaced assertion
in the share activation code. It also tests to make sure that
verification continues with fewer than k shares.
Tue Jan 24 20:52:09 GMT 2012 Brian Warner <warner@lothar.com>
* Ensure that verification proceeds and stops when appropriate.
The removed assertions are appropriate for a download that seeks to
return plaintext to a caller; if we don't have at least k active remote
shares, then we can't hope to do that. They're not appropriate for a
verification operation; a user can try to verify a file that has fewer
than k shares available, so that shouldn't be treated as an error.
Instead, we proceed with fewer than k shares, and ensure that we
terminate the download if we have no shares at all and we're verifying.
Fri Jan 27 01:55:25 GMT 2012 david-sarah@jacaranda.org
* Add a Python 3 blocker to setup.py, to display a better error message when it is run under Python 3.
Tue Jan 31 00:06:43 GMT 2012 david-sarah@jacaranda.org
* configuration.rst: remove the obsolete sizelimit option from the sample tahoe.cfg. Also fix the RST formatting of blank lines in the file.
Wed Mar 7 02:22:41 GMT 2012 Brian Warner <warner@lothar.com>
* tahoe.css: fix #section typo, update welcome.xhtml to match
The "#section" declaration (which matches id="section") should have been
".section" (which matches class="section").
The welcome page has a feature that I actually liked: the little "This
Client" sidebar sits just to the right of the start of the Controls block.
Fixing .section broke that (the clear:both introduces a gap, forcing the
Controls block to start strictly below the bottom of the This Client block).
So I also removed class="section" from the Controls block to allow them to
share the horizontal space again.
Tue Mar 13 20:30:41 GMT 2012 david-sarah@jacaranda.org
* Update find_links URLs in setup.cfg to https://tahoe-lafs.org. This is not just a doc change; look out for compatibility problems.
Mon Aug 8 19:05:52 BST 2011 david-sarah@jacaranda.org
* test_node.py: test that we tolerate a UTF-8 BOM at the start of tahoe.cfg, and can read UTF-8 option values. refs #1470
Wed Aug 17 23:26:51 BST 2011 david-sarah@jacaranda.org
* bin/tahoe-script.template: fix the error message that is displayed when a runner script cannot be found. fixes #1488
Sun Apr 1 01:59:25 BST 2012 zooko@zooko.com
* setup: show-tool-versions: report cl only on windows, report buildslave, git, openssl, and lzip, but not 7za
Sun Aug 14 23:59:59 BST 2011 david-sarah@jacaranda.org
* interfaces.py: ensure that NoSuchChildError can be converted to str even when it is for a non-ASCII name. fixes #1483
Tue Apr 3 04:04:51 BST 2012 Brian Warner <warner@lothar.com>
* Rename web CheckResults to -Renderer, to avoid confusion. Closes #1705.
This avoids the name collision between the actual results
objects (defined in allmydata.check_results) and the code that renders
these objects into HTML (defined in allmydata.web.check_results). Only
the web-side objects were renamed.
Fri Apr 6 05:39:46 BST 2012 david-sarah@jacaranda.org
* docs/frontends/drop-upload.rst: document more known issues and link to new ticket for an existing one.
Sun Apr 29 03:28:44 BST 2012 david-sarah@jacaranda.org
* Make sure that foolscap.logging.log.setLogDir is called with a str (not unicode) path, v2. Includes test. fixes #1725
Sun May 13 07:34:03 BST 2012 Brian Warner <warner@lothar.com>
* test-dont-use-too-old-dep.py: fix tarfile timestamps
It turns out that TarFile.addfile() doesn't provide a reasonable default
timestamp, resulting in files dated to 1970 (they're probably wearing
bell-bottoms and listening to disco too). Then, when the bdist_egg command
tries to create a *zip*file with those files, it explodes because zipfiles
cannot handle timestamps before 1980 (it prefers boomboxes and jackets with
straps on the shoulders, thank you very much).
This puts a modern time.time() on the members of the tarfile, allowing future
cryptocoderarchaeologists the opportunity to make fun of fashion trends from
the user's chosen era, rather than an artificially older one.
Sun May 13 04:47:01 BST 2012 Brian Warner <warner@lothar.com>
* rename build_helpers files
This is from the darcs patch for #1342, which failed to apply on my darcs
tree, so I'm landing it from git. I'm landing the rename-files part
separately from the modify-those-files part to avoid VC complications.
Sun May 13 08:59:30 BST 2012 Brian Warner <warner@lothar.com>
* Fixed an error in previous commit where an empty servermap would throw an exception in 'count-good-share-hosts'. Augmented unit test.
Signed-off-by: Andrew Miller <amiller@dappervision.com>
Sun May 13 08:59:30 BST 2012 Brian Warner <warner@lothar.com>
* Added tests for count-good-share-hosts under check and repair conditions. Patched the incorrect computation in immutable/filenode.py
Signed-off-by: Andrew Miller <amiller@dappervision.com>
Fixed missing import statements
Signed-off-by: Andrew Miller <amiller@dappervision.com>
Wed Dec 28 05:33:58 GMT 2011 Brian Warner <warner@lothar.com>
* mutable publish: track multiple servers-per-share. Fixes some of #1628.
The remaining work is to write additional tests.
src/allmydata/test/no_network.py:
This supports tests in which servers leave the grid only to return with
their shares intact at a later time.
src/allmydata/test/test_mutable.py:
The UCWEs in the incident reports associated with #1628 all seem to be
associated with shares that the servermap knows about, but which aren't
accounted for during the publish process for whatever reason. Specifically,
it looks like the publisher is only capable of keeping track of a single
storage server for a given share. This makes the repair process worse than
it was pre-MDMF at updating all of the shares of a particular file to the
newest version, and can also cause spurious UCWEs. This test simulates such
a layout and fails if an UCWE is thrown. We need to write another test to
ensure that all copies of a share are updated to the latest version (or
alter this test to do that), so that the test suite doesn't pass unless both
regressions are fixed.
We want the publisher to follow the existing share placement when uploading
a new version of a mutable file, and we don't want this test to pass unless
it does.
src/allmydata/mutable/publish.py:
Before this commit, the publisher only kept track of a single writer for
each share. This is insufficient to handle updates in which a single share
may live on multiple servers. In the best case, an update will only update
one of the existing shares instead of all of them. In some cases, the update
will encounter the existing shares when publishing some other share,
interpret it as a sign of an uncoordinated update, and fail. Keeping track
of all of the writers helps ensure that all existing shares are updated, and
helps avoid spurious uncoordinated write errors.