diff --git a/hpdft.cabal b/hpdft.cabal
--- a/hpdft.cabal
+++ b/hpdft.cabal
@@ -1,8 +1,14 @@
 cabal-version:       3.0
 name:                hpdft
-version:             0.1.1.1
+version:             0.1.1.2
 synopsis:            A tool for looking through PDF file using Haskell
--- description:         
+description:
+    
+    A command line PDF-to-text converter. It may take a much longer than other similar tools but could yield better results.
+    
+    This package can also serve as a library for working with text data in PDF files.
+    You could write your own PDF-to-text converter for some particular PDF files, utilizing any meta data or special data structures of those.
+    
 homepage:            https://github.com/k16shikano/hpdft
 license:             MIT
 license-file:        LICENSE
@@ -33,21 +39,20 @@
                      , PDF.Type1
   other-modules:       Paths_hpdft
   other-extensions:    OverloadedStrings
-  build-depends:       attoparsec >=0.13.0
-                     , base >=4.6 && <5
-                     , binary >=0.7.5
-                     , bytestring >=0.10
-                     , containers >=0.5
-                     , directory >=1.2
-                     , file-embed >=0.0.9
-                     , memory >= 0.14.5
-                     , optparse-applicative
+  build-depends:       attoparsec >= 0.14.4 && < 0.15
+                     , base >= 4.18.0 && < 4.19
+                     , binary >= 0.8.9 && < 0.9
+                     , bytestring >= 0.11.4 && < 0.12
+                     , containers >= 0.6.7 && < 0.7
+                     , directory >= 1.3.8 && < 1.4
+                     , file-embed >= 0.0.15 && < 0.1
+                     , memory >= 0.18.0 && < 0.19
+                     , optparse-applicative >= 0.18.1 && < 0.19
                      , parsec >=3.0 && <3.2
-                     , regex-compat-tdfa >= 0.95.1.4
-                     , semigroups
-                     , text >=0.11
-                     , utf8-string >=0.3
-                     , zlib >=0.5
+                     , semigroups >= 0.20 && < 0.21
+                     , text >= 2.0.2 && < 2.1
+                     , utf8-string >= 1.0.2 && < 1.1
+                     , zlib >= 0.6.3 && < 0.7
   autogen-modules:     Paths_hpdft
   default-language:    Haskell2010
   buildable:         True
@@ -57,16 +62,15 @@
   hs-source-dirs:    .
   other-modules:     Paths_hpdft
   other-extensions:    OverloadedStrings
-  build-depends:       base >=4.6
-                     , bytestring >=0.10
+  build-depends:       base >= 4.18.0 && < 4.19
+                     , bytestring >= 0.11.4 && < 0.12
                      , hpdft
-                     , memory >= 0.14.5
-                     , optparse-applicative
-                     , regex-base >= 0.94.0.2
-                     , regex-compat-tdfa >= 0.95.1.4
-                     , regex-compat-tdfa >= 0.95.1.4
-                     , semigroups
-                     , text >=0.11
-                     , utf8-string >=0.3
+                     , memory >= 0.18.0 && < 0.19
+                     , optparse-applicative >= 0.18.1 && < 0.19
+                     , regex-base >= 0.94.0 && < 0.95
+                     , regex-compat >= 0.95.2 && < 0.96
+                     , semigroups >= 0.20 && < 0.21
+                     , text >= 2.0.2 && < 2.1
+                     , utf8-string >= 1.0.2 && < 1.1
   default-language:    Haskell2010
   buildable:         True
diff --git a/hpdft.hs b/hpdft.hs
--- a/hpdft.hs
+++ b/hpdft.hs
@@ -24,7 +24,7 @@
 import Options.Applicative
 import Data.Semigroup ((<>))
 
-import "regex-compat-tdfa" Text.Regex as R
+import Text.Regex (mkRegex, matchRegexAll)
 import Options.Applicative (strOption)
 import Control.Monad (when)
 import PDF.Definition (Obj(PdfStream))
