yesod-bin 1.4.18 → 1.4.18.1
raw patch · 5 files changed
+52/−11 lines, 5 files
Files
- ChangeLog.md +5/−0
- GhcBuild.hs +32/−7
- Keter.hs +2/−2
- main.hs +12/−1
- yesod-bin.cabal +1/−1
ChangeLog.md view
@@ -1,3 +1,8 @@+## 1.4.18.1++* error handling when checking for stack binary [#1219](https://github.com/yesodweb/yesod/pull/1219)+* GHC 8 support+ ## 1.4.18 * Disable `yesod test` when using Stack [#1198](https://github.com/yesodweb/yesod/issues/1198)
GhcBuild.hs view
@@ -85,12 +85,36 @@ dflags0 <- GHC.getSessionDynFlags (dflags1, _, _) <- GHC.parseDynamicFlags dflags0 argv3 let pkgFlags = map convertPkgFlag (GHC.packageFlags dflags1)+ ignorePkgFlags =+#if __GLASGOW_HASKELL__ >= 800+ map convertIgnorePkgFlag (GHC.ignorePackageFlags dflags1)+#else+ []+#endif+ trustPkgFlags =+#if __GLASGOW_HASKELL__ >= 800+ map convertTrustPkgFlag (GHC.trustFlags dflags1)+#else+ []+#endif hideAll | gopt DF.Opt_HideAllPackages dflags1 = [ "-hide-all-packages"] | otherwise = [] ownPkg = packageString (DF.thisPackage dflags1)- return (reverse (extra dflags1) ++ hideAll ++ pkgFlags ++ [ownPkg])+ return (reverse (extra dflags1) ++ hideAll ++ trustPkgFlags ++ ignorePkgFlags ++ pkgFlags ++ [ownPkg]) where-#if __GLASGOW_HASKELL__ >= 710+#if __GLASGOW_HASKELL__ >= 800+ convertIgnorePkgFlag (DF.IgnorePackage p) = "-ignore-package" ++ p+ convertTrustPkgFlag (DF.TrustPackage p) = "-trust" ++ p+ convertTrustPkgFlag (DF.DistrustPackage p) = "-distrust" ++ p+#else+ convertPkgFlag (DF.IgnorePackage p) = "-ignore-package" ++ p+ convertPkgFlag (DF.TrustPackage p) = "-trust" ++ p+ convertPkgFlag (DF.DistrustPackage p) = "-distrust" ++ p+#endif+#if __GLASGOW_HASKELL__ >= 800+ convertPkgFlag (DF.ExposePackage _ (DF.PackageArg p) _) = "-package" ++ p+ convertPkgFlag (DF.ExposePackage _ (DF.UnitIdArg p) _) = "-package-id" ++ p+#elif __GLASGOW_HASKELL__ == 710 convertPkgFlag (DF.ExposePackage (DF.PackageArg p) _) = "-package" ++ p convertPkgFlag (DF.ExposePackage (DF.PackageIdArg p) _) = "-package-id" ++ p convertPkgFlag (DF.ExposePackage (DF.PackageKeyArg p) _) = "-package-key" ++ p@@ -99,10 +123,9 @@ convertPkgFlag (DF.ExposePackageId p) = "-package-id" ++ p #endif convertPkgFlag (DF.HidePackage p) = "-hide-package" ++ p- convertPkgFlag (DF.IgnorePackage p) = "-ignore-package" ++ p- convertPkgFlag (DF.TrustPackage p) = "-trust" ++ p- convertPkgFlag (DF.DistrustPackage p) ="-distrust" ++ p-#if __GLASGOW_HASKELL__ >= 710+#if __GLASGOW_HASKELL__ >= 800+ packageString flags = "-package-id" ++ Module.unitIdString flags+#elif __GLASGOW_HASKELL__ == 710 packageString flags = "-package-key" ++ Module.packageKeyString flags #else packageString flags = "-package-id" ++ Module.packageIdString flags ++ "-inplace"@@ -162,7 +185,9 @@ haskellish (f,Nothing) = looksLikeModuleName f || isHaskellSrcFilename f || '.' `notElem` f haskellish (_,Just phase) =-#if MIN_VERSION_ghc(7,8,3)+#if MIN_VERSION_ghc(8,0,0)+ phase `notElem` [As True, As False, Cc, Cobjc, Cobjcxx, CmmCpp, Cmm, StopLn]+#elif MIN_VERSION_ghc(7,8,3) phase `notElem` [As True, As False, Cc, Cobjc, Cobjcpp, CmmCpp, Cmm, StopLn] #elif MIN_VERSION_ghc(7,4,0) phase `notElem` [As, Cc, Cobjc, Cobjcpp, CmmCpp, Cmm, StopLn]
Keter.hs view
@@ -79,8 +79,8 @@ unless noBuild $ do stackQueryRunSuccess <- do- (ec,_,_) <- readProcessWithExitCode "stack" ["query"] ""- return (ec == ExitSuccess)+ eres <- try $ readProcessWithExitCode "stack" ["query"] "" :: IO (Either IOException (ExitCode, String, String))+ return $ either (\_ -> False) (\(ec, _, _) -> (ec == ExitSuccess)) eres let inStackExec = isJust $ lookup "STACK_EXE" env' mStackYaml = lookup "STACK_YAML" env'
main.hs view
@@ -102,7 +102,7 @@ ] optParser' let cabal = rawSystem' (cabalCommand o) case optCommand o of- Init _ -> error "The init command has been removed. Please use 'stack new' instead"+ Init _ -> initErrorMsg HsFiles -> mkHsFile Configure -> cabal ["configure"] Build es -> touch' >> cabal ("build":es)@@ -143,6 +143,17 @@ hPutStrLn stderr "'yesod test' is no longer needed with Stack" hPutStrLn stderr "Instead, please just run 'stack test'" exitFailure++ initErrorMsg = do+ mapM_ putStrLn+ [ "The init command has been removed."+ , "Please use 'stack new <project name> <template>' instead where the"+ , "available templates can be found by running 'stack templates'. For"+ , "a Yesod based application you should probably choose one of the"+ , "pre-canned Yesod templates."+ ]+ exitFailure+ handleGhcPackagePath :: IO ([String], Maybe [(String, String)]) handleGhcPackagePath = do
yesod-bin.cabal view
@@ -1,5 +1,5 @@ name: yesod-bin-version: 1.4.18+version: 1.4.18.1 license: MIT license-file: LICENSE author: Michael Snoyman <michael@snoyman.com>