[commit: Cabal] master: Add command line UI for 'report' action. (bee47af)
Ian Lynagh
igloo at earth.li
Fri Jun 24 01:57:40 CEST 2011
Repository : ssh://darcs.haskell.org//srv/darcs/packages/Cabal
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/bee47af829cfdd66af9acdc9667ca321a70146cb
>---------------------------------------------------------------
commit bee47af829cfdd66af9acdc9667ca321a70146cb
Author: Duncan Coutts <duncan at haskell.org>
Date: Fri Aug 8 14:58:29 2008 +0000
Add command line UI for 'report' action.
>---------------------------------------------------------------
cabal-install/Distribution/Client/Setup.hs | 13 ++++++++++++-
cabal-install/Main.hs | 14 +++++++++++++-
2 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/cabal-install/Distribution/Client/Setup.hs b/cabal-install/Distribution/Client/Setup.hs
index 4278630..61082a2 100644
--- a/cabal-install/Distribution/Client/Setup.hs
+++ b/cabal-install/Distribution/Client/Setup.hs
@@ -21,6 +21,7 @@ module Distribution.Client.Setup
, fetchCommand
, checkCommand
, uploadCommand, UploadFlags(..)
+ , reportCommand
, parsePackageArgs
) where
@@ -138,7 +139,17 @@ checkCommand = CommandUI {
commandSynopsis = "Check the package for common mistakes",
commandDescription = Nothing,
commandUsage = \pname -> "Usage: " ++ pname ++ " check\n",
- commandDefaultFlags = mempty,
+ commandDefaultFlags = toFlag normal,
+ commandOptions = mempty
+ }
+
+reportCommand :: CommandUI (Flag Verbosity)
+reportCommand = CommandUI {
+ commandName = "report",
+ commandSynopsis = "Upload build reports to a remote server.",
+ commandDescription = Nothing,
+ commandUsage = \pname -> "Usage: " ++ pname ++ " report\n",
+ commandDefaultFlags = toFlag normal,
commandOptions = mempty
}
diff --git a/cabal-install/Main.hs b/cabal-install/Main.hs
index 741226e..4e4134e 100644
--- a/cabal-install/Main.hs
+++ b/cabal-install/Main.hs
@@ -39,7 +39,7 @@ import Distribution.Client.Update (update)
import Distribution.Client.Fetch (fetch)
import Distribution.Client.Check as Check (check)
--import Distribution.Client.Clean (clean)
-import Distribution.Client.Upload as Upload (upload, check)
+import Distribution.Client.Upload as Upload (upload, check, report)
import Distribution.Client.SrcDist (sdist)
import Distribution.Verbosity (Verbosity, normal)
@@ -96,6 +96,7 @@ mainWorker args =
,uploadCommand `commandAddAction` uploadAction
,checkCommand `commandAddAction` checkAction
,sdistCommand `commandAddAction` sdistAction
+ ,reportCommand `commandAddAction` reportAction
,wrapperAction (Cabal.buildCommand defaultProgramConfiguration)
Cabal.buildVerbosity Cabal.buildDistPref
,wrapperAction Cabal.copyCommand
@@ -270,3 +271,14 @@ sdistAction sflags extraArgs = do
unless (null extraArgs) $ do
die $ "'sdist' doesn't take any extra arguments: " ++ unwords extraArgs
sdist sflags
+
+reportAction :: Flag Verbosity -> [String] -> IO ()
+reportAction verbosityFlag extraArgs = do
+ unless (null extraArgs) $ do
+ die $ "'report' doesn't take any extra arguments: " ++ unwords extraArgs
+
+ configFile <- defaultConfigFile --FIXME
+ let verbosity = fromFlag verbosityFlag
+ config <- loadConfig verbosity configFile
+
+ Upload.report verbosity (configRepos config)
More information about the Cvs-libraries
mailing list