diff --git a/pretty-simple.cabal b/pretty-simple.cabal
--- a/pretty-simple.cabal
+++ b/pretty-simple.cabal
@@ -1,82 +1,87 @@
-name:                pretty-simple
-version:             1.0.0.4
-synopsis:            pretty printer for data types with a 'Show' instance.
-description:         Please see README.md
-homepage:            https://github.com/cdepillabout/pretty-simple
-license:             BSD3
-license-file:        LICENSE
-author:              Dennis Gosnell
-maintainer:          cdep.illabout@gmail.com
-copyright:           2017 Dennis Gosnell
-category:            Text
-build-type:          Simple
-extra-source-files:  README.md
-                   , img/pretty-simple-example-screenshot.png
-cabal-version:       >=1.10
+name: pretty-simple
+version: 1.0.0.5
+cabal-version: >=1.10
+build-type: Simple
+license: BSD3
+license-file: LICENSE
+copyright: 2017 Dennis Gosnell
+maintainer: cdep.illabout@gmail.com
+homepage: https://github.com/cdepillabout/pretty-simple
+synopsis: pretty printer for data types with a 'Show' instance.
+description:
+    Please see README.md
+category: Text
+author: Dennis Gosnell
+extra-source-files:
+    README.md
+    img/pretty-simple-example-screenshot.png
 
+source-repository head
+    type: git
+    location: git@github.com:cdepillabout/pretty-simple.git
+
 flag buildexample
-  description: Build a small example program showing how to use the pPrint function
-  default:     False
+    description:
+        Build a small example program showing how to use the pPrint function
+    default: False
 
 library
-  hs-source-dirs:      src
-  exposed-modules:     Text.Pretty.Simple
-                     , Text.Pretty.Simple.Internal
-                     , Text.Pretty.Simple.Internal.Expr
-                     , Text.Pretty.Simple.Internal.ExprParser
-                     , Text.Pretty.Simple.Internal.ExprToOutput
-                     , Text.Pretty.Simple.Internal.Output
-                     , Text.Pretty.Simple.Internal.OutputPrinter
-  build-depends:       base >= 4.8 && < 5
-                     , ansi-terminal
-                     , containers
-                     , lens
-                     , mono-traversable
-                     , mtl
-                     , parsec
-                     , semigroups
-                     , text
-                     , transformers
-  default-language:    Haskell2010
-  ghc-options:         -Wall
-  other-extensions:    TemplateHaskell
+    exposed-modules:
+        Text.Pretty.Simple
+        Text.Pretty.Simple.Internal
+        Text.Pretty.Simple.Internal.Expr
+        Text.Pretty.Simple.Internal.ExprParser
+        Text.Pretty.Simple.Internal.ExprToOutput
+        Text.Pretty.Simple.Internal.Output
+        Text.Pretty.Simple.Internal.OutputPrinter
+    build-depends:
+        base >=4.8 && <5,
+        ansi-terminal >=0.6.2.3 && <0.7,
+        containers >=0.5.7.1 && <0.6,
+        lens ==4.14.*,
+        mono-traversable >=1.0.1 && <1.1,
+        mtl >=2.2.1 && <2.3,
+        parsec >=3.1.11 && <3.2,
+        semigroups >=0.18.2 && <0.19,
+        text >=1.2.2.1 && <1.3,
+        transformers >=0.5.2.0 && <0.6
+    default-language: Haskell2010
+    other-extensions: TemplateHaskell
+    hs-source-dirs: src
+    ghc-options: -Wall
 
 executable pretty-simple-example
-  main-is:             Example.hs
-  other-modules:       Example.Data
-  hs-source-dirs:      example
-  build-depends:       base
-                     , pretty-simple
-  default-language:    Haskell2010
-  ghc-options:         -Wall -threaded -rtsopts -with-rtsopts=-N
-
-  if flag(buildexample)
-    buildable:       True
-  else
-    buildable:       False
+    main-is: Example.hs
+    buildable: False
+    build-depends:
+        base >=4.9.0.0 && <4.10,
+        pretty-simple >=1.0.0.5 && <1.1
+    default-language: Haskell2010
+    hs-source-dirs: example
+    other-modules:
+        Example.Data
+    ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N
 
 test-suite pretty-simple-doctest
-  type:                exitcode-stdio-1.0
-  main-is:             DocTest.hs
-  hs-source-dirs:      test
-  build-depends:       base
-                     , doctest
-                     , Glob
-  default-language:    Haskell2010
-  ghc-options:         -Wall -threaded -rtsopts -with-rtsopts=-N
+    type: exitcode-stdio-1.0
+    main-is: DocTest.hs
+    build-depends:
+        base >=4.9.0.0 && <4.10,
+        doctest >=0.11.0 && <0.12,
+        Glob >=0.7.13 && <0.8
+    default-language: Haskell2010
+    hs-source-dirs: test
+    ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N
 
 benchmark pretty-simple-bench
-  type:                exitcode-stdio-1.0
-  main-is:             Bench.hs
-  other-modules:       Example.Data
-  hs-source-dirs:      bench
-                     , example
-  build-depends:       base
-                     , criterion
-                     , pretty-simple
-  default-language:    Haskell2010
-  ghc-options:         -Wall -threaded -rtsopts -with-rtsopts=-N
-
-source-repository head
-  type:     git
-  location: git@github.com:cdepillabout/pretty-simple.git
+    type: exitcode-stdio-1.0
+    main-is: Bench.hs
+    build-depends:
+        base >=4.9.0.0 && <4.10,
+        criterion >=1.1.1.0 && <1.2,
+        pretty-simple >=1.0.0.5 && <1.1
+    default-language: Haskell2010
+    hs-source-dirs: bench example
+    other-modules:
+        Example.Data
+    ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N
