Commit Graph

1113 Commits

Author SHA1 Message Date
Michael Walker
6a98fb645f Mark GHC 8.4 as officially supported 2018-03-24 23:14:04 +00:00
Michael Walker
4f4aa08fcb Inline tasty-hedgehog dep into dejafu-tests 2018-03-24 23:14:04 +00:00
Michael Walker
2d8127774f Fix HLint errors 2018-03-24 23:14:04 +00:00
Michael Walker
ed4c02e7ae
Merge pull request #251 from barrucadu/refactoring
Refactoring
2018-03-17 19:00:56 +00:00
Michael Walker
2a3f442e95 Prepare dejafu, hunit-dejafu, tasty-dejafu release 2018-03-17 18:43:16 +00:00
Michael Walker
b74661559b Fix some dejafu-tests warnings 2018-03-17 18:43:16 +00:00
Michael Walker
8f0d3394e1 Add missing dependency for a pair of 'throwTo' actions
Closes #250
2018-03-17 18:21:54 +00:00
Michael Walker
d51d1501e1 Remove 'Killed'
Closes #198
2018-03-17 18:12:44 +00:00
Michael Walker
6be0ce9d2a Drop use of MonadRef
Closes #201
2018-03-17 17:11:40 +00:00
Michael Walker
4bc3318d92 Split up 'stepThreads' 2018-03-17 10:46:09 +00:00
Michael Walker
57874877f0 Inline 'runConcurrency''' function 2018-03-16 21:29:12 +00:00
Michael Walker
ddd5d1e088 Split up & make more consistent 'stepThread' 2018-03-16 18:06:15 +00:00
Michael Walker
23e4588158 Use RecordWildCards in Conc modules 2018-03-15 13:29:18 +00:00
Michael Walker
501447a2cf Rename model types to Model* 2018-03-15 12:44:52 +00:00
Michael Walker
d902469300
Merge pull request #248 from barrucadu/183-shrinking
Trace simplification
2018-03-12 20:06:00 +00:00
Michael Walker
a80de804e8 Prepare dejafu release 2018-03-12 18:47:27 +00:00
Michael Walker
f8ce6ef85a Add a setting to make some recoverable errors fatal 2018-03-12 18:43:48 +00:00
Michael Walker
f2b55985d2 Split simplification into two passes 2018-03-11 23:15:44 +00:00
Michael Walker
19f3404d1d Correctly handle re-ordering forks and newCRefs in simplifier
Re-ordering forks will change thread IDs, and re-ordering newCRefs
will change CRef IDs (which will then change commit thread IDs when
executing under PSO).  So before we can execute a simplified trace, we
have to consistently renumber everything again.
2018-03-11 23:15:44 +00:00
Michael Walker
c6f39364d7 Use "simplify" instead of "shrink" as per Colin's suggestion
Colin rightly pointed out that what dejafu is doing here is
fundamentally different to what is normally meant by "shrinking" in
tools like QuickCheck or Hedgehog.
2018-03-11 23:15:44 +00:00
Michael Walker
dd384f01de Implement basic semantics-preserving shrinking 2018-03-11 23:15:44 +00:00
Michael Walker
86ff7a025c Add 'lshrink' SCT setting 2018-03-11 23:15:44 +00:00
Michael Walker
f182f93334 Keep only the first trace for each distinct result 2018-03-11 23:15:44 +00:00
Michael Walker
b11393b1f5 Add 'lequality' SCT setting 2018-03-11 23:15:44 +00:00
Michael Walker
9c5d83862d Build a list of SCT results 2018-03-11 23:15:44 +00:00
Michael Walker
2c407b768a DepState does not track CRef buffers under SQ 2018-03-11 23:15:44 +00:00
Michael Walker
b6bce5cec6
Merge pull request #247 from barrucadu/jenkinsfile
Remove references docs.barrucadu.co.uk
2018-03-11 23:14:44 +00:00
Michael Walker
34f6358e86 Remove mentions of docs.barrucadu.co.uk 2018-03-11 22:49:51 +00:00
Michael Walker
2628c022c0 Remove Jenkinsfile 2018-03-11 22:46:56 +00:00
Michael Walker
331d685901
Merge pull request #246 from barrucadu/199-nfdata
Use Generic NFData instances where possible, be explicit where not
2018-03-11 22:07:00 +00:00
Michael Walker
e745dd09d7 Prepare dejafu release 2018-03-11 21:31:04 +00:00
Michael Walker
52294e5ae3 Avoid catch-alls in NFData instances for ThreadAction and Lookahead
Closes #199
2018-03-11 21:24:58 +00:00
Michael Walker
8be71a431e Use DeriveAnyClass/DeriveGeneric to get free NFData instances
The generic `NFData` instances are not fully strict if you use deepseq
< 1.4, as that is when the default `rnf` implementation changed `seq`
to one based on generics.  However, 1.4 came out in 2014, so I think
it's a pretty safe bet that nobody is stuck on an older version.

If only `MaskingState` had an `NFData` instance...
2018-03-11 21:24:58 +00:00
Michael Walker
54dcb4cafd
Merge pull request #245 from barrucadu/exceptions-0.10
exceptions-0.10
2018-03-11 20:45:17 +00:00
Michael Walker
426fc4e1a1 Prepare concurrency, dejafu, hunit-dejafu releases 2018-03-11 20:19:04 +00:00
Michael Walker
a0a8652121 Bump exceptions upper bound in hunit-dejafu 2018-03-11 20:16:39 +00:00
Michael Walker
c29aaf10cb Bump exceptions upper bound in dejafu & CPP it 2018-03-11 20:06:12 +00:00
Michael Walker
cf6fa780c4 Bump exceptions upper bound in concurrency 2018-03-11 20:05:58 +00:00
Michael Walker
fad87b2261
Merge pull request #244 from barrucadu/243-setset-dep
Add missing setNumCapabilities dependency
2018-03-11 17:20:33 +00:00
Michael Walker
3e410c4a09 Prepare dejafu release 2018-03-11 16:41:39 +00:00
Michael Walker
d54ce2f9c7 Add setNumCapabilities/setNumCapabilities dep
Closes #243
2018-03-11 16:41:03 +00:00
Michael Walker
e17948bc77 Make dependency relation clearer
This more closely matches the version in my thesis, and I think is
easier to follow.
2018-03-11 16:36:52 +00:00
Michael Walker
46562067c4
Merge pull request #242 from barrucadu/fix-exceptions
Fix compilation error with exceptions-0.9.0
2018-03-08 23:44:06 +00:00
Michael Walker
21d76f5b2d Prepare dejafu release 2018-03-08 23:25:17 +00:00
Michael Walker
67400d08b5 Fix compilation error with exceptions-0.9.0 2018-03-08 22:51:20 +00:00
Michael Walker
87f9de4851
Merge pull request #240 from barrucadu/237-deprecate-swarmy
Deprecate swarmy
2018-03-07 12:40:13 +00:00
Michael Walker
d1d3f186b7 Prepare dejafu, hunit-dejafu, and tatsy-dejafu release 2018-03-06 18:57:27 +00:00
Michael Walker
9eab287b5b Deprecate swarmy 2018-03-06 18:57:27 +00:00
Michael Walker
7759890981
Merge pull request #238 from barrucadu/221-opaque-settings
(wip) Add an SCT "Settings" type
2018-03-06 17:47:54 +00:00
Michael Walker
303ee851da Update release process docs 2018-03-06 17:27:34 +00:00