this repo has no description

[new release] kcas_data and kcas (0.5.2)

CHANGES:

All notable changes to this project will be documented in this file.

## 0.5.2

- Improve `Hashtbl` read-write performance and add `swap` (@polytypic)
- Avoid some unnecessary verifies of read-only CMP operations (@polytypic)

## 0.5.1

- Add synchronizing variable `Mvar` to `kcas_data` (@polytypic)
- Fix to allow retry from within `Xt.update` and `Xt.modify` (@polytypic)

## 0.5.0

- Add nested conditional transaction support (@polytypic)
- Add explicit location validation support (@polytypic)

## 0.4.0

- Allocation of location ids in a transaction log friendly order (@polytypic)
- Per location operating mode selection (@Dashy-Dolphin, review: @polytypic)
- Injectivity `!'a Kcas_data.Dllist.t` annotation (@polytypic)

## 0.3.1

- Added doubly-linked list `Dllist` to `kcas_data` (@polytypic)
- Minor optimizations (@polytypic)

## 0.3.0

- Remove the `Tx` API (@polytypic)
- Add blocking support to turn kcas into a proper STM (@polytypic, review:
@lyrm)
- Add periodic validation of transactions (@polytypic)

## 0.2.4

- Introduce `kcas_data` companion package of composable lock-free data
structures (@polytypic)
- Add `is_in_log` operation to determine whether a location has been accessed by
a transaction (@polytypic)
- Add `Loc.modify` (@polytypic)
- Add transactional `swap` operation to exchange contents of two locations
(@polytypic)
- Injectivity `!'a Loc.t` and variance `+'a Tx.t` annotations (@polytypic)

## 0.2.3

- Add support for post commit actions to transactions (@polytypic)
- Bring `Xt` and `Tx` access combinators to parity and add `compare_and_swap`
(@polytypic)

## 0.2.2

- New explicit transaction log passing API based on idea by @gasche (@polytypic,
review: @samoht and @lyrm)

## 0.2.1

- New k-CAS-n-CMP algorithm extending the GKMZ algorithm (@polytypic, review:
@bartoszmodelski)

## 0.2.0

- Complete redesign adding a new transaction API (@polytypic, review:
@bartoszmodelski)

## 0.1.8

- Fix a bug in GKMZ implementation (@polytypic, review: @bartoszmodelski)

## 0.1.7

- Change to use the new GKMZ algorithm (@polytypic, review: @bartoszmodelski)

## 0.1.6

- Add preflights sorting and checks (@bartoszmodelski, review: @polytypic)

## 0.1.5

- Republish in opam (update opam, dune) (@tmcgilchrist, review: @Sudha247)

Changed files
+78
packages
kcas
kcas.0.5.2
kcas_data
kcas_data.0.5.2
+39
packages/kcas/kcas.0.5.2/opam
···
···
+
opam-version: "2.0"
+
synopsis:
+
"Software transactional memory based on lock-free multi-word compare-and-set"
+
maintainer: ["KC Sivaramakrishnan <sk826@cl.cam.ac.uk>"]
+
authors: ["KC Sivaramakrishnan <sk826@cl.cam.ac.uk>"]
+
license: "ISC"
+
homepage: "https://github.com/ocaml-multicore/kcas"
+
bug-reports: "https://github.com/ocaml-multicore/kcas/issues"
+
depends: [
+
"dune" {>= "3.3"}
+
"ocaml" {>= "5.0"}
+
"domain-local-await" {>= "0.1.0"}
+
"mdx" {>= "1.10.0" & with-test}
+
"odoc" {with-doc}
+
]
+
build: [
+
["dune" "subst"] {dev}
+
[
+
"dune"
+
"build"
+
"-p"
+
name
+
"-j"
+
jobs
+
"@install"
+
"@runtest" {with-test}
+
"@doc" {with-doc}
+
]
+
]
+
dev-repo: "git+https://github.com/ocaml-multicore/kcas.git"
+
url {
+
src:
+
"https://github.com/ocaml-multicore/kcas/releases/download/0.5.2/kcas-0.5.2.tbz"
+
checksum: [
+
"sha256=7a3a66cda019904d7f9e566ebdf65bad5fdf060049a589d236a31e7960bf7bbb"
+
"sha512=3dde56e72dbc7534b824739354d4799ea42ca67fd54715d5e808590d797228600f9942a4326a0237395b9d914e73838b2744d1d01b6d018a8fabac4ad8807805"
+
]
+
}
+
x-commit-hash: "d168d206485e2ec22ef7ddd74c7d7797038e2b98"
+39
packages/kcas_data/kcas_data.0.5.2/opam
···
···
+
opam-version: "2.0"
+
synopsis:
+
"Compositional lock-free data structures and primitives for communication and synchronization"
+
maintainer: ["KC Sivaramakrishnan <sk826@cl.cam.ac.uk>"]
+
authors: ["KC Sivaramakrishnan <sk826@cl.cam.ac.uk>"]
+
license: "ISC"
+
homepage: "https://github.com/ocaml-multicore/kcas"
+
bug-reports: "https://github.com/ocaml-multicore/kcas/issues"
+
depends: [
+
"dune" {>= "3.3"}
+
"kcas" {= version}
+
"mdx" {>= "1.10.0" & with-test}
+
"multicore-magic" {>= "1.0.0" & with-test}
+
"odoc" {with-doc}
+
]
+
build: [
+
["dune" "subst"] {dev}
+
[
+
"dune"
+
"build"
+
"-p"
+
name
+
"-j"
+
jobs
+
"@install"
+
"@runtest" {with-test}
+
"@doc" {with-doc}
+
]
+
]
+
dev-repo: "git+https://github.com/ocaml-multicore/kcas.git"
+
url {
+
src:
+
"https://github.com/ocaml-multicore/kcas/releases/download/0.5.2/kcas-0.5.2.tbz"
+
checksum: [
+
"sha256=7a3a66cda019904d7f9e566ebdf65bad5fdf060049a589d236a31e7960bf7bbb"
+
"sha512=3dde56e72dbc7534b824739354d4799ea42ca67fd54715d5e808590d797228600f9942a4326a0237395b9d914e73838b2744d1d01b6d018a8fabac4ad8807805"
+
]
+
}
+
x-commit-hash: "d168d206485e2ec22ef7ddd74c7d7797038e2b98"