Commit Graph

753 Commits

Author SHA1 Message Date
Michael Walker
d934222fe7 Implement isEmptyMVar in terms of tryRead, not tryTake. 2017-04-08 05:42:25 +01:00
Michael Walker
5cd55a1921 Add an HLint2 config file & fix warnings. 2017-04-08 05:42:25 +01:00
Michael Walker
0080678a65 Add a repo-wide changelog.
Closes #78.
2017-04-07 20:22:22 +01:00
Michael Walker
de8ced69a6 Fiddle with changelog format. 2017-04-07 20:05:11 +01:00
Michael Walker
60f771d50e Write changelogs. 2017-04-07 18:16:30 +01:00
Michael Walker
8d23a2715e Bump concurrency to 1.1.2.0 and dejafu to 0.5.1.3. 2017-04-05 21:41:22 +01:00
Michael Walker
7cd0c665fa Add Haddock "@since" comments to everything in concurrency. 2017-04-05 21:25:02 +01:00
Michael Walker
da9f622ca9 Add Stackage LTS-8 to the travis config. 2017-04-05 21:06:25 +01:00
Michael Walker
a4ab84e132 Only define Semigroup Async instance for base >= 4.9.0.0. 2017-04-05 21:01:23 +01:00
Michael Walker
1532a75f78 Add replicateConcurrently{,_} to Async. 2017-04-05 20:57:27 +01:00
Michael Walker
92de856ed0 Add concurrently_, mapConcurrently_, and forConcurrently_. 2017-04-05 20:56:20 +01:00
Michael Walker
2e7aeac8b3 Add Semigroup and Monoid instances for Concurrently. 2017-04-05 20:54:21 +01:00
Michael Walker
71beaed0e5 Add uninterruptibleCancel to Async. 2017-04-05 20:46:00 +01:00
Michael Walker
15af09a406 Rexport mask_ and uninterruptibleMask_ from Conc.Class 2017-04-05 20:45:40 +01:00
Michael Walker
9a7a883ab9 Update cancel docs to mention blocking. 2017-04-05 20:36:53 +01:00
Michael Walker
dcddfa42a5 Merge pull request #77 from gamazeps/cancel
Make cancel blocking
2017-04-05 20:33:23 +01:00
Felix Raimundo
ed08975e3f Make cancel blocking
In the documentation of `cancel`, it is said to be blocking, waiting on
the cancelled `async` to die. It seems to me that is not the case.

This patch simply applies the code written by Simon Marlow in order
to wait for the termination of the `async`.

See:
https://hackage.haskell.org/package/async-2.1.1/docs/src/Control.Concurrent.Async.html#cancel
2017-04-05 16:44:08 +02:00
Michael Walker
5d8ada4a5f Move dependency function to Test.DejaFu.SCT.Internal. 2017-03-27 18:53:47 +01:00
Michael Walker
8394904831 Add note about performance profiling to README. 2017-03-20 19:27:42 +00:00
Michael Walker
80d00224c4 Use the https clone path for test-framework-hunit. 2017-03-20 18:54:24 +00:00
Michael Walker
743ae2e233 Add HUnit-1.6 support to hunit-dejafu. 2017-03-20 18:42:51 +00:00
Michael Walker
0e59d9aa40 Add a basic test for uninterruptible masks.
Closes #76.
2017-03-04 05:36:32 +00:00
Michael Walker
c2f8ffe473 Add some CAS tests.
Closes #75.
2017-03-04 05:28:29 +00:00
Michael Walker
32f6887a1b Add tests for throwing exceptions to the main thread.
Closes #74.
2017-03-04 05:28:29 +00:00
Michael Walker
61389f5875 Include the final failing action in the execution trace. 2017-03-04 05:28:29 +00:00
Michael Walker
7eda900d87 Only return 'UncaughtException' when the main thread is killed. 2017-03-04 05:28:29 +00:00
Michael Walker
a62c2df141 Add note on code coverage to README. 2017-03-04 05:28:28 +00:00
Michael Walker
6c7fb47cff Remove async-dejafu from travis. 2017-03-03 22:19:42 +00:00
Michael Walker
463efd3f8d Merge "async-dejafu" into "concurrency" + bump versions.
Closes #73.
2017-03-03 22:06:09 +00:00
Michael Walker
69e0890ecd Make Conc a MonadRef/MonadAtomicRef.
Closes #72.
2017-02-26 03:17:02 +00:00
Michael Walker
e33e2291f4 Add a note on breaking changes to "Contributing". 2017-02-26 03:16:52 +00:00
Michael Walker
90bc451d2a Bump to dejafu-0.5.1.1 2017-02-25 06:03:58 +00:00
Michael Walker
95eed7524c Add a test case to replicate issue 71. 2017-02-25 06:01:59 +00:00
Michael Walker
b3c96f1f99 Correctly update the prior action following subconcurrency.
Fixes #71.
2017-02-25 05:53:08 +00:00
Michael Walker
6c1ecfb715 Return the final decision from runConcurrent. 2017-02-25 05:44:29 +00:00
Michael Walker
3efc8acaed Throw error in incorporateTrace if no to-do points. 2017-02-25 05:33:29 +00:00
Michael Walker
0079254b8b Bump to dejafu-0.5.1.0 2017-02-25 01:16:46 +00:00
Michael Walker
332f93d0bd Add strict variants of runSCT and resultsSet. 2017-02-25 01:13:44 +00:00
Michael Walker
78c26b3636 Bring back the NFData instances. 2017-02-25 01:13:44 +00:00
Michael Walker
730ae46609 Derive some missing Eq instances. 2017-02-25 01:13:44 +00:00
Michael Walker
5f555b9f61 Bump dejafu to 0.5.0.2. 2017-02-22 17:17:23 +00:00
Michael Walker
5a667c8136 Introduce an action to end subconcurrency.
Closes #67.
2017-02-22 16:54:49 +00:00
Michael Walker
e274af1664 Give same an explicit type annotation.
Closes #66.
2017-02-22 16:24:24 +00:00
Michael Walker
5e218b91e9 Inherit the number of capabilities in a subconcurrent environment.
Closes #68.
2017-02-22 16:24:24 +00:00
Michael Walker
673a7bb659 Bump to dejafu-0.5.0.1 2017-02-21 05:19:16 +00:00
Michael Walker
5e00918e57 WillReadMVar is a release action as the thread may block. 2017-02-21 05:18:07 +00:00
Michael Walker
300d1d462a Unify Ref/CRef/Var/MVar naming.
This was a holdover from old-dejafu, where there were CRefs and CVars,
so referring to them as "Ref" and "Var" everywhere made sense as a
convenient shorthand. But then "CVar" became "MVar" and the convention
made less sense.
2017-02-21 00:00:37 +00:00
Michael Walker
12335e0090 Add tryReadMVar to MonadConc and dejafu.
Also pins the version of "concurrency" that dejafu depends on down to
the third digit, as additions to `MonadConc` will break dejafu.

Closes #62.
2017-02-20 23:42:08 +00:00
Michael Walker
285bf3ed87 Remove unused indexing feature of findSchedulePrefix. 2017-02-20 21:15:23 +00:00
Michael Walker
f9da4c43a9 Remove unused imports. 2017-02-20 20:28:25 +00:00