summaryrefslogtreecommitdiff
path: root/doc/design/assistant/progressbars.mdwn
diff options
context:
space:
mode:
Diffstat (limited to 'doc/design/assistant/progressbars.mdwn')
-rw-r--r--doc/design/assistant/progressbars.mdwn22
1 files changed, 13 insertions, 9 deletions
diff --git a/doc/design/assistant/progressbars.mdwn b/doc/design/assistant/progressbars.mdwn
index ade9a8370..7a7cf31ad 100644
--- a/doc/design/assistant/progressbars.mdwn
+++ b/doc/design/assistant/progressbars.mdwn
@@ -16,13 +16,17 @@ This is one of those potentially hidden but time consuming problems.
## uploads
-Options:
+Each individual remote type needs to implement its own support for calling
+the ProgressCallback as the upload progresses.
-* Feed rsync output into a parser and parse out a progress value. Ugly,
- failure prone, but potentially the least CPU-expensive option.
-* Use librsync. Note: It's not wire-compatiable with the actual rsync
- command.
-* Set up a FIFO, have rsync read from or write to that, and the FIFO
- feeder/reader then can update the transfer info. Generic enough to
- work for most (all?) special remotes, but also the most expensive option,
- involving another copy through memory of the whole file contents.
+* git: Done, with one exception: `git-annex-shell sendkey` runs `rsync
+ --server --sender` and in that mode it does not report progress info.
+ So downloads initiated by other repos do not show progress in the repo
+ doing the uploading.
+* rsync
+* directory
+* web: Not applicable; does not upload
+* S3
+* bup
+* hook: Would require the hook interface to somehow do this, which seems
+ too complicated. So skipping.