summaryrefslogtreecommitdiff
path: root/Logs/PreferredContent.hs
Commit message (Collapse)AuthorAge
* 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.