doctest 0.15.0 → 0.15.1
raw patch · 2 files changed
+24/−9 lines, 2 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- doctest.cabal +3/−4
- src/Extract.hs +21/−5
doctest.cabal view
@@ -1,11 +1,11 @@--- This file has been generated from package.yaml by hpack version 0.27.0.+-- This file has been generated from package.yaml by hpack version 0.28.2. -- -- see: https://github.com/sol/hpack ----- hash: 03a9b0f4a629d8ae1361038b83b10eb6e4847761565ed78ae4d1b2046e6d0c0f+-- hash: d9e1502a7c11bbf6626127a98ee976799f47df80bfa8ec5693f37717bff0db96 name: doctest-version: 0.15.0+version: 0.15.1 synopsis: Test interactive Haskell examples description: The doctest program checks examples in source code comments. It is modeled after doctest for Python (<http://docs.python.org/library/doctest.html>).@@ -21,7 +21,6 @@ maintainer: Simon Hengel <sol@typeful.net> build-type: Simple cabal-version: >= 1.10- extra-source-files: CHANGES example/example.cabal
src/Extract.hs view
@@ -33,7 +33,10 @@ import Coercion (Coercion) #endif +#if __GLASGOW_HASKELL__ < 805 import FastString (unpackFS)+#endif+ import Digraph (flattenSCCs) import System.Posix.Internals (c_getpid)@@ -86,6 +89,11 @@ mapMG = map #endif +#if __GLASGOW_HASKELL__ < 805+addQuoteInclude :: [String] -> [String] -> [String]+addQuoteInclude includes new = new ++ includes+#endif+ -- | Parse a list of modules. parse :: [String] -> IO [TypecheckedModule] parse args = withGhc args $ \modules_ -> withTempOutputDir $ do@@ -151,7 +159,7 @@ objectDir = Just f , hiDir = Just f , stubDir = Just f- , includePaths = f : includePaths d+ , includePaths = addQuoteInclude (includePaths d) [f] } -- | Extract all docstrings from given list of files/modules.@@ -184,7 +192,7 @@ -- | Extract all docstrings from given module. docStringsFromModule :: ParsedModule -> [(Maybe String, Located String)]-docStringsFromModule mod = map (fmap (toLocated . fmap unpackDocString)) docs+docStringsFromModule mod = map (fmap (toLocated . fmap unpackHDS)) docs where source = (unLoc . pm_parsed_source) mod @@ -197,8 +205,10 @@ header = [(Nothing, x) | Just x <- [hsmodHaddockModHeader source]] #if __GLASGOW_HASKELL__ < 710 exports = [(Nothing, L loc doc) | L loc (IEDoc doc) <- concat (hsmodExports source)]-#else+#elif __GLASGOW_HASKELL__ < 805 exports = [(Nothing, L loc doc) | L loc (IEDoc doc) <- maybe [] unLoc (hsmodExports source)]+#else+ exports = [(Nothing, L loc doc) | L loc (IEDoc _ doc) <- maybe [] unLoc (hsmodExports source)] #endif decls = extractDocStrings (hsmodDecls source) @@ -252,7 +262,11 @@ -- Top-level documentation has to be treated separately, because it has -- no location information attached. The location information is -- attached to HsDecl instead.+#if __GLASGOW_HASKELL__ < 805 DocD x -> select (fromDocDecl loc x)+#else+ DocD _ x -> select (fromDocDecl loc x)+#endif _ -> (extractDocStrings decl, True) @@ -267,6 +281,8 @@ DocCommentNamed name doc -> (Just name, L loc doc) _ -> (Nothing, L loc $ docDeclDoc x) +#if __GLASGOW_HASKELL__ < 805 -- | Convert a docstring to a plain string.-unpackDocString :: HsDocString -> String-unpackDocString (HsDocString s) = unpackFS s+unpackHDS :: HsDocString -> String+unpackHDS (HsDocString s) = unpackFS s+#endif