diff --git a/CHANGELOG b/CHANGELOG
new file mode 100644
--- /dev/null
+++ b/CHANGELOG
@@ -0,0 +1,3 @@
+# Version 0.3.0.0
+
+  * Update dependencies to recent versions (thanks to Wieland Hoffmann).
diff --git a/playlist.hs b/playlist.hs
--- a/playlist.hs
+++ b/playlist.hs
@@ -26,13 +26,13 @@
 --------------------------------------------------------------------------------
 urlCommandOptions :: Parser Command
 urlCommandOptions = CmdURLs
-  <$> option (short 'f' <> long "format" <> metavar "FORMAT" <> help "Input format")
+  <$> option auto (short 'f' <> long "format" <> metavar "FORMAT" <> help "Input format")
 
 --------------------------------------------------------------------------------
 convertCommandOptions :: Parser Command
 convertCommandOptions = CmdConvert
-  <$> option (short 'f' <> long "from" <> metavar "FORMAT" <> help "Input format")
-  <*> option (short 't' <> long "to"   <> metavar "FORMAT" <> help "Output format")
+  <$> option auto (short 'f' <> long "from" <> metavar "FORMAT" <> help "Input format")
+  <*> option auto (short 't' <> long "to"   <> metavar "FORMAT" <> help "Output format")
 
 --------------------------------------------------------------------------------
 commands :: Parser Command
diff --git a/playlists.cabal b/playlists.cabal
--- a/playlists.cabal
+++ b/playlists.cabal
@@ -1,12 +1,12 @@
 name:          playlists
-version:       0.2.0.0
+version:       0.3.0.0
 synopsis:      Library and executable for working with playlist files.
 homepage:      https://github.com/pjones/playlists
 license:       BSD3
 license-file:  LICENSE
 author:        Peter Jones <pjones@devalot.com>
 maintainer:    Peter Jones <pjones@devalot.com>
-copyright:     Copyright (c) 2013,2014 Peter Jones <pjones@devalot.com>
+copyright:     Copyright (c) 2013,2014 Peter Jones
 category:      Text
 build-type:    Simple
 cabal-version: >=1.8
@@ -39,16 +39,10 @@
 --------------------------------------------------------------------------------
 extra-source-files:
   README.md
-  test/aa.m3u
-  test/ab.m3u
-  test/Examples.hs
-  test/Helper.hs
-  test/hp.m3u
-  test/M3USpec.hs
-  test/pig.pls
-  test/PLSSpec.hs
-  test/sa.pls
-  test/utf8.pls
+  CHANGELOG
+  test/*.m3u
+  test/*.pls
+  test/*.hs
 
 --------------------------------------------------------------------------------
 source-repository head
@@ -59,16 +53,19 @@
 flag maintainer
   description: Enable settings for the package maintainer.
   default: False
+  manual: True
 
 ------------------------------------------------------------------------------
 -- You can disable the hlint test suite with -f-test-hlint
 flag test-hlint
+  description: Run the source code through hlint when testing.
   default: True
   manual: True
 
 ------------------------------------------------------------------------------
 -- You can disable the doctest test suite with -f-test-doctest
 flag test-doctest
+  description: Run the source code through doctest when testing.
   default: True
   manual: True
 
@@ -95,12 +92,13 @@
   build-depends: base       >= 4.6   && < 5
                , attoparsec >= 0.10  && < 1.0
                , bytestring >= 0.10  && < 1.0
-               , text       >= 0.11  && < 1.2
+               , text       >= 0.11  && < 1.3
                , word8      >= 0.0   && < 1.0
                , filepath   >= 1.3   && < 2.0
 
 --------------------------------------------------------------------------------
 executable playlist
+  hs-source-dirs: ./
   main-is: playlist.hs
   ghc-options: -Wall -rtsopts 
   ghc-prof-options: -fprof-auto-top -fprof-cafs
@@ -111,7 +109,7 @@
 
   build-depends: base
                , bytestring
-               , optparse-applicative >= 0.5 && < 1.0
+               , optparse-applicative >= 0.10.0 && < 0.12.0
                , playlists
                , text
 
@@ -119,9 +117,9 @@
 test-suite spec
   type: exitcode-stdio-1.0
   hs-source-dirs: test
+  main-is: Main.hs
   ghc-options: -Wall
   extensions: OverloadedStrings
-  main-is: Main.hs
   build-depends: base
                , bytestring
                , hspec >= 1.4.0
@@ -130,9 +128,9 @@
 ------------------------------------------------------------------------------
 test-suite hlint
   type: exitcode-stdio-1.0
+  hs-source-dirs: test
   main-is: hlint.hs
   ghc-options: -w
-  hs-source-dirs: test
 
   if !flag(test-hlint)
     buildable: False
@@ -144,8 +142,8 @@
 test-suite doctests
   type: exitcode-stdio-1.0
   ghc-options: -threaded
-  main-is: doctest.hs
   hs-source-dirs: test
+  main-is: doctest.hs
 
   if !flag(test-doctest)
     buildable: False
diff --git a/src/Text/Playlist/M3U/Reader.hs b/src/Text/Playlist/M3U/Reader.hs
--- a/src/Text/Playlist/M3U/Reader.hs
+++ b/src/Text/Playlist/M3U/Reader.hs
@@ -69,4 +69,4 @@
                  skipSpace
                  text <- decodeUtf8 <$> takeWhile1 (not . isEOL)
                  skipSpace
-                 return $! Just text
+                 return (Just text)
