Commit Graph

76 Commits

Author SHA1 Message Date
Michael Walker
aca19e2c47
Add GHC 9.2 (LTS-20.0) to CI 2022-11-26 23:19:42 +00:00
Michael Walker
11ccf950e7 Add LTS-19.0 to build matrix & supported GHC versions doc
There should be a patch release of dejafu after this, since the
doctest examples changed.

Also, need to bump to a nightly snapshot in `stack.yaml` for
stylish-haskell, which looks to have skipped GHC 9.0 support.

In principle, we could now drop support for GHC 8.0, 8.2, and 8.4, but
supporting those isn't causing any problems yet.
2022-08-22 14:40:35 +01:00
Michael Walker
ac0221c1da Fix various compiler warnings
There are still others remaining, but they can't all be fixed if I
want to keep compatibility with older GHC versions.
2021-03-14 00:11:23 +00:00
Michael Walker
349767a7b6 Remove use of const in concurrency (fix for GHC 9.0)
Type inference seems to fall down with the rank-n type of
`forkWithUnmask` + `const`:

    Control/Monad/Conc/Class.hs:525:27: error:
        • Couldn't match type ‘b5’ with ‘forall a. m a -> m a’
          Expected: (forall a. m a -> m a) -> m ()
            Actual: b5 -> m ()
          Cannot instantiate unification variable ‘b5’
          with a type involving polytypes: forall a. m a -> m a
        • In the first argument of ‘forkWithUnmask’, namely ‘(const ma)’
          In the expression: forkWithUnmask (const ma)
          In an equation for ‘fork’: fork ma = forkWithUnmask (const ma)
        • Relevant bindings include
            ma :: m () (bound at Control/Monad/Conc/Class.hs:525:6)
            fork :: m () -> m (ThreadId m)
              (bound at Control/Monad/Conc/Class.hs:525:1)
        |
    525 | fork ma = forkWithUnmask (const ma)
2021-03-14 00:08:18 +00:00
Michael Walker
cc129ed569 concurrency-1.11.0.0 2020-05-14 13:35:52 +01:00
Michael Walker
bad607e9c3 Add interruptible to Control.Monad.Conc.Class 2020-05-14 13:32:47 +01:00
Mitchell Rosen
f2a9dec759 Add unsafeUnmask to MonadConc 2020-05-14 13:15:02 +01:00
Michael Walker
f930c8c15f concurrency-1.10.0.0 2020-05-10 22:47:47 +01:00
Michael Walker
810fedc034 Add getMaskingState to MonadConc 2020-05-10 22:47:47 +01:00
Michael Walker
73bd07e98b concurrency-1.9.0.0, dejafu-2.1.0.2 2020-02-26 15:25:10 +00:00
Michael Walker
9a888846d7 Optimise peekTQueue / peekTBQueue
See stm/eeed986, stm/2636e45
2020-02-26 15:25:10 +00:00
Michael Walker
198c668f99 Use Natural for TBQueue sizing
See stm/2221948
2020-02-26 15:25:10 +00:00
Michael Walker
a55feaa60c Remove reference to always and alwaysSucceeds
These have been removed from the stm package.
2020-02-26 15:25:10 +00:00
Michael Walker
03f0e63b8b Fix new lints
There is a change to 'concurrency' here, but I don't think it's worth
making even a patch release.
2020-02-20 22:54:12 +00:00
Michael Walker
165155da9c concurrency-1.8.1.0 release 2019-11-16 14:34:22 +00:00
Michael Walker
7202b3eb77 Add newTVarConc
Closes #303
2019-11-16 14:34:22 +00:00
Michael Walker
3947c19ba3 concurrency-1.8.0.0 & dejafu-2.1.0.1 release 2019-10-04 18:22:15 +01:00
Michael Walker
732bce8f7b Add MonadFail constraints to newQSem and newQSemN 2019-10-04 18:21:50 +01:00
Michael Walker
ab32de7c7f Add MonadFail instances to IsConc and IsSTM 2019-10-04 18:21:50 +01:00
Michael Walker
a7869aba17 concurrency-1.7.0.0, dejafu-2.1.0.0, {hunit,tasty}-dejafu-2.0.0.1 2019-03-24 02:29:43 +00:00
Michael Walker
959dafbdc1 Add monadic variant of rtsSupportsBoundThreads
The "pure" rtsSupportsBoundThreads has been deprecated.
2019-03-19 22:19:40 +00:00
Michael Walker
d6164a4e9b concurrency-1.6.2.0 release 2018-11-28 19:08:08 +00:00
Giles Pirio
f851ac0a75 Linting issues 2018-11-28 10:35:22 -08:00
Giles Pirio
c21655f737 BoundedChan and locks primitives 2018-11-28 10:35:22 -08:00
Michael Walker
7a54046d37 concurrency-1.6.1.0 2018-09-22 23:59:35 +01:00
Michael Walker
1e3220a9a5 Copy non-breaking changes from stm package 2018-09-22 22:30:49 +01:00
Michael Walker
d7a32d1206 Add missing Control.Concurrent.Classy.STM.TSem module
Closes #287
2018-09-22 22:30:49 +01:00
Michael Walker
0088f21ade concurrency, dejafu, hunit-dejafu, tasty-dejafu release 2018-07-01 13:31:23 +01:00
Michael Walker
747b177271 Add deprecated CRef aliases 2018-07-01 13:06:47 +01:00
Michael Walker
039295ef41 Rename CRef to IORef 2018-07-01 12:45:43 +01:00
Michael Walker
d9fb307356 Move fork, forkOn & forkOS out of MonadConc
Closes #132
2018-03-25 10:28:20 +01:00
Michael Walker
0486ac86c5 Add forkOSWithUnmask(N) 2018-03-25 10:28:20 +01:00
Michael Walker
35c2069b89 Drop GHC 7.10 support 2018-03-25 10:28:20 +01:00
Michael Walker
2d8127774f Fix HLint errors 2018-03-24 23:14:04 +00:00
Michael Walker
5237effb06 concurrency-1.4.0.0 / dejafu-1.0.0.1 joint release 2018-01-19 17:13:45 +00:00
Michael Walker
7a13b106d9 Add note about instance deriving to Monad{Conc,STM} docs 2018-01-19 16:45:38 +00:00
Michael Walker
d62f0c24d8 Make it possible to derive MonadConc instances 2018-01-19 16:30:04 +00:00
Michael Walker
f310c60bc5 Update copyright years 2017-12-13 07:24:18 +00:00
Michael Walker
5ee2590f0e Rework docs
Closes #146
Closes #147
Closes #156
2017-12-12 14:07:22 +00:00
Michael Walker
3348c4705c Add bound-thread async function variants 2017-12-12 14:06:59 +00:00
Michael Walker
45256193c0 Implement bound threads
This also adds forkOS(N) and isCurrentThreadBound to MonadConc, a
breaking change.

Note: forkOSWithUnmask(N) is NOT added to MonadConc, as it isn't
supported in base-4.8 (GHC 7.10).  See #132 for the action on this.

A bound thread under test gets a dedicated worker thread, which is
forked bound using the underlying MonadConc.  This worker is used for
all lifted actions, with execution as normal otherwise.
2017-12-12 14:06:59 +00:00
Michael Walker
e2a8882764 concurrency-1.2.3.0 release 2017-11-30 21:25:51 +00:00
Michael Walker
e408dcb40b Add named-thread variants of the 'withAsync*' functions
Closes #148
2017-11-30 21:22:46 +00:00
Michael Walker
4437baf672 concurrency-1.2.2.0 release 2017-11-05 01:53:22 +00:00
Michael Walker
77c708014d Add IsConc and IsSTM types 2017-11-05 01:47:30 +00:00
Michael Walker
74b1c2c996 Use underlying monad for modifyCRefCAS_ transformer instances 2017-11-05 01:33:43 +00:00
Michael Walker
9cb33bf431 Remove redundant bracket 2017-10-20 14:30:42 +01:00
Michael Walker
df38c44339 Fix docs error on tryReadMVar 2017-10-15 11:22:47 +01:00
Michael Walker
098ae62a5e Add a definition for forkOnWithUnmask to instance MonadConc IO
Related to #134
2017-10-14 05:48:50 +01:00
Lars Kuhtz
73d14430d2 [issue 134] implement forkWithUnmask in MonadConc instance for IO 2017-10-13 12:31:13 -07:00