git-annex/Command
Joey Hess dd39e9e255
suggest when user may want annex.stalldetection
When annex.stalldetection is not enabled, and a likely stall is detected,
display a suggestion to enable it.

Note that the progress meter display is not taken down when displaying
the message, so it will display like this:

	0%    8 B                 0 B/s
	  Transfer seems to have stalled. To handle stalling transfers, configure annex.stalldetection
	0%    10 B                0 B/s

Although of course if it's really stalled, it will never update
again after the message. Taking down the progress meter and starting
a new one doesn't seem too necessary given how unusual this is,
also this does help show the state it was at when it stalled.

Use of uninterruptibleCancel here is ok, the thread it's canceling
only does STM transactions and sleeps. The annex thread that gets
forked off is separate to avoid it being canceled, so that it
can be joined back at the end.

A module cycle required moving from dupState the precaching of the
remote list. Doing it at startConcurrency should cover all the cases
where the remote list is used in concurrent actions.

This commit was sponsored by Kevin Mueller on Patreon.
2021-02-03 15:57:19 -04:00
..
Add.hs When adding files to an adjusted branch set up by --unlock-present, add them unlocked, not locked 2021-01-28 12:47:46 -04:00
AddUnused.hs more RawFilePath conversion 2020-11-03 10:11:04 -04:00
AddUrl.hs suggest when user may want annex.stalldetection 2021-02-03 15:57:19 -04:00
Adjust.hs rename to --unlock-present and better reverse adjusting 2020-11-13 14:56:43 -04:00
Assistant.hs add searchPathContents 2021-02-02 19:06:15 -04:00
Benchmark.hs improve benchmark --databases 2019-11-21 17:25:20 -04:00
CalcKey.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
CheckPresentKey.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Commit.hs use Branch.name instead of hard coding the branch name 2020-09-15 15:47:22 -04:00
Config.hs add "input" field to json output 2020-09-15 16:22:44 -04:00
ConfigList.hs all commands building except for assistant 2019-12-05 14:41:18 -04:00
ContentLocation.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Copy.hs more RawFilePath conversion 2020-11-03 10:11:04 -04:00
Dead.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Describe.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
DiffDriver.hs use filepath-bytestring for annex object manipulations 2019-12-11 15:25:07 -04:00
Direct.hs Automatically convert direct mode repositories to v7 with adjusted unlocked branches 2019-08-26 15:05:25 -04:00
Drop.hs mincopies 2021-01-06 14:15:19 -04:00
DropKey.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
DropUnused.hs mincopies 2021-01-06 14:15:19 -04:00
EnableRemote.hs cache remote.log 2020-09-22 13:52:26 -04:00
EnableTor.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
ExamineKey.hs examinekey: Added a "file" format variable 2020-11-16 09:59:11 -04:00
Expire.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Export.hs suggest when user may want annex.stalldetection 2021-02-03 15:57:19 -04:00
Find.hs examinekey: Added a "file" format variable 2020-11-16 09:59:11 -04:00
FindRef.hs Ref ByteString conversion done 2020-04-07 17:41:09 -04:00
Fix.hs Git.Queue: allow providing git common options like -c 2021-01-04 12:51:55 -04:00
Forget.hs generate more compact git-annex branch for imports 2020-12-23 15:25:16 -04:00
FromKey.hs Git.Queue: allow providing git common options like -c 2021-01-04 12:51:55 -04:00
Fsck.hs mincopies 2021-01-06 14:15:19 -04:00
FuzzTest.hs finish fixing removeLink on windows 2020-11-24 13:20:44 -04:00
GCryptSetup.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Get.hs get: Improve output when failing to get a file fails 2021-01-29 15:11:19 -04:00
Group.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
GroupWanted.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Help.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Import.hs When adding files to an adjusted branch set up by --unlock-present, add them unlocked, not locked 2021-01-28 12:47:46 -04:00
ImportFeed.hs importfeed: Avoid using youtube-dl when a feed does not contain an enclosure, but only a link to an url which youtube-dl does not support 2020-12-15 01:13:21 -04:00
InAnnex.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Indirect.hs Automatically convert direct mode repositories to v7 with adjusted unlocked branches 2019-08-26 15:05:25 -04:00
Info.hs add key to FileInfo 2020-12-14 17:42:02 -04:00
Init.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
InitRemote.hs cache remote.log 2020-09-22 13:52:26 -04:00
Inprogress.hs more RawFilePath conversion 2020-11-02 16:31:28 -04:00
List.hs add "input" field to json output 2020-09-15 16:22:44 -04:00
Lock.hs finished this stage of the RawFilePath conversion 2020-11-06 14:10:58 -04:00
LockContent.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Log.hs more RawFilePath conversion 2020-11-02 16:31:28 -04:00
LookupKey.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Map.hs add searchPathContents 2021-02-02 19:06:15 -04:00
MatchExpression.hs split ProvidedInfo and UserProvidedInfo 2020-09-28 12:12:38 -04:00
Merge.hs use Branch.name instead of hard coding the branch name 2020-09-15 15:47:22 -04:00
MetaData.hs generate more compact git-annex branch for imports 2020-12-23 15:25:16 -04:00
Migrate.hs more RawFilePath conversion 2020-11-03 10:11:04 -04:00
MinCopies.hs mincopies 2021-01-06 14:15:19 -04:00
Mirror.hs mincopies 2021-01-06 14:15:19 -04:00
Move.hs mincopies 2021-01-06 14:15:19 -04:00
Multicast.hs add key to FileInfo 2020-12-14 17:42:02 -04:00
NotifyChanges.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
NumCopies.hs mincopies 2021-01-06 14:15:19 -04:00
P2P.hs finish fixing removeLink on windows 2020-11-24 13:20:44 -04:00
P2PStdIO.hs finish CommandStart transition 2019-06-12 13:24:01 -04:00
PostReceive.hs sync --only-annex and annex.synconlyannex 2020-02-17 16:33:10 -04:00
PreCommit.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Proxy.hs Automatically convert direct mode repositories to v7 with adjusted unlocked branches 2019-08-26 15:05:25 -04:00
ReadPresentKey.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
RecvKey.hs make getViaTmpFrom no longer update location log 2020-12-11 11:50:13 -04:00
RegisterUrl.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Reinit.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Reinject.hs annex.adjustedbranchrefresh 2020-11-16 14:27:28 -04:00
ReKey.hs annex.adjustedbranchrefresh 2020-11-16 14:27:28 -04:00
RemoteDaemon.hs remotedaemon: Don't list --stop in help since it's not supported. 2019-09-30 14:40:46 -04:00
RenameRemote.hs cache remote.log 2020-09-22 13:52:26 -04:00
Repair.hs finished this stage of the RawFilePath conversion 2020-11-06 14:10:58 -04:00
Required.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
ResolveMerge.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
RmUrl.hs more RawFilePath conversion 2020-11-02 16:31:28 -04:00
Schedule.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Semitrust.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
SendKey.hs suggest when user may want annex.stalldetection 2021-02-03 15:57:19 -04:00
SetKey.hs annex.adjustedbranchrefresh 2020-11-16 14:27:28 -04:00
SetPresentKey.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Smudge.hs fix breakage caused by recent commit 2021-01-25 21:22:18 -04:00
Status.hs more RawFilePath conversion 2020-11-02 16:31:28 -04:00
Sync.hs make sync --content get from third-party populated remotes like borg 2020-12-23 12:10:39 -04:00
Test.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
TestRemote.hs test: avoid unnecessary tests of variants of git remote 2021-01-11 13:43:55 -04:00
TransferInfo.hs more RawFilePath conversion 2020-11-02 16:31:28 -04:00
TransferKey.hs suggest when user may want annex.stalldetection 2021-02-03 15:57:19 -04:00
TransferKeys.hs suggest when user may want annex.stalldetection 2021-02-03 15:57:19 -04:00
Transferrer.hs suggest when user may want annex.stalldetection 2021-02-03 15:57:19 -04:00
Trust.hs fix format of message 2021-01-11 13:14:09 -04:00
Unannex.hs finished this stage of the RawFilePath conversion 2020-11-06 14:10:58 -04:00
Undo.hs finished this stage of the RawFilePath conversion 2020-11-04 14:20:37 -04:00
Ungroup.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Uninit.hs finished this stage of the RawFilePath conversion 2020-11-06 14:10:58 -04:00
Unlock.hs more RawFilePath conversion 2020-10-30 15:55:59 -04:00
Untrust.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Unused.hs more RawFilePath conversion 2020-10-30 15:55:59 -04:00
Upgrade.hs switch to Haskell2010 2020-10-19 11:26:16 -04:00
VAdd.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
VCycle.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Version.hs external backends wip 2020-07-29 15:23:18 -04:00
VFilter.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Vicfg.hs finish fixing removeLink on windows 2020-11-24 13:20:44 -04:00
View.hs more RawFilePath conversion 2020-10-30 15:55:59 -04:00
VPop.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Wanted.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Watch.hs remotedaemon: Don't list --stop in help since it's not supported. 2019-09-30 14:40:46 -04:00
WebApp.hs finished this stage of the RawFilePath conversion 2020-11-04 14:20:37 -04:00
Whereis.hs examinekey: Added a "file" format variable 2020-11-16 09:59:11 -04:00