git-annex/Command/Upgrade.hs
Thomas Koch 8a0480daf3 Fix haddock parse error
I run haddock with `cabal haddock --executables`. It fails with:

    Types/Remote.hs:271:17: error: parse error on input ‘->’

Apparently haddock does not like to find haddock blocks outside of
declarations? In any case, this patch makes these type of errors go
away.

Afterwards, I see errors like these, that need to be investigated as
a next step:

haddock: internal error: internal: extractDecl
CallStack (from HasCallStack):
  error, called at utils/haddock/haddock-api/src/Haddock/Interface/Create.hs:1116:12 in main:Haddock.Interface.Create
2020-05-11 08:40:13 +02:00

49 lines
1.2 KiB
Haskell

{- git-annex command
-
- Copyright 2011-2020 Joey Hess <id@joeyh.name>
-
- Licensed under the GNU AGPL version 3 or higher.
-}
module Command.Upgrade where
import Command
import Upgrade
import Annex.Version
import Annex.Init
cmd :: Command
cmd = dontCheck
-- because an old version may not seem to exist
-- and also, this avoids automatic silent upgrades before
-- this command can start up.
repoExists $
-- avoid upgrading repo out from under daemon
noDaemonRunning $
command "upgrade" SectionMaintenance "upgrade repository"
paramNothing (seek <$$> optParser)
data UpgradeOptions = UpgradeOptions
{ autoOnly :: Bool
}
optParser :: CmdParamsDesc -> Parser UpgradeOptions
optParser _ = UpgradeOptions
<$> switch
( long "autoonly"
<> help "only do automatic upgrades"
)
seek :: UpgradeOptions -> CommandSeek
seek o = commandAction (start o)
start :: UpgradeOptions -> CommandStart
start (UpgradeOptions { autoOnly = True }) = do
starting "upgrade" (ActionItemOther Nothing) $ do
getVersion >>= maybe noop checkUpgrade
next $ return True
start _ = starting "upgrade" (ActionItemOther Nothing) $ do
whenM (isNothing <$> getVersion) $ do
initialize Nothing Nothing
r <- upgrade False latestVersion
next $ return r