git-annex/Utility
Joey Hess 42281f12d6 bring back --quiet filtering of stdout and stderr, with deadlock fixed
I don't quite understand the cause of the deadlock. It only occurred
when git-annex-shell transferinfo was being spawned over ssh to feed
download transfer progress back. And if I removed this line from
feedprogressback, the deadlock didn't occur:
	bytes <- readSV v

The problem was not a leaked FD, as far as I could see. So what was it?
I don't know.

Anyway, this is a nice clean implementation, that avoids the deadlock.
Just fork off the async threads to handle filtering the stdout and stderr,
and let them clean up their handles whenever they decide to exit.

I've verified that the handles do get promptly closed, although a little
later than I would expect. Presumably that "little later" is what
was making waiting on the threads deadlock.

Despite the late exit, the last line of stdout and stderr appears where
I'd want it to, so I guess this is ok..
2015-04-06 20:20:52 -04:00
..
DirWatcher update my email address and homepage url 2015-01-21 12:50:09 -04:00
LockFile update my email address and homepage url 2015-01-21 12:50:09 -04:00
Applicative.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Base64.hs metadata: Fix encoding problem that led to mojibake when storing metadata strings that contained both unicode characters and a space (or '!') character. 2015-03-04 12:54:30 -04:00
Batch.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Bloom.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
CoProcess.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
CopyFile.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Daemon.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Data.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
DataUnits.hs merge change from propellor 2015-01-21 23:13:50 -04:00
DBus.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Directory.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
DirWatcher.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
DiskFree.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Dot.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
DottedVersion.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Env.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Exception.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
ExternalSHA.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
FileMode.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
FileSize.hs build fix 2015-01-20 17:27:42 -04:00
FileSystemEncoding.hs metadata: Fix encoding problem that led to mojibake when storing metadata strings that contained both unicode characters and a space (or '!') character. 2015-03-04 12:54:30 -04:00
Format.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
FreeDesktop.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Glob.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Gpg.hs WIP on making --quiet silence progress, and infra for concurrent progress bars 2015-04-03 16:48:30 -04:00
Hash.hs Added MD5 and MD5E backends. 2015-02-04 13:47:54 -04:00
HumanNumber.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
HumanTime.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
InodeCache.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
JSONStream.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
libdiskfree.c update my email address and homepage url 2015-01-21 12:50:09 -04:00
libdiskfree.h Renamed diskfree.c to avoid OSX case insensativity bug. 2012-04-13 11:26:39 -04:00
libkqueue.c update my email address and homepage url 2015-01-21 12:50:09 -04:00
libkqueue.h fix prototype 2012-06-19 01:57:19 -04:00
libmounts.c update my email address and homepage url 2015-01-21 12:50:09 -04:00
libmounts.h Got removable media mount detection working on Android. 2013-05-04 16:19:25 -04:00
LinuxMkLibs.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
LockFile.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
LogFile.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Lsof.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Matcher.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Metered.hs bring back --quiet filtering of stdout and stderr, with deadlock fixed 2015-04-06 20:20:52 -04:00
Misc.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Monad.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Mounts.hsc update my email address and homepage url 2015-01-21 12:50:09 -04:00
Network.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
NotificationBroadcaster.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
OSX.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Parallel.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
PartialPrelude.hs rename readMaybe to readish 2012-01-23 17:00:10 -04:00
Path.hs Significantly sped up processing of large numbers of directories passed to a single git-annex command. (try 2) 2015-04-02 01:44:32 -04:00
Percentage.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
PID.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
PosixFiles.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Process.hs well along the way to fully quiet --quiet 2015-04-04 14:34:03 -04:00
QuickCheck.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Quvi.hs fix intentional typo left in after debugging session, broke quvi support (last release is ok) 2015-02-19 14:31:04 -04:00
Rsync.hs well along the way to fully quiet --quiet 2015-04-04 14:34:03 -04:00
SafeCommand.hs comment 2015-04-02 00:34:06 -04:00
Scheduled.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Shell.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
SimpleProtocol.hs WIP on making --quiet silence progress, and infra for concurrent progress bars 2015-04-03 16:48:30 -04:00
SRV.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
SshConfig.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Tense.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
ThreadLock.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
ThreadScheduler.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
TList.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Tmp.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Touch.hsc update my email address and homepage url 2015-01-21 12:50:09 -04:00
URI.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Url.hs make downloadQuiet quiet again 2015-04-03 20:38:20 -04:00
UserInfo.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Verifiable.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
WebApp.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
winprocess.c windows: Fix process termination code. 2014-02-13 15:53:10 -04:00
WinProcess.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Yesod.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00