caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Anil Madhavapeddy <anil@recoil.org>
To: Alain Frisch <alain@frisch.fr>
Cc: "Daniel Bünzli" <daniel.buenzli@erratique.ch>,
	"Mirage List" <cl-mirage@lists.cam.ac.uk>,
	"Thomas Gazagnaire" <thomas@ocamlpro.com>,
	"OCaml mailing-list" <caml-list@inria.fr>,
	"Philippe Veber" <philippe.veber@gmail.com>
Subject: Re: Opam package publication (was Re: [Caml-list] [ANN] beta-release of OPAM)
Date: Tue, 22 Jan 2013 18:03:21 +0000	[thread overview]
Message-ID: <C5D1038B-6AE6-43B1-A50B-3C7653993597@recoil.org> (raw)
In-Reply-To: <50FEBFD4.9080004@frisch.fr>

On 22 Jan 2013, at 16:35, Alain Frisch <alain@frisch.fr> wrote:

> On 01/19/2013 11:40 AM, Daniel Bünzli wrote:
>> Yes, I know, that was not the point. I was proposing a lighter process for a package to be included in opam's default repository.
>> 
>> As Alain mentioned, the current process is rather involved for package developers --- but I disagree with his idea of an upload web interface.
>> 
>> The idea is that package developers publish repos with their work
> 
> Concretely, I guess that publish a repo means setting up a server somewhere.  I don't think that everyone can easily do that or want to invest so much effort only to submit a single package.
> 
> What's the benefit of the git/github submission workflow?  I don't immediately see how this is easier for people responsible of accepting/rejection packages than, say, something based on an upload interface (or even simpler, an email with an attachment).


Let's think through what an e-mail workflow might look like rather than just throwing it out as a superior alternative to what we use now.  Let's say it goes to an e-mail list, with a few people subscribed to it.  Then, someone adding the package would reply to the list saying that they'll handle it, and have to deal with it immediately and not get distracted.  Next, we have to convert the package into a Git commit with the submitter's name, so that we have a reasonable package history.  Finally, we need a queue of packages to track which ones haven't been replied to, or else risk forgetting packages.  And of course, anyone who wants to be involved has to subscribe to a mailing list, and the only way to find past submissions is by digging through e-mail archives.

Git/Github takes care of all this, to the point where a merge is a single button on the website.  Specifically, it:

- track provenance of updates (so we can go contact whoever introduced a package reliably, assuming their Github ID doesn't change).

- lets people maintain private branches outside of Github, and easily merge against upstream updates.  Citrix are doing this for their internal repositories, which they re-base against OPAM upstream, and then regularly submit their packages to the mainline once they're tested.  I also do this with Mirage.

- a public tracking system with comments to ensure packages don't get lost. I don't particularly fancy having my mailbox fill up with mailed tar-balls.

- an easy-to-use API that lets us run continuous build directly off Github.  I think of this as "Internet threads". A callback from Github wakes up an Lwt thread to do some work on the continuous build server. That's kind of cool :-)

It should be really trivial to build a package uploader using the OPAM extension mechanism I described earlier, and the ocaml-github bindings. If anyone wants to help add this, get in touch with me and I'll walk you through it.  My plate's a bit too full to get to this in the near-term.

-anil

  parent reply	other threads:[~2013-01-22 18:03 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-15 15:40 [Caml-list] [ANN] beta-release of OPAM Thomas Gazagnaire
2013-01-15 15:42 ` [Caml-list] " Anil Madhavapeddy
2013-01-15 16:17   ` Thomas Gazagnaire
2013-01-15 19:18     ` Alan Schmitt
2013-01-15 19:25       ` Fabrice Le Fessant
2013-01-15 19:29         ` Anil Madhavapeddy
2013-01-15 19:45           ` Roberto Di Cosmo
2013-01-15 21:12             ` Wojciech Meyer
2013-01-16 10:01               ` [Caml-list] " Anil Madhavapeddy
2013-01-16 10:08                 ` Wojciech Meyer
2013-01-16 12:13                   ` Gabriel Scherer
2013-01-16 14:43                     ` Wojciech Meyer
2013-01-16 14:50                       ` Gabriel Scherer
2013-01-16 17:27                 ` Fabrice Le Fessant
2013-01-16 17:40                   ` Thomas Gazagnaire
2013-01-16 17:46                     ` Fabrice Le Fessant
2013-01-16 20:22                       ` Roberto Di Cosmo
2013-01-15 20:02     ` [Caml-list] " Daniel Bünzli
2013-01-15 22:16       ` Thomas Gazagnaire
2013-01-15 17:45 ` [Caml-list] " Daniel Bünzli
2013-01-17  7:52   ` [Caml-list] " Sylvain Le Gall
2013-01-16 16:54 ` [Caml-list] " Mike Lin
2013-01-16 17:29   ` Daniel Bünzli
2013-01-17 17:15 ` Alain Frisch
2013-01-17 17:22   ` Anil Madhavapeddy
2013-01-18 10:31     ` Alain Frisch
2013-01-18 10:42       ` Anil Madhavapeddy
2013-01-18 10:46         ` Fabrice Le Fessant
2013-01-22 15:57           ` Thomas Gazagnaire
2013-01-18 11:19         ` Alain Frisch
2013-01-18 11:27           ` Anil Madhavapeddy
2013-01-18 16:23             ` Opam package publication (was Re: [Caml-list] [ANN] beta-release of OPAM) Daniel Bünzli
2013-01-19  9:07               ` Philippe Veber
2013-01-19 10:40                 ` Daniel Bünzli
2013-01-22 15:46                   ` Thomas Gazagnaire
2013-01-22 16:23                     ` Daniel Bünzli
2013-01-22 16:48                       ` Thomas Gazagnaire
2013-01-22 17:05                         ` Daniel Bünzli
2013-01-22 16:35                   ` Alain Frisch
2013-01-22 16:50                     ` Fabrice Le Fessant
2013-01-22 16:53                     ` Thomas Gazagnaire
2013-01-22 16:59                     ` Daniel Bünzli
2013-01-22 18:03                     ` Anil Madhavapeddy [this message]
2013-01-17 19:33 ` [Caml-list] Re: [ANN] beta-release of OPAM Hongbo Zhang
2013-01-18 12:18 ` [Caml-list] " aditya siram
2013-01-18 18:23   ` Thomas Gazagnaire

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=C5D1038B-6AE6-43B1-A50B-3C7653993597@recoil.org \
    --to=anil@recoil.org \
    --cc=alain@frisch.fr \
    --cc=caml-list@inria.fr \
    --cc=cl-mirage@lists.cam.ac.uk \
    --cc=daniel.buenzli@erratique.ch \
    --cc=philippe.veber@gmail.com \
    --cc=thomas@ocamlpro.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).