git-annex/Assistant/Threads
Joey Hess 766c31c95c watch git-annex program file to detect upgrades
Not yet wired up to restart the assistant on upgrade; that needs careful
sanity checking to wait until the upgrade is done before restarting.

Used the DirWatcher here, so it gets events for any changes to the
directory containing the program file. (But not subdirs.) This is necessary
in order to detect when the file is renamed as part of the upgrade, which
an inotify on a single file would not detect. (Also, I have DirWatcher code,
but not FileWatcher code.)

Note that upgrades that remove or rename a whole directory tree containing
the executable will *not* trigger this code. So eg, deleting and replacing
the whole standalone tarball dir tree won't work -- but untarring it
over top will. So should dpkg package upgrades.

Added programPath, using a new GHC feature to find the full path to the
executable. The fallback code for old GHC or unsupported OS is less good;
its worst failure mode would be either failing to find the program, and so
not checking for upgrades, or finding a git-annex that's in PATH, but is
not the one running.

This commit was sponsored by John Roepke.
2013-11-22 18:46:45 -04:00
..
Committer.hs hlint 2013-10-02 22:59:07 -04:00
ConfigMonitor.hs update for LsTree type change 2013-10-17 14:51:39 -04:00
Cronner.hs webapp: remind user when using repositories that lack consistency checks 2013-10-29 16:50:38 -04:00
DaemonStatus.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
Glacier.hs hlint 2013-10-02 22:59:07 -04:00
Merger.hs hlint 2013-10-02 22:59:07 -04:00
MountWatcher.hs webapp: remind user when using repositories that lack consistency checks 2013-10-29 16:50:38 -04:00
NetWatcher.hs upgrade alerts 2013-11-21 17:49:56 -04:00
PairListener.hs Improve local pairing behavior when two computers both try to start the pairing process separately. 2013-11-02 15:10:29 -04:00
ProblemFixer.hs webapp: remind user when using repositories that lack consistency checks 2013-10-29 16:50:38 -04:00
Pusher.hs automatically launch git repository repair 2013-10-27 16:42:13 -04:00
SanityChecker.hs log missing index at notice priority 2013-11-13 14:42:59 -04:00
TransferPoller.hs remove debug 2013-04-11 16:36:45 -04:00
Transferrer.hs assistant: Support repairing git remotes that are locally accessible 2013-10-27 15:38:59 -04:00
TransferScanner.hs hlint 2013-10-02 22:59:07 -04:00
TransferWatcher.hs moved code out of webapp 2013-10-26 16:58:16 -04:00
Upgrader.hs watch git-annex program file to detect upgrades 2013-11-22 18:46:45 -04:00
UpgradeWatcher.hs watch git-annex program file to detect upgrades 2013-11-22 18:46:45 -04:00
Watcher.hs assistant: Notice on startup when the index file is corrupt, and auto-repair. 2013-11-13 14:27:17 -04:00
WebApp.hs upgrade alerts 2013-11-21 17:49:56 -04:00
XMPPClient.hs add config page for fsck, and alert with button when a fsck is running 2013-10-10 18:05:53 -04:00
XMPPPusher.hs add two long-running XMPP push threads, no more inversion of control 2013-05-22 15:13:31 -04:00