Commit 26709ea
committed
Releasing v2.0
Major changes in the release 2.0
--------------------------------
General API changes (most of them are incompatible with the previous versions!):
* `core` module is renamed to `lincheck`, what makes Lin-Check dependency specification more clear (`com.devexperts.lincheck:lincheck:...` instead of `com.devexperts.lincheck:core:...`);
* Execution scenario began including not only parallel part of the execution, but initial and post parts as well (see `ExecutionScenario` class);
* `actorsPerThread` option is removed, simpler `threads`, `actorsPerThread`, `actorsBefore`, and `actorsAfter` options are introduced instead;
* `@Reset` method is removed, the default constructor is used instead;
* Default parameter generators for the supported primitive types and strings are used if no one is specified;
* Logging level control is introduced.
Verification changes:
* All verifiers are moved to `verifier` package;
* Different relaxed contracts (quiescent consistency, serializability, quantitative relaxation) are supported;
* All verifiers start using a labeled transition system (LTS) for their algorithms, what makes their logic more clear;
* All verifiers are based on a new `CacheVerifier` abstract verifier which keeps previous results and looks at them at first (results repeat in up to 80% of time).
Other features:
* An infrastructure for managed strategies is introduced (look at the skeleton for random-switch strategy);
* Pretty printing for execution scenario and result is added;
* Kotlin becomes a primary language for new features.1 parent 487377c commit 26709ea
File tree
275 files changed
+6419
-2564
lines changed- core/src
- main/java/com/devexperts/dxlab/lincheck
- stress
- verifier
- test/java/com/devexperts/dxlab/lincheck
- libtest
- src
- main/java
- com/github/lock/free/queue
- org/cliffc/high_scale_lib/old
- psy/lob/saw/queues
- benchmarks
- handrolled
- jmh
- common
- ff
- lamport
- thompson
- romix/scala
- collection/concurrent
- tests/custom
- counter
- queue
- transfer
- thesis_example
- z
- annotation
- channel
- evil
- exception
- function
- module
- offheap
- buffer
- zmalloc
- util
- concurrent
- primitives
- test/java/com/devexperts/dxlab/lincheck/tests
- boundary
- custom
- counter
- queue
- transfer
- guava
- juc
- blocking_queue
- hash_map
- lockfreequeue
- romix
- zchannel
- lincheck
- src
- main/java/com/devexperts/dxlab/lincheck
- annotations
- execution
- paramgen
- runner
- strategy
- randomswitch
- stress
- verifier
- linearizability
- quantitative
- quasi
- quiescent
- serializability
- test/java/com/devexperts/dxlab/lincheck/test
- runner
- strategy
- randomswitch
- stress
- verifier
- linearizability
- quantitative
- quasi
- quiescent
- serializability
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
275 files changed
+6419
-2564
lines changedLarge diffs are not rendered by default.
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
Lines changed: 0 additions & 94 deletions
This file was deleted.
Lines changed: 0 additions & 85 deletions
This file was deleted.
Lines changed: 0 additions & 66 deletions
This file was deleted.
0 commit comments