diagrams-canvas 1.4.2 → 1.4.2.1
raw patch · 4 files changed
+25/−13 lines, 4 filesdep −cmdargsdep ~basedep ~containersdep ~diagrams-libPVP ok
version bump matches the API change (PVP)
Dependencies removed: cmdargs
Dependency ranges changed: base, containers, diagrams-lib
API changes (from Hackage documentation)
Files
- CHANGELOG.md +12/−0
- diagrams-canvas.cabal +6/−7
- src/Diagrams/Backend/Canvas.hs +5/−5
- src/Diagrams/Backend/Canvas/CmdLine.hs +2/−1
CHANGELOG.md view
@@ -1,6 +1,18 @@+## [v1.4.2.1](https://github.com/diagrams/diagrams-canvas/tree/v1.4.2.1) (2026-11-11)++- Allow `base-4.22`, `diagrams-lib-1.6`, `containers-0.8`+- Remove redundant `cmdargs` dep+- Test on GHC 9.14+- Drop support for GHC < 8.10+- Fix new warnings+ ## [v1.4.2](https://github.com/diagrams/diagrams-canvas/tree/v1.4.2) (2024-10-30) - Require `data-default-0.8`++- r1 (14 Apr 2025): allow `base-4.21`, `diagrams-lib-1.5`, test on GHC+ 9.12+- r2 (14 Jun 2025): allow `optparse-applicative-0.19` ## [v1.4.1.2](https://github.com/diagrams/diagrams-canvas/tree/v1.4.1.2) (2023-06-22)
diagrams-canvas.cabal view
@@ -1,5 +1,5 @@ Name: diagrams-canvas-Version: 1.4.2+Version: 1.4.2.1 Synopsis: HTML5 canvas backend for diagrams drawing EDSL Description: This package provides a modular backend for rendering diagrams created with the diagrams EDSL using an@@ -14,7 +14,7 @@ Category: Graphics Build-type: Simple Extra-source-files: README.md, CHANGELOG.md-Tested-with: GHC ==8.8.4 || ==8.10.7 || ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.5 || ==9.8.2 || ==9.10.1+Tested-with: GHC ==8.10.7 || ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4 || ==9.10.3 || ==9.12.4 || ==9.14.1 Cabal-version: >=1.10 Source-repository head type: git@@ -24,18 +24,17 @@ Exposed-modules: Diagrams.Backend.Canvas Diagrams.Backend.Canvas.CmdLine Hs-source-dirs: src- Build-depends: base >= 4.13 && < 4.21,+ Build-depends: base >= 4.13 && < 4.23, mtl >= 2.0 && < 2.4, NumInstances >= 1.0 && < 1.5, diagrams-core >= 1.3 && < 1.6,- diagrams-lib >= 1.3 && < 1.5,- cmdargs >= 0.6 && < 0.11,+ diagrams-lib >= 1.3 && < 1.7, blank-canvas >= 0.5 && < 0.8, lens >= 4.0 && < 5.4,- containers >= 0.3 && < 0.8,+ containers >= 0.3 && < 0.9, text >= 1.0 && < 2.2, data-default >= 0.8 && < 0.9, statestack >= 0.2 && <0.4,- optparse-applicative >= 0.13 && < 0.19+ optparse-applicative >= 0.13 && < 0.20 Default-language: Haskell2010
src/Diagrams/Backend/Canvas.hs view
@@ -5,7 +5,6 @@ {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE GADTs #-} {-# LANGUAGE TypeSynonymInstances #-}-{-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE ViewPatterns #-} {-# LANGUAGE InstanceSigs #-} {-# LANGUAGE OverloadedStrings #-}@@ -95,7 +94,6 @@ import Data.NumInstances () import qualified Data.Text as T import Data.Tree (Tree(Node))-import Data.Typeable (Typeable) import Data.Word (Word8) import Diagrams.Attributes@@ -115,7 +113,7 @@ -- | This data declaration is simply used as a token to distinguish -- this rendering engine. data Canvas = Canvas- deriving (Eq, Ord, Read, Show, Typeable)+ deriving (Eq, Ord, Read, Show) type B = Canvas @@ -228,7 +226,7 @@ relCurveTo :: Double -> Double -> Double -> Double -> Double -> Double -> RenderM () relCurveTo ax ay bx by cx cy = do p <- use csPos- let [(ax',ay'),(bx',by'),(cx',cy')] = map (p +) [(ax,ay),(bx,by),(cx,cy)]+ let ((ax',ay'),(bx',by'),(cx',cy')) = over each (p +) ((ax,ay),(bx,by),(cx,cy)) liftC $ BC.bezierCurveTo (ax',ay',bx',by',cx',cy') move (cx', cy') @@ -301,7 +299,9 @@ canvasTransform :: T2 Double -> RenderM () canvasTransform tr = liftC $ BC.transform vs where- [[ax, ay], [bx, by], [tx, ty]] = matrixHomRep tr+ (ax, ay, bx, by, tx, ty) = case matrixHomRep tr of+ [[ax', ay'], [bx', by'], [tx', ty']] -> (ax', ay', bx', by', tx', ty')+ _ -> (0, 0, 0, 0, 0, 0) vs = (realToFrac ax,realToFrac ay ,realToFrac bx,realToFrac by ,realToFrac tx,realToFrac ty)
src/Diagrams/Backend/Canvas/CmdLine.hs view
@@ -5,6 +5,7 @@ {-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-orphans #-}+{-# OPTIONS_GHC -fno-warn-dodgy-imports #-} ----------------------------------------------------------------------------- -- |@@ -73,7 +74,7 @@ { _width :: Maybe Int -- ^ Final output width of diagram. , _height :: Maybe Int -- ^ Final height of diagram. , _port :: Int -- ^ Port on which to start web server.- } deriving (Show, Data, Typeable)+ } deriving (Show, Data) makeLenses ''DiaOpts