From a4b797fd134f5f0b43fe5651002be62b6a07b3f5 Mon Sep 17 00:00:00 2001 From: Oleg Grenrus Date: Sat, 2 Nov 2019 12:44:37 +0200 Subject: [PATCH 1/3] Relax bounds --- svg-builder.cabal | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/svg-builder.cabal b/svg-builder.cabal index 646fd7f..2633a91 100644 --- a/svg-builder.cabal +++ b/svg-builder.cabal @@ -24,13 +24,13 @@ library Graphics.Svg.Path, Graphics.Svg.Elements, Graphics.Svg.Attributes - build-depends: base >= 4.5 && < 4.13, + build-depends: base >= 4.5 && < 4.14, blaze-builder >= 0.4 && < 0.5, bytestring >= 0.10 && < 0.11, - hashable >= 1.1 && < 1.3, + hashable >= 1.1 && < 1.4, text >= 0.11 && < 1.3, unordered-containers >= 0.2 && < 0.3 if !impl(ghc >= 8.0) - build-depends: semigroups >= 0.16.1 && < 0.19 + build-depends: semigroups >= 0.16.1 && < 0.20 hs-source-dirs: src default-language: Haskell2010 From 5d043addb089e14530c544ada1d0b6140a76bbef Mon Sep 17 00:00:00 2001 From: Oleg Grenrus Date: Sat, 2 Nov 2019 12:46:17 +0200 Subject: [PATCH 2/3] Add 8.6 and 8.8 travis jobs --- .travis.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 0e8fab0..d077af2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,7 +7,9 @@ env: - GHCVER=7.10.3 CABALVER=1.22 - GHCVER=8.0.2 CABALVER=1.24 - GHCVER=8.2.2 CABALVER=2.0 - - GHCVER=8.4.1 CABALVER=2.2 + - GHCVER=8.4.4 CABALVER=2.2 + - GHCVER=8.6.5 CABALVER=2.4 + - GHCVER=8.8.1 CABALVER=3.0 - GHCVER=head CABALVER=head matrix: From bb2b053e46407d4e07bd0bb78505c50244fdf3d8 Mon Sep 17 00:00:00 2001 From: Oleg Grenrus Date: Sat, 2 Nov 2019 13:35:52 +0200 Subject: [PATCH 3/3] -Werror free on GHC-8.8 --- src/Graphics/Svg/Core.hs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Graphics/Svg/Core.hs b/src/Graphics/Svg/Core.hs index 64a8e03..74cef07 100644 --- a/src/Graphics/Svg/Core.hs +++ b/src/Graphics/Svg/Core.hs @@ -40,9 +40,7 @@ import Data.ByteString.Lazy (ByteString) import Data.Hashable (Hashable(..)) import Data.HashMap.Strict (HashMap) import qualified Data.HashMap.Strict as M -#if !MIN_VERSION_base(4,8,0) import Data.Monoid (Monoid(..)) -#endif import Data.Semigroup (Semigroup(..)) import Data.String import Data.Text (Text) @@ -65,10 +63,13 @@ newtype Element = Element (HashMap Text Text -> Builder) instance Show Element where show e = LT.unpack . renderText $ e -instance Semigroup Element where +-- using qualified name we make the import not redundant, +-- even when Semigroup or Monoid are in Prelude + +instance Data.Semigroup.Semigroup Element where Element e1 <> Element e2 = Element (e1 <> e2) -instance Monoid Element where +instance Data.Monoid.Monoid Element where mempty = Element mempty #if !(MIN_VERSION_base(4,11,0)) mappend = (<>)