diff --git a/Network/Mom/Stompl/Client/Exception.hs b/Network/Mom/Stompl/Client/Exception.hs
--- a/Network/Mom/Stompl/Client/Exception.hs
+++ b/Network/Mom/Stompl/Client/Exception.hs
@@ -1,4 +1,4 @@
-{-# OPTIONS -fglasgow-exts #-}
+{-# LANGUAGE DeriveDataTypeable #-}
 -------------------------------------------------------------------------------
 -- |
 -- Module     : Network/Mom/Stompl/Client/Exception.hs
diff --git a/Network/Mom/Stompl/Client/Factory.hs b/Network/Mom/Stompl/Client/Factory.hs
--- a/Network/Mom/Stompl/Client/Factory.hs
+++ b/Network/Mom/Stompl/Client/Factory.hs
@@ -1,4 +1,3 @@
-{-# OPTIONS -fglasgow-exts -fno-cse #-}
 module Factory (
         Con(..), mkUniqueConId,
         Sub(..), mkUniqueSubId,
diff --git a/Network/Mom/Stompl/Client/Queue.hs b/Network/Mom/Stompl/Client/Queue.hs
--- a/Network/Mom/Stompl/Client/Queue.hs
+++ b/Network/Mom/Stompl/Client/Queue.hs
@@ -406,13 +406,13 @@
           whenListening cid = bracket (forkIO $ listen cid) killThread
           whenBeating cid _ = bracket 
             (if period c > 0 
-               then Just <$> (forkIO $ heartBeat cid $ period c)
+               then Just <$> forkIO (heartBeat cid $ period c)
                else return Nothing)
             (\b -> when (isThrd b) (killThread $ thrd b))
             (\_ -> do r  <- act cid
                       c' <- getCon cid
                       -- wait for receipt on disconnect ----
-                      if (conWait c' <= 0) then return r
+                      if conWait c' <= 0 then return r
                         else do
                           rc <- mkUniqueRecc 
                           _  <- P.disconnect c (show rc)
diff --git a/Network/Mom/Stompl/Client/Socket.hs b/Network/Mom/Stompl/Client/Socket.hs
--- a/Network/Mom/Stompl/Client/Socket.hs
+++ b/Network/Mom/Stompl/Client/Socket.hs
@@ -21,7 +21,8 @@
   import           Control.Exception (throwIO, finally, SomeException)
   import qualified Control.Exception as Ex (try)
 
-  import qualified Data.Attoparsec as A (Result(..), feed, parse)
+  import qualified Data.Attoparsec.ByteString as A (
+                                   Result, IResult(..), feed, parse)
 
   type Result = A.Result F.Frame
 
@@ -87,7 +88,7 @@
     tryConnect p adds
 
   tryConnect :: S.PortNumber -> [S.AddrInfo] -> IO S.Socket
-  tryConnect _ [] = throwIO $ SocketException $ 
+  tryConnect _ [] = throwIO $ SocketException 
                               "Give up: no more address info!"
   tryConnect p (i:is) = 
     case i of
diff --git a/Network/Mom/Stompl/Client/State.hs b/Network/Mom/Stompl/Client/State.hs
--- a/Network/Mom/Stompl/Client/State.hs
+++ b/Network/Mom/Stompl/Client/State.hs
@@ -1,4 +1,3 @@
-{-# OPTIONS -fglasgow-exts -fno-cse #-}
 module State (
          msgContent, numeric, ms,
          Connection(..),
@@ -329,7 +328,7 @@
   rmRecFromTx r t = t {txRecs = delete r $ txRecs t}
 
   checkReceiptTx :: Receipt -> Transaction -> Bool
-  checkReceiptTx r = not . (elem r) . txRecs 
+  checkReceiptTx r = notElem r . txRecs 
 
   txPendingAck :: Transaction -> Bool
   txPendingAck t = txAbrtAck t && not (null $ txAcks t)
diff --git a/stomp-queue.cabal b/stomp-queue.cabal
--- a/stomp-queue.cabal
+++ b/stomp-queue.cabal
@@ -1,7 +1,7 @@
 Name:            stomp-queue
-Version:         0.0.2
+Version:         0.0.3
 Cabal-Version:   >= 1.8
-Copyright:       Copyright (c) Tobias Schoofs, 2011 - 2012
+Copyright:       Copyright (c) Tobias Schoofs, 2011 - 2013
 License:         LGPL
 license-file:    license/lgpl-3.0.txt
 Author:          Tobias Schoofs
@@ -32,7 +32,7 @@
   Build-Depends:   base        >= 4.0 && <= 5.0,
                    bytestring  >= 0.9 && < 0.10,
                    utf8-string >= 0.3.6,
-                   attoparsec  >= 0.9.1.1,
+                   attoparsec  >= 0.10.4.0,
                    split       >= 0.1.4.1,
                    network     >= 2.3.0.4,
                    stompl      >= 0.0.2,
