caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Markus Mottl <markus.mottl@gmail.com>
To: Dario Teixeira <darioteixeira@yahoo.com>
Cc: OCaml mailing-list <caml-list@inria.fr>
Subject: Re: [Caml-list] OPAM conventions
Date: Wed, 12 Dec 2012 11:53:12 -0500	[thread overview]
Message-ID: <CAP_800pG6Cm0k1itg-KLdey_UAjUuUkvjVk7vdNcfPXTnC6RsA@mail.gmail.com> (raw)
In-Reply-To: <1355323620.61324.YahooMailNeo@web120404.mail.ne1.yahoo.com>

On Wed, Dec 12, 2012 at 9:47 AM, Dario Teixeira <darioteixeira@yahoo.com> wrote:
>   In my mind, there are only two sensible policies for naming OPAM packages:
>
>   a) OPAM packages should preserve the name of the original project.
>      Thus, if the project is named "ocaml-foo", the OPAM package will
>      also be "ocaml-foo".
>
>   b) OPAM packages should have the same name as the findlib entry.
>      If project "ocaml-foo" registers itself in findlib with name
>      "foo", then "foo" should also be the name of the OPAM package.
>
>    Good arguments can be made for and against each option.  Though this
>    is largely a bike-shedding issue, I think the community should make
>    a decision sooner rather than later.

I usually use the following naming conventions when releasing open
source libraries: if it is derived from some other (usually C-)
library, e.g. "pcre", then I add the suffix "-ocaml" to the
distribution file name to avoid confusing binary packagers.  I would
then release e.g. "pcre-ocaml-3.42.tar.gz".  If the library is not
derived from anything else, then the findlib name will be used to name
the distribution.  Findlib names should never have an "ocaml" suffix
or prefix, because it's clear that a findlib package is for OCaml
only.  Since OPAM is an OCaml tool, I'd suggest dropping the "ocaml"
suffixes or prefixes from its package names, too.

> 3) Package removal
>
>    For most values of "foo", package "foo" will just declare ["ocamlfind"
>    "remove" "foo"].  However, this approach seems a bit brittle to me.
>    If the Makefile supports "uninstall" (which is the usually the case
>    for OASIS packages), then I reckon that ["%{make}%" "uninstall"]
>    should be preferred.

That's a good question, which essentially boils down to how package
developers should specify configuring, building, installing, and
uninstalling packages.  I guess it would be healthy in the long term
to settle on a commonly used specification, possibly the Oasis format.
 One could then agree to always just call "configure" and "make" in
standardized ways under the assumption that these will behave as if
these scripts had been generated by Oasis (whether or not this is
actually the case).

> 4) Findlib dependency
>
>    Most packages do declare a dependency on ocamlfind.  However, this is
>    not universal, even for packages that do register themselves with findlib.
>    What should be the standard here: always declare a dependency, or omit
>    it altogether since it is implied?

I think findlib should be standard and implied as a dependency.  I
don't think people would be happy if forced to use libraries that
don't install with findlib.

Regards,
Markus

-- 
Markus Mottl        http://www.ocaml.info        markus.mottl@gmail.com

  reply	other threads:[~2012-12-12 16:54 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-12 14:47 Dario Teixeira
2012-12-12 16:53 ` Markus Mottl [this message]
2012-12-12 17:36 ` Anil Madhavapeddy
2012-12-12 18:01   ` Wojciech Meyer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAP_800pG6Cm0k1itg-KLdey_UAjUuUkvjVk7vdNcfPXTnC6RsA@mail.gmail.com \
    --to=markus.mottl@gmail.com \
    --cc=caml-list@inria.fr \
    --cc=darioteixeira@yahoo.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).