package dune-release
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=1278b21304da80f1d5e35579403c2923868b26361e4804c33c2d6bbdba248f98
md5=4ac74d05e38d255a86c012e149e13793
README.md.html
dune-release: release dune packages in opam
dune-release
is a tool to streamline the release of Dune packages in opam. It supports only projects be built with Dune and released on GitHub.
Installation
dune-release
can be installed with opam
:
opam install dune-release
Documentation
A basic introduction and API reference is automatically generated by odoc
from the interfaces. It can be consulted online.
The dune-release
command line tool is extensively documented in man pages available through it's help system. Type:
dune-release help release # for help about releasing your package
dune-release help # for more help
For instance:
$ dune-release help release
NAME
dune-release - How to release a (dune) package
DESCRIPTION
The basic release script is the following. Each step is refined and
explained with more details below.
dune-release browse issues # Review remaining outstanding issues
dune-release status # Review the changes since last version
dune-release log edit # Write the release notes
dune-release log commit # Commit the release notes
dune-release tag # Tag the distribution with a version
dune-release distrib # Create the distribution archive
dune-release publish # Publish it on the WWW with its documentation
dune-release opam pkg # Create an opam package
dune-release opam submit # Submit it to OCaml's opam repository
The last four steps can be performed via a single invocation to
dune-release-bistro(1).
Important Notes
Most of the code in this repository has been written and has already been released part of the topkg tool.
The main differences between dune-release
and topkg
are:
Remove
pkg/pkg.ml
;Assume the project is built with dune;
Bundle everything as a single binary;
Use of
Astring
,Logs
,Fpath
andBos
;Remove the IPC layer (which is used between
topkg
andtopkg-care
);Remove the delegation mechanism: only publishing to GitHub is supported.