git-annex/Utility
Joey Hess 91c4dcfc69 Can now restart certain long-running git processes if they crash, and continue working.
Fuzz tests have shown that git cat-file --batch sometimes stops running.
It's not yet known why (no error message; repo seems ok). But this is
something we can deal with in the CoProcess framework, since all 3 types of
long-running git processes should be restartable if they fail.

Note that, as implemented, only IO errors are caught. So an error thrown
by the reveiver, when it sees something that is not valid output from
git cat-file (etc) will not cause a restart. I don't want it to retry
if git commands change their output or are just outputting garbage.
This does mean that if the command did a partial output and crashed in the
middle, it would still not be restarted.

There is currently no guard against restarting a command repeatedly, if,
for example, it crashes repeatedly on startup.
2013-05-31 12:42:13 -04:00
..
DirWatcher let's put type modules under the parent module, not in a Types directory 2013-03-10 22:24:13 -04:00
Gpg GnuPG options for symmetric encryption. 2013-03-11 09:48:38 -04:00
Applicative.hs
Base64.hs tag xmpp pushes with jid 2013-03-06 16:29:19 -04:00
CoProcess.hs Can now restart certain long-running git processes if they crash, and continue working. 2013-05-31 12:42:13 -04:00
CopyFile.hs finished where indentation changes 2012-12-13 00:24:19 -04:00
Daemon.hs fix a minor fd leak 2013-05-27 16:48:41 -04:00
DataUnits.hs finished where indentation changes 2012-12-13 00:24:19 -04:00
DBus.hs finished where indentation changes 2012-12-13 00:24:19 -04:00
Directory.hs better nukefile 2013-05-21 13:03:46 -04:00
DirWatcher.hs assistant: Fix OSX bug that prevented committing changed files to a repository when in indirect mode. 2013-03-17 17:01:43 -04:00
DiskFree.hs tweak 2013-03-13 14:54:52 -04:00
Dot.hs finished where indentation changes 2012-12-13 00:24:19 -04:00
Env.hs fix the day's windows permissions damage 2013-05-12 19:09:48 -04:00
Exception.hs better nukefile 2013-05-21 13:03:46 -04:00
ExternalSHA.hs configure: Better checking that sha commands output in the desired format. 2013-05-08 11:17:09 -04:00
FileMode.hs fix permission damage (thanks, Windows) 2013-05-11 23:54:25 -04:00
FileSystemEncoding.hs
Format.hs finished where indentation changes 2012-12-13 00:24:19 -04:00
FreeDesktop.hs finished where indentation changes 2012-12-13 00:24:19 -04:00
FSEvents.hs let's put type modules under the parent module, not in a Types directory 2013-03-10 22:24:13 -04:00
Gpg.hs Allow building with gpg2. 2013-05-19 17:59:58 -04:00
HumanTime.hs finished where indentation changes 2012-12-13 00:24:19 -04:00
InodeCache.hs fix permission damage (thanks, Windows) 2013-05-11 23:54:25 -04:00
INotify.hs whups, I didn't mean to commit this, it was in to more quickly test out of limit behavior 2013-04-24 11:52:24 -04:00
JSONStream.hs whitespace fixes 2012-12-13 00:45:27 -04:00
Kqueue.hs let's put type modules under the parent module, not in a Types directory 2013-03-10 22:24:13 -04:00
libdiskfree.c Makefile now builds using cabal, taking advantage of cabal's automatic detection of appropriate build flags. 2013-02-27 02:39:22 -04:00
libdiskfree.h
libkqueue.c include sys/types.h 2013-04-24 10:39:52 -04:00
libkqueue.h
libmounts.c
libmounts.h Got removable media mount detection working on Android. 2013-05-04 16:19:25 -04:00
LogFile.hs fix permission damage (thanks, Windows) 2013-05-11 23:54:25 -04:00
Lsof.hs clean up from windows porting 2013-05-11 18:23:41 -04:00
Matcher.hs fix handling of Not in the matcher 2013-05-25 13:50:27 -04:00
Metered.hs webapp: Progess bar fixes for many types of special remotes. 2013-03-28 17:04:37 -04:00
Misc.hs fix permission damage (thanks, Windows) 2013-05-11 23:54:25 -04:00
Monad.hs pasto 2012-11-02 12:48:52 -04:00
Mounts.hsc Got removable media mount detection working on Android. 2013-05-04 16:19:25 -04:00
Network.hs finished where indentation changes 2012-12-13 00:24:19 -04:00
NotificationBroadcaster.hs webapp: Fix a race that sometimes caused alerts or other notifications to be missed if they occurred while a page was loading. 2013-03-27 14:56:20 -04:00
OSX.hs squelch warning 2012-11-26 16:29:05 -04:00
Parallel.hs finished where indentation changes 2012-12-13 00:24:19 -04:00
PartialPrelude.hs
Path.hs fix the day's Windows permissions damage 2013-05-14 20:15:14 -04:00
Percentage.hs finished where indentation changes 2012-12-13 00:24:19 -04:00
Process.hs Fix a zombie that could result when running a process like gpg to read and write to it. 2013-05-19 15:52:22 -04:00
QuickCheck.hs Stop depending on testpack. 2013-02-27 23:23:41 -04:00
Rsync.hs deal with Cygwin rsync paths issue 2013-05-14 13:24:15 -04:00
SafeCommand.hs webapp: Run ssh server probes in a way that will work when the login shell is a monstrosity that should have died 25 years ago, such as csh. 2013-03-29 13:09:30 -04:00
Shell.hs fix use of wrong shebang when android is installing git-annex-shell wrapper on server 2013-05-06 15:58:13 -04:00
SRV.hs remove debug prints 2013-05-30 13:36:51 -04:00
Tense.hs finished where indentation changes 2012-12-13 00:24:19 -04:00
ThreadLock.hs
ThreadScheduler.hs fix warning 2013-05-26 16:02:55 -04:00
TList.hs add two long-running XMPP push threads, no more inversion of control 2013-05-22 15:13:31 -04:00
Tmp.hs rename module 2013-05-12 19:19:28 -04:00
Touch.hsc finished where indentation changes 2012-12-13 00:24:19 -04:00
Url.hs Improve error handling when getting uuid of http remotes to auto-ignore, like with ssh remotes. 2013-05-25 01:47:19 -04:00
UserInfo.hs fix the day's windows permissions damage 2013-05-12 19:09:48 -04:00
Verifiable.hs finished where indentation changes 2012-12-13 00:24:19 -04:00
WebApp.hs rename module 2013-05-12 19:19:28 -04:00
Yesod.hs don't need any of this on android 2013-04-15 19:32:45 -04:00