From da0a1360d7b57d034620338996552752ab873045 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 17 Aug 2017 12:26:14 -0400 Subject: add annex-ignore-command and annex-sync-command configs Added remote configuration settings annex-ignore-command and annex-sync-command, which are dynamic equivilants of the annex-ignore and annex-sync configurations. For this I needed a new DynamicConfig infrastructure. Its implementation should be as fast as before when there is no dynamic config, and it caches so shell commands are only run once. Note that annex-ignore-command exits nonzero when the remote should be ignored. While that may seem backwards, it allows using the same command for it as for annex-sync-command when you want to disable both. This commit was sponsored by Trenton Cronholm on Patreon. --- Annex.hs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'Annex.hs') diff --git a/Annex.hs b/Annex.hs index 597a5dd1b..add568a1b 100644 --- a/Annex.hs +++ b/Annex.hs @@ -329,7 +329,7 @@ adjustGitRepo a = do getRemoteGitConfig :: Git.Repo -> Annex RemoteGitConfig getRemoteGitConfig r = do g <- gitRepo - return $ extractRemoteGitConfig g (Git.repoDescribe r) + liftIO $ atomically $ extractRemoteGitConfig g (Git.repoDescribe r) {- Converts an Annex action into an IO action, that runs with a copy - of the current Annex state. -- cgit v1.2.3