-
Notifications
You must be signed in to change notification settings - Fork 1.1k
PR checks
Thomas Gazagnaire edited this page Feb 17, 2016
·
43 revisions
List of manual checks before merging a PR:
- the directory structure should follow
packages/$NAME/$NAME.$VERSION/
- the package name should not contain an
ocaml
suffix or prefix
- the first line of
descr
should be a valid short description. - the
descr
file should not contain typos
- the
url
file should contain a stable URL (ideally a tagged version, so notgit
, and notsha1
archives) - the
url
file should contain a (valid) checksum
- The
opam
file should have a valid maintainer (ideally, the name of the creator of the PR, and notcontact@ocamlpro.com
) - The
opam
file should have a sensibleremove
field (if it is a libraryocamlfind remove $LIB
). If the build system use.install
files, that's not necessary. - The
opam
file should not listoasis
as a dependency
- The Travis runs are expected to run for some time. If one of the run is successful but very short (few seconds) that's usually means that the package has been skipped. Need to report on the PR if a package is skipped on all OCaml versions, this is usually caused by version conflicts.
- If you are the first one to check the test runs and you see an error, try to copy/paste it back on the PR with a possible explanation on how to fix it.
- Keep an eye out for OPAM 1.2-specific warnings, or OPAM 1.1 invalid fields (they are yellow in the output)
- Check that the right version of the package is installed (it's tedious to check that on every OCaml version, so just pick a run on recent version: 4.01 or 4.02)
- If someone emits some doubts on a PR (by commenting, asking for clarification, etc), this someone should be the one clicking on the "merge" button.
Generally, we want the repository to be in a better quality over time. This means
- Improving the general tooling: CI scripts,
opam lint
,camelus
, etc.. - Improving the existing metadata: fixing
lint errors
, fixing incorrect constraints in bulk builds, etc..