diff --git a/CHANGES b/CHANGES
new file mode 100644
--- /dev/null
+++ b/CHANGES
@@ -0,0 +1,7 @@
+0.22.2 (2014/4/16)
+
+- display years before 1000 with four digits, not three
+- avoid pretty-show to build with GHC < 7.4
+- allow text 1.1, drop data-pprint to build with GHC 7.8.x
+
+0.22.1 (2014/1/6) and older: see http://hledger.org/release-notes or doc/CHANGES.md.
diff --git a/hledger.cabal b/hledger.cabal
--- a/hledger.cabal
+++ b/hledger.cabal
@@ -1,6 +1,6 @@
 name:           hledger
 -- also in cpp-options below
-version: 0.22.1
+version: 0.22.2
 stability:      beta
 category:       Finance
 synopsis:       The main command-line interface for the hledger accounting tool.
@@ -18,13 +18,15 @@
 maintainer:     Simon Michael <simon@joyful.com>
 homepage:       http://hledger.org
 bug-reports:    http://hledger.org/bugs
-tested-with:    GHC==7.4.2, GHC==7.6.3
+tested-with:    GHC==7.2.2, GHC==7.4.2, GHC==7.6.3, GHC==7.8
 cabal-version:  >= 1.10
 build-type:     Simple
 -- data-dir:       data
 -- data-files:
 extra-tmp-files:
-extra-source-files: tests/suite.hs
+extra-source-files: 
+                    tests/suite.hs
+                    CHANGES
 
 -- Cabal-Version:  >= 1.9.2
 -- Test-Suite test-hledger
@@ -41,8 +43,9 @@
     Default:       True
 
 library
-  cpp-options:    -DVERSION="0.22.1"
+  cpp-options:    -DVERSION="0.22.2"
   ghc-options:    -W
+  default-language: Haskell2010
   -- should be the same as below
   exposed-modules:
                   Hledger.Cli
@@ -62,12 +65,12 @@
                   Hledger.Cli.Stats
   -- should be the same as below
   build-depends:
-                  hledger-lib == 0.22.1
+                  hledger-lib == 0.22.2
                  ,base >= 4.3 && < 5
                  -- ,cabal-file-th
                  ,containers
                  ,cmdargs >= 0.10 && < 0.11
-                 ,data-pprint >= 0.2.1 && < 0.3
+                 -- ,data-pprint >= 0.2.1 && < 0.3
                  ,directory
                  ,filepath
                  ,haskeline >= 0.6 && <= 0.8
@@ -81,11 +84,12 @@
                  ,safe >= 0.2
                  ,shakespeare-text == 1.0.*
                  ,split >= 0.1 && < 0.3
-                 ,text >= 0.11 && < 1.1
+                 ,text >= 0.11 && < 1.2
                  ,tabular >= 0.2 && < 0.3
                  ,time
                  ,utf8-string >= 0.3.5 && < 0.4
-  default-language: Haskell2010
+  if impl(ghc >= 7.4)
+    build-depends: pretty-show >= 1.6.4
 
 -- should depend on the above to avoid double compilation but this is
 -- still too complicated as of 2011/6/1 because:
@@ -113,17 +117,18 @@
                   Hledger.Cli.Print
                   Hledger.Cli.Register
                   Hledger.Cli.Stats
-  cpp-options:    -DVERSION="0.22.1"
+  cpp-options:    -DVERSION="0.22.2"
   ghc-options:    -W
   if flag(threaded)
        ghc-options:   -threaded
  -- should be the same as above
+  default-language: Haskell2010
   build-depends:
-                  hledger-lib == 0.22.1
+                  hledger-lib == 0.22.2
                  ,base >= 4.3 && < 5
                  ,containers
                  ,cmdargs >= 0.10 && < 0.11
-                 ,data-pprint >= 0.2.1 && < 0.3
+                 -- ,data-pprint >= 0.2.1 && < 0.3
                  ,directory
                  ,filepath
                  ,haskeline >= 0.6 && <= 0.8
@@ -138,22 +143,24 @@
                  ,shakespeare-text == 1.0.*
                  ,split >= 0.1 && < 0.3
                  ,tabular >= 0.2 && < 0.3
-                 ,text >= 0.11 && < 1.1
+                 ,text >= 0.11 && < 1.2
                  ,time
                  ,utf8-string >= 0.3.5 && < 0.4
-  default-language: Haskell2010
+  if impl(ghc >= 7.4)
+    build-depends: pretty-show >= 1.6.4
 
 test-suite tests
   type:     exitcode-stdio-1.0
   main-is:  tests/suite.hs
   ghc-options: -Wall
+  default-language: Haskell2010
   build-depends: hledger-lib
                , hledger
                , base >= 4.3 && < 5
                , cmdargs
                , containers
                , csv
-               , data-pprint >= 0.2.1 && < 0.3
+               -- , data-pprint >= 0.2.1 && < 0.3
                , directory
                , filepath
                , haskeline
@@ -162,7 +169,6 @@
                , old-locale
                , old-time
                , parsec
-               , pretty-show >= 1.6.4
                , process
                , regexpr
                , safe
@@ -174,4 +180,5 @@
                , text
                , time
                , transformers
-  default-language: Haskell2010
+  if impl(ghc >= 7.4)
+    build-depends: pretty-show >= 1.6.4
