Module Topkg.Private.Pkg

module Pkg: sig .. end

Package description.


type t 

The type for package descriptions.

val empty : t

empty is an empty package description.

val name : t -> string

name p is p's name.

val delegate : t -> Topkg.Cmd.t option

delegate pis p's delegate.

val build_dir : t -> Topkg.fpath

build_dir p is p's build directory.

val readmes : t -> Topkg.fpath list

readme p is p's readme files.

val change_logs : t -> Topkg.fpath list

change_logs p is p's change logs.

val licenses : t -> Topkg.fpath list

licenses p is p's license files.

val opam : name:string -> t -> Topkg.fpath

opam name p is p's opam file for opam package name.

Distrib

val distrib_uri : t -> string option

distrib_uri p is p's distribution location URI pattern. See Distrib.

Publish

val publish_artefacts : t -> [ `Alt of string | `Distrib | `Doc ] list

publish_artefacts p is p's distribution publication artefacts. See Publish.

Lints

Note. In the following None values mean that the lint is disabled by the package description.

val lint_custom : t -> (unit -> Topkg.R.msg Topkg.result list) option

lint_custom p is p's custom linting function (if any).

Note. Use Topkg.Private.Ipc.lint_custom to run the function from another program.

val lint_files : t -> Topkg.fpath list option

lint_files p are p's files to check for existence.

val lint_metas : t -> (Topkg.fpath * bool) list

lint_metas p are p's META file to OCamlfind lint.

val lint_opams : t -> (Topkg.fpath * bool * string list option) list

lint_opams p are p's opam file opam lint and dependency lint.

Codec

val codec : t Topkg.Private.Codec.t

codec is a codec for package descriptions.