this repo has no description

[new release] Five Ortac packages 0.3.0

This release brings a number of new features and improvements:

- Improvement of the user interface:
+ Switch to a module based configuration to simplify the command line
+ Release a `dune` plugin to generate Dune boilerplate
+ Overwrite the default `cleanup` function if there is one defined in the
configuration module
- Extend supported Gospel subset for models:
+ Add support for custom ghost type as model: you are no longer limited to
the Gospel standard library to define the model of your OCaml types
+ Add support for functional type in model: you can use the arrow type as a
model
- Extend coverage of generated tests:
+ Add support for testing functions without a SUT argument
+ Add support for tuples, both as argument and returned value
- Fix:
+ Add an error when none of the functions can be tested rather than
generating illegal OCaml code
+ Handle correctly cast from `int` to `integer` included by Gospel when
computing the expected returned value in failure message
+ Fix field access translation

Changed files
+265
packages
ortac-core
ortac-core.0.3.0
ortac-dune
ortac-dune.0.3.0
ortac-qcheck-stm
ortac-qcheck-stm.0.3.0
ortac-runtime
ortac-runtime.0.3.0
ortac-runtime-qcheck-stm
ortac-runtime-qcheck-stm.0.3.0
+63
packages/ortac-core/ortac-core.0.3.0/opam
···
···
+
opam-version: "2.0"
+
synopsis:
+
"Ortac (OCaml Runtime Assertion Checking) core tool and library based on Gospel"
+
description: """
+
Ortac (OCaml Runtime Assertion Checking) is a tool to turn
+
executable Gospel specifications into code to test they hold.
+
Ortac Core provides:
+
- a library to turn Gospel terms and types into OCaml expressions
+
and types,
+
- and a command-line tool.
+
You will need at least one of the Ortac plugins to actually
+
generate test code.
+
"""
+
maintainer: ["Nicolas Osborne <nicolas.osborne@tarides.com>"]
+
authors: [
+
"Clément Pascutto <clement@pascutto.fr>"
+
"Nicolas Osborne <nicolas.osborne@tarides.com>"
+
"Samuel Hym <samuel@tarides.com>"
+
]
+
license: "MIT"
+
homepage: "https://github.com/ocaml-gospel/ortac"
+
doc: "https://ocaml-gospel.github.io/ortac/ortac-core/"
+
bug-reports: "https://github.com/ocaml-gospel/ortac/issues"
+
depends: [
+
"dune" {>= "3.8"}
+
"ocaml" {>= "4.12.0"}
+
"dune-build-info"
+
"dune-site"
+
"cmdliner" {>= "1.1.0"}
+
"fmt"
+
"ppxlib" {>= "0.26.0"}
+
"gospel" {= "0.3.0"}
+
"alcotest" {with-test & >= "0.8.1"}
+
"ortac-runtime" {with-test}
+
"odoc" {with-doc}
+
]
+
conflicts: [
+
"result" {< "1.5"}
+
]
+
build: [
+
["dune" "subst"] {dev}
+
[
+
"dune"
+
"build"
+
"-p"
+
name
+
"-j"
+
jobs
+
"--promote-install-files=false"
+
"@install"
+
"@runtest" {with-test}
+
"@doc" {with-doc}
+
]
+
["dune" "install" "-p" name "--create-install-files" name]
+
]
+
dev-repo: "git+https://github.com/ocaml-gospel/ortac.git"
+
url {
+
src: "https://github.com/ocaml-gospel/ortac/archive/refs/tags/0.3.0.tar.gz"
+
checksum: [
+
"md5=26fe3888ccf1112c5961f50bbea8f427"
+
"sha512=27c75ad4a614c5e800d85714ef2e074dec9625ca78848dbc06823ad4a6d3e527d78600801bc94162bf24291c35eaa70ee83898e981ef2e5bbc703df249ffe077"
+
]
+
}
+41
packages/ortac-dune/ortac-dune.0.3.0/opam
···
···
+
opam-version: "2.0"
+
synopsis: "Generate dune rules for other ortac plugins"
+
description: "Generate dune rules for other ortac plugins"
+
maintainer: ["Nicolas Osborne <nicolas.osborne@tarides.com>"]
+
authors: ["Nicolas Osborne <nicolas.osborne@tarides.com>"]
+
license: "MIT"
+
homepage: "https://github.com/ocaml-gospel/ortac"
+
bug-reports: "https://github.com/ocaml-gospel/ortac/issues"
+
depends: [
+
"dune" {>= "3.8"}
+
"ocaml" {>= "4.12.0"}
+
"fmt"
+
"cmdliner" {>= "1.1.0"}
+
"ortac-core" {= version}
+
"ortac-qcheck-stm" {with-test}
+
"odoc" {with-doc}
+
]
+
build: [
+
["dune" "subst"] {dev}
+
[
+
"dune"
+
"build"
+
"-p"
+
name
+
"-j"
+
jobs
+
"--promote-install-files=false"
+
"@install"
+
"@runtest" {with-test}
+
"@doc" {with-doc}
+
]
+
["dune" "install" "-p" name "--create-install-files" name]
+
]
+
dev-repo: "git+https://github.com/ocaml-gospel/ortac.git"
+
url {
+
src: "https://github.com/ocaml-gospel/ortac/archive/refs/tags/0.3.0.tar.gz"
+
checksum: [
+
"md5=26fe3888ccf1112c5961f50bbea8f427"
+
"sha512=27c75ad4a614c5e800d85714ef2e074dec9625ca78848dbc06823ad4a6d3e527d78600801bc94162bf24291c35eaa70ee83898e981ef2e5bbc703df249ffe077"
+
]
+
}
+65
packages/ortac-qcheck-stm/ortac-qcheck-stm.0.3.0/opam
···
···
+
opam-version: "2.0"
+
synopsis: "QCheck-STM plugin for Ortac"
+
description: """
+
The QCheck-STM plugin for the Ortac command-line tool (provided by
+
the ortac-core package) can generate model-based tests for a module
+
with Gospel specifications. The generated code will test that the
+
function specifications hold by using the QCheck-STM library to
+
create random test cases.
+
+
Ortac (OCaml Runtime Assertion Checking) is a tool to turn
+
executable Gospel specifications into code to test they hold.
+
"""
+
maintainer: ["Nicolas Osborne <nicolas.osborne@tarides.com>"]
+
authors: [
+
"Nicolas Osborne <nicolas.osborne@tarides.com>"
+
"Samuel Hym <samuel@tarides.com>"
+
"Nikolaus Huber <mail@n-huber.eu>"
+
]
+
license: "MIT"
+
homepage: "https://github.com/ocaml-gospel/ortac"
+
doc: "https://ocaml-gospel.github.io/ortac/ortac-qcheck-stm/"
+
bug-reports: "https://github.com/ocaml-gospel/ortac/issues"
+
depends: [
+
"dune" {>= "3.8"}
+
"ocaml" {>= "4.12.0"}
+
"cmdliner" {>= "1.1.0"}
+
"fmt"
+
"ppxlib" {>= "0.26.0"}
+
"mdx" {with-test & >= "2.3.0"}
+
"gospel" {= "0.3.0"}
+
"qcheck-core" {with-test}
+
"qcheck-stm" {with-test}
+
"qcheck-multicoretests-util" {with-test}
+
"ortac-core" {= version}
+
"ortac-runtime" {with-test & = version}
+
"ortac-runtime-qcheck-stm" {= version}
+
"odoc" {with-doc}
+
]
+
conflicts: [
+
"result" {< "1.5"}
+
]
+
build: [
+
["dune" "subst"] {dev}
+
[
+
"dune"
+
"build"
+
"-p"
+
name
+
"-j"
+
jobs
+
"--promote-install-files=false"
+
"@install"
+
"@runtest" {with-test}
+
"@doc" {with-doc}
+
]
+
["dune" "install" "-p" name "--create-install-files" name]
+
]
+
dev-repo: "git+https://github.com/ocaml-gospel/ortac.git"
+
url {
+
src: "https://github.com/ocaml-gospel/ortac/archive/refs/tags/0.3.0.tar.gz"
+
checksum: [
+
"md5=26fe3888ccf1112c5961f50bbea8f427"
+
"sha512=27c75ad4a614c5e800d85714ef2e074dec9625ca78848dbc06823ad4a6d3e527d78600801bc94162bf24291c35eaa70ee83898e981ef2e5bbc703df249ffe077"
+
]
+
}
+46
packages/ortac-runtime-qcheck-stm/ortac-runtime-qcheck-stm.0.3.0/opam
···
···
+
opam-version: "2.0"
+
synopsis: "Runtime support library for Ortac/QCheck-STM-generated code"
+
description: """
+
The ortac-runtime-qcheck-stm library provides support for the code
+
generated by the Ortac/QCheck-STM plugin (provided by the
+
ortac-qcheck-stm package).
+
+
Ortac (OCaml Runtime Assertion Checking) is a tool to turn
+
executable Gospel specifications into code to test they hold.
+
"""
+
maintainer: ["Nicolas Osborne <nicolas.osborne@tarides.com>"]
+
authors: ["Nicolas Osborne <nicolas.osborne@tarides.com>"]
+
license: "MIT"
+
homepage: "https://github.com/ocaml-gospel/ortac"
+
bug-reports: "https://github.com/ocaml-gospel/ortac/issues"
+
depends: [
+
"dune" {>= "3.8"}
+
"ocaml" {>= "4.12.0"}
+
"qcheck-stm"
+
"ortac-runtime" {= version}
+
"odoc" {with-doc}
+
]
+
build: [
+
["dune" "subst"] {dev}
+
[
+
"dune"
+
"build"
+
"-p"
+
name
+
"-j"
+
jobs
+
"--promote-install-files=false"
+
"@install"
+
"@runtest" {with-test}
+
"@doc" {with-doc}
+
]
+
["dune" "install" "-p" name "--create-install-files" name]
+
]
+
dev-repo: "git+https://github.com/ocaml-gospel/ortac.git"
+
url {
+
src: "https://github.com/ocaml-gospel/ortac/archive/refs/tags/0.3.0.tar.gz"
+
checksum: [
+
"md5=26fe3888ccf1112c5961f50bbea8f427"
+
"sha512=27c75ad4a614c5e800d85714ef2e074dec9625ca78848dbc06823ad4a6d3e527d78600801bc94162bf24291c35eaa70ee83898e981ef2e5bbc703df249ffe077"
+
]
+
}
+50
packages/ortac-runtime/ortac-runtime.0.3.0/opam
···
···
+
opam-version: "2.0"
+
synopsis: "Runtime support library for Ortac-generated code"
+
description: """
+
The ortac-runtime library provides support for the code generated
+
by the various Ortac plugins.
+
Ortac (OCaml Runtime Assertion Checking) is a tool to turn
+
executable Gospel specifications into code to test they hold.
+
"""
+
maintainer: ["Nicolas Osborne <nicolas.osborne@tarides.com>"]
+
authors: [
+
"Clément Pascutto <clement@pascutto.fr>"
+
"Nicolas Osborne <nicolas.osborne@tarides.com>"
+
"Samuel Hym <samuel@tarides.com>"
+
]
+
license: "MIT"
+
homepage: "https://github.com/ocaml-gospel/ortac"
+
doc: "https://ocaml-gospel.github.io/ortac/ortac-runtime/"
+
bug-reports: "https://github.com/ocaml-gospel/ortac/issues"
+
depends: [
+
"dune" {>= "3.8"}
+
"ocaml" {>= "4.12.0"}
+
"fmt" {>= "0.8.7"}
+
"zarith"
+
"monolith" {with-test & >= "20201026"}
+
"odoc" {with-doc}
+
]
+
build: [
+
["dune" "subst"] {dev}
+
[
+
"dune"
+
"build"
+
"-p"
+
name
+
"-j"
+
jobs
+
"--promote-install-files=false"
+
"@install"
+
"@runtest" {with-test}
+
"@doc" {with-doc}
+
]
+
["dune" "install" "-p" name "--create-install-files" name]
+
]
+
dev-repo: "git+https://github.com/ocaml-gospel/ortac.git"
+
url {
+
src: "https://github.com/ocaml-gospel/ortac/archive/refs/tags/0.3.0.tar.gz"
+
checksum: [
+
"md5=26fe3888ccf1112c5961f50bbea8f427"
+
"sha512=27c75ad4a614c5e800d85714ef2e074dec9625ca78848dbc06823ad4a6d3e527d78600801bc94162bf24291c35eaa70ee83898e981ef2e5bbc703df249ffe077"
+
]
+
}