Cabal 1.22.6.0 → 1.22.7.0
raw patch · 3 files changed
+26/−5 lines, 3 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Distribution.Version: instance Data.Binary.Class.Binary Data.Version.Version
Files
- Cabal.cabal +2/−2
- Distribution/Simple/Haddock.hs +18/−3
- changelog +6/−0
Cabal.cabal view
@@ -1,5 +1,5 @@ name: Cabal-version: 1.22.6.0+version: 1.22.7.0 copyright: 2003-2006, Isaac Jones 2005-2011, Duncan Coutts license: BSD3@@ -19,7 +19,7 @@ organizing, and cataloging Haskell libraries and tools. category: Distribution cabal-version: >=1.10-build-type: Custom+build-type: Simple -- Even though we do use the default Setup.lhs it's vital to bootstrapping -- that we build Setup.lhs using our own local Cabal source code.
Distribution/Simple/Haddock.hs view
@@ -84,14 +84,16 @@ import Control.Monad ( when, forM_ )+import Data.Char ( isSpace ) import Data.Either ( rights ) import Data.Monoid+import Data.Foldable ( foldl' ) import Data.Maybe ( fromMaybe, listToMaybe ) import System.Directory (doesFileExist) import System.FilePath ( (</>), (<.>) , normalise, splitPath, joinPath, isAbsolute )-import System.IO (hClose, hPutStrLn, hSetEncoding, utf8)+import System.IO (hClose, hPutStr, hPutStrLn, hSetEncoding, utf8) import Distribution.Version -- ------------------------------------------------------------------------------@@ -467,7 +469,7 @@ -> IO a renderArgs verbosity tmpFileOpts version comp args k = do let haddockSupportsUTF8 = version >= Version [2,14,4] []- haddockSupportsResponseFiles = version > Version [2,16,1] []+ haddockSupportsResponseFiles = version > Version [2,16,2] [] createDirectoryIfMissingVerbose verbosity True outputDir withTempFileEx tmpFileOpts outputDir "haddock-prologue.txt" $ \prologueFileName h -> do@@ -482,7 +484,7 @@ withTempFileEx tmpFileOpts outputDir "haddock-response.txt" $ \responseFileName hf -> do when haddockSupportsUTF8 (hSetEncoding hf utf8)- mapM_ (hPutStrLn hf) renderedArgs+ hPutStr hf $ unlines $ map escapeArg renderedArgs hClose hf let respFile = "@" ++ responseFileName k ([respFile], result)@@ -500,6 +502,19 @@ pkgstr = display $ packageName pkgid pkgid = arg argPackageName arg f = fromFlag $ f args+ -- Support a gcc-like response file syntax. Each separate+ -- argument and its possible parameter(s), will be separated in the+ -- response file by an actual newline; all other whitespace,+ -- single quotes, double quotes, and the character used for escaping+ -- (backslash) are escaped. The called program will need to do a similar+ -- inverse operation to de-escape and re-constitute the argument list.+ escape cs c+ | isSpace c+ || '\\' == c+ || '\'' == c+ || '"' == c = c:'\\':cs -- n.b., our caller must reverse the result+ | otherwise = c:cs+ escapeArg = reverse . foldl' escape [] renderPureArgs :: Version -> Compiler -> HaddockArgs -> [String] renderPureArgs version comp args = concat
changelog view
@@ -1,3 +1,9 @@+1.22.7.0 Ryan Thomas <ryan@ryant.org> January 2016+ * Backport #3012 to the 1.22 branch+ * Cabal.cabal: change build-type to Simple+ * Add foldl' import+ * The Cabal part for fully gcc-like response files+ 1.22.6.0 * Relax upper bound to allow upcoming binary-0.8