diagrams-builder 0.8.0.2 → 0.8.0.3
raw patch · 4 files changed
+29/−14 lines, 4 filesdep ~basedep ~base-orphansdep ~exceptionsPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: base, base-orphans, exceptions, hint, lens
API changes (from Hackage documentation)
Files
- CHANGES.markdown +7/−0
- diagrams-builder.cabal +11/−11
- src/Diagrams/Builder.hs +2/−0
- src/Diagrams/Builder/Modules.hs +9/−3
CHANGES.markdown view
@@ -1,3 +1,10 @@+## [v0.8.0.3](https://github.com/diagrams/diagrams-builder/tree/v0.8.0.3) (2018-06-09)++- Bump upper bounds: allow `exceptions-0.10`, `lens-4.16`, `hint-0.8`,+ `base-4.11`, `base-orphans-0.7`+- Test with GHC 8.4+- Drop GHC 7.8 support+ ## [v0.8.0.2](https://github.com/diagrams/diagrams-builder/tree/v0.8.0.2) (2018-01-21) - Allow `haskell-src-exts-1.20` and `haskell-src-exts-simple-1.20`
diagrams-builder.cabal view
@@ -1,5 +1,5 @@ name: diagrams-builder-version: 0.8.0.2+version: 0.8.0.3 synopsis: hint-based build service for the diagrams graphics EDSL. description: @diagrams-builder@ provides backend-agnostic tools for@@ -37,7 +37,7 @@ category: Graphics build-type: Simple cabal-version: >=1.10-tested-with: GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.1+tested-with: GHC == 7.10.3, GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.2 bug-reports: https://github.com/diagrams/diagrams-builder/issues Source-repository head type: git@@ -48,11 +48,11 @@ Diagrams.Builder.Opts Diagrams.Builder.Modules Diagrams.Builder.CmdLine- build-depends: base >=4.2 && < 4.11,- base-orphans >= 0.3 && < 0.7,+ build-depends: base >=4.2 && < 4.12,+ base-orphans >= 0.3 && < 0.8, mtl >= 2.1 && < 2.3, diagrams-lib >= 1.4 && < 1.5,- hint >= 0.4 && < 0.8,+ hint >= 0.4 && < 0.9, directory, filepath, transformers >= 0.3 && < 0.6,@@ -60,9 +60,9 @@ haskell-src-exts >= 1.18 && < 1.21, haskell-src-exts-simple >= 1.18 && < 1.21, cmdargs >= 0.6 && < 0.11,- lens >= 4.0 && < 4.16,+ lens >= 4.0 && < 4.17, hashable >= 1.1 && < 1.3,- exceptions >= 0.3 && < 0.9+ exceptions >= 0.3 && < 0.11 hs-source-dirs: src default-language: Haskell2010 other-extensions: StandaloneDeriving,@@ -118,7 +118,7 @@ diagrams-lib >= 1.4 && < 1.5, diagrams-cairo >= 1.4 && < 1.5, cmdargs >= 0.6 && < 0.11,- lens >= 4.0 && < 4.16+ lens >= 4.0 && < 4.17 executable diagrams-builder-svg main-is: diagrams-builder-svg.hs@@ -159,7 +159,7 @@ diagrams-lib >= 1.4 && < 1.5, diagrams-postscript >= 1.4 && < 1.5, cmdargs >= 0.6 && < 0.11,- lens >= 3.8 && < 4.16+ lens >= 3.8 && < 4.17 executable diagrams-builder-rasterific main-is: diagrams-builder-rasterific.hs@@ -179,7 +179,7 @@ diagrams-lib >= 1.4 && < 1.5, diagrams-rasterific >= 1.4 && < 1.5, cmdargs >= 0.6 && < 0.11,- lens >= 3.8 && < 4.16,+ lens >= 3.8 && < 4.17, JuicyPixels >= 3.1.5 && < 3.3 executable diagrams-builder-pgf@@ -201,5 +201,5 @@ diagrams-pgf >= 1.4 && < 1.5, bytestring >= 0.10.2 && < 0.11, cmdargs >= 0.6 && < 0.11,- lens >= 3.8 && < 4.16,+ lens >= 3.8 && < 4.17, texrunner
src/Diagrams/Builder.hs view
@@ -5,6 +5,7 @@ {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE StandaloneDeriving #-} {-# LANGUAGE TupleSections #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-orphans #-} -----------------------------------------------------------------------------@@ -216,6 +217,7 @@ compilation <- interpretDiagram (bopts' & backendOpts %~ upd) tmp removeFile tmp return $ either InterpErr (OK diaHash) compilation+ Right m -> error $ "Diagrams.Builder.buildDiagram: weird module " ++ show m -- | Take a list of imports, and return a hash of the contents of -- those imports which are local. Note, this only finds imports
src/Diagrams/Builder/Modules.hs view
@@ -25,7 +25,6 @@ import Control.Arrow (second) import Control.Lens ((^.)) import Data.Function (on)-import Data.Functor ((<$>)) import Data.List (foldl', groupBy, isPrefixOf, nub, sortBy) import Data.Maybe (isJust)@@ -91,12 +90,13 @@ = Module (Just (ModuleHead (ModuleName m) Nothing Nothing)) p i d replaceModuleName m (Module (Just (ModuleHead _ w e)) p i d) = Module (Just (ModuleHead (ModuleName m) w e)) p i d+replaceModuleName _ m = m -- | Delete module exports. deleteExports :: Module -> Module-deleteExports m@(Module Nothing _ _ _) = m deleteExports (Module (Just (ModuleHead n w _)) p i d) = Module (Just (ModuleHead n w Nothing)) p i d+deleteExports m = m -- | Add some @LANGUAGE@ pragmas to a module if necessary. addPragmas :: [String] -> Module -> Module@@ -104,6 +104,7 @@ where f [] = [LanguagePragma (map Ident langs)] f (LanguagePragma ps : rest) = LanguagePragma (ps ++ map Ident langs) : rest f (x : rest) = x : f rest+addPragmas _ m = m -- | Add some imports to a module if necessary. addImports :: [(String, Maybe String)] -> Module -> Module@@ -116,6 +117,7 @@ ((==imp) . getModuleName . importModule) imp' && (isJust mq == importQualified imp') && ((ModuleName <$> mq) == importAs imp')+addImports _ m = m -- | Combine two modules into one, with a left bias in the case of -- things that can't be sensibly combined (/e.g./ the module name).@@ -143,8 +145,12 @@ otherPragmas = filter (not . isLangPragma) isLangPragma (LanguagePragma {}) = True isLangPragma _ = False+combineModules m1 m2 = error $ "Diagrams.Builder.Modules: weird modules " ++ show m1 ++ " and " ++ show m2 -- | Convert a @ModuleName@ to a @String@. getModuleName :: ModuleName -> String getModuleName (ModuleName n) = n-+getModuleName m = error $ "Diagrams.Builder.Modules.getModuleName: got a ModuleName that isn't! " ++ show m+ -- GHC warns about incomplete matches because ModuleName is now a+ -- pattern synonym, and the haskell-src-exts-simple package doesn't+ -- use COMPLETE pragmas