diff --git a/postgres-options.cabal b/postgres-options.cabal
--- a/postgres-options.cabal
+++ b/postgres-options.cabal
@@ -1,5 +1,5 @@
 name:                postgres-options
-version:             0.2.0.0
+version:             0.2.1.0
 synopsis:            An Options type representing options for postgres connections
 description:         This package exports an Options type representing options for postgres connections
 homepage:            https://github.com/jfischoff/postgres-options#readme
diff --git a/src/Database/PostgreSQL/Simple/Options.hs b/src/Database/PostgreSQL/Simple/Options.hs
--- a/src/Database/PostgreSQL/Simple/Options.hs
+++ b/src/Database/PostgreSQL/Simple/Options.hs
@@ -201,4 +201,7 @@
 parseConnectionString :: String -> Either String Options
 parseConnectionString url = do
   url' <- maybe (Left "failed to parse as string") Right $ parseString url
-  parseKeywords url' <|> (uriToptions =<< parseURIStr url')
+  or (parseKeywords url') (uriToptions =<< parseURIStr url')
+  where
+    or (Left _) n = n
+    or m        _ = m 
