Skip to content

Commit 58e2e2a

Browse files
Introduce purs-tidy formatter (#18)
* Add purs-tidy formatter * Run purs-tidy
1 parent 55d77f5 commit 58e2e2a

File tree

5 files changed

+36
-19
lines changed

5 files changed

+36
-19
lines changed

.github/workflows/ci.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ jobs:
1515

1616
- name: Set up a PureScript toolchain
1717
uses: purescript-contrib/setup-purescript@main
18+
with:
19+
purs-tidy: "latest"
1820

1921
- name: Cache PureScript dependencies
2022
uses: actions/cache@v2
@@ -32,3 +34,6 @@ jobs:
3234

3335
- name: Run tests
3436
run: spago test --no-install
37+
38+
- name: Check formatting
39+
run: purs-tidy check src test

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
!.gitignore
33
!.github
44
!.editorconfig
5+
!.tidyrc.json
56

67
output
78
generated-docs

.tidyrc.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"importSort": "source",
3+
"importWrap": "source",
4+
"indent": 2,
5+
"operatorsFile": null,
6+
"ribbon": 1,
7+
"typeArrowPlacement": "first",
8+
"unicode": "never",
9+
"width": null
10+
}

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ New features:
1111
Bugfixes:
1212

1313
Other improvements:
14+
- Added `purs-tidy` formatter (#18 by @thomashoneyman)
1415
- Ensure all imported packages are in the spago.dhall file (#17 by @artemisSystem)
1516

1617
## [v5.0.0](https://github.com/purescript-contrib/purescript-fork/releases/tag/v5.0.0) - 2021-02-26

src/Control/Monad/Fork/Class.purs

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -24,17 +24,17 @@ import Control.Monad.Trans.Class (lift)
2424
-- | -- Join is idempotent
2525
-- | join t *> join t = join t
2626
-- | ```
27-
class (Monad m, Functor f) MonadFork f m | m f where
28-
suspend a. m a m (f a)
29-
fork a. m a m (f a)
30-
join a. f a m a
27+
class (Monad m, Functor f) <= MonadFork f m | m -> f where
28+
suspend :: forall a. m a -> m (f a)
29+
fork :: forall a. m a -> m (f a)
30+
join :: forall a. f a -> m a
3131

32-
instance monadForkAff MonadFork Aff.Fiber Aff.Aff where
32+
instance monadForkAff :: MonadFork Aff.Fiber Aff.Aff where
3333
suspend = Aff.suspendAff
3434
fork = Aff.forkAff
3535
join = Aff.joinFiber
3636

37-
instance monadForkReaderT MonadFork f m MonadFork f (ReaderT r m) where
37+
instance monadForkReaderT :: MonadFork f m => MonadFork f (ReaderT r m) where
3838
suspend (ReaderT ma) = ReaderT (suspend <<< ma)
3939
fork (ReaderT ma) = ReaderT (fork <<< ma)
4040
join = lift <<< join
@@ -50,13 +50,13 @@ instance monadForkReaderT ∷ MonadFork f m ⇒ MonadFork f (ReaderT r m) where
5050
-- | -- Suspend/kill is unit
5151
-- | suspend a >>= kill e = pure unit
5252
-- | ```
53-
class (MonadFork f m, MonadThrow e m) MonadKill e f m | m e f where
54-
kill a. e f a m Unit
53+
class (MonadFork f m, MonadThrow e m) <= MonadKill e f m | m -> e f where
54+
kill :: forall a. e -> f a -> m Unit
5555

56-
instance monadKillAff MonadKill Aff.Error Aff.Fiber Aff.Aff where
56+
instance monadKillAff :: MonadKill Aff.Error Aff.Fiber Aff.Aff where
5757
kill = Aff.killFiber
5858

59-
instance monadKillReaderT MonadKill e f m MonadKill e f (ReaderT r m) where
59+
instance monadKillReaderT :: MonadKill e f m => MonadKill e f (ReaderT r m) where
6060
kill e = lift <<< kill e
6161

6262
data BracketCondition e a
@@ -80,12 +80,12 @@ data BracketCondition e a
8080
-- | fork (bracket a k \_ -> never) >>= \f -> kill e f *> void (try (join f))
8181
-- | = uninterruptible (a >>= k (Killed e))
8282
-- | ```
83-
class (MonadKill e f m, MonadError e m) MonadBracket e f m | m e f where
84-
bracket r a. m r (BracketCondition e a r m Unit) (r m a) m a
85-
uninterruptible a. m a m a
86-
never a. m a
83+
class (MonadKill e f m, MonadError e m) <= MonadBracket e f m | m -> e f where
84+
bracket :: forall r a. m r -> (BracketCondition e a -> r -> m Unit) -> (r -> m a) -> m a
85+
uninterruptible :: forall a. m a -> m a
86+
never :: forall a. m a
8787

88-
instance monadBracketAff MonadBracket Aff.Error Aff.Fiber Aff.Aff where
88+
instance monadBracketAff :: MonadBracket Aff.Error Aff.Fiber Aff.Aff where
8989
bracket acquire release run =
9090
Aff.generalBracket acquire
9191
{ completed: release <<< Completed
@@ -96,11 +96,11 @@ instance monadBracketAff ∷ MonadBracket Aff.Error Aff.Fiber Aff.Aff where
9696
uninterruptible = Aff.invincible
9797
never = Aff.never
9898

99-
instance monadBracketReaderT MonadBracket e f m MonadBracket e f (ReaderT r m) where
100-
bracket (ReaderT acquire) release run = ReaderT \r
99+
instance monadBracketReaderT :: MonadBracket e f m => MonadBracket e f (ReaderT r m) where
100+
bracket (ReaderT acquire) release run = ReaderT \r ->
101101
bracket (acquire r)
102-
(\c a runReaderT (release c a) r)
103-
(\a runReaderT (run a) r)
102+
(\c a -> runReaderT (release c a) r)
103+
(\a -> runReaderT (run a) r)
104104
uninterruptible k = ReaderT \r ->
105105
uninterruptible (runReaderT k r)
106106
never = lift never

0 commit comments

Comments
 (0)