summaryrefslogtreecommitdiff
path: root/Assistant/Types/Changes.hs
Commit message (Collapse)AuthorAge
* fix 5244ab7656e2269676cf6296718c8e5243c5b919Gravatar Joey Hess2013-04-24
| | | | Converted back to the wrong type, oops.
* convert PendingAddChange back to Change when an add failsGravatar Joey Hess2013-04-24
| | | | | | | If an add failed, we should lose the KeySource, since it, presumably, differs due to a change that was made to the file. (The locked down file is already deleted.)
* use TList for ChangePoolGravatar Joey Hess2013-04-24
|
* more efficient data type for ChangeChanGravatar Joey Hess2013-04-23
| | | | | | | | | | Making this a tset of lists of Changes, rather than a tset of Changes makes refilling it, in batch mode, much more efficient. Rather than needing to add every Change it's collected one at a time, it can add them in one fast batch operation. It would be more efficient yet to use a Set, but that would need an Eq instance for InodeCache.
* assistant: Check small files into git directly.Gravatar Joey Hess2013-03-29
|
* synthesize RmChange when a directory is deletedGravatar Joey Hess2013-03-11
| | | | | This gets directory renames closer to being fully detected. There's close to no extra overhead to doing it this way.
* fix changeFile to not be partialGravatar Joey Hess2013-03-11
| | | | That led to runtime crashes, without even a warning from -Wall. Yipes!
* assistant: generate better commits for renamesGravatar Joey Hess2013-03-10
|
* moved transfer queueing out of watcher and into committerGravatar Joey Hess2013-03-10
| | | | | | | | | | | | | This cleaned up the code quite a bit; now the committer just looks at the Change to see if it's a change that needs to have a transfer queued for it. If I later want to add dropping keys for files that were removed, or something like that, this should make it straightforward. This also fixes a bug. In direct mode, moving a file out of an archive directory failed to start a transfer to get its content. The problem was that the file had not been committed to git yet, and so the transfer code didn't want to touch it, since fileKey failed to get its key. Only starting transfers after a commit avoids this problem.
* split Changes and liftedGravatar Joey Hess2012-10-29