Better interface for package deps.

This commit is contained in:
Michal J. Gajda 2020-03-29 18:46:21 +02:00
parent 1e0d9209d2
commit a21b69018b
No known key found for this signature in database
GPG Key ID: 4BB8002F87CD4C66
4 changed files with 11 additions and 5 deletions

View File

@ -96,7 +96,7 @@ library:
- Data.Aeson.AutoType.CodeGen
- Data.Aeson.AutoType.Extract
- Data.Aeson.AutoType.Format
- Data.Aeson.AutoType.HaskellFormat
- Data.Aeson.AutoType.CodeGen.HaskellFormat
- Data.Aeson.AutoType.Pretty
- Data.Aeson.AutoType.Split
- Data.Aeson.AutoType.Type

View File

@ -1,4 +1,7 @@
Changelog
=========
0.0.2 Mar 2020
* Expose better interface for package dependency when testing.
0.0.1 Jan 2020
* Initial version

View File

@ -1,5 +1,5 @@
name: run-haskell-module
version: '0.0.1'
version: '0.0.2'
synopsis: Running newly generated Haskell source module.
description: ! 'To make sure freshly generated code runs,

View File

@ -115,13 +115,15 @@ findGhc RunOptions{..} ghcTool = do
stack <- lookupEnv "STACK_EXE"
oldCabal <- lookupEnv "CABAL_SANDBOX_CONFIG"
newCabal <- lookupEnv "HASKELL_DIST_DIR"
additionalFlags <- (maybe [] splitWithQuotes) <$> lookupEnv "CI_GHC_ADDITIONAL_FLAGS"
additionalFlags <- (maybe [] splitWithQuotes) <$> lookupEnv "CI_GHC_ADDITIONAL_FLAGS"
additionalPackagesList <- ((additionalPackages ++) . (maybe [] words)) <$> lookupEnv "CI_GHC_ADDITIONAL_PACKAGES"
cabalStyle <- (maybe "v2" id) <$> lookupEnv "CI_GHC_CABAL_STYLE"
cabalStyle <- (maybe "v2" id) <$> lookupEnv "CI_GHC_CABAL_STYLE"
let cabalExec = cabalStyle ++ "-exec"
let additionalPackagesArgs = map mkAdditionalPackagesArg additionalPackagesList
let res@(exe, exeArgs') | Just stackExec <- stack = (stackExec, additionalFlags ++ [tool, "--"])
let res@(exe, exeArgs') | Just stackExec <- stack = (stackExec, [tool] ++ additionalFlags
++ (stackPackageArg <$> additionalPackagesList)
++ ["--"])
| Just _ <- oldCabal = ("cabal", ["exec", tool, "--"])
| Just _ <- newCabal = ("cabal", [cabalExec, tool, "--"] ++ additionalPackagesArgs)
| otherwise = (tool, [])
@ -134,6 +136,7 @@ findGhc RunOptions{..} ghcTool = do
tool = case ghcTool of
Runner -> "runghc"
Compiler -> "ghc"
stackPackageArg arg = "--package=" ++ arg
mkAdditionalPackagesArg arg = case ghcTool of
Runner -> "--ghc-arg=-package=" ++ arg
Compiler -> "-package=" ++ arg