Skip to content

Commit 8ce27f2

Browse files
committed
Add verbose output marker for show-build-info
Simplifies writing tests for show-build-info Add trailing path separator to make testing simpler.
1 parent 8bd4431 commit 8ce27f2

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

Cabal/src/Distribution/Simple/ShowBuildInfo.hs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,8 @@ import Distribution.Types.TargetInfo
8080
import Distribution.Text
8181
import Distribution.Pretty
8282

83+
import System.FilePath (addTrailingPathSeparator)
84+
8385
-- | Construct a JSON document describing the build information for a
8486
-- package.
8587
mkBuildInfo
@@ -133,7 +135,7 @@ mkComponentInfo wdir pkg_descr lbi clbi = JsonObject $
133135
, "modules" .= JsonArray (map (JsonString . T.pack . display) modules)
134136
, "src-files" .= JsonArray (map (JsonString . T.pack) sourceFiles)
135137
, "hs-src-dirs" .= JsonArray (map (JsonString . T.pack . prettyShow) $ hsSourceDirs bi)
136-
, "src-dir" .= JsonString (T.pack wdir)
138+
, "src-dir" .= JsonString (T.pack $ addTrailingPathSeparator wdir)
137139
] <> cabalFile
138140
where
139141
name = componentLocalName clbi

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

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ import Distribution.Simple.Command
2323
import Distribution.Verbosity
2424
( Verbosity, silent )
2525
import Distribution.Simple.Utils
26-
( wrapText )
26+
( wrapText, withOutputMarker )
2727

2828
import qualified Data.Map as Map
2929
import Distribution.Client.ProjectPlanning.Types
@@ -122,12 +122,12 @@ showBuildInfoAction flags@NixStyleFlags { extraFlags = (ShowBuildInfoFlags fileO
122122
components = map JsonRaw componentBuildInfos
123123
fields = mkBuildInfo' compilerInfo components
124124
json = JsonObject $ fields <>
125-
[ ("project-root", JsonString (T.pack (distProjectRootDirectory (distDirLayout baseCtx))))
125+
[ ("project-root", JsonString (T.pack (addTrailingPathSeparator $ distProjectRootDirectory (distDirLayout baseCtx))))
126126
]
127127
res = renderJson json ""
128128

129129
case fileOutput of
130-
Nothing -> T.putStrLn res
130+
Nothing -> T.putStrLn $ T.pack $ withOutputMarker verbosity (T.unpack res)
131131
Just fp -> T.writeFile fp res
132132

133133
where

0 commit comments

Comments
 (0)