summaryrefslogtreecommitdiff
path: root/Logs
Commit message (Collapse)AuthorAge
* avoid duplicate code with a more generic monadic matcherGravatar Joey Hess2012-10-13
| | | | | Interesting type signature ghc derived for this: forall o (m :: * -> *). Monad m => Matcher o -> (o -> m Bool) -> m Bool
* implement saving of repository settingsGravatar Joey Hess2012-10-10
|
* ui for selecting a repository groupGravatar Joey Hess2012-10-10
|
* add standard group selector to repo edit formGravatar Joey Hess2012-10-10
|
* webapp: configure new repos to use the standard preferred content settingsGravatar Joey Hess2012-10-10
|
* webapp: put new repos in standard groupsGravatar Joey Hess2012-10-10
| | | | | | | I'm using transfer for most things, both removable drives and cloud storage, because it's the safest choice. We'll see if it makes sense to prompt for the group when setting this up, or let the user pick something else after the fact.
* refactorGravatar Joey Hess2012-10-10
|
* standard preferred content settings for client, transfer, backup, and ↵Gravatar Joey Hess2012-10-10
| | | | | | | | archive repositories I've designed these to work well together, I hope. If I get it wrong, I can just change the code in one place, since these expressions won't be stored in the git-annex branch.
* rename --ingroup to --inallgroupGravatar Joey Hess2012-10-10
|
* add --ingroup limitGravatar Joey Hess2012-10-08
|
* Added --smallerthan and --largerthan limitsGravatar Joey Hess2012-10-08
|
* wired preferred content up to get, copy, and drop --autoGravatar Joey Hess2012-10-08
|
* add AssumeNotPresent parameter to limitsGravatar Joey Hess2012-10-05
| | | | | | | | | | | | | Solves the issue with preferred content expressions and dropping that I mentioned yesterday. My solution was to add a parameter to specify a set of repositories where content should be assumed not to be present. When deciding whether to drop, it can put the current repository in, and then if the expression fails to match, the content can be dropped. Using yesterday's example "(not copies=trusted:2) and (not in=usbdrive)", when the local repo is one of the 2 trusted copies, the drop check will see only 1 trusted copy, so the expression matches, and so the content will not be dropped.
* added preferred-content log, and allow editing it with vicfgGravatar Joey Hess2012-10-04
| | | | | | | | | | | | | | This includes a full parser for the boolean expressions in the log, that compiles them into Matchers. Those matchers are not used yet. A complication is that matching against an expression should never crash git-annex with an error. Instead, vicfg checks that the expressions parse. If a bad expression (or an expression understood by some future git-annex version) gets into the log, it'll be ignored. Most of the code in Limit couldn't fail anyway, but I did have to make limitCopies check its parameter first, and return an error if it's bad, rather than erroring at runtime.
* vicfg: New command, allows editing (or simply viewing) most of the ↵Gravatar Joey Hess2012-10-03
| | | | | | | | | | | repository configuration settings stored in the git-annex branch. Incomplete; I need to finish parsing and saving. This will also be used for editing transfer control expresssions. Removed the group display from the status output, I didn't really like that format, and vicfg can be used to see as well as edit rempository group membership.
* status: display repository groupsGravatar Joey Hess2012-10-02
|
* simplifyGravatar Joey Hess2012-10-01
|
* group, ungroup: New commands to indicate groups of repositories.Gravatar Joey Hess2012-10-01
|
* fixes for transfer resumeGravatar Joey Hess2012-09-24
| | | | | | | | | Fix resuming of downloads, which do not have a transfer info file to read. When checking upload progress, use the MVar, rather than re-reading the info file. Catch exceptions in the transfer action. Required a tryAnnex.
* changelog and minor cleanup to fix mixed spaces/tabsGravatar Joey Hess2012-09-23
|
* Merge remote-tracking branch 'npouillard/trustedcopies'Gravatar Joey Hess2012-09-23
|\
| * Limiting the number of copies per trustlevelGravatar Nicolas Pouillard2012-09-23
| | | | | | | | | | | | | | | | The --copies flag now takes an argument of the form: trustlevel:number or number If a trust level is specified the command is limited to files with at least 'number' copies of this 'trustlevel'.
* | make the assistant retry failed transfersGravatar Joey Hess2012-09-23
| | | | | | | | | | | | | | When a transfer fails, the progress info can be used to intelligently retry it. If the transfer managed to make some progress, but did not fully complete, then there's a good chance that a retry will finish it (or at least make more progress).
* | git-annex-shell transferinfo commandGravatar Joey Hess2012-09-21
| | | | | | | | | | TODO: Use this when running sendkey, to feed back transfer info from the client side rsync.
* | avoid updating transfer info file until another 1% of the total has been ↵Gravatar Joey Hess2012-09-21
| | | | | | | | transferred
* | unify typesGravatar Joey Hess2012-09-21
| |
* | fix reading of transfer info files with a bytesComplete valueGravatar Joey Hess2012-09-20
| |
* | add a progress callback to storeKey, and threaded it all the way throughGravatar Joey Hess2012-09-19
| | | | | | | | | | | | | | | | Transfer info files are updated when the callback is called, updating the number of bytes transferred. Left unused p variables at every place the callback should be used. Which is rather a lot..
* | make other repositories list list all autostarted reposGravatar Joey Hess2012-09-18
| | | | | | | | And add a form to add another, unrelated repository
* | cleanupGravatar Joey Hess2012-09-17
| |
* | flip catchDefaultIOGravatar Joey Hess2012-09-17
| |
* | Avoid crashing on encoding errors in filenames when writing transfer info ↵Gravatar Joey Hess2012-09-16
| | | | | | | | files and reading from checksum commands.
* | stupid typoGravatar Joey Hess2012-08-29
| |
* | when canceling a transfer, also cancel all other downloads of the same keyGravatar Joey Hess2012-08-29
| |
* | fix resume buttonGravatar Joey Hess2012-08-29
| | | | | | | | | | Change alterTransferInfo to not merge in old values, including transferPaused.
* | don't show "unknown" as the percent complete for transferinfo with no ↵Gravatar Joey Hess2012-08-28
| | | | | | | | bytesComplete value
* | avoid possibly re-adding a removed transfer when updating its infoGravatar Joey Hess2012-08-28
|/ | | | Doesn't fix the bug I thought it'd fix, but is clearly correct.
* keep track of which remotes have been scanned in process stateGravatar Joey Hess2012-08-24
| | | | | Since it turned out to make sense to always scan all remotes on startup, there's no need to persist the info about which have been scanned.
* keep logs of failed transfers, and requeue them when doing a non-full scanGravatar Joey Hess2012-08-23
| | | | of a remote
* add transfer scanned flag filesGravatar Joey Hess2012-08-23
|
* implement pausing of transfersGravatar Joey Hess2012-08-10
| | | | | | A paused transfer's thread keeps running, keeping the slot in use. This is intentional; pausing a transfer should not let other queued transfers to run in its place.
* add routes to pause/start/cancel transfersGravatar Joey Hess2012-08-08
| | | | | | | | | | | | | | | | This commit includes a paydown on technical debt incurred two years ago, when I didn't know that it was bad to make custom Read and Show instances for types. As the routes need Read and Show for Transfer, which includes a Key, and deriving my own Read instance of key was not practical, I had to finally clean that up. So the compact Key read and show functions are now file2key and key2file, and Read and Show are now derived instances. Changed all code that used the old instances, compiler checked. (There were a few places, particularly in Command.Unused, and the test suite where the Show instance continue to be used for legitimate comparisons; ie show key_x == show key_y (though really in a bloom filter))
* Merge branch 'master' into assistantGravatar Joey Hess2012-08-07
|\
| * fix transfer log cleanup crashGravatar Joey Hess2012-08-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid crashing when "git annex get" fails to download from one location, and falls back to downloading from a second location. The problem is that git annex get calls download recursively from within itself if the first download attempt fails. So the first time through, it writes a transfer info file, which is then overwritten on the second, recursive call. Then on cleanup, it tries to delete the file twice, which of course doesn't work. Fixed both by not crashing if the transfer file is removed, and by changing Get to not run download recursively like that. It's the only thing that did so, and it just seems like a bad idea.
* | webapp now displays the real running and queued transfersGravatar Joey Hess2012-07-27
| | | | | | | | yowza!!!
| * pull in transfer log code from assistant branchGravatar Joey Hess2012-07-18
| | | | | | | | New log file format.
* | fix parsing of startedTimeGravatar Joey Hess2012-07-18
| |
* | run file transfers in threads, not processesGravatar Joey Hess2012-07-18
| | | | | | | | | | | | This should fix OSX/BSD issues with not noticing transfer information files with kqueue. Now that threads are used, the thread can manage the transfer slot allocation and deallocation by itself; much cleaner.
* | add thread id field to transferinfoGravatar Joey Hess2012-07-18
| | | | | | | | | | Also converted its timestand to posix seconds, like is used in the other log files.
* | avoid parsing lock files as transfer filesGravatar Joey Hess2012-07-17
| | | | | | | | | | This seems to happen with kqueue, not inotify. The newly added lck file triggers an add event and was then parsed as a transfer file.