Cabal 3.6.1.0 → 3.6.2.0
raw patch · 4 files changed
+30/−11 lines, 4 filesdep ~semigroupsdep ~textdep ~timePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: semigroups, text, time
API changes (from Hackage documentation)
Files
- Cabal.cabal +1/−1
- ChangeLog.md +6/−0
- src/Distribution/Simple.hs +20/−8
- src/Distribution/Simple/Build/PathsModule/Z.hs +3/−2
Cabal.cabal view
@@ -1,6 +1,6 @@ cabal-version: >=1.10 name: Cabal-version: 3.6.1.0+version: 3.6.2.0 copyright: 2003-2021, Cabal Development Team (see AUTHORS file) license: BSD3 license-file: LICENSE
ChangeLog.md view
@@ -1,3 +1,9 @@+# 3.6.2.0 [Emily Pillmore](mailgo:emilypi@cohomolo.gy) October 2021+ * See https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.6.2.0.md++# 3.6.1.0 [Emily Pillmore](mailgo:emilypi@cohomolo.gy) August 2021+ * See https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.6.1.0.md+ # 3.6.0.0 [Emily Pillmore](mailgo:emilypi@cohomolo.gy) August 2021 * See https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.6.0.0.md
src/Distribution/Simple.hs view
@@ -1,7 +1,7 @@-{-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE RankNTypes #-} {-# LANGUAGE LambdaCase #-}+{-# LANGUAGE CPP #-} ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple@@ -98,7 +98,11 @@ import System.Environment (getArgs, getProgName) import System.Directory (removeFile, doesFileExist ,doesDirectoryExist, removeDirectoryRecursive)-import System.FilePath (searchPathSeparator, takeDirectory, (</>), splitDirectories, dropDrive)+import System.FilePath (searchPathSeparator, takeDirectory, (</>),+ splitDirectories, dropDrive)+#ifdef mingw32_HOST_OS+import System.FilePath (normalise, splitDrive)+#endif import Distribution.Compat.ResponseFile (expandResponse) import Distribution.Compat.Directory (makeAbsolute) import Distribution.Compat.Environment (getEnvironment)@@ -699,7 +703,7 @@ -- TODO: We don't check for colons, tildes or leading dashes. We -- also should check the builddir's path, destdir, and all other -- paths as well.- let configureFile' = intercalate "/" $ splitDirectories configureFile+ let configureFile' = toUnix configureFile for_ badAutoconfCharacters $ \(c, cname) -> when (c `elem` dropDrive configureFile') $ warn verbosity $ concat@@ -716,11 +720,6 @@ pathEnv = maybe (intercalate spSep extraPath) ((intercalate spSep extraPath ++ spSep)++) $ lookup "PATH" env overEnv = ("CFLAGS", Just cflagsEnv) :--- TODO: Move to either Cabal/src/Distribution/Compat/Environment.hs--- or Cabal/src/Distribution/Compat/FilePath.hs:-#ifdef mingw32_HOST_OS- ("PATH_SEPARATOR", Just ";") :-#endif [("PATH", Just pathEnv) | not (null extraPath)] hp = hostPlatform lbi maybeHostFlag = if hp == buildPlatform then [] else ["--host=" ++ show (pretty hp)]@@ -743,6 +742,19 @@ ++ "Unix compatibility toolchain such as MinGW+MSYS or Cygwin. " ++ "If you are not on Windows, ensure that an 'sh' command " ++ "is discoverable in your path."++-- | Convert Windows path to Unix ones+toUnix :: String -> String+#ifdef mingw32_HOST_OS+toUnix s = let tmp = normalise s+ (l, rest) = case splitDrive tmp of+ ([], x) -> ("/" , x)+ (h:_, x) -> ('/':h:"/", x)+ parts = splitDirectories rest+ in l ++ intercalate "/" parts+#else+toUnix s = intercalate "/" $ splitDirectories s+#endif badAutoconfCharacters :: [(Char, String)] badAutoconfCharacters =
src/Distribution/Simple/Build/PathsModule/Z.hs view
@@ -60,6 +60,7 @@ return () tell "\n" tell "import qualified Control.Exception as Exception\n"+ tell "import qualified Data.List as List\n" tell "import Data.Version (Version(..))\n" tell "import System.Environment (getEnv)\n" tell "import Prelude\n"@@ -295,8 +296,8 @@ tell "joinFileName \".\" fname = fname\n" tell "joinFileName dir \"\" = dir\n" tell "joinFileName dir fname\n"- tell " | isPathSeparator (last dir) = dir ++ fname\n"- tell " | otherwise = dir ++ pathSeparator : fname\n"+ tell " | isPathSeparator (List.last dir) = dir ++ fname\n"+ tell " | otherwise = dir ++ pathSeparator : fname\n" tell "\n" tell "pathSeparator :: Char\n" if (zIsWindows z_root)