opam-version: "2.0"
maintainer: "Philippe Veber <philippe.veber@gmail.com>"
authors: "Philippe Veber <philippe.veber@gmail.com>"
homepage: "https://github.com/pveber/bistro/"
bug-reports: "https://github.com/pveber/bistro/issues"
license: "GPL-1.0-or-later"
dev-repo: "git+https://github.com/pveber/bistro.git"
build: ["jbuilder" "build" "-p" name "-j" jobs]
depends: [
  "ocaml" {>= "4.03.0"}
  "jbuilder" {>= "1.0+beta8"}
  "core" {>= "v0.9.0" & < "v0.11"}
  "lwt" {< "4.0.0"}
  "ocamlgraph" {>= "1.8.7"}
  "rresult"
  "sexplib" {>= "113.24.00" & < "v0.15"}
  "tyxml" {>= "4.0"}
]
synopsis: "A library to build and run distributed workflows"
description: """
bistro is an OCaml library to build and run computations represented
by a collection of interdependent scripts, as is often found in
data analysis (especially computational biology).

Features:
- build complex and composable workflows declaratively
- simple and lightweight wrapping of new components
- resume-on-failure: if something fails, fix it and the workflow will
  restart from where it stopped
- parallel workflow execution (locally or over a PBS cluster)
- development-friendly: when a script is modified, bistro
  automatically finds out what needs to be recomputed
- automatic naming of generated files
- static typing: detect file format errors at compile time!

The library provides a datatype to represent scripts (including
metadata and dependencies), an engine to run workflows and a standard
library providing components for popular tools (although mostly
related to computational biology and unix for now)."""
url {
  src: "https://github.com/pveber/bistro/archive/v0.3.0.tar.gz"
  checksum: "md5=670877e55d851a83cf8a833b6df1e955"
}
