From 8512d84b6f875b78dc534257792a1a1184eb45b1 Mon Sep 17 00:00:00 2001 From: JP Moresmau Date: Tue, 21 Feb 2012 17:54:31 +0100 Subject: [PATCH 1/2] handle no results found answer --- src/Scion/PersistentHoogle/Parser.hs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Scion/PersistentHoogle/Parser.hs b/src/Scion/PersistentHoogle/Parser.hs index 7a8d99c..5b9ac89 100644 --- a/src/Scion/PersistentHoogle/Parser.hs +++ b/src/Scion/PersistentHoogle/Parser.hs @@ -39,6 +39,9 @@ catMaybesM (x:xs) = do y <- x hoogleElements' :: BSParser [HalfResult] hoogleElements' = try (do spaces0 + optional $ try (do + string "No results found" + spacesOrEol0) eof return []) <|> (do first <- hoogleElement From ff288966df60d1b1b50deb64488fa4d281b475c3 Mon Sep 17 00:00:00 2001 From: JP Moresmau Date: Fri, 2 Mar 2012 13:18:42 +0100 Subject: [PATCH 2/2] save whole hackage db in one transaction --- src/Scion/PersistentBrowser/Build.hs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Scion/PersistentBrowser/Build.hs b/src/Scion/PersistentBrowser/Build.hs index 97aaa52..7091483 100644 --- a/src/Scion/PersistentBrowser/Build.hs +++ b/src/Scion/PersistentBrowser/Build.hs @@ -66,7 +66,8 @@ saveHackageDatabase file = withTemporaryDirectory (saveHackageDatabaseWithTmp fi saveHackageDatabaseWithTmp :: FilePath -> FilePath -> IO () saveHackageDatabaseWithTmp file tmp = do (db, _) <- createHackageDatabase tmp - mapM_ (\pkg -> withSqliteConn (T.pack file) (runSqlConn (savePackageToDb pkg))) db + withSqliteConn (T.pack file) (runSqlConn (mapM_ savePackageToDb db)) + --mapM_ (\pkg -> withSqliteConn (T.pack file) (runSqlConn (savePackageToDb pkg))) db -- | Downloads the information for the entire Hackage database -- creating an in-memory database with it.