Skip to content

Commit 274110c

Browse files
justinwootonyd256
authored andcommitted
Upgrade to Aff 4.0
1 parent 0621274 commit 274110c

File tree

3 files changed

+26
-27
lines changed

3 files changed

+26
-27
lines changed

bower.json

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -26,22 +26,22 @@
2626
"output"
2727
],
2828
"dependencies": {
29-
"purescript-arrays": "^4.0.0",
30-
"purescript-either": "^3.0.0",
31-
"purescript-foreign": "^4.0.0",
32-
"purescript-foldable-traversable": "^3.0.0",
33-
"purescript-transformers": "^3.0.0",
34-
"purescript-aff": "^3.0.0",
35-
"purescript-integers": "^3.0.0",
36-
"purescript-datetime": "^3.0.0",
29+
"purescript-arrays": "^4.2.1",
30+
"purescript-either": "^3.1.0",
31+
"purescript-foreign": "^4.0.1",
32+
"purescript-foldable-traversable": "^3.6.1",
33+
"purescript-transformers": "^3.4.0",
34+
"purescript-aff": "^4.0.0",
35+
"purescript-integers": "^3.1.0",
36+
"purescript-datetime": "^3.4.0",
3737
"purescript-unsafe-coerce": "^3.0.0",
3838
"purescript-nullable": "^3.0.0",
39-
"purescript-prelude": "^3.0.0",
40-
"purescript-foreign-generic": "^4.0.0"
39+
"purescript-prelude": "^3.1.0",
40+
"purescript-foreign-generic": "^5.0.0"
4141
},
4242
"devDependencies": {
43-
"purescript-spec": "^1.0.0",
43+
"purescript-spec": "git@github.com:justinwoo/purescript-spec.git#3a0ac612af654ff74e9183fd1d46b8ef8b505f8f",
4444
"purescript-generics": "^4.0.0",
45-
"purescript-js-date": "^4.0.0"
45+
"purescript-js-date": "^5.1.0"
4646
}
4747
}

src/Database/Postgres.purs

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -17,20 +17,20 @@ module Database.Postgres
1717
) where
1818

1919
import Prelude
20+
21+
import Control.Monad.Aff (Aff, bracket)
2022
import Control.Monad.Eff (kind Effect, Eff)
21-
import Data.Either (Either, either)
22-
import Data.Function.Uncurried (Fn2(), runFn2)
23+
import Control.Monad.Eff.Class (liftEff)
24+
import Control.Monad.Eff.Exception (error)
25+
import Control.Monad.Error.Class (throwError)
26+
import Control.Monad.Except (runExcept)
2327
import Data.Array ((!!))
28+
import Data.Either (Either, either)
2429
import Data.Foreign (Foreign, MultipleErrors)
2530
import Data.Foreign.Class (class Decode, decode)
31+
import Data.Function.Uncurried (Fn2, runFn2)
2632
import Data.Maybe (Maybe(Just, Nothing), maybe)
27-
import Control.Monad.Except (runExcept)
28-
import Control.Monad.Aff (Aff, finally)
29-
import Control.Monad.Eff.Class (liftEff)
30-
import Control.Monad.Eff.Exception (error)
31-
import Control.Monad.Error.Class (throwError)
3233
import Data.Traversable (sequence)
33-
3434
import Database.Postgres.SqlValue (SqlValue)
3535

3636
newtype Query a = Query String
@@ -118,9 +118,11 @@ withConnection :: forall eff a
118118
. ConnectionInfo
119119
-> (Client -> Aff (db :: DB | eff) a)
120120
-> Aff (db :: DB | eff) a
121-
withConnection info p = do
122-
client <- connect info
123-
finally (p client) $ liftEff (end client)
121+
withConnection info p =
122+
bracket
123+
(connect info)
124+
(liftEff <<< end)
125+
p
124126

125127
-- | Takes a Client from the connection pool, runs the given function with
126128
-- | the client and returns the results.

test/Main.purs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import Control.Monad.Eff (Eff)
88
import Control.Monad.Eff.Class (liftEff)
99
import Control.Monad.Eff.Console (CONSOLE)
1010
import Control.Monad.Eff.Exception (error)
11-
import Control.Monad.Eff.Timer (TIMER)
1211
import Control.Monad.Error.Class (throwError)
1312
import Data.Array (length)
1413
import Data.Date (canonicalDate)
@@ -26,11 +25,10 @@ import Data.Time (Time(..))
2625
import Database.Postgres (DB, Query(Query), connect, end, execute, execute_, mkConnectionString, query, queryOne_, queryValue_, query_, withClient, withConnection)
2726
import Database.Postgres.SqlValue (toSql)
2827
import Database.Postgres.Transaction (withTransaction)
29-
import Node.Process (PROCESS)
3028
import Test.Spec (describe, it)
3129
import Test.Spec.Assertions (fail, shouldEqual)
3230
import Test.Spec.Reporter.Console (consoleReporter)
33-
import Test.Spec.Runner (run)
31+
import Test.Spec.Runner (PROCESS, run)
3432
import Unsafe.Coerce (unsafeCoerce)
3533

3634
data Artist = Artist
@@ -50,7 +48,6 @@ connectionInfo =
5048
main :: forall eff.
5149
Eff
5250
( console :: CONSOLE
53-
, timer :: TIMER
5451
, avar :: AVAR
5552
, process :: PROCESS
5653
, db :: DB

0 commit comments

Comments
 (0)