package dune-release

  1. Overview
  2. Docs

Package descriptions.

Package

type t

The type for package descriptions.

val v : dry_run:bool -> ?name:string -> ?version:string -> ?tag:string -> ?keep_v:bool -> ?delegate:Bos_setup.Cmd.t -> ?build_dir:Fpath.t -> ?opam:Fpath.t -> ?opam_descr:Fpath.t -> ?readme:Fpath.t -> ?change_log:Fpath.t -> ?license:Fpath.t -> ?distrib_uri:string -> ?distrib_file:Fpath.t -> ?publish_msg:string -> ?publish_artefacts:[ `Distrib | `Doc | `Alt of string ] list -> ?distrib:Distrib.t -> ?lint_files:Fpath.t list option -> unit -> t
val infer_name : unit -> (string, Bos_setup.R.msg) Bos_setup.result

Infer the name of the projet.

val infer_pkg_names : string list -> (string list, Bos_setup.R.msg) Bos_setup.result

Infer the package list.

val name : t -> (string, Bos_setup.R.msg) Bos_setup.result

name p is p's name.

val with_name : t -> string -> t

with_name t n is r such that like name r is n and f r is f t otherwise.

val version : t -> (string, Bos_setup.R.msg) Bos_setup.result

version p is p's version string.

val tag : t -> (string, Bos_setup.R.msg) Bos_setup.result

delegate p is p's delegate.

build_dir p is p's build directory.

opam p is p's opam file.

opam_descr p is p's opam description.

val opam_homepage : t -> (string option, Bos_setup.R.msg) Bos_setup.result
val opam_doc : t -> (string option, Bos_setup.R.msg) Bos_setup.result
val opam_field : t -> string -> (string list option, Bos_setup.R.msg) Bos_setup.result

opam_field p f looks up field f of p's opam file.

val opam_field_hd : t -> string -> (string option, Sos.error) Bos_setup.result
val opam_fields : t -> (string list Bos_setup.String.map, Bos_setup.R.msg) Bos_setup.result

opam_fields p are p's opam file fields.

val readmes : t -> (Fpath.t list, Bos_setup.R.msg) Bos_setup.result

readmes p are p's readme files.

readme p is the first element of readmes p.

val change_logs : t -> (Fpath.t list, Bos_setup.R.msg) Bos_setup.result

change_logs p are p's change logs.

val change_log : t -> (Fpath.t, Bos_setup.R.msg) Bos_setup.result

change_log p is the first element of change_logs p.

val licenses : t -> (Fpath.t list, Bos_setup.R.msg) Bos_setup.result

licenses p are p's license files.

val distrib_uri : ?raw:bool -> t -> (string, Bos_setup.R.msg) Bos_setup.result

distrib_uri p is p's distribution URI. If raw is true defaults to false, p's raw URI distribution pattern is returned.

val distrib_file : dry_run:bool -> t -> (Fpath.t, Bos_setup.R.msg) Bos_setup.result

distrib_file p is p's distribution archive.

val publish_msg : t -> (string, Bos_setup.R.msg) Bos_setup.result

publish_msg p is p's distribution publication message.

Distribution

val distrib_archive : dry_run:bool -> keep_dir:bool -> t -> (Fpath.t, Bos_setup.R.msg) Bos_setup.result

distrib_archive ~keep_dir p creates a distribution archive for p and returns its path. If keep_dir is true the repository checkout used to create the distribution archive is kept in the build directory.

val distrib_archive_path : t -> (Fpath.t, Rresult.R.msg) Bos_setup.result
val distrib_filename : ?opam:bool -> t -> (Fpath.t, Bos_setup.R.msg) Bos_setup.result

distrib_filename ~opam p is a distribution filename for p. If opam is true (defaults to false), the name follows opam's naming conventions.

val publish_artefacts : t -> ([ `Distrib | `Doc | `Alt of string ] list, Bos_setup.R.msg) Bos_setup.result

publish_artefacts p are p's publication artefacts.

Uri

val doc_user_repo_and_path : t -> (string * string * Fpath.t, Bos_setup.R.msg) Bos_setup.result
val distrib_user_and_repo : t -> (string * string, Bos_setup.R.msg) Bos_setup.result

Test

val test : f

Build

val build : f

Clean

val clean : f

Lint

type lint = [
  1. | `Std_files
  2. | `Opam
]

The type for lints.

val lint_all : lint list

lint_all is a list with all lint values.

val lint : dry_run:bool -> dir:Fpath.t -> t -> lint list -> (int, Bos_setup.R.msg) Bos_setup.result

distrib ~ignore_pkg p ~dir lints performs the lints mentioned in lints in a directory dir on the package p. If ignore_pkg is true p's definitions are ignored.

Tag

val extract_tag : t -> (string, Sos.error) Bos_setup.result

Dev repo

val dev_repo : t -> (string option, Sos.error) Bos_setup.result