diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,9 @@
 # Changelog for min-max-pqueue
 
+## 0.1.0.1
+
+- Fix cabal build
+
 ## 0.1.0.0
 
 - Initial release
diff --git a/LICENSE b/LICENSE
--- a/LICENSE
+++ b/LICENSE
@@ -1,4 +1,4 @@
-Copyright Ziyang Liu (c) 2019
+Copyright Ziyang Liu (c) 2019-2020
 
 All rights reserved.
 
diff --git a/Setup.hs b/Setup.hs
deleted file mode 100644
--- a/Setup.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-import Distribution.Simple
-main = defaultMain
diff --git a/min-max-pqueue.cabal b/min-max-pqueue.cabal
--- a/min-max-pqueue.cabal
+++ b/min-max-pqueue.cabal
@@ -1,26 +1,23 @@
--- This file has been generated from package.yaml by hpack version 0.28.2.
---
--- see: https://github.com/sol/hpack
---
--- hash: b4c26d035b2f2c698fa2c783190f06ef770dca9eb7fe551a97330979179847a1
+cabal-version:  2.4
 
 name:           min-max-pqueue
-version:        0.1.0.0
+version:        0.1.0.1
 synopsis:       Double-ended priority queues.
 description:    Min-max priority queues, also known as double-ended priority queues.
 category:       Data Structures
-homepage:       https://github.com/zliu41/min-max-pqueue#readme
+homepage:       https://github.com/zliu41/min-max-pqueue
 bug-reports:    https://github.com/zliu41/min-max-pqueue/issues
 author:         Ziyang Liu <free@cofree.io>
 maintainer:     Ziyang Liu <free@cofree.io>
-copyright:      2019 Ziyang Liu
-license:        BSD3
+copyright:      2019-2020 Ziyang Liu
+license:        BSD-3-Clause
 license-file:   LICENSE
 build-type:     Simple
-cabal-version:  >= 1.10
+tested-with:    GHC==8.8.2, GHC==8.6.5, GHC==8.4.4
+
 extra-source-files:
-    ChangeLog.md
     README.md
+    ChangeLog.md
 
 source-repository head
   type: git
@@ -32,6 +29,8 @@
       Data.MinMaxQueue
   other-modules:
       Paths_min_max_pqueue
+  autogen-modules:
+      Paths_min_max_pqueue
   hs-source-dirs:
       src
   build-depends:
@@ -46,13 +45,15 @@
       IntMinMaxQueueSpec
       MinMaxQueueSpec
       Paths_min_max_pqueue
+  autogen-modules:
+      Paths_min_max_pqueue
   hs-source-dirs:
       test/hedgehog
   ghc-options: -threaded -rtsopts -with-rtsopts=-N
   build-depends:
       base >=4.7 && <5
     , containers >=0.5.11 && <0.7
-    , hedgehog >=0.6.1 && <0.7
+    , hedgehog >=1.0 && <2
     , min-max-pqueue
   default-language: Haskell2010
 
@@ -61,6 +62,8 @@
   main-is: Main.hs
   other-modules:
       SeqQueue
+      Paths_min_max_pqueue
+  autogen-modules:
       Paths_min_max_pqueue
   hs-source-dirs:
       benchmark
diff --git a/test/hedgehog/Main.hs b/test/hedgehog/Main.hs
--- a/test/hedgehog/Main.hs
+++ b/test/hedgehog/Main.hs
@@ -1,7 +1,7 @@
 module Main (main) where
 
 import           Control.Monad (unless)
-import           GHC.IO.Encoding (utf8)
+import           GHC.IO.Encoding (utf16le)
 import           System.Exit (exitFailure)
 import           System.IO (hSetEncoding, stdout, stderr)
 
@@ -10,7 +10,7 @@
 
 main :: IO ()
 main = do
-  hSetEncoding stdout utf8
-  hSetEncoding stderr utf8
+  hSetEncoding stdout utf16le
+  hSetEncoding stderr utf16le
   passed <- sequenceA [MinMaxQueueSpec.tests, IntMinMaxQueueSpec.tests]
   unless (and passed) exitFailure
