diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -3,6 +3,14 @@
 `stackcollapse-ghc` uses [PVP Versioning][1].
 The changelog is available [on GitHub][2].
 
+## 0.0.1.4
+
+This release does not change functionality
+
+* Rebuild with hspec-golden >=0.2.0.0 && < 0.3
+* Support ghc 8.10.4
+* Do not use deprected `Data.ByteString.Lazy.putStrLn`
+
 ## 0.0.1.3
 
 This release does not change functionality
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
 # stackcollapse-ghc
 
-[![Build status](https://img.shields.io/travis/marcin-rzeznicki/stackcollapse-ghc.svg?logo=travis)](https://travis-ci.org/marcin-rzeznicki/stackcollapse-ghc)
+[![Build status](https://travis-ci.com/marcin-rzeznicki/stackcollapse-ghc.svg?branch=master)](https://travis-ci.org/marcin-rzeznicki/stackcollapse-ghc)
 [![Hackage](https://img.shields.io/hackage/v/stackcollapse-ghc.svg?logo=haskell)](https://hackage.haskell.org/package/stackcollapse-ghc)
 [![Stackage Lts](http://stackage.org/package/stackcollapse-ghc/badge/lts)](http://stackage.org/lts/package/stackcollapse-ghc)
 [![Stackage Nightly](http://stackage.org/package/stackcollapse-ghc/badge/nightly)](http://stackage.org/nightly/package/stackcollapse-ghc)
@@ -25,6 +25,7 @@
     * [Colors](#using-distinct-colors-for-modules)
     * [Qualified names](#turning-off-qualified-names)
     * [Source locations](#adding-source-locations)
+    * [Reverse flamegraphs](#reverse-flamegraphs)
   * [All options](#all-options)
   * [Installation](#installation)
 
@@ -121,6 +122,16 @@
 ```
 
 ![AllSources](./examples/allSrc.svg)
+
+### "Reverse" flamegraphs
+
+Sometimes it makes sense to to have functions at the bottom and their callers above them. This mode is called "reverse" flamegraph. You can make such graphs with `stackcollapse-ghc` (the real work is done by the `flamegraph` script)
+
+```bash
+stackcollapse-ghc prof_file | flamegraph.pl --reverse --title 'Reverse' --countname ticks > path_to_svg
+```
+
+![Reverse](./examples/reverse.svg)
 
 ## All options
 
diff --git a/app/Main.hs b/app/Main.hs
--- a/app/Main.hs
+++ b/app/Main.hs
@@ -27,7 +27,7 @@
 import           Data.Function ((&))
 import           Control.Monad (foldM)
 import           Control.Exception
-import qualified Data.ByteString.Lazy as Lazy
+import qualified Data.ByteString.Lazy.Char8 as Lazy
 
 cmdLineOpts
   :: [OptDescr (StackCollapseConfig -> Either String StackCollapseConfig)]
diff --git a/stackcollapse-ghc.cabal b/stackcollapse-ghc.cabal
--- a/stackcollapse-ghc.cabal
+++ b/stackcollapse-ghc.cabal
@@ -1,6 +1,6 @@
 cabal-version:       2.4
 name:                stackcollapse-ghc
-version:             0.0.1.3
+version:             0.0.1.4
 synopsis:            Program to fold GHC prof files into flamegraph input
 description:         Program to fold GHC prof files into flamegraph input
 
@@ -60,6 +60,8 @@
                      GHC == 8.8.2
                      GHC == 8.8.3
                      GHC == 8.10.1
+                     GHC == 8.10.2
+                     GHC == 8.10.3
 
 source-repository head
   type:                git
@@ -123,7 +125,8 @@
   hs-source-dirs:      test
   main-is:             Spec.hs
   other-modules:       Helpers
-  build-depends:       hspec-golden >= 0.1.0.2 && < 0.1.1,
+  build-depends:       filepath,
+                       hspec-golden >= 0.2.0.0 && < 0.3,
                        hspec,
                        utf8-string ^>=1.0.1
   ghc-options:         -threaded
diff --git a/test/Spec.hs b/test/Spec.hs
--- a/test/Spec.hs
+++ b/test/Spec.hs
@@ -12,6 +12,7 @@
 import           Data.ByteString.Lazy.UTF8 (toString)
 import           Data.Either.Extra (fromEither)
 import           Control.Arrow (left)
+import           System.FilePath ((</>))
 
 path_ProfFilesDir :: String
 path_ProfFilesDir = "test/prof_files/"
@@ -31,18 +32,18 @@
         [ defaultConfig
         , defaultConfig `prependUserModule` userModuleFromString "Example"
         , defaultConfig { sourceMode = SourceUser }
-            `prependUserModule` userModuleFromString "Example"
+          `prependUserModule` userModuleFromString "Example"
         , defaultConfig { functionNameMode = QualifiedNever }
-            `prependUserModule` userModuleFromString "Example"
+          `prependUserModule` userModuleFromString "Example"
         , defaultConfig { operationMode = Alloc }
-            `prependUserModule` userModuleFromString "Example"]
+          `prependUserModule` userModuleFromString "Example"]
     context "standard prof"
       $ withConfigs
         "countSemiprimes"
         [ defaultConfig { inputType = Standard }
-            `prependUserModule` userModuleFromString "Example"
+          `prependUserModule` userModuleFromString "Example"
         , defaultConfig { inputType = Standard, operationMode = Alloc }
-            `prependUserModule` userModuleFromString "Example"]
+          `prependUserModule` userModuleFromString "Example"]
     context "unicode chars"
       $ withConfigs
         "unicode"
@@ -96,12 +97,18 @@
          , encodePretty = toString
          , writeToFile = Lazy.writeFile
          , readFromFile = Lazy.readFile
-         , directory = path_GoldenDir
-         , testName
+         , actualFile
+         , goldenFile
          , failFirstTime = False
          }
   where
     testName = stem ++ embedInFileName opts
+
+    testSpecificDir = path_GoldenDir </> testName
+
+    goldenFile = testSpecificDir </> "golden"
+
+    actualFile = Just $ testSpecificDir </> "actual"
 
 prepareTest :: String -> StackCollapseConfig -> IO StackCollapse
 prepareTest stem opts = let profFilePath = path_ProfFile stem
