packages feed

text-show-instances 3.2.1 → 3.3

raw patch · 16 files changed

+483/−32 lines, 16 filesdep +ghc-bootdep ~QuickCheckdep ~text-showdep ~text-show-instances

Dependencies added: ghc-boot

Dependency ranges changed: QuickCheck, text-show, text-show-instances, th-orphans

Files

CHANGELOG.md view
@@ -1,3 +1,10 @@+## 3.3+* Add the `TextShow.GHC.LanguageExtensions.Type` and `TextShow.GHC.PackageDb` modules, which define instances if using `ghc-boot`+* Add `TextShow` instances for `NameFlavour`, `NameSpace`, `PatSynArgs`, and `PatSynDir` in `TextShow.Language.Haskell.TH`+* Require `text-show-3.3` or later, which has slightly different TH derivation behavior. As a result, the context for the `TextShow1` instance for `Clown` in `TextShow.Data.Bifunctor` had to be changed slightly.+* Allow building with `QuickCheck-2.9`+* Fix GHC HEAD build+ ### 3.2.1 * Fix build with GHC 8.0 * Add `TextShow` instance for `Overlap` in `TextShow.Language.Haskell.TH`
README.md view
@@ -21,6 +21,7 @@ * [`binary`](http://hackage.haskell.org/package/binary) * [`containers`](http://hackage.haskell.org/package/containers) * [`directory`](http://hackage.haskell.org/package/directory)+* [`ghc-boot`](http://hackage.haskell.org/package/ghc-boot) * [`haskeline`](http://hackage.haskell.org/package/haskeline) * [`hoopl`](http://hackage.haskell.org/package/hoopl) * [`hpc`](http://hackage.haskell.org/package/hpc)@@ -28,7 +29,6 @@ * [`old-time`](http://hackage.haskell.org/package/old-time) * [`pretty`](http://hackage.haskell.org/package/pretty) * [`random`](http://hackage.haskell.org/package/random)-* [`semigroups`](http://hackage.haskell.org/package/semigroups) * [`tagged`](http://hackage.haskell.org/package/tagged) * [`template-haskell`](http://hackage.haskell.org/package/template-haskell) * [`terminfo`](http://hackage.haskell.org/package/terminfo)
src/TextShow/Data/Bifunctor.hs view
@@ -229,7 +229,7 @@  instance TextShow (f a) => TextShow (Clown f a b) where     showbPrec = $(makeShowbPrec ''Clown)-instance (TextShow1 f, TextShow a) => TextShow1 (Clown f a) where+instance TextShow (f a) => TextShow1 (Clown f a) where     liftShowbPrec = $(makeLiftShowbPrec ''Clown) $(deriveTextShow2 ''Clown) 
+ src/TextShow/GHC/LanguageExtensions/Type.hs view
@@ -0,0 +1,41 @@+{-# LANGUAGE CPP             #-}++#if defined(MIN_VERSION_ghc_boot)+{-# LANGUAGE TemplateHaskell #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+#endif++{-|+Module:      TextShow.GHC.LanguageExtensions.Type+Copyright:   (C) 2014-2016 Ryan Scott+License:     BSD-style (see the file LICENSE)+Maintainer:  Ryan Scott+Stability:   Provisional+Portability: GHC++Monomorphic 'TextShow' function for the 'Extension' data type.+This module only exports functions if using @ghc-boot@.++/Since: 3.3/+-}+module TextShow.GHC.LanguageExtensions.Type (+#if !defined(MIN_VERSION_ghc_boot)+    ) where+#else+      showbExtension+    ) where++import GHC.LanguageExtensions.Type (Extension)++import TextShow (TextShow(..), Builder)+import TextShow.TH (deriveTextShow)++-- | Convert an 'Extension' to a 'Builder'.+-- This function is only available when using @ghc-boot@.+--+-- /Since: 3.3/+showbExtension :: Extension -> Builder+showbExtension = showb++$(deriveTextShow ''Extension)+#endif
+ src/TextShow/GHC/PackageDb.hs view
@@ -0,0 +1,109 @@+{-# LANGUAGE CPP             #-}++#if defined(MIN_VERSION_ghc_boot)+{-# LANGUAGE TemplateHaskell #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+#endif++{-|+Module:      TextShow.GHC.PackageDb+Copyright:   (C) 2014-2016 Ryan Scott+License:     BSD-style (see the file LICENSE)+Maintainer:  Ryan Scott+Stability:   Provisional+Portability: GHC++Monomorphic 'TextShow' functions for data types in the "GHC.PackageDb" module.+This module only exports functions if using @ghc-boot@.++/Since: 3.3/+-}+module TextShow.GHC.PackageDb (+#if !defined(MIN_VERSION_ghc_boot)+    ) where+#else+      liftShowbInstalledPackageInfoPrec2+# if __GLASGOW_HASKELL__ >= 801+    , liftShowbDbModulePrec2+# else+    , liftShowbOriginalModulePrec2+    , liftShowbExposedModulePrec2+# endif+    ) where++import GHC.PackageDb++import TextShow (TextShow(..), TextShow2(..), Builder)+import TextShow.TH (deriveTextShow, deriveTextShow1, deriveTextShow2)++-- | Convert an 'InstalledPackageInfo' value to a 'Builder' with the given+-- show functions and precedence.+-- This function is only available when using @ghc-boot@ and GHC 8.1 or later.+--+-- /Since: 3.3/+liftShowbInstalledPackageInfoPrec2 :: ( TextShow srcpkgid+                                      , TextShow srcpkgname+# if __GLASGOW_HASKELL__ >= 801+                                      , TextShow unitid+# endif+                                      )+                                   => (Int -> a -> Builder) -> ([a] -> Builder)+                                   -> (Int -> b -> Builder) -> ([b] -> Builder)+                                   -> Int+                                   -> InstalledPackageInfo srcpkgid srcpkgname+# if __GLASGOW_HASKELL__ >= 801+                                                           unitid+# endif+                                                           a b+                                   -> Builder+liftShowbInstalledPackageInfoPrec2 = liftShowbPrec2++# if __GLASGOW_HASKELL__ >= 801+-- | Convert a 'DbModule' value to a 'Builder' with the given show functions+-- and precedence.+-- This function is only available when using @ghc-boot@.+--+-- /Since: 3.3/+liftShowbDbModulePrec2 :: (Int -> unitid     -> Builder) -> ([unitid]     -> Builder)+                       -> (Int -> modulename -> Builder) -> ([modulename] -> Builder)+                       -> Int -> DbModule unitid modulename -> Builder+liftShowbDbModulePrec2 = liftShowbPrec2+# else+-- | Convert an 'OriginalModule' value to a 'Builder' with the given show functions+-- and precedence.+-- This function is only available when using @ghc-boot@.+--+-- /Since: 3.3/+liftShowbOriginalModulePrec2 :: (Int -> unitid     -> Builder) -> ([unitid]     -> Builder)+                             -> (Int -> modulename -> Builder) -> ([modulename] -> Builder)+                             -> Int -> OriginalModule unitid modulename -> Builder+liftShowbOriginalModulePrec2 = liftShowbPrec2++-- | Convert an 'ExposedModule' value to a 'Builder' with the given show functions+-- and precedence.+-- This function is only available when using @ghc-boot@.+--+-- /Since: 3.3/+liftShowbExposedModulePrec2 :: (Int -> unitid     -> Builder) -> ([unitid]     -> Builder)+                            -> (Int -> modulename -> Builder) -> ([modulename] -> Builder)+                            -> Int -> ExposedModule unitid modulename -> Builder+liftShowbExposedModulePrec2 = liftShowbPrec2+# endif++$(deriveTextShow  ''InstalledPackageInfo)+$(deriveTextShow1 ''InstalledPackageInfo)+$(deriveTextShow2 ''InstalledPackageInfo)+# if __GLASGOW_HASKELL__ >= 801+$(deriveTextShow  ''DbModule)+$(deriveTextShow1 ''DbModule)+$(deriveTextShow2 ''DbModule)+# else+$(deriveTextShow  ''OriginalModule)+$(deriveTextShow1 ''OriginalModule)+$(deriveTextShow2 ''OriginalModule)++$(deriveTextShow  ''ExposedModule)+$(deriveTextShow1 ''ExposedModule)+$(deriveTextShow2 ''ExposedModule)+# endif+#endif
src/TextShow/Instances.hs view
@@ -28,29 +28,32 @@  import TextShow -import TextShow.Compiler.Hoopl            ()+import TextShow.Compiler.Hoopl              () -import TextShow.Control.Applicative.Trans ()-import TextShow.Control.Monad.Trans       ()+import TextShow.Control.Applicative.Trans   ()+import TextShow.Control.Monad.Trans         () -import TextShow.Data.Bifunctor            ()-import TextShow.Data.Binary               ()-import TextShow.Data.Containers           ()-import TextShow.Data.Functor.Trans        ()-import TextShow.Data.Tagged               ()-import TextShow.Data.Time                 ()-import TextShow.Data.UnorderedContainers  ()-import TextShow.Data.Vector               ()+import TextShow.Data.Bifunctor              ()+import TextShow.Data.Binary                 ()+import TextShow.Data.Containers             ()+import TextShow.Data.Functor.Trans          ()+import TextShow.Data.Tagged                 ()+import TextShow.Data.Time                   ()+import TextShow.Data.UnorderedContainers    ()+import TextShow.Data.Vector                 () -import TextShow.Language.Haskell.TH       ()+import TextShow.GHC.LanguageExtensions.Type ()+import TextShow.GHC.PackageDb               () -import TextShow.System.Console.Haskeline  ()-import TextShow.System.Console.Terminfo   ()-import TextShow.System.Locale             ()-import TextShow.System.Posix              ()-import TextShow.System.Random             ()-import TextShow.System.Time               ()-import TextShow.System.Win32              ()+import TextShow.Language.Haskell.TH         ()++import TextShow.System.Console.Haskeline    ()+import TextShow.System.Console.Terminfo     ()+import TextShow.System.Locale               ()+import TextShow.System.Posix                ()+import TextShow.System.Random               ()+import TextShow.System.Time                 ()+import TextShow.System.Win32                ()  import TextShow.Text.PrettyPrint          () 
src/TextShow/Language/Haskell/TH.hs view
@@ -65,11 +65,17 @@ #endif     , showbName     , showbName'+    , showbNameFlavourPrec+    , showbNameSpace     , showbOccNamePrec #if MIN_VERSION_template_haskell(2,11,0)     , showbOverlap #endif     , showbPatPrec+#if __GLASGOW_HASKELL__ >= 801+    , showbPatSynArgsPrec+    , showbPatSynDirPrec+#endif #if MIN_VERSION_template_haskell(2,8,0)     , showbPhasesPrec #endif@@ -297,7 +303,18 @@                                        else classify $ TL.tail t'                             else False +-- | Convert a 'NameFlavour' to a 'Builder' with the given precedence.+--+-- /Since: 3.3/+showbNameFlavourPrec :: Int -> NameFlavour -> Builder+showbNameFlavourPrec = showbPrec +-- | Convert a 'NameSpace' to a 'Builder'.+--+-- /Since: 3.3/+showbNameSpace :: NameSpace -> Builder+showbNameSpace = showb+ -- | Convert an 'OccName' to a 'Builder' with the given precedence. -- -- /Since: 2/@@ -536,6 +553,22 @@ showbTypeFamilyHeadPrec = showbPrec #endif +#if __GLASGOW_HASKELL__ >= 801+-- | Convert a 'PatSynArgs' value to a 'Builder' with the given precedence.+-- This function is only available with GHC 8.1 or later.+--+-- /Since: 3.3/+showbPatSynArgsPrec :: Int -> PatSynArgs -> Builder+showbPatSynArgsPrec = showbPrec++-- | Convert a 'PatSynDir' value to a 'Builder' with the given precedence.+-- This function is only available with GHC 8.1 or later.+--+-- /Since: 3.3/+showbPatSynDirPrec :: Int -> PatSynDir -> Builder+showbPatSynDirPrec = showbPrec+#endif+ $(deriveTextShow ''Body) $(deriveTextShow ''Callconv) $(deriveTextShow ''Clause)@@ -557,6 +590,8 @@ instance TextShow Name where     showb = showbName +$(deriveTextShow ''NameFlavour)+$(deriveTextShow ''NameSpace) $(deriveTextShow ''OccName) $(deriveTextShow ''Pat) $(deriveTextShow ''PkgName)@@ -609,4 +644,9 @@ $(deriveTextShow ''TypeFamilyHead) #else $(deriveTextShow ''Strict)+#endif++#if __GLASGOW_HASKELL__ >= 801+$(deriveTextShow ''PatSynArgs)+$(deriveTextShow ''PatSynDir) #endif
tests/Instances/Data/Functor/Trans.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP                        #-} {-# LANGUAGE FlexibleContexts           #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE StandaloneDeriving         #-}@@ -15,7 +16,9 @@ module Instances.Data.Functor.Trans () where  import Data.Functor.Compose  (Compose(..))+#if !(MIN_VERSION_QuickCheck(2,9,0)) import Data.Functor.Constant (Constant(..))+#endif import Data.Functor.Product  (Product(..)) import Data.Functor.Reverse  (Reverse(..)) import Data.Functor.Sum      (Sum(..))@@ -26,7 +29,9 @@ import Test.QuickCheck (Arbitrary(..), oneof)  deriving instance Arbitrary (f (g a)) => Arbitrary (Compose f g a)+#if !(MIN_VERSION_QuickCheck(2,9,0)) deriving instance Arbitrary a         => Arbitrary (Constant a b)+#endif deriving instance Arbitrary (f a)     => Arbitrary (Reverse f a)  instance (Arbitrary (f a), Arbitrary (g a)) => Arbitrary (Product f g a) where
+ tests/Instances/GHC/LanguageExtensions/Type.hs view
@@ -0,0 +1,27 @@+{-# LANGUAGE CPP                #-}++#if defined(MIN_VERSION_ghc_boot)+{-# LANGUAGE StandaloneDeriving #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+#endif++{-|+Module:      Instances.GHC.LanguageExtensions.Type+Copyright:   (C) 2014-2016 Ryan Scott+License:     BSD-style (see the file LICENSE)+Maintainer:  Ryan Scott+Stability:   Provisional+Portability: GHC++Provides an 'Arbitrary' instance for the 'Extension' data type.+-}+module Instances.GHC.LanguageExtensions.Type () where++#if defined(MIN_VERSION_ghc_boot)+import GHC.LanguageExtensions.Type (Extension(..))+import Test.QuickCheck (Arbitrary(..), arbitraryBoundedEnum)++deriving instance Bounded Extension+instance Arbitrary Extension where+    arbitrary = arbitraryBoundedEnum+#endif
+ tests/Instances/GHC/PackageDb.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE CPP                #-}++#if defined(MIN_VERSION_ghc_boot)+{-# OPTIONS_GHC -fno-warn-orphans #-}+#endif++{-|+Module:      Instances.GHC.PackageDb+Copyright:   (C) 2014-2016 Ryan Scott+License:     BSD-style (see the file LICENSE)+Maintainer:  Ryan Scott+Stability:   Provisional+Portability: GHC++Provides 'Arbitrary' instances for data types in the "GHC.PackageDb" module.+-}+module Instances.GHC.PackageDb () where++#if defined(MIN_VERSION_ghc_boot)+import GHC.PackageDb++import Instances.Miscellaneous ()+import Instances.Utils ((<@>))++import Test.QuickCheck (Arbitrary(..))++instance ( Arbitrary srcpkgid+         , Arbitrary srcpkgname+         , Arbitrary unitid+         , Arbitrary modulename+# if __GLASGOW_HASKELL__ >= 801+         , Arbitrary mod+# endif+         )+  => Arbitrary ( InstalledPackageInfo srcpkgid srcpkgname unitid modulename+# if __GLASGOW_HASKELL__ >= 801+                 mod+# endif+               ) where+    arbitrary = InstalledPackageInfo <$> arbitrary <*> arbitrary <*> arbitrary+                                     <*> arbitrary <*> arbitrary <@> []+                                     <*> arbitrary <@> []        <@> []+                                     <@> []        <@> []        <@> []+                                     <@> []        <@> []        <@> []+                                     <@> []        <@> []        <@> []+                                     <@> []        <*> arbitrary <*> arbitrary+                                     <*> arbitrary <*> arbitrary++# if __GLASGOW_HASKELL__ >= 801+instance (Arbitrary unitid, Arbitrary modulename)+  => Arbitrary (DbModule unitid modulename) where+    arbitrary = DbModule <$> arbitrary <*> arbitrary+# else+instance (Arbitrary unitid, Arbitrary modulename)+  => Arbitrary (ExposedModule unitid modulename) where+    arbitrary = ExposedModule <$> arbitrary <*> arbitrary++instance (Arbitrary unitid, Arbitrary modulename)+  => Arbitrary (OriginalModule unitid modulename) where+    arbitrary = OriginalModule <$> arbitrary <*> arbitrary+# endif+#endif
tests/Instances/Language/Haskell/TH.hs view
@@ -134,6 +134,10 @@ #else         , FamilyD <$> arbitrary <*> arbitrary <*> arbitrary <*> arbitrary #endif+#if __GLASGOW_HASKELL__ >= 801+        , PatSynD <$> arbitrary <*> arbitrary <*> arbitrary <*> arbitrary+        , PatSynSigD <$> arbitrary <*> arbitrary+#endif         ] --     arbitrary = oneof [ --           FunD              <$> arbitrary <*> arbitrary@@ -300,6 +304,9 @@ #if MIN_VERSION_template_haskell(2,7,0)         , pure $ FamilyI fDec [fDec] #endif+#if __GLASGOW_HASKELL__ >= 801+        , PatSynI    <$> arbitrary <*> arbitrary+#endif         ] --     arbitrary = oneof [ -- #if MIN_VERSION_template_haskell(2,5,0)@@ -646,6 +653,17 @@ deriving instance Enum Strict instance Arbitrary Strict where     arbitrary = arbitraryBoundedEnum+#endif++#if __GLASGOW_HASKELL__ >= 801+instance Arbitrary PatSynArgs where+    arbitrary = oneof $ map pure [ PrefixPatSyn [fName]+                                 , InfixPatSyn fName fName+                                 , RecordPatSyn [fName]+                                 ]++instance Arbitrary PatSynDir where+    arbitrary = oneof $ map pure [ Unidir, ImplBidir, ExplBidir [fClause] ] #endif  deriving instance Arbitrary ModName
tests/Instances/Miscellaneous.hs view
@@ -16,7 +16,9 @@  #include "HsBaseConfig.h" +#if !(MIN_VERSION_QuickCheck(2,9,0)) import Data.Version (Version(..))+#endif  import Foreign.Ptr (Ptr, nullPtr, plusPtr) @@ -56,9 +58,11 @@ instance Arbitrary (Ptr a) where     arbitrary = plusPtr nullPtr <$> arbitrary +#if !(MIN_VERSION_QuickCheck(2,9,0)) instance Arbitrary Version where     arbitrary = pure $ Version [0] [""] --     arbitrary = Version <$> arbitrary <*> arbitrary+#endif  #if MIN_VERSION_base(4,5,0) 
+ tests/Spec/GHC/LanguageExtensions/TypeSpec.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE CPP #-}+{-|+Module:      Spec.GHC.LanguageExtensions.TypeSpec+Copyright:   (C) 2014-2016 Ryan Scott+License:     BSD-style (see the file LICENSE)+Maintainer:  Ryan Scott+Stability:   Provisional+Portability: GHC++@hspec@ tests for the 'Extension' data type.+-}+module Spec.GHC.LanguageExtensions.TypeSpec (main, spec) where++import Prelude ()+import Prelude.Compat++import Test.Hspec (Spec, hspec, parallel)++#if defined(MIN_VERSION_ghc_boot)+import GHC.LanguageExtensions.Type (Extension)++import Instances.GHC.LanguageExtensions.Type ()++import Spec.Utils (prop_matchesTextShow)++import Test.Hspec (describe)+import Test.Hspec.QuickCheck (prop)++import TextShow.GHC.LanguageExtensions.Type ()+#endif++main :: IO ()+main = hspec spec++spec :: Spec+spec = parallel $ do+#if defined(MIN_VERSION_ghc_boot)+    describe "Extension" $+        prop "TextShow instance" (prop_matchesTextShow :: Int -> Extension -> Bool)+#else+    pure ()+#endif
+ tests/Spec/GHC/PackageDbSpec.hs view
@@ -0,0 +1,60 @@+{-# LANGUAGE CPP #-}+{-|+Module:      Spec.GHC.PackageDbSpec+Copyright:   (C) 2014-2016 Ryan Scott+License:     BSD-style (see the file LICENSE)+Maintainer:  Ryan Scott+Stability:   Provisional+Portability: GHC++@hspec@ tests for data types in the "GHC.PackageDb" module.+-}+module Spec.GHC.PackageDbSpec (main, spec) where++import Prelude ()+import Prelude.Compat++import Test.Hspec (Spec, hspec, parallel)++#if defined(MIN_VERSION_ghc_boot)+import GHC.PackageDb++import Instances.GHC.PackageDb ()++import Spec.Utils (prop_matchesTextShow)++import Test.Hspec (describe)+import Test.Hspec.QuickCheck (prop)++import TextShow.GHC.PackageDb ()++ipiString :: String+# if __GLASGOW_HASKELL__ >= 801+type IPI = InstalledPackageInfo Int Int Int Int Int+ipiString = "InstalledPackageInfo Int Int Int Int Int"+# else+type IPI = InstalledPackageInfo Int Int Int Int+ipiString = "InstalledPackageInfo Int Int Int Int"+# endif+#endif++main :: IO ()+main = hspec spec++spec :: Spec+spec = parallel $ do+#if defined(MIN_VERSION_ghc_boot)+    describe ipiString $+        prop "TextShow instance" (prop_matchesTextShow :: Int -> IPI -> Bool)+# if __GLASGOW_HASKELL__ >= 801+    describe "DbModule Int Int" $+        prop "TextShow instance" (prop_matchesTextShow :: Int -> DbModule Int Int -> Bool)+# else+    describe "OriginalModule Int Int" $+        prop "TextShow instance" (prop_matchesTextShow :: Int -> OriginalModule Int Int -> Bool)+    describe "ExposedModule Int Int" $+        prop "TextShow instance" (prop_matchesTextShow :: Int -> ExposedModule Int Int -> Bool)+# endif+#else+    pure ()+#endif
tests/Spec/Language/Haskell/THSpec.hs view
@@ -111,6 +111,10 @@         prop "TextShow instance"               (prop_matchesTextShow :: Int -> Name -> Bool)     describe "showbName'" $         prop "has the same output as showName" prop_showName'+    describe "NameFlavour" $+        prop "TextShow instance"               (prop_matchesTextShow :: Int -> NameFlavour -> Bool)+    describe "NameSpace" $+        prop "TextShow instance"               (prop_matchesTextShow :: Int -> NameSpace -> Bool)     describe "OccName" $         prop "TextShow instance"               (prop_matchesTextShow :: Int -> OccName -> Bool) #if MIN_VERSION_template_haskell(2,11,0)@@ -119,6 +123,12 @@ #endif     describe "Pat" $         prop "TextShow instance"               (prop_matchesTextShow :: Int -> Pat -> Bool)+#if __GLASGOW_HASKELL__ >= 801+    describe "PatSynArgs" $+        prop "TextShow instance"               (prop_matchesTextShow :: Int -> PatSynArgs -> Bool)+    describe "PatSynDir" $+        prop "TextShow instance"               (prop_matchesTextShow :: Int -> PatSynDir -> Bool)+#endif #if MIN_VERSION_template_haskell(2,8,0)     describe "Phases" $         prop "TextShow instance"               (prop_matchesTextShow :: Int -> Phases -> Bool)
text-show-instances.cabal view
@@ -1,5 +1,5 @@ name:                text-show-instances-version:             3.2.1+version:             3.3 synopsis:            Additional instances for text-show description:         @text-show-instances@ is a supplemental library to @text-show@                      that provides additional @Show@ instances for data types in@@ -15,6 +15,8 @@                      .                      * @<http://hackage.haskell.org/package/directory            directory>@                      .+                     * @<http://hackage.haskell.org/package/ghc-boot             ghc-boot>@+                     .                      * @<http://hackage.haskell.org/package/haskeline            haskeline>@                      .                      * @<http://hackage.haskell.org/package/hoopl                hoopl>@@@ -29,8 +31,6 @@                      .                      * @<http://hackage.haskell.org/package/random               random>@                      .-                     * @<http://hackage.haskell.org/package/semigroups           semigroups>@-                     .                      * @<http://hackage.haskell.org/package/tagged               tagged>@                      .                      * @<http://hackage.haskell.org/package/template-haskell     template-haskell>@@@ -84,6 +84,11 @@   default:             False   manual:              True +flag ghc-boot+  description:         Depend on the ghc-boot package.+  default:             True+  manual:              False+ library   exposed-modules:     TextShow.Instances @@ -108,6 +113,10 @@                        TextShow.Text.XHtml                        TextShow.Trace.Hpc +                       -- Only exports functions if using ghc-boot+                       TextShow.GHC.LanguageExtensions.Type+                       TextShow.GHC.PackageDb+                        -- Only exports functions if using Windows                        TextShow.System.Win32 @@ -133,7 +142,7 @@                      , tagged               >= 0.4.4  && < 1                      , template-haskell     >= 2.5    && < 2.12                      , text                 >= 0.11.1 && < 1.3-                     , text-show            >= 3      && < 4+                     , text-show            >= 3.3    && < 4                      , time                 >= 0.1    && < 1.7                      , transformers         >= 0.2.1  && < 0.6                      , transformers-compat  >= 0.5    && < 1@@ -147,6 +156,9 @@   includes:            inline.h   install-includes:    inline.h +  if flag(ghc-boot)+    build-depends:     ghc-boot+   if os(windows)     build-depends:     Win32                >= 2.1    && < 2.4   else@@ -175,10 +187,14 @@                        Instances.Trace.Hpc                        Instances.Utils -                       -- Only exports functions if using Windows+                       -- Only defines instances if using ghc-boot+                       Instances.GHC.LanguageExtensions.Type+                       Instances.GHC.PackageDb++                       -- Only defines instances if using Windows                        Instances.System.Win32 -                       -- Only exports functions if not using Windows+                       -- Only defines instances if not using Windows                        Instances.System.Console.Terminfo                        Instances.System.Posix @@ -203,10 +219,14 @@                        Spec.Trace.HpcSpec                        Spec.Utils -                       -- Only exports functions if using Windows+                       -- Only defines tests if using ghc-boot+                       Spec.GHC.LanguageExtensions.TypeSpec+                       Spec.GHC.PackageDbSpec++                       -- Only defines tests if using Windows                        Spec.System.Win32Spec -                       -- Only exports functions if not using Windows+                       -- Only defines tests if not using Windows                        Spec.System.Console.TerminfoSpec                        Spec.System.PosixSpec   build-depends:       base                 >= 4.3    && < 5@@ -232,8 +252,8 @@                      , tagged               >= 0.4.4  && < 1                      , template-haskell     >= 2.5    && < 2.12                      , text                 >= 0.11.1 && < 1.3-                     , text-show            >= 3.2    && < 4-                     , th-orphans           >= 0.12   && < 1+                     , text-show            >= 3.3    && < 4+                     , th-orphans           >= 0.13.2 && < 1                      , time                 >= 0.1    && < 1.7                      , transformers         >= 0.2.1  && < 0.6                      , transformers-compat  >= 0.5    && < 1@@ -241,7 +261,10 @@                      , vector               >= 0.9    && < 0.12                      , xhtml                >= 3000.2 && < 3000.3   if !flag(developer)-    build-depends:     text-show-instances  == 3.2.1+    build-depends:     text-show-instances  == 3.3++  if flag(ghc-boot)+    build-depends:     ghc-boot    hs-source-dirs:      tests   if flag(developer)