git-annex.git
10 years agopopulate unlocked files with newly available content when ingesting
Joey Hess [Tue, 22 Dec 2015 20:22:28 +0000 (16:22 -0400)]
populate unlocked files with newly available content when ingesting

This can happen when ingesting a new file in either locked or unlocked
mode, when some unlocked files in the repo use the same key, and the
content was not locally available before.

10 years agofinish v6 support for assistant
Joey Hess [Tue, 22 Dec 2015 19:23:27 +0000 (15:23 -0400)]
finish v6 support for assistant

Seems to basically work now!

10 years agomake linkAnnex detect when the file changes as it's being copied/linked in
Joey Hess [Tue, 22 Dec 2015 19:20:03 +0000 (15:20 -0400)]
make linkAnnex detect when the file changes as it's being copied/linked in

This fixes a race where the modified file ended up in annex/objects, and
the InodeCache stored in the database was for the modified version, so
git-annex didn't know it had gotten modified.

The race could occur when the smudge filter was running; now it gets the
InodeCache before generating the Key, which avoids the race.

10 years agorefactoring
Joey Hess [Tue, 22 Dec 2015 17:23:33 +0000 (13:23 -0400)]
refactoring

no behavior changes

10 years agowip v6 support for assistant
Joey Hess [Mon, 21 Dec 2015 22:41:15 +0000 (18:41 -0400)]
wip v6 support for assistant

Files are not yet added to v6 repos in unlocked mode.

10 years agoremove (v6) associated file in unannex
Joey Hess [Mon, 21 Dec 2015 22:00:13 +0000 (18:00 -0400)]
remove (v6) associated file in unannex

10 years agoMerge branch 'master' into smudge
Joey Hess [Mon, 21 Dec 2015 21:12:46 +0000 (17:12 -0400)]
Merge branch 'master' into smudge

10 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Mon, 21 Dec 2015 16:57:20 +0000 (12:57 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

10 years agoaddurl: Added --batch option.
Joey Hess [Mon, 21 Dec 2015 16:57:13 +0000 (12:57 -0400)]
addurl: Added --batch option.

10 years agoAdded a comment
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4 [Mon, 21 Dec 2015 15:46:53 +0000 (15:46 +0000)]
Added a comment

10 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Mon, 21 Dec 2015 15:34:51 +0000 (11:34 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

10 years agoAdded a comment
cbaines [Mon, 21 Dec 2015 13:33:34 +0000 (13:33 +0000)]
Added a comment

10 years agoAdded a comment
frost.kristian@75a6b6a25121f985cd8708f98c691d41716ac720 [Mon, 21 Dec 2015 13:08:49 +0000 (13:08 +0000)]
Added a comment

10 years agoAdded a comment
cbaines [Mon, 21 Dec 2015 12:40:52 +0000 (12:40 +0000)]
Added a comment

10 years agoAdded a comment
cbaines [Mon, 21 Dec 2015 12:32:55 +0000 (12:32 +0000)]
Added a comment

10 years agoAdded a comment
https://openid.stackexchange.com/user/e65e6d0e-58ba-41de-84cc-1f2ba54cf574 [Mon, 21 Dec 2015 06:02:21 +0000 (06:02 +0000)]
Added a comment

10 years agoAdded a comment: A problem with SmartGit then?
jhannwong@c9c7a67b5632a4bbc0c959cfeb3d340e02f28565 [Mon, 21 Dec 2015 03:21:59 +0000 (03:21 +0000)]
Added a comment: A problem with SmartGit then?

10 years ago(no commit message)
frost.kristian@75a6b6a25121f985cd8708f98c691d41716ac720 [Sun, 20 Dec 2015 21:43:57 +0000 (21:43 +0000)]

10 years agoAdded a comment
sts [Sun, 20 Dec 2015 19:49:27 +0000 (19:49 +0000)]
Added a comment

10 years agofix build warnings under ghc 7.10
Joey Hess [Sat, 19 Dec 2015 21:42:45 +0000 (17:42 -0400)]
fix build warnings under ghc 7.10

Caused by AMP.. Since I've finally upgraded my dev laptop to 7.10,
I may start missing imports that are not needed with it but are with older
versions..

10 years agoupdate
Joey Hess [Sat, 19 Dec 2015 18:33:10 +0000 (14:33 -0400)]
update

10 years agoreuse comment
Joey Hess [Sat, 19 Dec 2015 18:29:40 +0000 (14:29 -0400)]
reuse comment

10 years agocomment
Joey Hess [Sat, 19 Dec 2015 18:27:22 +0000 (14:27 -0400)]
comment

10 years agocomment
Joey Hess [Sat, 19 Dec 2015 18:19:24 +0000 (14:19 -0400)]
comment

10 years agocomment
Joey Hess [Sat, 19 Dec 2015 18:07:57 +0000 (14:07 -0400)]
comment

10 years agocomment
Joey Hess [Sat, 19 Dec 2015 17:59:03 +0000 (13:59 -0400)]
comment

10 years agocomment
Joey Hess [Sat, 19 Dec 2015 17:55:28 +0000 (13:55 -0400)]
comment

10 years agocomment
Joey Hess [Sat, 19 Dec 2015 17:51:26 +0000 (13:51 -0400)]
comment

10 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Sat, 19 Dec 2015 17:47:01 +0000 (13:47 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

10 years agostatus: On crippled filesystems, was displaying M for all annexed files that were...
Joey Hess [Sat, 19 Dec 2015 17:36:40 +0000 (13:36 -0400)]
status: On crippled filesystems, was displaying M for all annexed files that 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.

10 years ago(no commit message)
https://openid.stackexchange.com/user/e65e6d0e-58ba-41de-84cc-1f2ba54cf574 [Sat, 19 Dec 2015 06:52:08 +0000 (06:52 +0000)]

10 years agoadd news item for git-annex 5.20151218
Joey Hess [Fri, 18 Dec 2015 18:48:04 +0000 (14:48 -0400)]
add news item for git-annex 5.20151218

10 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Fri, 18 Dec 2015 18:43:12 +0000 (14:43 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

10 years agoAdded a comment
neocryptek@659edac901ffbc8e541a974f8f18987eeafc63bd [Fri, 18 Dec 2015 18:09:54 +0000 (18:09 +0000)]
Added a comment

10 years agoprep release
Joey Hess [Fri, 18 Dec 2015 16:09:55 +0000 (12:09 -0400)]
prep release

10 years agointeraction with shared clones
Joey Hess [Thu, 17 Dec 2015 22:46:52 +0000 (18:46 -0400)]
interaction with shared clones

10 years agoAdded a comment
SamuelTardieu [Thu, 17 Dec 2015 11:15:55 +0000 (11:15 +0000)]
Added a comment

10 years ago(no commit message)
jhannwong@c9c7a67b5632a4bbc0c959cfeb3d340e02f28565 [Thu, 17 Dec 2015 02:25:02 +0000 (02:25 +0000)]

10 years ago(no commit message)
pete.ward@26c41318616c4cf9601d0431557c1df734ccdb77 [Wed, 16 Dec 2015 22:15:17 +0000 (22:15 +0000)]

10 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 16 Dec 2015 21:05:12 +0000 (17:05 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

10 years agodevblog
Joey Hess [Wed, 16 Dec 2015 21:04:48 +0000 (17:04 -0400)]
devblog

10 years agoupdate
Joey Hess [Wed, 16 Dec 2015 21:04:31 +0000 (17:04 -0400)]
update

10 years agotest suite down to only 4 fails with v6
Joey Hess [Wed, 16 Dec 2015 20:56:27 +0000 (16:56 -0400)]
test suite down to only 4 fails with v6

10 years agoupdate todo list
Joey Hess [Wed, 16 Dec 2015 20:02:21 +0000 (16:02 -0400)]
update todo list

10 years agofix docs
Joey Hess [Wed, 16 Dec 2015 20:00:41 +0000 (16:00 -0400)]
fix docs

"git -a annex.largefiles=* add" cannot be used.. git does not pass the
config along to the smudge filter, sadly.

10 years agov6: fix locking modified file when the content is not present
Joey Hess [Wed, 16 Dec 2015 19:35:42 +0000 (15:35 -0400)]
v6: fix locking modified file when the content is not present

10 years agofix add of file that was locked but has been replaced by a new, unlocked file (v6)
Joey Hess [Wed, 16 Dec 2015 18:53:41 +0000 (14:53 -0400)]
fix add of file that was locked but has been replaced by a new, unlocked file (v6)

10 years agofix reversion in v5 git-annex add of unlocked file
Joey Hess [Wed, 16 Dec 2015 18:27:12 +0000 (14:27 -0400)]
fix reversion in v5 git-annex add of unlocked file

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.

10 years agotemporarily remove cached keys database connection
Joey Hess [Wed, 16 Dec 2015 18:05:26 +0000 (14:05 -0400)]
temporarily remove cached keys database connection

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.

10 years agoreorder database shutdown to be concurrency safe
Joey Hess [Wed, 16 Dec 2015 17:52:43 +0000 (13:52 -0400)]
reorder database shutdown to be concurrency safe

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".

10 years agocomment
Joey Hess [Wed, 16 Dec 2015 17:24:45 +0000 (13:24 -0400)]
comment

10 years agopass --version to init when needed
Joey Hess [Wed, 16 Dec 2015 17:14:18 +0000 (13:14 -0400)]
pass --version to init when needed

10 years agoMerge branch 'master' into smudge
Joey Hess [Wed, 16 Dec 2015 17:07:46 +0000 (13:07 -0400)]
Merge branch 'master' into smudge

10 years agoAdded a comment
wsha.code+ga@b38779424f41c5701bbe5937340be43ff1474b2d [Wed, 16 Dec 2015 11:21:48 +0000 (11:21 +0000)]
Added a comment

10 years agopoll vote (My phone (or MP3 player))
14.203.223.70 [Wed, 16 Dec 2015 07:09:17 +0000 (07:09 +0000)]
poll vote (My phone (or MP3 player))

10 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 16 Dec 2015 00:50:52 +0000 (20:50 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

10 years agobring back some deleted functions that git-repair uses
Joey Hess [Wed, 16 Dec 2015 00:42:35 +0000 (20:42 -0400)]
bring back some deleted functions that git-repair uses

10 years agoimprove temp dir security
Joey Hess [Wed, 16 Dec 2015 00:20:37 +0000 (20:20 -0400)]
improve temp dir security

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.

10 years agostarting to work on test suite for v6
Joey Hess [Tue, 15 Dec 2015 21:19:26 +0000 (17:19 -0400)]
starting to work on test suite for v6

10 years agoUse git-annex init --version=6 to get v6 for now
Joey Hess [Tue, 15 Dec 2015 21:17:13 +0000 (17:17 -0400)]
Use git-annex init --version=6 to get v6 for now

Not ready to make it default because of the direct mode upgrade needing to
all happen at once.

10 years agoin v6 mode, unannex does not interact badly with pre-commit hook
Joey Hess [Tue, 15 Dec 2015 20:18:39 +0000 (16:18 -0400)]
in v6 mode, unannex does not interact badly with pre-commit hook

So can be used in a tree with staged changes, no problems. Much nicer.

10 years agorecent fsck changes caused ugly message when object was not present
Joey Hess [Tue, 15 Dec 2015 20:10:48 +0000 (16:10 -0400)]
recent fsck changes caused ugly message when object was not present

10 years agoupdate todo list
Joey Hess [Tue, 15 Dec 2015 20:07:02 +0000 (16:07 -0400)]
update todo list

10 years agoimplemented upgrade of direct mode repo to v6
Joey Hess [Tue, 15 Dec 2015 19:56:37 +0000 (15:56 -0400)]
implemented upgrade of direct mode repo to v6

10 years agoreorg
Joey Hess [Tue, 15 Dec 2015 19:34:28 +0000 (15:34 -0400)]
reorg

10 years agochanges for v6 broke fsck in direct mode
Joey Hess [Tue, 15 Dec 2015 18:27:20 +0000 (14:27 -0400)]
changes for v6 broke fsck in direct mode

10 years agoclarify
Joey Hess [Tue, 15 Dec 2015 18:18:44 +0000 (14:18 -0400)]
clarify

10 years agodoc update
Joey Hess [Tue, 15 Dec 2015 18:17:34 +0000 (14:17 -0400)]
doc update

10 years agoadd: In v6 mode, acts on modified files.
Joey Hess [Tue, 15 Dec 2015 18:17:00 +0000 (14:17 -0400)]
add: In v6 mode, acts on modified files.

Same as was done in direct mode, except in v6 mode add always adds files
locked, so

10 years agofix incorrect doc change
Joey Hess [Tue, 15 Dec 2015 18:14:19 +0000 (14:14 -0400)]
fix incorrect doc change

10 years agoavoid pre-commit check having to do with v5 unlocked files when in v6 mode
Joey Hess [Tue, 15 Dec 2015 18:09:36 +0000 (14:09 -0400)]
avoid pre-commit check having to do with v5 unlocked files when in v6 mode

10 years agorename stuff for v5 unlocked files to indicate it's old
Joey Hess [Tue, 15 Dec 2015 18:08:07 +0000 (14:08 -0400)]
rename stuff for v5 unlocked files to indicate it's old

10 years agoupdate doc for v6
Joey Hess [Tue, 15 Dec 2015 18:07:54 +0000 (14:07 -0400)]
update doc for v6

10 years agoadd: no need to make pass for old unlocked files in v6
Joey Hess [Tue, 15 Dec 2015 18:02:53 +0000 (14:02 -0400)]
add: no need to make pass for old unlocked files in v6

10 years agohave clean filter check if the filename was already in use by an old key
Joey Hess [Tue, 15 Dec 2015 17:06:52 +0000 (13:06 -0400)]
have clean filter check if the filename was already in use by an old key

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.

10 years agoadd getAssociatedKey
Joey Hess [Tue, 15 Dec 2015 17:05:23 +0000 (13:05 -0400)]
add getAssociatedKey

I guess this is just as efficient as the getAssociatedFiles query, but I
have not tried to optimise the database yet.

10 years agoupdate inode cache to cover file even when nothing needs to be done to linkAnnex
Joey Hess [Tue, 15 Dec 2015 17:02:33 +0000 (13:02 -0400)]
update inode cache to cover file even when nothing needs to be done to linkAnnex

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.

10 years agotodo
Joey Hess [Tue, 15 Dec 2015 16:38:32 +0000 (12:38 -0400)]
todo

10 years agoMerge branch 'master' into smudge
Joey Hess [Tue, 15 Dec 2015 16:01:21 +0000 (12:01 -0400)]
Merge branch 'master' into smudge

10 years agoremoved
wsha.code+ga@b38779424f41c5701bbe5937340be43ff1474b2d [Mon, 14 Dec 2015 12:04:46 +0000 (12:04 +0000)]
removed

10 years agoAdded a comment
wsha.code+ga@b38779424f41c5701bbe5937340be43ff1474b2d [Mon, 14 Dec 2015 12:03:58 +0000 (12:03 +0000)]
Added a comment

10 years agoAdded a comment
wsha.code+ga@b38779424f41c5701bbe5937340be43ff1474b2d [Mon, 14 Dec 2015 12:03:23 +0000 (12:03 +0000)]
Added a comment

10 years agoAdded a comment: It worked
https://me.yahoo.com/a/ZF7p46cPmpWtb9zvA8iTitPmiQ--#eb014 [Mon, 14 Dec 2015 04:46:46 +0000 (04:46 +0000)]
Added a comment: It worked

10 years agoAdded a comment: I'm also having this issue
https://me.yahoo.com/a/ZF7p46cPmpWtb9zvA8iTitPmiQ--#eb014 [Mon, 14 Dec 2015 03:17:58 +0000 (03:17 +0000)]
Added a comment: I'm also having this issue

10 years agoAdded a comment
yminus [Sun, 13 Dec 2015 22:55:16 +0000 (22:55 +0000)]
Added a comment

10 years agoAdded a comment: Indeed
scorchgeek [Sun, 13 Dec 2015 22:30:47 +0000 (22:30 +0000)]
Added a comment: Indeed

10 years agoAdded a comment
basak [Sun, 13 Dec 2015 21:35:59 +0000 (21:35 +0000)]
Added a comment

10 years agoAdded a comment: Repairing ignores disk space issues too
joakim.hovlandsvag@ad788ffa13d1ccbf03f2c485653900f8baa33950 [Sun, 13 Dec 2015 09:13:25 +0000 (09:13 +0000)]
Added a comment: Repairing ignores disk space issues too

10 years ago(no commit message)
joakim.hovlandsvag@ad788ffa13d1ccbf03f2c485653900f8baa33950 [Sun, 13 Dec 2015 07:42:22 +0000 (07:42 +0000)]

10 years agocreate page
scorchgeek [Sat, 12 Dec 2015 22:44:00 +0000 (22:44 +0000)]
create page

10 years agoDebian: Build depend on concurrent-output.
Joey Hess [Sat, 12 Dec 2015 16:19:31 +0000 (12:19 -0400)]
Debian: Build depend on concurrent-output.

In unstable now.

10 years agoAdded a comment
wsha.code+ga@b38779424f41c5701bbe5937340be43ff1474b2d [Sat, 12 Dec 2015 10:42:47 +0000 (10:42 +0000)]
Added a comment

10 years agoAdded a comment
wsha.code+ga@b38779424f41c5701bbe5937340be43ff1474b2d [Sat, 12 Dec 2015 05:28:51 +0000 (05:28 +0000)]
Added a comment

10 years agoAdded a comment
https://openid.stackexchange.com/user/27ceb3c5-0762-42b8-8f8a-ed21c284748f [Fri, 11 Dec 2015 22:58:22 +0000 (22:58 +0000)]
Added a comment

10 years agoavoid smudge filter returning invalid content
Joey Hess [Fri, 11 Dec 2015 21:53:37 +0000 (17:53 -0400)]
avoid smudge filter returning invalid content

1. git add file
2. git commit
3. modify file
4. git commit
5. git reset HEAD^

Before this fix, that resulted in git saying the file was modified. And
indeed, it didn't have the content it should in the just checked out ref,
because step 3 modified the object file for the old key.

10 years ago2 more data -> 2 more days
http://www.ryantm.com/ [Fri, 11 Dec 2015 21:04:54 +0000 (21:04 +0000)]
2 more data -> 2 more days

10 years agodevblog
Joey Hess [Fri, 11 Dec 2015 20:24:21 +0000 (16:24 -0400)]
devblog

10 years agoupdate
Joey Hess [Fri, 11 Dec 2015 20:22:40 +0000 (16:22 -0400)]
update

10 years agochecked getKeysPresent; it's ok for v6 unlocked files
Joey Hess [Fri, 11 Dec 2015 20:12:42 +0000 (16:12 -0400)]
checked getKeysPresent; it's ok for v6 unlocked files

When a v6 unlocked files is removed from the work tree,
unused doesn't show it. When it gets removed from the index,
unused does show it. This is the same as a locked file.

10 years agofsck for v6 unlocked files
Joey Hess [Fri, 11 Dec 2015 20:05:56 +0000 (16:05 -0400)]
fsck for v6 unlocked files

This only adds 1 stat to each file fscked for locked files, so
added overhead is minimal.

For unlocked files it has to access the database to see if a file
is modified.