Commit graph

9818 commits

Author SHA1 Message Date
https://www.google.com/accounts/o8/id?id=AItOawkC0W3ZQERUaTkHoks6k68Tsp1tz510nGo
2ed4087110 Added a comment: git annex copy not working 2013-10-06 10:18:10 +00:00
https://www.google.com/accounts/o8/id?id=AItOawkC0W3ZQERUaTkHoks6k68Tsp1tz510nGo
0ebc14267f Added a comment: git annex sync 2013-10-06 08:59:26 +00:00
http://edheil.wordpress.com/
848c398b97 Added a comment 2013-10-06 06:45:15 +00:00
https://www.google.com/accounts/o8/id?id=AItOawlkA6XinbeOdnEDxEGQUWyjqPGh0kdMXr4
a8bece239f 2013-10-06 05:02:52 +00:00
Joey Hess
feef7d3800 devblog 2013-10-05 17:26:17 -04:00
Joey Hess
635c9a1549 assistant: Detect stale git lock files at startup time, and remove them.
Extends the index.lock handling to other git lock files. I surveyed
all lock files used by git, and found more than I expected. All are
handled the same in git; it leaves them open while doing the operation,
possibly writing the new file content to the lock file, and then closes
them when done.

The gc.pid file is excluded because it won't affect the normal operation
of the assistant, and waiting for a gc to finish on startup wouldn't be
good.

All threads except the webapp thread wait on the new startup sanity checker
thread to complete, so they won't try to do things with git that fail
due to stale lock files. The webapp thread mostly avoids doing that kind of
thing itself. A few configurators might fail on lock files, but only if the
user is explicitly trying to run them. The webapp needs to start
immediately when the user has opened it, even if there are stale lock
files.

Arranging for the threads to wait on the startup sanity checker was a bit
of a bear. Have to get all the NotificationHandles set up before the
startup sanity checker runs, or they won't see its signal. Perhaps
the NotificationBroadcaster is not the best interface to have used for
this. Oh well, it works.

This commit was sponsored by Michael Jakl
2013-10-05 17:04:21 -04:00
Joey Hess
6657aa8061 Merge branch 'master' of ssh://git-annex.branchable.com 2013-10-05 15:07:38 -04:00
Joey Hess
1be4d281d6 Better sanitization of problem characters when generating URL and WORM keys.
FAT has a lot of characters it does not allow in filenames, like ? and *
It's probably the worst offender, but other filesystems also have
limitiations.

In 2011, I made keyFile escape : to handle FAT, but missed the other
characters. It also turns out that when I did that, I was also living
dangerously; any existing keys that contained a : had their object
location change. Oops.

So, adding new characters to escape to keyFile is out. Well, it would be
possible to make keyFile behave differently on a per-filesystem basis, but
this would be a real nightmare to get right. Consider that a rsync special
remote uses keyFile to determine the filenames to use, and we don't know
the underlying filesystem on the rsync server..

Instead, I have gone for a solution that is backwards compatable and
simple. Its only downside is that already generated URL and WORM keys
might not be able to be stored on FAT or some other filesystem that
dislikes a character used in the key. (In this case, the user can just
migrate the problem keys to a checksumming backend. If this became a big
problem, fsck could be made to detect these and suggest a migration.)

Going forward, new keys that are created will escape all characters that
are likely to cause problems. And if some filesystem comes along that's
even worse than FAT (seems unlikely, but here it is 2013, and people are
still using FAT!), additional characters can be added to the set that are
escaped without difficulty.

(Also, made WORM limit the part of the filename that is embedded in the key,
to deal with filesystem filename length limits. This could have already
been a problem, but is more likely now, since the escaping of the filename
can make it longer.)

This commit was sponsored by Ian Downes
2013-10-05 15:01:49 -04:00
https://www.google.com/accounts/o8/id?id=AItOawnpdM9F8VbtQ_H5PaPMpGSxPe_d5L1eJ6w
1dccaeb8fe 2013-10-05 15:29:20 +00:00
https://www.google.com/accounts/o8/id?id=AItOawnpdM9F8VbtQ_H5PaPMpGSxPe_d5L1eJ6w
3db1985a01 Added a comment 2013-10-05 10:45:16 +00:00
http://joeyh.name/
71dba0187a Added a comment 2013-10-04 20:50:34 +00:00
http://joeyh.name/
1537c21eb0 Added a comment 2013-10-04 20:17:07 +00:00
http://joeyh.name/
cd31d53e96 Added a comment 2013-10-04 20:13:37 +00:00
Joey Hess
3d5fe9b794 add news item for git-annex 4.20131002 2013-10-04 13:09:23 -04:00
Joey Hess
99e5f52e7f add news item for git-annex 4.20131003 2013-10-04 13:07:52 -04:00
https://www.google.com/accounts/o8/id?id=AItOawnpdM9F8VbtQ_H5PaPMpGSxPe_d5L1eJ6w
13f776140d 2013-10-04 14:41:05 +00:00
https://www.google.com/accounts/o8/id?id=AItOawnpdM9F8VbtQ_H5PaPMpGSxPe_d5L1eJ6w
f0ec3d355a 2013-10-04 14:39:15 +00:00
http://cstork.org/
7b7d4b2353 Added a comment 2013-10-04 11:17:42 +00:00
http://cstork.org/
c5ef652a4d Added a comment: How should this interact with the trust model and location tracking? 2013-10-04 11:13:11 +00:00
https://www.google.com/accounts/o8/id?id=AItOawnyMzZZLS1xGW1raqc_9Md6Ksdkvx5rUJU
5a330fe6c8 Added a comment 2013-10-04 10:59:30 +00:00
http://cstork.org/
0d14285585 Added a comment: News page not updated 2013-10-04 09:38:21 +00:00
http://olivier.mehani.name/
fe52de18b5 Added a comment 2013-10-04 05:14:16 +00:00
Joey Hess
891242ad26 another lock file 2013-10-03 17:05:53 -04:00
Joey Hess
f4d984e3cc wording 2013-10-03 17:00:45 -04:00
Joey Hess
d822b7a3dd link 2013-10-03 17:00:04 -04:00
Joey Hess
ece27f184d devblog 2013-10-03 16:58:40 -04:00
Joey Hess
93dbb7842e watcher: Detect at startup time when there is a stale .git/lock, and remove it so it does not interfere with the automatic commits of changed files. 2013-10-03 16:57:21 -04:00
Joey Hess
be0b7341b4 Merge branch 'master' of ssh://git-annex.branchable.com 2013-10-03 12:34:27 -04:00
Joey Hess
20fb905bb6 allow building w/o cryptohash
Mostly for the debian stable autobuilds, which have a too old version
to use the Crypto.Hash module.
2013-10-03 12:33:38 -04:00
https://www.google.com/accounts/o8/id?id=AItOawmf-gdwX6Nk3DyHyVCh3C_e8VGcAnPbMCI
05db0fef17 2013-10-03 13:02:40 +00:00
http://joeyh.name/
0724bf0d90 Added a comment 2013-10-03 00:06:11 +00:00
https://www.google.com/accounts/o8/id?id=AItOawlkA6XinbeOdnEDxEGQUWyjqPGh0kdMXr4
5cfa8f5b78 Added a comment: Starting git-annex assistant 2013-10-02 23:57:49 +00:00
volfyd
64b3f4120b 2013-10-02 22:11:57 +00:00
https://www.google.com/accounts/o8/id?id=AItOawnyMzZZLS1xGW1raqc_9Md6Ksdkvx5rUJU
8f97bdecfe Added a comment: confusion with bundled programs 2013-10-02 21:39:11 +00:00
https://www.google.com/accounts/o8/id?id=AItOawmKKg3Vmzk7KwRGRKjHVdtyoj1JfxLX6NM
b8053a0a7d Added a comment 2013-10-02 21:27:37 +00:00
http://joeyh.name/
d6986aef82 Added a comment 2013-10-02 20:37:04 +00:00
Joey Hess
e8bdd5d031 Merge branch 'master' of ssh://git-annex.branchable.com 2013-10-02 16:26:49 -04:00
https://www.google.com/accounts/o8/id?id=AItOawnyMzZZLS1xGW1raqc_9Md6Ksdkvx5rUJU
899d8959ca 2013-10-02 20:15:33 +00:00
Joey Hess
4709b28dbb devblog 2013-10-02 16:03:47 -04:00
Joey Hess
6b727839d6 prep release 2013-10-02 16:01:07 -04:00
Joey Hess
a05b763b01 Added SKEIN256 and SKEIN512 backends
SHA3 is still waiting for final standardization.
Although this is looking less likely given
https://www.cdt.org/blogs/joseph-lorenzo-hall/2409-nist-sha-3

In the meantime, cryptohash implements skein, and it's used by some of the
haskell ecosystem (for yesod sessions, IIRC), so this implementation is
likely to continue working. Also, I've talked with the cryprohash author
and he's a reasonable guy.

It makes sense to have an alternate high security hash, in case some
horrible attack is found against SHA2 tomorrow, or in case SHA3 comes out
and worst fears are realized.

I'd also like to support using skein for HMAC. But no hurry there and
a new version of cryptohash has much nicer HMAC code, so I will probably
wait until I can use that version.
2013-10-01 20:34:36 -04:00
Joey Hess
d9355d8064 devblog 2013-10-01 19:21:47 -04:00
Joey Hess
7286fbd93e gcrypt basically done 2013-10-01 19:12:08 -04:00
Joey Hess
bddfbef8be git-annex-shell gcryptsetup command
This was the least-bad alternative to get dedicated key gcrypt repos
working in the assistant.
2013-10-01 17:20:51 -04:00
https://www.google.com/accounts/o8/id?id=AItOawmKKg3Vmzk7KwRGRKjHVdtyoj1JfxLX6NM
caa5116c0a Added a comment 2013-10-01 18:33:06 +00:00
https://www.google.com/accounts/o8/id?id=AItOawmKKg3Vmzk7KwRGRKjHVdtyoj1JfxLX6NM
baf5069d49 Added a comment 2013-10-01 17:38:04 +00:00
https://www.google.com/accounts/o8/id?id=AItOawkeJKC5Sy0stmcTWyePOLEVv0G-x1yaT_w
213377e17c Added a comment: Additional Comments 2013-09-30 21:33:31 +00:00
Joey Hess
6b37fcffd8 assistant: More robust inotify handling; avoid crashing if a directory cannot be read. 2013-09-30 13:11:26 -04:00
Joey Hess
87c7f5dd62 Merge branch 'master' of ssh://git-annex.branchable.com 2013-09-30 12:49:06 -04:00
Joey Hess
7f7dcd315b fix direct mode switch permissions problem
Similar to how a similar problem with indirect was earlier fixed.
2013-09-30 12:48:40 -04:00