diagrams-haddock 0.2.1.6 → 0.2.2
raw patch · 3 files changed
+21/−22 lines, 3 filesdep ~diagrams-builder
Dependency ranges changed: diagrams-builder
Files
- CHANGES.md +5/−0
- diagrams-haddock.cabal +2/−2
- src/Diagrams/Haddock.hs +14/−20
CHANGES.md view
@@ -1,3 +1,8 @@+0.2.2 (27 January 2014)+-----------------------++ - require diagrams-builder-0.5+ 0.2.1.6 (15 January 2014) -------------------------
diagrams-haddock.cabal view
@@ -1,5 +1,5 @@ name: diagrams-haddock-version: 0.2.1.6+version: 0.2.2 synopsis: Preprocessor for embedding diagrams in Haddock documentation description: diagrams-haddock is a tool for compiling embedded inline diagrams code in Haddock documentation, for an@@ -44,7 +44,7 @@ parsec >= 3, haskell-src-exts >= 1.14 && < 1.15, blaze-svg >= 0.3 && < 0.4,- diagrams-builder >= 0.4.2 && < 0.5,+ diagrams-builder >= 0.5 && < 0.6, diagrams-lib >= 0.6 && < 1.1, diagrams-svg >= 0.8.0.1 && < 1.1, vector-space >= 0.8 && < 0.9,
src/Diagrams/Haddock.hs view
@@ -111,10 +111,7 @@ import Text.Parsec.String import Diagrams.Backend.SVG (Options (..), SVG (..))-import Diagrams.Builder (BuildResult (..),- buildDiagram,- hashedRegenerate,- ppInterpError)+import qualified Diagrams.Builder as DB import Diagrams.TwoD.Size (mkSizeSpec) ------------------------------------------------------------@@ -451,28 +448,25 @@ logStr $ "[ ] " ++ (url ^. diagramName) IO.hFlush IO.stdout - buildDiagram- SVG- zeroV- (SVGOptions (mkSizeSpec w h) Nothing)- (map (view codeBlockCode) neededCode)- (url ^. diagramName)- []- [ "Diagrams.Backend.SVG" ]- (hashedRegenerate (\_ opts -> opts) cacheDir)+ let bopts = DB.mkBuildOpts SVG zeroV (SVGOptions (mkSizeSpec w h) Nothing)+ & DB.snippets .~ map (view codeBlockCode) neededCode+ & DB.imports .~ [ "Diagrams.Backend.SVG" ]+ & DB.diaExpr .~ (url ^. diagramName)+ & DB.decideRegen .~ (DB.hashedRegenerate (\_ opts -> opts) cacheDir)+ DB.buildDiagram bopts case res of -- XXX incorporate these into error reporting framework instead of printing- ParseErr err -> do+ DB.ParseErr err -> do tell [errHeader ++ "Parse error: " ++ err] logResult "!" return oldURL- InterpErr ierr -> do- tell [errHeader ++ "Interpreter error: " ++ ppInterpError ierr]+ DB.InterpErr ierr -> do+ tell [errHeader ++ "Interpreter error: " ++ DB.ppInterpError ierr] logResult "!" return oldURL- Skipped hash -> do- let cached = mkCached hash+ DB.Skipped hash -> do+ let cached = mkCached (DB.hashToHexStr hash) when (not dataURIs) $ liftIO $ copyFile cached outFile logResult "." if dataURIs@@ -480,8 +474,8 @@ svgBS <- liftIO $ BS.readFile cached return (newURL (mkDataURI svgBS)) else return (newURL outFile)- OK hash svg -> do- let cached = mkCached hash+ DB.OK hash svg -> do+ let cached = mkCached (DB.hashToHexStr hash) svgBS = renderSvg svg liftIO $ BS.writeFile cached svgBS url' <- if dataURIs