BSD-3-Clause licensed by Ryan Scott
Maintained by Ryan Scott
This version can be pinned in stack with:text-show-instances-3.8.4@sha256:7ef7674d0a412752b72e70dfa5460f7a2385f188ba62331ff484dd0dc517d174,14636


Hackage Hackage Dependencies Haskell Programming Language BSD3 License Linux build Windows build

text-show-instances is a supplemental library to text-show that provides additional Show instances for data types in common Haskell libraries and GHC dependencies that are not encompassed by text-show. Currently, text-show-instances covers these libraries:

One can use these instances by importing TextShow.Instances. Alternatively, there are monomorphic versions of the showb function available in the other submodules of TextShow.


3.8.4 [2020.10.03]

  • Allow building with template-haskell- (GHC 9.0).

3.8.3 [2019.11.08]

  • Make the TextShow1 and TextShow2 instances for Fix and Join in TextShow.Data.Bifunctor match the behavior the corresponding Show1 and Show2 instances in bifunctors.

3.8.2 [2019.09.03]

  • Make the test suite compile on GHC 8.8.1.

3.8.1 [2019.06.03]

  • Require quickcheck-instances-0.3.21 or later.

3.8 [2019.05.02]

  • Support GHC 8.8.
  • Add a TextShow instance for ShortText (from the text-short package) in TextShow.Data.ShortText.
  • Drop support for base-4.5 and base-4.6 (GHC 7.4 and 7.6, respectively).
  • liftShowbTaggedPrec is no longer exported from TextShow.Data.Tagged. Use Tagged’s TextShow1 instance instead.
  • showbVectorGenericPrec and liftShowbVectorGenericPrec are no longer exported from TextShow.Data.Vector. Use the various TextShow(1) instances defined in TextShow.Data.Vector instead.
  • Require vector-0.12 or later.

3.7 [2018.10.07]

  • Remove hoopl dependency. Instances are no longer provided for data types in the hoopl library.
  • Depend on QuickCheck-2.12 or later.
  • Depend on quickcheck-instances-0.3.19 or later.

3.6.5 [2018.07.03]

  • Fix the tests on GHC 8.6.

3.6.4 [2018.04.07]

  • Use base-compat-batteries.

3.6.3 [2018.03.15]

  • GHC 8.4 fixes

3.6.2 [2017.06.18]

  • Require QuickCheck-2.10/quickcheck-instances-0.3.16 or later

3.6.1 [2017.06.04]

  • Drop support for GHC 7.0 and 7.2
  • Allow building with quickcheck-instances-0.3.14

3.6 [2017.04.22]

  • New TextShow instances:
    • directory: XdgDirectory (from System.Directory)
    • ghc-boot-th: ForeignSrcLang (from GHC.ForeignSrcLang.Type)
    • time: UniversalTime (from Data.Time.Clock) and SystemTime (from Data.Time.Clock.System with time-1.8 or later)
    • Win32: Lots of datatypes added in Win32-
  • Remove most monomorphic TextShow functions, as their utility is questionable, and their maintenance burden is undeniable
  • Made the instances in TextShow.Data.Bifunctor poly-kinded when possible
  • Fix testsuite compilation on older GHCs

3.5 [2017.01.07]

  • Add TextShow(1) instances for Data.Graph.SCC
  • TextShow.Instances no longer reexports the entirety of TextShow. Doing so meant that text-show-instances would be burdened with bumping its major version number every time that text-show made an API change in TextShow in order to follow the PVP.
  • Remove TextShow.GHC.PackageDb module
  • Refactor test suite


  • Require text-show-3.4 or later
  • Update testsuite to be buildable with text-show-3.4


  • 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


  • Fix build with GHC 8.0
  • Add TextShow instance for Overlap in TextShow.Language.Haskell.TH


  • Allow build with text-show-3.2


  • Require quickcheck-instances >= 0.3.12 in test suite due to presence of new orphan Arbitrary instances for vector datatypes


  • GHC 8.0 support
  • Rename functions that previously ended with the suffix -With to instead have the prefix lift-, consistent with text-show-3
  • Removed the TextShow.Data.Semigroup and TextShow.Data.List.NonEmpty modules, as they have been moved to text-show-3 (as part of moving Semigroup into base)
  • Removed the functions for Compose, Product, and Sum in TextShow.Data.Functor.Trans, as they have been moved to text-show-3 (as part of moving them to base)
  • Add TextShow/TextShow1 instances for Fix and Sum in TextShow.Data.Bifunctor
  • Add TextShow/TextShow1 instances for the datatypes in Text.PrettyPrint.Annotated (introduced in @pretty-
  • Add TextShow instances for the new datatypes in @template-haskell-


  • Reexport the TextShow classes and module from TextShow.Instances. This helps Haddock readers discover what new instances are added with text-show-instances.
  • Make Tagged instances poly-kinded


  • Allow building with vector-0.11 and above. Be aware that the Show instances for Vector types in vector-0.11.0 are different from other versions of vector.


  • Changed the top-level module name from Text.Show.Text to TextShow, since the former was extremely verbose without much benefit. As a result, this will break all existing code that depends on text-show-instances.


  • Allow building with text-show-1. Also changed the monomorphic functions to match the naming conventions introduced in text-show-1.
  • Added instances for the bifunctors library
  • Removed utf8-string instance, since it wasn’t as useful as I had imagined
  • Revamped test suite


  • Allow building with text-show-0.8
  • Modules which were previously exported only if using a recent-enough version of GHC/base (e.g., Text.Show.Text.System.Win32) are now always exposed. If the functionality that the module provides is not available on a given version of GHC/base, the module will not expose anything.
  • Change test-suite to use hspec, allowing for it to be built on GHC 7.0 and 7.2

  • Fixed tests on Windows


  • Added showbArgPrec (and corresponding Show and Show1 instances) to Text.Show.Text.Data.Semigroup
  • Added Show1 instances for data types in Text.Show.Text.Data.List.NonEmpty and Text.Show.Text.Data.Semigroup
  • Added showbDoc (and corresponding Show instance) to Text.Show.Text.Language.Haskell.TH
  • Renamed showbDoc in Text.Show.Text.Text.PrettyPrint to renderB


  • Exposed showbKindPrec and showbPredPrec with later versions of Template Haskell
  • Added renderStyleB to Text.Show.Text.Text.PrettyPrint (for time-1.5 and later)
  • Added showbTimeLocalePrec to Text.Show.Text.Data.Time
  • Added instances for the binary, haskeline, hoopl, terminfo, and utf8-string libraries
  • Removed transformers-four flag


  • Initial commit