From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by sympa.inria.fr (Postfix) with ESMTPS id 2B98A7F257 for ; Wed, 12 Dec 2012 17:54:37 +0100 (CET) Received-SPF: None (mail4-smtp-sop.national.inria.fr: no sender authenticity information available from domain of markus.mottl@gmail.com) identity=pra; client-ip=209.85.212.182; receiver=mail4-smtp-sop.national.inria.fr; envelope-from="markus.mottl@gmail.com"; x-sender="markus.mottl@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail4-smtp-sop.national.inria.fr: domain of markus.mottl@gmail.com designates 209.85.212.182 as permitted sender) identity=mailfrom; client-ip=209.85.212.182; receiver=mail4-smtp-sop.national.inria.fr; envelope-from="markus.mottl@gmail.com"; x-sender="markus.mottl@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail4-smtp-sop.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-wi0-f182.google.com) identity=helo; client-ip=209.85.212.182; receiver=mail4-smtp-sop.national.inria.fr; envelope-from="markus.mottl@gmail.com"; x-sender="postmaster@mail-wi0-f182.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ArQFAFi2yFDRVdS2/2dsb2JhbABFrEKSSwgWc4IeAQEEAUABFAcdAQMBCwYFCw0uIQEBEQEFAQoSBhMIDIdqAQMJBp8ijDOCe4UNChknDVmIdgEFDItWaYRDA4hgi1MEgVKLN4MxFimBIYMR X-IronPort-AV: E=Sophos;i="4.84,267,1355094000"; d="scan'208";a="165635725" Received: from mail-wi0-f182.google.com ([209.85.212.182]) by mail4-smtp-sop.national.inria.fr with ESMTP/TLS/RC4-SHA; 12 Dec 2012 17:54:12 +0100 Received: by mail-wi0-f182.google.com with SMTP id hn14so763549wib.9 for ; Wed, 12 Dec 2012 08:53:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=HkHyOxLnrPwijNu++JgDFmzDeyPnoOR0Klrd7W6PpVY=; b=Ect+F6ohBMVNeC30qvOuWdeUlJK4haJ+nAAeIXRk/5EK+RJ2Wrxc0EU+3MwHkP6caN tbdpdaP/kLI2p60MuAus0tjoNvIQ61oL9ibtgFbo0sbJd3q+b1u0HB3DWHUvG8KnTQeB BeiGe2auf67Rs/Fa00NuEXlNaHUhIUn1BeaME02vTZJfqyMAIZNmcynvWMEJN6z/8iP7 Je0L1Wm1+NTv1UkwOkdXIMbuZyhusYwn5kEeSPVpvJ5FfgxGVgrIJfWADiMYYS8hT5UB fIjeVqXnFy7rEuq5kogE+uQGQzjfOsoIurlBFJXXRNR0u/RUkgli8CNyTxe35qLTYTH4 9tVw== MIME-Version: 1.0 Received: by 10.180.33.202 with SMTP id t10mr3043326wii.3.1355331192514; Wed, 12 Dec 2012 08:53:12 -0800 (PST) Received: by 10.180.93.36 with HTTP; Wed, 12 Dec 2012 08:53:12 -0800 (PST) In-Reply-To: <1355323620.61324.YahooMailNeo@web120404.mail.ne1.yahoo.com> References: <1355323620.61324.YahooMailNeo@web120404.mail.ne1.yahoo.com> Date: Wed, 12 Dec 2012 11:53:12 -0500 Message-ID: From: Markus Mottl To: Dario Teixeira Cc: OCaml mailing-list Content-Type: text/plain; charset=ISO-8859-1 Subject: Re: [Caml-list] OPAM conventions On Wed, Dec 12, 2012 at 9:47 AM, Dario Teixeira 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