summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* | Merge branch 'master' of ssh://git-annex.branchable.comGravatar Joey Hess2015-12-19
|\ \
* | | status: On crippled filesystems, was displaying M for all annexed files that ↵Gravatar Joey Hess2015-12-19
| | | | | | | | | | | | were present. Probably caused by a change to what git status displays in this situation. Fixed by treating files git thinks are modified the same as typechanged files.
| * | (no commit message)Gravatar https://openid.stackexchange.com/user/e65e6d0e-58ba-41de-84cc-1f2ba54cf5742015-12-19
|/ /
* | add news item for git-annex 5.20151218Gravatar Joey Hess2015-12-18
| |
* | Merge branch 'master' of ssh://git-annex.branchable.com5.20151218Gravatar Joey Hess2015-12-18
|\ \
| * | Added a commentGravatar neocryptek@659edac901ffbc8e541a974f8f18987eeafc63bd2015-12-18
| | |
* | | prep releaseGravatar Joey Hess2015-12-18
|/ /
| * interaction with shared clonesGravatar Joey Hess2015-12-17
| |
* | Added a commentGravatar SamuelTardieu2015-12-17
| |
* | (no commit message)Gravatar jhannwong@c9c7a67b5632a4bbc0c959cfeb3d340e02f285652015-12-17
| |
* | (no commit message)Gravatar pete.ward@26c41318616c4cf9601d0431557c1df734ccdb772015-12-16
| |
* | Merge branch 'master' of ssh://git-annex.branchable.comGravatar Joey Hess2015-12-16
|\ \
* | | devblogGravatar Joey Hess2015-12-16
| | |
| | * updateGravatar Joey Hess2015-12-16
| | |
| | * test suite down to only 4 fails with v6Gravatar Joey Hess2015-12-16
| | |
| | * update todo listGravatar Joey Hess2015-12-16
| | |
| | * fix docsGravatar Joey Hess2015-12-16
| | | | | | | | | | | | | | | "git -a annex.largefiles=* add" cannot be used.. git does not pass the config along to the smudge filter, sadly.
| | * v6: fix locking modified file when the content is not presentGravatar Joey Hess2015-12-16
| | |
| | * fix add of file that was locked but has been replaced by a new, unlocked ↵Gravatar Joey Hess2015-12-16
| | | | | | | | | | | | file (v6)
| | * fix reversion in v5 git-annex add of unlocked fileGravatar Joey Hess2015-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | In v5, lookupFile is supposed to only look at symlinks on disk (except when in direct mode). Note that v6 also has a bug when a locked file's symlink is deleted and is replaced with a new file. It sees that a link is staged and gets that key.
| | * temporarily remove cached keys database connectionGravatar Joey Hess2015-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem is that shutdown is not always called, particularly in the test suite. So, a database connection would be opened, possibly some changes queued, and then not shut down. One way this can happen is when using Annex.eval or Annex.run with a new state. A better fix might be to make both of them call Keys.shutdown (and be sure to do it even if the annex action threw an error). Complication: Sometimes they're run reusing an existing state, so shutting down a database connection could cause problems for other users of that same state. I think this would need a MVar holding the database handle, so it could be emptied once shut down, and another user of the database connection could then start up a new one if it got shut down. But, what if 2 threads were concurrently using the same database handle and one shut it down while the other was writing to it? Urgh. Might have to go that route eventually to get the database access to run fast enough. For now, a quick fix to get the test suite happier, at the expense of speed.
| | * reorder database shutdown to be concurrency safeGravatar Joey Hess2015-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a DbHandle is in use by another thread, it could be queueing changes while shutdown is running. So, wait for the worker to finish before flushing the queue, so that any last-minute writes are included. Before this fix, they would be silently dropped. Of course, if the other thread continues to try to use a DbHandle once it's closed, it will block forever as the worker is no longer reading from the jobs MVar. So, that would crash with "thread blocked indefinitely in an MVar operation".
| | * commentGravatar Joey Hess2015-12-16
| | |
| | * pass --version to init when neededGravatar Joey Hess2015-12-16
| | |
| | * Merge branch 'master' into smudgeGravatar Joey Hess2015-12-16
| | |\ | |_|/ |/| |
| * | Added a commentGravatar wsha.code+ga@b38779424f41c5701bbe5937340be43ff1474b2d2015-12-16
| | |
| * | poll vote (My phone (or MP3 player))Gravatar 14.203.223.702015-12-16
|/ /
* | Merge branch 'master' of ssh://git-annex.branchable.comGravatar Joey Hess2015-12-15
|\ \
* | | bring back some deleted functions that git-repair usesGravatar Joey Hess2015-12-15
| | |
* | | improve temp dir securityGravatar Joey Hess2015-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | http://bugs.debian.org/807341 * Fix insecure temporary permissions when git-annex repair is used in in a corrupted git repository. Other calls to withTmpDir didn't leak any potentially private data, but repair clones the git repository to a temp directory which is made using the user's umask. Thus, it might expose a git repo that is otherwise locked down. * Fix potential denial of service attack when creating temp dirs. Since withTmpDir used easily predictable temporary directory names, an attacker could create foo.0, foo.1, etc and as long as it managed to keep ahead of it, could prevent it from ever returning. I'd rate this as a low utility DOS attack. Most attackers in a position to do this could just fill up the disk /tmp is on to prevent anything from writing temp files. And few parts of git-annex use withTmpDir anyway, so DOS potential is quite low. Examined all callers of withTmpDir and satisfied myself that switching to mkdtmp and so getting a mode 700 temp dir wouldn't break any of them. Note that withTmpDirIn continues to not force temp dir to 700. But it's only used for temp directories inside .git/annex/wherever/ so that is not a problem. Also re-audited all other uses of temp files and dirs in git-annex.
| | * starting to work on test suite for v6Gravatar Joey Hess2015-12-15
| | |
| | * Use git-annex init --version=6 to get v6 for nowGravatar Joey Hess2015-12-15
| | | | | | | | | | | | | | | Not ready to make it default because of the direct mode upgrade needing to all happen at once.
| | * in v6 mode, unannex does not interact badly with pre-commit hookGravatar Joey Hess2015-12-15
| | | | | | | | | | | | So can be used in a tree with staged changes, no problems. Much nicer.
| | * recent fsck changes caused ugly message when object was not presentGravatar Joey Hess2015-12-15
| | |
| | * update todo listGravatar Joey Hess2015-12-15
| | |
| | * implemented upgrade of direct mode repo to v6Gravatar Joey Hess2015-12-15
| | |
| | * reorgGravatar Joey Hess2015-12-15
| | |
| | * changes for v6 broke fsck in direct modeGravatar Joey Hess2015-12-15
| | |
| | * clarifyGravatar Joey Hess2015-12-15
| | |
| | * doc updateGravatar Joey Hess2015-12-15
| | |
| | * add: In v6 mode, acts on modified files.Gravatar Joey Hess2015-12-15
| | | | | | | | | | | | | | | Same as was done in direct mode, except in v6 mode add always adds files locked, so
| | * fix incorrect doc changeGravatar Joey Hess2015-12-15
| | |
| | * avoid pre-commit check having to do with v5 unlocked files when in v6 modeGravatar Joey Hess2015-12-15
| | |
| | * rename stuff for v5 unlocked files to indicate it's oldGravatar Joey Hess2015-12-15
| | |
| | * update doc for v6Gravatar Joey Hess2015-12-15
| | |
| | * add: no need to make pass for old unlocked files in v6Gravatar Joey Hess2015-12-15
| | |
| | * have clean filter check if the filename was already in use by an old keyGravatar Joey Hess2015-12-15
| | | | | | | | | | | | | | | | | | | | | | | | The annex object for it may have been modified due to hard link, and that should be cleaned up when the new version is added. If another associated file has the old key's content, that's linked into the annex object. Otherwise, update location log to reflect that content has been lost.
| | * add getAssociatedKeyGravatar Joey Hess2015-12-15
| | | | | | | | | | | | | | | I guess this is just as efficient as the getAssociatedFiles query, but I have not tried to optimise the database yet.
| | * update inode cache to cover file even when nothing needs to be done to linkAnnexGravatar Joey Hess2015-12-15
| | | | | | | | | | | | | | | | | | This covers the case where multiple files have the same content and are added with git add. Previously only the one that was linked to the annex got its inode cached; now both are.
| | * todoGravatar Joey Hess2015-12-15
| | |