diff --git a/Data/Conduit/Network.hs b/Data/Conduit/Network.hs
--- a/Data/Conduit/Network.hs
+++ b/Data/Conduit/Network.hs
@@ -80,6 +80,7 @@
     { serverPort :: Int
     , serverHost :: HostPreference
     }
+      deriving (Eq, Show, Read)
 
 -- | Run an @Application@ with the given settings. This function will create a
 -- new listening socket, accept connections on it, and spawn a new thread for
@@ -107,6 +108,7 @@
     { clientPort :: Int
     , clientHost :: String
     }
+      deriving (Eq, Show, Read)
 
 -- | Run an @Application@ by connecting to the specified server.
 --
@@ -151,7 +153,7 @@
   | HostIPv4
   | HostIPv6
   | Host String
-    deriving (Show, Eq, Ord)
+    deriving (Eq, Ord, Show, Read)
 
 instance IsString HostPreference where
     -- The funny code coming up is to get around some irritating warnings from
diff --git a/network-conduit.cabal b/network-conduit.cabal
--- a/network-conduit.cabal
+++ b/network-conduit.cabal
@@ -1,5 +1,5 @@
 Name:                network-conduit
-Version:             0.4.0
+Version:             0.4.0.1
 Synopsis:            Stream socket data using conduits.
 Description:         Stream socket data using conduits.
 License:             BSD3
