[arch-commits] Commit in purescript/trunk (PKGBUILD http-client-0.5.patch)

Felix Yan felixonmars at archlinux.org
Fri Nov 25 03:44:15 UTC 2016


    Date: Friday, November 25, 2016 @ 03:44:14
  Author: felixonmars
Revision: 196809

upgpkg: purescript 0.10.2-1

Added:
  purescript/trunk/http-client-0.5.patch
Modified:
  purescript/trunk/PKGBUILD

-----------------------+
 PKGBUILD              |   34 +++++++++++-------
 http-client-0.5.patch |   90 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 111 insertions(+), 13 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2016-11-25 03:36:19 UTC (rev 196808)
+++ PKGBUILD	2016-11-25 03:44:14 UTC (rev 196809)
@@ -3,30 +3,38 @@
 # Contributor: Arch Haskell Team <arch-haskell at haskell.org>
 
 pkgname=purescript
-pkgver=0.10.1
-pkgrel=3
+pkgver=0.10.2
+pkgrel=1
 pkgdesc="PureScript Programming Language Compiler"
 url="http://www.purescript.org/"
 license=("custom:BSD3")
 arch=('i686' 'x86_64')
 depends=('gmp' 'libffi' 'zlib')
-makedepends=("ghc=8.0.1" "haskell-aeson" "haskell-aeson-better-errors" "haskell-ansi-terminal"
-             "haskell-ansi-wl-pprint" "haskell-base-compat" "haskell-bower-json" "haskell-boxes"
-             "haskell-clock" "haskell-data-ordlist" "haskell-dlist" "haskell-edit-distance"
-             "haskell-file-embed" "haskell-fsnotify" "haskell-glob" "haskell-http-client"
-             "haskell-http-types" "haskell-language-javascript" "haskell-lifted-base"
+makedepends=("ghc=8.0.1" "haskell-aeson" "haskell-aeson-better-errors" "haskell-aeson-pretty"
+             "haskell-ansi-terminal" "haskell-ansi-wl-pprint" "haskell-base-compat"
+             "haskell-bower-json" "haskell-boxes" "haskell-clock" "haskell-data-ordlist"
+             "haskell-dlist" "haskell-edit-distance" "haskell-file-embed" "haskell-foldl"
+             "haskell-fsnotify" "haskell-glob" "haskell-http-client" "haskell-http-types"
+             "haskell-language-javascript" "haskell-lens" "haskell-lifted-base"
              "haskell-monad-control" "haskell-monad-logger" "haskell-mtl"
              "haskell-optparse-applicative" "haskell-parallel" "haskell-parsec"
              "haskell-pattern-arrows" "haskell-pipes" "haskell-pipes-http" "haskell-protolude"
              "haskell-regex-tdfa" "haskell-safe" "haskell-semigroups" "haskell-sourcemap"
-             "haskell-spdx" "haskell-split" "haskell-stm" "haskell-syb" "haskell-text"
-             "haskell-transformers-base" "haskell-transformers-compat"
-             "haskell-unordered-containers" "haskell-utf8-string" "haskell-vector" "haskell-wai"
-             "haskell-wai-websockets" "haskell-warp" "haskell-websockets")
+             "haskell-spdx" "haskell-split" "haskell-stm" "haskell-syb" "haskell-system-filepath"
+             "haskell-text" "haskell-transformers-base" "haskell-transformers-compat"
+             "haskell-turtle" "haskell-unordered-containers" "haskell-utf8-string" "haskell-vector"
+             "haskell-wai" "haskell-wai-websockets" "haskell-warp" "haskell-websockets")
 optdepends=('pulp: for development environment')
-source=("http://hackage.haskell.org/packages/archive/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.gz")
-sha256sums=('954e333a0f7c860941384289de241b683cbdd606c5c71ab300fe7ac7b3573df0')
+source=("http://hackage.haskell.org/packages/archive/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.gz"
+        http-client-0.5.patch)
+sha256sums=('45e60466575afed67fbc5244c4e0d3c7184c5aa009ebe7b81aa92a673d212e14'
+            'e8fc3574adca72008a367755648a7029968ac4ab5672ab683a4d4d4b1b819d74')
 
+prepare() {
+    cd "${srcdir}/${pkgname}-${pkgver}"
+    patch -p1 -i ../http-client-0.5.patch
+}
+
 build() {
     cd "${srcdir}/${pkgname}-${pkgver}"
 

Added: http-client-0.5.patch
===================================================================
--- http-client-0.5.patch	                        (rev 0)
+++ http-client-0.5.patch	2016-11-25 03:44:14 UTC (rev 196809)
@@ -0,0 +1,90 @@
+From e0527fb7f10721870014d7c08b1a2f8f5bf2edcf Mon Sep 17 00:00:00 2001
+From: Oleg Grenrus <oleg.grenrus at iki.fi>
+Date: Mon, 22 Aug 2016 17:51:42 +0300
+Subject: [PATCH] Support http-client-0.5
+
+---
+ purescript.cabal                       |  2 +-
+ src/Language/PureScript/Ide/Pursuit.hs | 44 ++++++++++++++++------------------
+ stack.yaml                             |  5 +++-
+ 3 files changed, 25 insertions(+), 26 deletions(-)
+
+diff --git a/purescript.cabal b/purescript.cabal
+index 71fee5d..505e441 100644
+--- a/purescript.cabal
++++ b/purescript.cabal
+@@ -117,7 +117,7 @@ library
+                    fsnotify >= 0.2.1,
+                    Glob >= 0.7 && < 0.8,
+                    haskeline >= 0.7.0.0,
+-                   http-client >= 0.4.30 && <0.5,
++                   http-client >= 0.4.30 && <0.6,
+                    http-types -any,
+                    language-javascript == 0.6.*,
+                    lifted-base >= 0.2.3 && < 0.2.4,
+diff --git a/src/Language/PureScript/Ide/Pursuit.hs b/src/Language/PureScript/Ide/Pursuit.hs
+index 962f573..ae40238 100644
+--- a/src/Language/PureScript/Ide/Pursuit.hs
++++ b/src/Language/PureScript/Ide/Pursuit.hs
+@@ -35,41 +35,37 @@ import qualified Pipes.Prelude                 as P
+ -- TODO: remove this when the issue is fixed at Pursuit
+ queryPursuit :: Text -> IO ByteString
+ queryPursuit q = do
+-  let qClean = T.dropWhileEnd (== '.') q
+-  req' <- parseRequest "http://pursuit.purescript.org/search"
+-  let req = req'
+-        { queryString= "q=" <> (fromString . T.unpack) qClean
+-        , requestHeaders=[(hAccept, "application/json")]
+-        }
+-  m <- newManager tlsManagerSettings
+-  withHTTP req m $ \resp ->
+-    P.fold (<>) "" identity (responseBody resp)
+-
++    let qClean = T.dropWhileEnd (== '.') q
++    req' <- parseRequest "http://pursuit.purescript.org/search"
++    let req = req'
++          { queryString= "q=" <> (fromString . T.unpack) qClean
++          , requestHeaders=[(hAccept, "application/json")]
++          }
++    m <- newManager tlsManagerSettings
++    withHTTP req m $ \resp ->
++      P.fold (<>) "" identity (responseBody resp)
+ 
+ handler :: HttpException -> IO [a]
+-handler StatusCodeException{} = pure []
+ handler _ = pure []
+ 
+ searchPursuitForDeclarations :: Text -> IO [PursuitResponse]
+-searchPursuitForDeclarations query =
+-    (do r <- queryPursuit query
+-        let results' = decode (fromStrict r) :: Maybe Array
+-        case results' of
+-          Nothing -> pure []
+-          Just results -> pure (mapMaybe (isDeclarationResponse . fromJSON) (toList results))) `E.catch`
+-    handler
++searchPursuitForDeclarations query = E.handle handler $ do
++    r <- queryPursuit query
++    let results' = decode (fromStrict r) :: Maybe Array
++    case results' of
++        Nothing -> pure []
++        Just results -> pure (mapMaybe (isDeclarationResponse . fromJSON) (toList results))
+   where
+     isDeclarationResponse (Success a at DeclarationResponse{}) = Just a
+     isDeclarationResponse _ = Nothing
+ 
+ findPackagesForModuleIdent :: Text -> IO [PursuitResponse]
+-findPackagesForModuleIdent query =
+-  (do r <- queryPursuit query
+-      let results' = decode (fromStrict r) :: Maybe Array
+-      case results' of
++findPackagesForModuleIdent query = E.handle handler $ do
++    r <- queryPursuit query
++    let results' = decode (fromStrict r) :: Maybe Array
++    case results' of
+         Nothing -> pure []
+-        Just results -> pure (mapMaybe (isModuleResponse . fromJSON) (toList results))) `E.catch`
+-  handler
++        Just results -> pure (mapMaybe (isModuleResponse . fromJSON) (toList results))
+   where
+     isModuleResponse (Success a at ModuleResponse{}) = Just a
+     isModuleResponse _ = Nothing



More information about the arch-commits mailing list