diff --git a/.travis.yml b/.travis.yml index d4d79d4..e498f69 100644 --- a/.travis.yml +++ b/.travis.yml @@ -50,14 +50,24 @@ matrix: - ghc-8.4.3 - cabal-install-head + - ghc: 8.6.1 + env: GHCVER='8.6.1' CABALVER='head' + os: linux + addons: + apt: + sources: + - hvr-ghc + packages: + - ghc-8.6.1 + - cabal-install-head + install: - | if [ -z "$STACK_YAML" ]; then export PATH="/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH" echo $PATH - cp cabal.project.local.ubuntu-example cabal.project.local cabal new-update - cabal new-build --enable-tests --enable-benchmarks --allow-newer -f aeson -f hashable -f serialise -f deepseq + cabal new-build --enable-tests --enable-benchmarks -f aeson -f hashable -f serialise -f deepseq else mkdir -p ~/.local/bin export PATH="$HOME/.local/bin:$PATH" @@ -71,7 +81,7 @@ install: script: - | if [ -z "$STACK_YAML" ]; then - cabal new-test --allow-newer + cabal new-test else stack build --test --bench --no-terminal --flag o-clock:aeson --flag o-clock:hashable --flag o-clock:serialise --flag o-clock:deepseq fi diff --git a/CHANGELOG.md b/CHANGELOG.md index 281eabd..4da6480 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,11 @@ Change log o'clock uses [PVP Versioning][1]. The change log is available [on GitHub][2]. +1.0.0.1 +======= + +* Add support for GHC-8.6.1 + 1.0.0 ===== diff --git a/README.md b/README.md index fda66e6..40fede5 100644 --- a/README.md +++ b/README.md @@ -76,6 +76,9 @@ Since this tutorial is literate haskell file, let's first write some pragmas and ```haskell {-# LANGUAGE CPP #-} {-# LANGUAGE DataKinds #-} +#if ( __GLASGOW_HASKELL__ >= 806 ) +{-# LANGUAGE NoStarIsType #-} +#endif {-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE TypeOperators #-} diff --git a/cabal.project b/cabal.project new file mode 100644 index 0000000..cf2cf20 --- /dev/null +++ b/cabal.project @@ -0,0 +1,5 @@ +packages: . +tests: True +benchmarks: True + +allow-newer: tiempo:base, tiempo:time, serialise:containers, cborg:containers \ No newline at end of file diff --git a/cabal.project.local.ubuntu-example b/cabal.project.local.ubuntu-example deleted file mode 100644 index 43ee09e..0000000 --- a/cabal.project.local.ubuntu-example +++ /dev/null @@ -1 +0,0 @@ -with-compiler: /opt/ghc/8.4.3/bin/ghc diff --git a/o-clock.cabal b/o-clock.cabal index 61cfda2..a8f9a90 100644 --- a/o-clock.cabal +++ b/o-clock.cabal @@ -1,5 +1,5 @@ name: o-clock -version: 1.0.0 +version: 1.0.0.1 synopsis: Type-safe time library. description: See README.md for details. homepage: https://github.com/serokell/o-clock @@ -19,6 +19,7 @@ cabal-version: 2.0 tested-with: GHC == 8.0.2 , GHC == 8.2.2 , GHC == 8.4.3 + , GHC == 8.6.1 source-repository head type: git @@ -33,7 +34,7 @@ library Time.Units ghc-options: -Wall build-depends: base >= 4.9 && < 5 - , ghc-prim >= 0.5 + , ghc-prim ^>= 0.5 default-language: Haskell2010 default-extensions: OverloadedStrings RecordWildCards @@ -41,14 +42,14 @@ library TypeApplications TypeFamilies if flag(aeson) - build-depends: aeson >= 1.2.4 + build-depends: aeson >= 1.2.4 && < 1.5 , text cpp-options: -DHAS_aeson if flag(hashable) - build-depends: hashable >= 1.2.6 + build-depends: hashable >= 1.2.6 && < 1.3 cpp-options: -DHAS_hashable if flag(deepseq) - build-depends: deepseq >= 1.4 + build-depends: deepseq ^>= 1.4 cpp-options: -DHAS_deepseq if flag(serialise) build-depends: serialise >= 0.2 @@ -75,9 +76,9 @@ test-suite o-clock-test build-depends: base >= 4.9 && < 5 , o-clock - , hedgehog ^>= 0.5.1 - , tasty ^>= 0.12 - , tasty-hedgehog ^>= 0.1 + , hedgehog ^>= 0.6 + , tasty >= 0.12 && < 1.2 + , tasty-hedgehog >= 0.1 && < 0.3 , tasty-hspec ^>= 1.1.3 , type-spec ^>= 0.3.0.1 @@ -93,8 +94,8 @@ test-suite o-clock-doctest build-tool-depends: doctest:doctest build-depends: base >= 4.10 && < 5 - , doctest >= 0.13 - , Glob >= 0.9 + , doctest ^>= 0.16 + , Glob ^>= 0.9 ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N default-language: Haskell2010 diff --git a/src/Time/Rational.hs b/src/Time/Rational.hs index 65e7625..f2fc767 100644 --- a/src/Time/Rational.hs +++ b/src/Time/Rational.hs @@ -4,6 +4,9 @@ {-# LANGUAGE TypeInType #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE FlexibleInstances #-} +#if ( __GLASGOW_HASKELL__ >= 806 ) +{-# LANGUAGE NoStarIsType #-} +#endif {-# LANGUAGE Rank2Types #-} {-# LANGUAGE TypeOperators #-} {-# LANGUAGE UndecidableInstances #-} diff --git a/src/Time/Units.hs b/src/Time/Units.hs index dc6dd30..e73992c 100644 --- a/src/Time/Units.hs +++ b/src/Time/Units.hs @@ -5,8 +5,11 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE ExplicitForAll #-} {-# LANGUAGE FlexibleContexts #-} -{-# LANGUAGE InstanceSigs #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE InstanceSigs #-} +#if ( __GLASGOW_HASKELL__ >= 806 ) +{-# LANGUAGE NoStarIsType #-} +#endif {-# LANGUAGE TypeOperators #-} {-# LANGUAGE UndecidableInstances #-}