scion-browser 0.2.19 → 0.3.0
raw patch · 7 files changed
+21/−7 lines, 7 filesdep +resourcetdep ~aesondep ~attoparsec
Dependencies added: resourcet
Dependency ranges changed: aeson, attoparsec
Files
- scion-browser.cabal +6/−4
- src/Scion/PersistentBrowser/Build.hs +1/−1
- src/Scion/PersistentBrowser/DbTypes.hs +1/−1
- src/Scion/PersistentHoogle/Instances/Json.hs +3/−0
- src/Scion/PersistentHoogle/Parser.hs +8/−0
- src/Scion/PersistentHoogle/Types.hs +1/−0
- src/Server/PersistentCommands.hs +1/−1
scion-browser.cabal view
@@ -1,5 +1,5 @@ name: scion-browser -version: 0.2.19+version: 0.3.0 cabal-version: >= 1.8 build-type: Simple license: BSD3 @@ -18,7 +18,7 @@ library hs-source-dirs: src build-depends: - attoparsec >= 0.10, + attoparsec >= 0.10 && < 0.12, base == 4.*, mtl >= 2, derive >= 2.5 && < 3, @@ -31,13 +31,14 @@ zlib == 0.5.*, HTTP >= 4000 && < 5000, deepseq >= 1.1 && < 2, - aeson >= 0.4, + aeson >=0.4 && <0.8, parallel-io >= 0.3, utf8-string, persistent >= 1.2, persistent-sqlite >= 1.2, persistent-template >= 1.2, conduit>=1.0, + resourcet, transformers, unordered-containers >= 0.1.3, zlib, @@ -117,7 +118,8 @@ persistent >= 1.2, persistent-sqlite >= 1.2, persistent-template >= 1.2,- conduit>=1.0,+ conduit>=1.0, + resourcet, transformers, unordered-containers >= 0.1.3, zlib,
src/Scion/PersistentBrowser/Build.hs view
@@ -32,7 +32,7 @@ import Text.ParserCombinators.Parsec.Pos (newPos) import Text.ParserCombinators.ReadP import Control.Monad (unless) -import Data.Conduit (runResourceT) +import Control.Monad.Trans.Resource (runResourceT) --baseDbUrl :: String --baseDbUrl = "http://haskell.org/hoogle/base.txt"
src/Scion/PersistentBrowser/DbTypes.hs view
@@ -6,7 +6,7 @@ import Database.Persist.Sqlite import Database.Persist.TH -import Data.Conduit (ResourceT) +import Control.Monad.Trans.Resource (ResourceT) import Control.Monad.Logger (LoggingT(..)) -- ,runStderrLoggingT import Control.Monad.IO.Class (MonadIO)
src/Scion/PersistentHoogle/Instances/Json.hs view
@@ -28,6 +28,9 @@ toJSON (RKeyword kw) = object [ "type" .= T.pack "keyword" , "name" .= kw ]+ toJSON (RWarning w) = object [ "type" .= T.pack "warning"+ , "name" .= w+ ] instance FromJSON (Query) where parseJSON q = Query <$> parseJSON q
src/Scion/PersistentHoogle/Parser.hs view
@@ -20,6 +20,7 @@ | HalfDecl String (Documented Decl) | HalfGadtDecl String (Documented GadtDecl) | HalfKeyword String + | HalfWarning String -- ^ a warning hoogleElements :: BSParser (SQL [Result]) hoogleElements = do elts <- hoogleElements' @@ -66,6 +67,11 @@ return $ HalfDecl mname d) <|> try (do (mname, d) <- moduled (constructor NoDoc) return $ HalfGadtDecl mname d) + <|> try (do + string "Warning:" + spaces0 + s<-restOfLine + return $ HalfWarning s) moduled :: BSParser a -> BSParser (String, a) moduled p = try (do mname <- try conid `sepBy` char '.' @@ -92,6 +98,8 @@ convertHalfToResult :: HalfResult -> SQL (Maybe Result) convertHalfToResult (HalfKeyword kw) = return $ Just (RKeyword kw) +convertHalfToResult (HalfWarning w) = + return $ Just (RWarning w) convertHalfToResult (HalfPackage pname) = do pkgs <- packagesByName pname Nothing case pkgs of
src/Scion/PersistentHoogle/Types.hs view
@@ -9,6 +9,7 @@ | RDeclaration [(DbPackageIdentifier, String, DbCompleteDecl)] | RConstructor [(DbPackageIdentifier, String, DbCompleteDecl, DbConstructor)] | RKeyword String + | RWarning String -- ^ a warning data Query = Query String
src/Server/PersistentCommands.hs view
@@ -18,7 +18,7 @@ import qualified Scion.PersistentHoogle as H import Scion.Packages import System.Directory -import Data.Conduit (runResourceT) +import Control.Monad.Trans.Resource (runResourceT) import Data.List (nub) import Data.Vector (fromList)