David Stainton [Mon, 12 Oct 2015 18:07:39 +0000 (20:07 +0200)]
Teach uploader+downloader to use to db schema
here we attempt to fix all the unit tests as well...
however two tests still fail
Daira Hopwood [Thu, 8 Oct 2015 15:01:46 +0000 (16:01 +0100)]
Add magicfolderdb.py.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
David Stainton [Thu, 8 Oct 2015 14:33:27 +0000 (16:33 +0200)]
Remove magic-folder db code from backupdb.py
David Stainton [Wed, 7 Oct 2015 16:45:44 +0000 (18:45 +0200)]
WIP
David Stainton [Tue, 6 Oct 2015 16:11:08 +0000 (18:11 +0200)]
Include brief summary of magic-folder CLI commands
David Stainton [Tue, 6 Oct 2015 16:04:16 +0000 (18:04 +0200)]
Add link to our cli design doc
David Stainton [Tue, 6 Oct 2015 15:57:18 +0000 (17:57 +0200)]
Mention gc is not part of the otf grant and link to the gc ticket
David Stainton [Tue, 6 Oct 2015 15:52:26 +0000 (17:52 +0200)]
Remove old obsolete/inaccurate statements
David Stainton [Mon, 5 Oct 2015 11:54:38 +0000 (13:54 +0200)]
Minor comment correction for get_all_relpaths
David Stainton [Mon, 5 Oct 2015 10:59:58 +0000 (12:59 +0200)]
For all downloaded files ensure parent dir exists
Daira Hopwood [Thu, 8 Oct 2015 13:42:47 +0000 (14:42 +0100)]
Simplify the cleanup_Alice_and_Bob callback.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
meejah [Thu, 8 Oct 2015 02:32:19 +0000 (20:32 -0600)]
Make downloader delay a class-variable
This gives the integration-style CLI-based tests a chance
to set the delay to 0 before the first 3-second delayed
call is queued to _lazy_tail in the Downloader
meejah [Wed, 7 Oct 2015 23:03:28 +0000 (17:03 -0600)]
Teach unit-tests to time-warp
1. Split alice/bob clocks to avoid races conditions
in the tests
2. Wrap ._notify so we can advance the clock after inotify
calls in the RealTest (since it takes >0ms to do the "real" notifies)
Daira Hopwood [Thu, 8 Oct 2015 13:07:05 +0000 (14:07 +0100)]
Merge pull request #193 from meejah/2438.magic-folder-stable.3
Fix call to ready()
meejah [Tue, 6 Oct 2015 20:11:32 +0000 (14:11 -0600)]
Fix call to ready()
Daira Hopwood [Fri, 2 Oct 2015 21:08:54 +0000 (22:08 +0100)]
Correct a string-type error.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Thu, 1 Oct 2015 21:40:10 +0000 (22:40 +0100)]
WIP.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Thu, 1 Oct 2015 21:36:18 +0000 (22:36 +0100)]
Magic Folder file moves.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Wed, 16 Sep 2015 13:59:49 +0000 (14:59 +0100)]
Prepare to move drop_upload.py to magic_folder.py.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Wed, 16 Sep 2015 13:32:13 +0000 (14:32 +0100)]
Move backupdb.py to src/allmydata.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Wed, 16 Sep 2015 13:28:46 +0000 (14:28 +0100)]
Rename upload_ready_d to connected_enough_d.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Wed, 16 Sep 2015 13:24:10 +0000 (14:24 +0100)]
Documentation changes for Magic Folder.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Tue, 28 Apr 2015 20:03:45 +0000 (21:03 +0100)]
Teach StorageFarmBroker to fire a deferred when a connection threshold is reached. refs #1449
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Tue, 28 Apr 2015 19:58:07 +0000 (20:58 +0100)]
Enable Windows inotify support.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Tue, 28 Apr 2015 19:13:44 +0000 (20:13 +0100)]
New code for Windows drop-upload support. refs #1431
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Tue, 28 Apr 2015 19:11:40 +0000 (20:11 +0100)]
Docs for drop-upload on Windows.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Tue, 28 Apr 2015 19:52:05 +0000 (20:52 +0100)]
Add magic folder db.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Tue, 28 Apr 2015 19:43:09 +0000 (20:43 +0100)]
Unicode path fixes for drop-upload.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Thu, 1 Oct 2015 00:11:14 +0000 (01:11 +0100)]
.travis.yml: pin coverage version to 3.7.1. fixes ticket:2511
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Brian Warner [Wed, 23 Sep 2015 04:30:03 +0000 (21:30 -0700)]
Merge branch '2510-new-foolscap'
Brian Warner [Tue, 22 Sep 2015 23:37:12 +0000 (16:37 -0700)]
introweb: fix connection hints for server announcements
A long time ago, the introducer's status web page would show the
advertised IP addresses for all published services, by parsing their
FURL's connection hints. This hasn't worked since about 12-Aug-2014 when
foolscap-0.6.5 changed the internal format of these hints (the column
has been empty this whole time).
This removes the "Advertised IPs" column from the Service Announcements
table. Instead, the service's full connection hints (not just the IP
address) is displayed in a tooltip/popup on the "Announced" timestamp
column.
The code that pulls these connection hints is now tolerant of all three
foolscap styles:
* foolscap<=0.6.4 : tuples of ("ipv4",host,port)
* 0.6.5 .. 0.8.0 : tuples of ("tcp",host,port)
* foolscap>=0.9.0 : strings
fixes ticket:2510
Brian Warner [Tue, 22 Sep 2015 23:34:50 +0000 (16:34 -0700)]
remove "announcement_distinct_hosts" from introweb JSON
The machine-parseable JSON output for the introducer status web page
used to include a key named "announcement_distinct_hosts", which counted
the number of distinct IP addresses advertised by all connected storage
servers. This hasn't worked since Aug-2014 when foolscap-0.6.5 change
the internal hints format.
This removes that field.
Brian Warner [Tue, 22 Sep 2015 23:29:34 +0000 (16:29 -0700)]
introducer: stop tracking hints for subscribed clients
A long time ago, the introducer's status web page would show the
advertised IP addresses for all subscribers, by parsing their
RemoteReference's FURL's connection hints. This hasn't worked since
about 12-Aug-2014 when foolscap-0.6.5 changed the internal format of
these hints.
This removes the feature: we no longer attempt to show advertised IP
addresses of subscribed clients. It also removes the code that looked
inside foolscap internals for this information.
Brian Warner [Tue, 22 Sep 2015 19:10:15 +0000 (12:10 -0700)]
travis: use 'git fetch' to deepen, not 'git pull'
Travis builds of branches (i.e. pull-requests) were testing the wrong
thing, because the 'git pull' was causing current trunk to be
auto-merged. At least that's what seemed to break
https://travis-ci.org/tahoe-lafs/tahoe-lafs/jobs/
81517826 : it hung
forever waiting for a commit message to be entered.
Also add "sudo: false" to use travis containers (faster) instead of new
VMs. We only use pip to install dependencies, not apt, so we don't need
root.
Daira Hopwood [Fri, 11 Sep 2015 23:59:51 +0000 (00:59 +0100)]
Avoid spurious errors when an imported version is consistent with pkg_resources
but not parseable; also improve related error reporting. fixes ticket:2499
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Thu, 3 Sep 2015 14:23:10 +0000 (15:23 +0100)]
Merge pull request #187 from tahoe-lafs/2493.cleanup-osx-packaging.1
2493.cleanup osx packaging.1
Ramakrishnan Muthukrishnan [Thu, 3 Sep 2015 13:47:27 +0000 (19:17 +0530)]
Move manpage into a heirarchical man1 path.
Author: Ramakrishnan Muthukrishnan <ram@leastauthority.com>
Ramakrishnan Muthukrishnan [Wed, 2 Sep 2015 04:44:06 +0000 (10:14 +0530)]
OS-X package: add a preinstall script and copy the manpage into /etc/manpaths.d.
The preinstall script detects previous installation and removes it.
Author: Ramakrishnan Muthukrishnan <ram@leastauthority.com>
Daira Hopwood [Fri, 31 Jul 2015 17:21:47 +0000 (18:21 +0100)]
Change some instances of "filesystem" that were missed to "file store".
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Brian Warner [Fri, 31 Jul 2015 02:35:00 +0000 (19:35 -0700)]
update docs for 1.10.2 release
HawkOwl [Wed, 29 Jul 2015 02:21:31 +0000 (12:21 +1000)]
add a pypy that is allowed to fail
Brian Warner [Wed, 29 Jul 2015 01:10:40 +0000 (18:10 -0700)]
update NEWS with recent changes
Brian Warner [Mon, 15 Jun 2015 04:21:22 +0000 (21:21 -0700)]
quickstart: Mention python-dev package for Python.h
Closes ticket:2328.
Brian Warner [Wed, 29 Jul 2015 00:39:39 +0000 (17:39 -0700)]
Merge branch '2447-cp-overwrite'
Brian Warner [Wed, 29 Jul 2015 00:36:50 +0000 (17:36 -0700)]
test_cli_cp: minor cleanup
Brian Warner [Wed, 29 Jul 2015 00:19:42 +0000 (17:19 -0700)]
cp: error on target-filename collisions, rather than overwrite
Closes ticket:2447
Zooko [Tue, 16 Jun 2015 17:22:59 +0000 (17:22 +0000)]
unit test for my desired behavior
Brian Warner [Wed, 29 Jul 2015 00:38:09 +0000 (17:38 -0700)]
Merge branch '2436.less-scary.3'
This reverts and improves the earlier fix for ticket:2436
Daira Hopwood [Tue, 28 Jul 2015 22:41:26 +0000 (23:41 +0100)]
test_version.py: minor cleanup.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Tue, 28 Jul 2015 22:41:13 +0000 (23:41 +0100)]
Don't show scary diagnostic warnings from --version[-and-path] (corrected). refs ticket:2436
The previous version would incorrectly add to the output of
get_package_versions_string each time it was called.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Tue, 28 Jul 2015 16:35:11 +0000 (17:35 +0100)]
Revert "Don't show scary diagnostic warnings from --version[-and-path]"
This reverts commit
431728f8f854e02d9ab2f731675f12ce18cda122.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Brian Warner [Tue, 28 Jul 2015 20:32:46 +0000 (13:32 -0700)]
mutable/retrieve.py: remove all bare assert()s
Replace them with _assert() or precondition(). Closes ticket:2462.
Brian Warner [Tue, 28 Jul 2015 20:28:36 +0000 (13:28 -0700)]
improve HTTP byte-range docs
Brian Warner [Tue, 28 Jul 2015 20:15:50 +0000 (13:15 -0700)]
webapi.rst: document Range: header on GET requests
closes ticket#2460
Brian Warner [Tue, 28 Jul 2015 20:01:15 +0000 (13:01 -0700)]
IReadable.read(): document out-of-range errors
closes ticket#2461
Brian Warner [Tue, 28 Jul 2015 18:02:17 +0000 (11:02 -0700)]
Merge branch 'sdmf-partial-2'
This cleans up the mutable-retrieve code a bit, and should fix some
corner cases where an offset/size combinations that reads the last byte
of the file (but not the first) could cause an assert to fire, making
the download hang. Should address ticket:2459 and ticket:2462.
Brian Warner [Tue, 28 Jul 2015 17:27:24 +0000 (10:27 -0700)]
test_mutable: more enhancements
Brian Warner [Tue, 28 Jul 2015 17:11:47 +0000 (10:11 -0700)]
mutable/retrieve.py: rewrite partial-read handling
This should tolerate offset/size combinations that read the last byte of
the file, something which was broken before. It quits early in the case
of zero-byte reads, to simplify the resulting "which segments do I need"
logic. Probably addresses ticket:2459.
Brian Warner [Tue, 28 Jul 2015 16:56:42 +0000 (09:56 -0700)]
enhance SDMF/MDMF tests: zero-length files, size=None
Daira Hopwood [Tue, 7 Jul 2015 20:28:59 +0000 (21:28 +0100)]
Add tests for SDMF partial reads. refs #2459
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Tue, 7 Jul 2015 20:01:33 +0000 (21:01 +0100)]
Remove some bare asserts in retrieve.py (there are still quite a few left). refs #2462
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
zooko [Tue, 21 Jul 2015 17:59:31 +0000 (17:59 +0000)]
Merge pull request #176 from tahoe-lafs/2436.less-scary.0
Don't show scary diagnostic warnings from --version[-and-path] if the only problem is that extra packages are found by pkg_resources.
Daira Hopwood [Tue, 21 Jul 2015 17:55:47 +0000 (18:55 +0100)]
Minor code cleanup in __init__.py.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Tue, 21 Jul 2015 17:51:29 +0000 (18:51 +0100)]
Don't show scary diagnostic warnings from --version[-and-path]
if the only problem is that extra packages are found by pkg_resources.
fixes ticket:2436
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Mon, 20 Jul 2015 23:16:40 +0000 (00:16 +0100)]
Change the separator character in the Magic Folder user interface design doc from '|' to '+'.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Fri, 17 Jul 2015 21:03:53 +0000 (22:03 +0100)]
Eliminate mock dependency.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Fri, 17 Jul 2015 20:16:45 +0000 (21:16 +0100)]
Add Namespace utility class. (This is already used in the leasedb/cloud backend branch.)
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Brian Warner [Thu, 16 Jul 2015 16:27:26 +0000 (09:27 -0700)]
Makefile upload-osx-pkg: mention where the packages go
Daira Hopwood [Thu, 16 Jul 2015 14:38:06 +0000 (15:38 +0100)]
Bump pyasn1 requirement to >= 0.1.8.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Thu, 16 Jul 2015 14:24:45 +0000 (15:24 +0100)]
Blacklist mock > 1.0.1.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Brian Warner [Mon, 13 Jul 2015 01:25:55 +0000 (18:25 -0700)]
test/check_load: hush (newer) pyflakes
pyflakes-0.9.2 gets confused about list comprehensions, so rename the
loop variable even though we'd deleted that name already.
Brian Warner [Mon, 13 Jul 2015 01:20:43 +0000 (18:20 -0700)]
test_web: avoid IP autodetection, was causing dirty reactor
Brian Warner [Sat, 27 Jun 2015 01:39:29 +0000 (18:39 -0700)]
docs/how-to-release: add more wiki pages to update
Brian Warner [Tue, 16 Jun 2015 20:41:21 +0000 (13:41 -0700)]
add test-pip-install
Brian Warner [Tue, 16 Jun 2015 01:35:55 +0000 (18:35 -0700)]
release checklist: use signed git tag next time
Brian Warner [Tue, 16 Jun 2015 00:38:01 +0000 (17:38 -0700)]
README: update copyright date
Brian Warner [Mon, 15 Jun 2015 23:29:37 +0000 (16:29 -0700)]
update docs for 1.10.1 release
Brian Warner [Mon, 15 Jun 2015 21:40:19 +0000 (14:40 -0700)]
Dockerfile: git-pull more history, to get a version string
The Docker build process seems to use 'git pull --depth=1', which
doesn't fetch enough history to see a tag, which means tahoe's setup.py
can't compute a version (then 'tahoe --version' reports "unknown").
Pulling a hundred commits should be enough to see a tag without making
the resulting image unnecessarily large. If we go more than 100 commits
between tags, we'll need to increase this, or come up with something
smarter.
Daira Hopwood [Thu, 11 Jun 2015 20:33:09 +0000 (21:33 +0100)]
Finish user-interface.rst. fixes ticket:2443
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Thu, 4 Jun 2015 16:42:29 +0000 (17:42 +0100)]
Make a start on the Magic Folder Objective 5 (user interface design) doc. refs ticket:2443
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Tue, 9 Jun 2015 17:48:07 +0000 (18:48 +0100)]
NEWS.rst: fix missing link.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Tue, 9 Jun 2015 17:45:14 +0000 (18:45 +0100)]
NEWS.rst for 1.10.1: links, formatting and nitpicks.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Brian Warner [Tue, 9 Jun 2015 08:48:25 +0000 (01:48 -0700)]
NEWS: finish 1.10.1 edits. Good enough for beta1.
Brian Warner [Mon, 8 Jun 2015 22:59:35 +0000 (15:59 -0700)]
NEWS: rearrange
Brian Warner [Mon, 8 Jun 2015 22:58:48 +0000 (15:58 -0700)]
NEWS: remove many non-user-visible items
Brian Warner [Mon, 8 Jun 2015 22:55:23 +0000 (15:55 -0700)]
NEWS: first editing pass
Brian Warner [Mon, 8 Jun 2015 06:54:28 +0000 (23:54 -0700)]
NEWS: classify changes as user-visible or not
Brian Warner [Mon, 8 Jun 2015 05:03:19 +0000 (22:03 -0700)]
NEWS.rst: update to include latest changes
Brian Warner [Sun, 7 Jun 2015 21:30:58 +0000 (14:30 -0700)]
move Dockerfile back to root. DockerHub can't handle it elsewhere.
It looks like DockerHub's automated builds only have access to the
subtree of the source checkout at+below the Dockerfile. Putting the
Dockerfile in misc/build_helpers/ meant that the build process only had
access to misc/build_helpers/, not the full source tree.
Brian Warner [Sun, 7 Jun 2015 21:24:04 +0000 (14:24 -0700)]
Dockerfile: fix ADD path to deal with non-root location
Brian Warner [Sun, 7 Jun 2015 20:40:26 +0000 (13:40 -0700)]
move Dockerfile down ito misc/build_helpers/
Daira Hopwood [Sat, 6 Jun 2015 21:45:42 +0000 (22:45 +0100)]
Magic Folder design doc: rename "parent DMD" to "collective directory", and don't assume it is mutable.
(An immutable collective directory could be interesting for some use cases, and is no more difficult to support.)
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Tue, 2 Jun 2015 17:12:23 +0000 (18:12 +0100)]
Remove packages from not_import_versionable that we now can always version.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Tue, 2 Jun 2015 17:07:20 +0000 (18:07 +0100)]
Add OpenSSL version check and tests. refs ticket:2215
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Fri, 29 May 2015 21:10:33 +0000 (22:10 +0100)]
remote-to-local-sync.rst: fix a minor error.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Daira Hopwood [Fri, 29 May 2015 02:03:46 +0000 (03:03 +0100)]
Magic Folder: add remote-to-local sync design doc.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Brian Warner [Tue, 26 May 2015 20:23:31 +0000 (13:23 -0700)]
Merge branch 'globalopts2'
Improves CLI rendering of --help for global options. Closes ticket:2233.
Brian Warner [Tue, 26 May 2015 18:32:14 +0000 (11:32 -0700)]
wrap long lines, and tolerate various-width wrappings of the --help output
test_cli.Help was too sensitive to the way that the --help output was
wrapped, which caused failures on travis when COLUMNS= was set low and
the expected strings were split across separate lines.
Brian Warner [Tue, 26 May 2015 18:31:06 +0000 (11:31 -0700)]
cli: improve formatting of all commands
Also:
* do some light refactoring of create-client/node
* make it clear that these commands' --basedir options do the same as
the global --node-directory option
* use "global-options" instead of "global-opts"
Brian Warner [Tue, 26 May 2015 18:29:49 +0000 (11:29 -0700)]
scripts: improve rendering of synopsis/usage
Subcommands "--help" is now rendered as:
```
tahoe [global-options] COMMAND [options] ARGS
(use 'tahoe --help' to view global options)
USAGE (flags/options)
DESCRIPTION
DESCRIPTION_UNWRAPPED
```
The new .description and .description_unwrapped fields allow
commands (subclasses of twisted.python.usage.Usage) better control over
how their explanations are rendered: the old .longdesc field was wrapped
unpleasantly.