package opam-publish
Install
Dune Dependency
Authors
Maintainers
Sources
md5=9a030e2c3083744e378f42791ec007e9
sha512=cf427e808aaa2da6270f916567158509d5669dbfa7d66abce203a8699e2744ac210e20dcd150aa07b8ac346439d942246fc874952583d54d98002076db6c15e0
Description
Opam-publish helps gather metadata to form an OPAM package and submit it to a remote repository.
README
opam-publish
A tool to ease contributions to opam repositories.
opam-publish
takes package definition files of your projects, and submits them to opam package repositories (ocaml/opam-repository by default).
Prerequisites
This version is for opam 2.0.0, and should not be used with repositories in older formats. A Github account is required.
Usage
Basic case, assuming your project is on Github
The same works for initial publications, new releases, and updates.
The following should be run from the source directory of your project
Make sure you have an
opam
file, orNAME.opam
files at the root of your projectCreate a tag:
git tag -a TAG; git push origin TAG
Run
opam publish
. This will install the tool if required.
You will be guided through the rest (creating a Github token the first time, reviewing the patch, etc.)
Additional possibilities
If your project is not on Github, you can specify the archive URL on the command-line.
If the opam files are not in the archive, or outdated, you can specify them on the command-line, or specify a directory where to look for them (e.g. opam publish URL .
).
Submitting to other repositories is possible, as long as they are on Github. See the --repo
option.
Updating already published packages is also allowed (as long as they don't use a files/
subdirectory)..
See opam publish --help
for more options.
Dependencies (10)
-
github-unix
build & >= "3.0.0" & < "4.3.0"
-
github
build & >= "2.0.0" & < "3.0.0"
-
tls
< "1.0.0"
- ssl
-
cmdliner
build
-
jbuilder
>= "1.0+beta19"
-
opam-state
build & >= "2.0.0" & < "2.1"
-
opam-format
build & >= "2.0.0" & < "2.1"
-
opam-core
build & >= "2.0.0" & < "2.1"
-
ocaml
>= "4.02.3"
Dev Dependencies
None
Used by (3)
-
dune-release
< "0.2.0"
-
publish
>= "0.3.4+transition"
-
spectrum
< "0.2.0"
Conflicts
None