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
Michael Walker
20178ef751
Prepare dejafu, hunit-dejafu, and tasty-dejafu release
2018-03-06 17:25:49 +00:00
Michael Walker
2037e42d65
Improve haddocks for settings
2018-03-06 17:13:19 +00:00
Michael Walker
053ce34682
Add tests for early-exit
2018-03-05 12:37:21 +00:00
Michael Walker
dccc2c7992
Use Settings throughout dejafu-tests
2018-03-04 15:00:16 +00:00
Michael Walker
89c14ff2f7
Add *WithSettings to Test.Tasty.DejaFu and deprecate *Discard
2018-03-04 12:38:51 +00:00
Michael Walker
35ebd2bdc6
Add *WithSettings to Test.HUnit.DejaFu and deprecate *Discard
2018-03-04 12:38:51 +00:00
Michael Walker
bdb1d82dae
Add *WithSettings to Test.DejaFu and deprecate *Discard
2018-03-04 11:47:45 +00:00
Michael Walker
c36685b53e
Make all settings other than Way and MemType optional
2018-03-04 02:56:08 +00:00
Michael Walker
4ef0138297
Deprecate Test.DejaFu.Defaults
2018-03-04 02:38:50 +00:00
Michael Walker
b05b38eaf2
Add a Test.DejaFu.Settings module
2018-03-04 02:26:58 +00:00
Michael Walker
3bdbdc1992
Deprecate SCT function variants
2018-03-04 01:22:02 +00:00
Michael Walker
20173ba2dc
Make debugPrint optional
2018-03-04 00:54:33 +00:00
Michael Walker
0e0c8f22cd
Add an early exit mechanism to SCT
2018-03-04 00:54:33 +00:00