Skip to content

Commit e6a70eb

Browse files
authored
Merge pull request #10688 from cabalism/add/cfg-verbosity
Add cfgVerbosity
2 parents ffaa46b + c3d539c commit e6a70eb

File tree

19 files changed

+76
-101
lines changed

19 files changed

+76
-101
lines changed

cabal-install/src/Distribution/Client/CmdBench.hs

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
{-# LANGUAGE RecordWildCards #-}
2-
31
-- | cabal-install CLI command: bench
42
module Distribution.Client.CmdBench
53
( -- * The @bench@ CLI and action
@@ -29,13 +27,13 @@ import Distribution.Client.CmdErrorMessages
2927
import Distribution.Client.Errors
3028
import Distribution.Client.NixStyleOptions
3129
( NixStyleFlags (..)
30+
, cfgVerbosity
3231
, defaultNixStyleFlags
3332
, nixStyleOptions
3433
)
3534
import Distribution.Client.ProjectOrchestration
3635
import Distribution.Client.Setup
37-
( ConfigFlags (..)
38-
, GlobalFlags
36+
( GlobalFlags
3937
)
4038
import Distribution.Client.TargetProblem
4139
( TargetProblem (..)
@@ -47,10 +45,6 @@ import Distribution.Simple.Command
4745
( CommandUI (..)
4846
, usageAlternatives
4947
)
50-
import Distribution.Simple.Flag
51-
( fromFlagOrDefault
52-
)
53-
import Distribution.Simple.Setup (CommonSetupFlags (..))
5448
import Distribution.Simple.Utils
5549
( dieWithException
5650
, warn
@@ -111,7 +105,7 @@ benchCommand =
111105
-- For more details on how this works, see the module
112106
-- "Distribution.Client.ProjectOrchestration"
113107
benchAction :: NixStyleFlags () -> [String] -> GlobalFlags -> IO ()
114-
benchAction flags@NixStyleFlags{..} targetStrings globalFlags = do
108+
benchAction flags targetStrings globalFlags = do
115109
baseCtx <- establishProjectBaseContext verbosity cliConfig OtherCommand
116110

117111
targetSelectors <-
@@ -151,7 +145,7 @@ benchAction flags@NixStyleFlags{..} targetStrings globalFlags = do
151145
buildOutcomes <- runProjectBuildPhase verbosity baseCtx buildCtx
152146
runProjectPostBuildPhase verbosity baseCtx buildCtx buildOutcomes
153147
where
154-
verbosity = fromFlagOrDefault normal (setupVerbosity $ configCommonFlags configFlags)
148+
verbosity = cfgVerbosity normal flags
155149
cliConfig =
156150
commandLineFlagsToProjectConfig
157151
globalFlags

cabal-install/src/Distribution/Client/CmdBuild.hs

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
{-# LANGUAGE RecordWildCards #-}
2-
31
-- | cabal-install CLI command: build
42
module Distribution.Client.CmdBuild
53
( -- * The @build@ CLI and action
@@ -30,6 +28,7 @@ import qualified Data.Map as Map
3028
import Distribution.Client.Errors
3129
import Distribution.Client.NixStyleOptions
3230
( NixStyleFlags (..)
31+
, cfgVerbosity
3332
, defaultNixStyleFlags
3433
, nixStyleOptions
3534
)
@@ -40,17 +39,15 @@ import Distribution.Client.ScriptUtils
4039
, withContextAndSelectors
4140
)
4241
import Distribution.Client.Setup
43-
( CommonSetupFlags (..)
44-
, ConfigFlags (..)
45-
, GlobalFlags
42+
( GlobalFlags
4643
, yesNoOpt
4744
)
4845
import Distribution.Simple.Command
4946
( CommandUI (..)
5047
, option
5148
, usageAlternatives
5249
)
53-
import Distribution.Simple.Flag (Flag, fromFlag, fromFlagOrDefault, toFlag)
50+
import Distribution.Simple.Flag (Flag, fromFlag, toFlag)
5451
import Distribution.Simple.Utils
5552
( dieWithException
5653
, wrapText
@@ -134,8 +131,8 @@ defaultBuildFlags =
134131
-- For more details on how this works, see the module
135132
-- "Distribution.Client.ProjectOrchestration"
136133
buildAction :: NixStyleFlags BuildFlags -> [String] -> GlobalFlags -> IO ()
137-
buildAction flags@NixStyleFlags{extraFlags = buildFlags, ..} targetStrings globalFlags =
138-
withContextAndSelectors RejectNoTargets Nothing flags targetStrings globalFlags BuildCommand $ \targetCtx ctx targetSelectors -> do
134+
buildAction flags@NixStyleFlags{extraFlags = buildFlags} targetStrings globalFlags =
135+
withContextAndSelectors verbosity RejectNoTargets Nothing flags targetStrings globalFlags BuildCommand $ \targetCtx ctx targetSelectors -> do
139136
-- TODO: This flags defaults business is ugly
140137
let onlyConfigure =
141138
fromFlag
@@ -185,7 +182,7 @@ buildAction flags@NixStyleFlags{extraFlags = buildFlags, ..} targetStrings globa
185182
buildOutcomes <- runProjectBuildPhase verbosity baseCtx buildCtx
186183
runProjectPostBuildPhase verbosity baseCtx buildCtx buildOutcomes
187184
where
188-
verbosity = fromFlagOrDefault normal (setupVerbosity $ configCommonFlags configFlags)
185+
verbosity = cfgVerbosity normal flags
189186

190187
-- | This defines what a 'TargetSelector' means for the @bench@ command.
191188
-- It selects the 'AvailableTarget's that the 'TargetSelector' refers to,

cabal-install/src/Distribution/Client/CmdConfigure.hs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,15 @@ import Distribution.Client.ProjectFlags
2222
)
2323
import Distribution.Client.ProjectOrchestration
2424
import Distribution.Simple.Flag
25-
import Distribution.Simple.Setup (CommonSetupFlags (..))
2625

2726
import Distribution.Client.NixStyleOptions
2827
( NixStyleFlags (..)
28+
, cfgVerbosity
2929
, defaultNixStyleFlags
3030
, nixStyleOptions
3131
)
3232
import Distribution.Client.Setup
3333
( ConfigExFlags (..)
34-
, ConfigFlags (..)
3534
, GlobalFlags
3635
)
3736
import Distribution.Verbosity
@@ -117,14 +116,14 @@ configureCommand =
117116
-- For more details on how this works, see the module
118117
-- "Distribution.Client.ProjectOrchestration"
119118
configureAction :: NixStyleFlags () -> [String] -> GlobalFlags -> IO ()
120-
configureAction flags@NixStyleFlags{..} extraArgs globalFlags = do
119+
configureAction flags extraArgs globalFlags = do
121120
(baseCtx, projConfig) <- configureAction' flags extraArgs globalFlags
122121

123122
if shouldNotWriteFile baseCtx
124123
then notice v "Config file not written due to flag(s)."
125124
else writeProjectLocalExtraConfig (distDirLayout baseCtx) projConfig
126125
where
127-
v = fromFlagOrDefault normal (setupVerbosity $ configCommonFlags configFlags)
126+
v = cfgVerbosity normal flags
128127

129128
configureAction' :: NixStyleFlags () -> [String] -> GlobalFlags -> IO (ProjectBaseContext, ProjectConfig)
130129
configureAction' flags@NixStyleFlags{..} _extraArgs globalFlags = do
@@ -165,7 +164,7 @@ configureAction' flags@NixStyleFlags{..} _extraArgs globalFlags = do
165164
return (baseCtx, conf <> cliConfig)
166165
else return (baseCtx, cliConfig)
167166
where
168-
v = fromFlagOrDefault normal (setupVerbosity $ configCommonFlags configFlags)
167+
v = cfgVerbosity normal flags
169168
cliConfig =
170169
commandLineFlagsToProjectConfig
171170
globalFlags

cabal-install/src/Distribution/Client/CmdExec.hs

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import Distribution.Client.InstallPlan
2323
)
2424
import Distribution.Client.NixStyleOptions
2525
( NixStyleFlags (..)
26+
, cfgVerbosity
2627
, defaultNixStyleFlags
2728
, nixStyleOptions
2829
)
@@ -58,15 +59,11 @@ import Distribution.Client.ProjectPlanning.Types
5859
( dataDirsEnvironmentForPlan
5960
)
6061
import Distribution.Client.Setup
61-
( ConfigFlags (configCommonFlags)
62-
, GlobalFlags
62+
( GlobalFlags
6363
)
6464
import Distribution.Simple.Command
6565
( CommandUI (..)
6666
)
67-
import Distribution.Simple.Flag
68-
( fromFlagOrDefault
69-
)
7067
import Distribution.Simple.GHC
7168
( GhcImplInfo (supportsPkgEnvFiles)
7269
, getImplInfo
@@ -87,7 +84,6 @@ import Distribution.Simple.Program.Run
8784
( programInvocation
8885
, runProgramInvocation
8986
)
90-
import Distribution.Simple.Setup (CommonSetupFlags (..))
9187
import Distribution.Simple.Utils
9288
( createDirectoryIfMissingVerbose
9389
, dieWithException
@@ -144,7 +140,7 @@ execCommand =
144140
}
145141

146142
execAction :: NixStyleFlags () -> [String] -> GlobalFlags -> IO ()
147-
execAction flags@NixStyleFlags{..} extraArgs globalFlags = do
143+
execAction flags extraArgs globalFlags = do
148144
baseCtx <- establishProjectBaseContext verbosity cliConfig OtherCommand
149145

150146
-- To set up the environment, we'd like to select the libraries in our
@@ -224,7 +220,7 @@ execAction flags@NixStyleFlags{..} extraArgs globalFlags = do
224220
then notice verbosity "Running of executable suppressed by flag(s)"
225221
else runProgramInvocation verbosity invocation
226222
where
227-
verbosity = fromFlagOrDefault normal (setupVerbosity $ configCommonFlags configFlags)
223+
verbosity = cfgVerbosity normal flags
228224
cliConfig =
229225
commandLineFlagsToProjectConfig
230226
globalFlags

cabal-install/src/Distribution/Client/CmdFreeze.hs

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
{-# LANGUAGE NamedFieldPuns #-}
22
{-# LANGUAGE PatternSynonyms #-}
3-
{-# LANGUAGE RecordWildCards #-}
43

54
-- | cabal-install CLI command: freeze
65
module Distribution.Client.CmdFreeze
@@ -18,6 +17,7 @@ import Distribution.Client.IndexUtils (ActiveRepos, TotalIndexState, filterSkipp
1817
import qualified Distribution.Client.InstallPlan as InstallPlan
1918
import Distribution.Client.NixStyleOptions
2019
( NixStyleFlags (..)
20+
, cfgVerbosity
2121
, defaultNixStyleFlags
2222
, nixStyleOptions
2323
)
@@ -41,9 +41,7 @@ import Distribution.Solver.Types.PackageConstraint
4141
)
4242

4343
import Distribution.Client.Setup
44-
( CommonSetupFlags (setupVerbosity)
45-
, ConfigFlags (..)
46-
, GlobalFlags
44+
( GlobalFlags
4745
)
4846
import Distribution.Package
4947
( PackageName
@@ -54,7 +52,7 @@ import Distribution.PackageDescription
5452
( FlagAssignment
5553
, nullFlagAssignment
5654
)
57-
import Distribution.Simple.Flag (fromFlagOrDefault, pattern Flag)
55+
import Distribution.Simple.Flag (pattern Flag)
5856
import Distribution.Simple.Utils
5957
( dieWithException
6058
, notice
@@ -126,7 +124,7 @@ freezeCommand =
126124
-- For more details on how this works, see the module
127125
-- "Distribution.Client.ProjectOrchestration"
128126
freezeAction :: NixStyleFlags () -> [String] -> GlobalFlags -> IO ()
129-
freezeAction flags@NixStyleFlags{..} extraArgs globalFlags = do
127+
freezeAction flags extraArgs globalFlags = do
130128
unless (null extraArgs) $
131129
dieWithException verbosity $
132130
FreezeAction extraArgs
@@ -161,7 +159,7 @@ freezeAction flags@NixStyleFlags{..} extraArgs globalFlags = do
161159
notice verbosity $
162160
"Wrote freeze file: " ++ (distProjectFile distDirLayout "freeze")
163161
where
164-
verbosity = fromFlagOrDefault normal (setupVerbosity $ configCommonFlags configFlags)
162+
verbosity = cfgVerbosity normal flags
165163
cliConfig =
166164
commandLineFlagsToProjectConfig
167165
globalFlags

cabal-install/src/Distribution/Client/CmdGenBounds.hs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ import Distribution.PackageDescription
2727
import Distribution.Simple.Utils
2828
import Distribution.Version
2929

30-
import Distribution.Client.Setup (CommonSetupFlags (..), ConfigFlags (..), GlobalFlags (..))
30+
import Distribution.Client.Setup (GlobalFlags (..))
3131

3232
-- Project orchestration imports
3333

@@ -40,7 +40,6 @@ import Distribution.Client.ProjectOrchestration
4040
import Distribution.Client.ScriptUtils
4141
import Distribution.Client.TargetProblem
4242
import Distribution.Simple.Command
43-
import Distribution.Simple.Flag
4443
import Distribution.Types.Component
4544
import Distribution.Verbosity
4645

@@ -84,9 +83,7 @@ genBoundsCommand =
8483
-- | The action for the @gen-bounds@ command when used in a project context.
8584
genBoundsAction :: NixStyleFlags GenBoundsFlags -> [String] -> GlobalFlags -> IO ()
8685
genBoundsAction flags targetStrings globalFlags =
87-
withContextAndSelectors RejectNoTargets Nothing flags targetStrings globalFlags OtherCommand $ \targetCtx ctx targetSelectors -> do
88-
let verbosity = fromFlagOrDefault normal (setupVerbosity $ configCommonFlags $ configFlags flags)
89-
86+
withContextAndSelectors verbosity RejectNoTargets Nothing flags targetStrings globalFlags OtherCommand $ \targetCtx ctx targetSelectors -> do
9087
baseCtx <- case targetCtx of
9188
ProjectContext -> return ctx
9289
GlobalContext -> return ctx
@@ -155,6 +152,8 @@ genBoundsAction flags targetStrings globalFlags =
155152
notice verbosity boundsNeededMsg
156153
mapM_ (renderBoundsResult verbosity) boundsActions
157154
else notice verbosity "All bounds up-to-date"
155+
where
156+
verbosity = cfgVerbosity normal flags
158157

159158
data GenBoundsResult = GenBoundsResult PackageIdentifier ComponentTarget (Maybe [PackageIdentifier])
160159

cabal-install/src/Distribution/Client/CmdHaddock.hs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import Prelude ()
2020
import Distribution.Client.CmdErrorMessages
2121
import Distribution.Client.NixStyleOptions
2222
( NixStyleFlags (..)
23+
, cfgVerbosity
2324
, defaultNixStyleFlags
2425
, nixStyleOptions
2526
)
@@ -32,9 +33,7 @@ import Distribution.Client.ProjectPlanning
3233
( ElaboratedSharedConfig (..)
3334
)
3435
import Distribution.Client.Setup
35-
( CommonSetupFlags (..)
36-
, ConfigFlags (..)
37-
, GlobalFlags
36+
( GlobalFlags
3837
, InstallFlags (..)
3938
)
4039
import Distribution.Client.TargetProblem
@@ -150,7 +149,7 @@ haddockAction relFlags targetStrings globalFlags = do
150149
flags@NixStyleFlags{..} <- mkFlagsAbsolute relFlags
151150

152151
let
153-
verbosity = fromFlagOrDefault normal (setupVerbosity $ configCommonFlags configFlags)
152+
verbosity = cfgVerbosity normal flags
154153
installDoc = fromFlagOrDefault True (installDocumentation installFlags)
155154
flags' = flags{installFlags = installFlags{installDocumentation = Flag installDoc}}
156155
cliConfig = commandLineFlagsToProjectConfig globalFlags flags' mempty -- ClientInstallFlags, not needed here

cabal-install/src/Distribution/Client/CmdHaddockProject.hs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,7 @@ haddockProjectAction flags _extraArgs globalFlags = do
127127
--
128128

129129
withContextAndSelectors
130+
verbosity
130131
RejectNoTargets
131132
Nothing
132133
(commandDefaultFlags CmdBuild.buildCommand)

cabal-install/src/Distribution/Client/CmdInstall.hs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ import Distribution.Client.InstallSymlink
6363
)
6464
import Distribution.Client.NixStyleOptions
6565
( NixStyleFlags (..)
66+
, cfgVerbosity
6667
, defaultNixStyleFlags
6768
, nixStyleOptions
6869
)
@@ -98,8 +99,7 @@ import Distribution.Client.RebuildMonad
9899
( runRebuild
99100
)
100101
import Distribution.Client.Setup
101-
( CommonSetupFlags (..)
102-
, ConfigFlags (..)
102+
( ConfigFlags (..)
103103
, GlobalFlags (..)
104104
, InstallFlags (..)
105105
)
@@ -546,7 +546,7 @@ installAction flags@NixStyleFlags{extraFlags, configFlags, installFlags, project
546546
traverseInstall (installCheckUnitExes InstallCheckInstall) installCfg
547547
where
548548
configFlags' = disableTestsBenchsByDefault . ignoreProgramAffixes $ configFlags
549-
verbosity = fromFlagOrDefault normal (setupVerbosity $ configCommonFlags configFlags')
549+
verbosity = cfgVerbosity normal flags
550550
ignoreProject = flagIgnoreProject projectFlags
551551
cliConfig =
552552
commandLineFlagsToProjectConfig

0 commit comments

Comments
 (0)