From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: * X-Spam-Status: No, score=1.2 required=5.0 tests=RCVD_IN_SORBS_WEB autolearn=disabled version=3.1.3 Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by yquem.inria.fr (Postfix) with ESMTP id AA692BC69 for ; Tue, 15 Jan 2008 21:56:26 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ao8CADasjEfY2tfi/2dsb2JhbACrcw X-IronPort-AV: E=Sophos;i="4.24,289,1196636400"; d="scan'208";a="6086776" Received: from tail.lionet.info ([216.218.215.226]) by mail2-smtp-roc.national.inria.fr with ESMTP; 15 Jan 2008 21:56:19 +0100 Received: from [10.72.109.162] (nat-dip4.corp.yahoo.com [207.126.230.225]) (authenticated bits=0) by tail.lionet.info (8.13.8/8.13.6) with ESMTP id m0FKuIOk014907 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Tue, 15 Jan 2008 12:56:19 -0800 (PST) (envelope-from vss@73rus.com) Message-ID: <478D1DED.2050500@73rus.com> Date: Tue, 15 Jan 2008 12:56:13 -0800 From: Vlad Skvortsov User-Agent: Thunderbird 1.5.0.13 (Macintosh/20070809) MIME-Version: 1.0 To: =?ISO-8859-1?Q?B=FCnzli_Daniel?= Cc: caml-list caml-list Subject: Re: [Caml-list] Re: On module distribution References: <92920466-3BCE-4A9F-9742-3396B07006F7@erratique.ch> <886B7896-B0EA-417A-99A9-DCB791FF09C7@erratique.ch> In-Reply-To: <886B7896-B0EA-417A-99A9-DCB791FF09C7@erratique.ch> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (tail.lionet.info [216.218.215.226]); Tue, 15 Jan 2008 12:56:19 -0800 (PST) X-Spam: no; 0.00; bunzli:01 berke:01 durak:01 ocamlfind:01 ocamlfind:01 compilation:01 tarballs:01 tarball:01 ocaml:01 tarball:01 vlad:98 rus:98 mitigate:98 vlad:98 rus:98 Bünzli Daniel wrote: > Le 15 janv. 08 à 14:38, Berke Durak a écrit : > >> I think we should rather add to Ocamlbuild a module for calling >> ocamlfind, parsing its output, etc. This way ocamlbuild plugins could >> easily call ocamlfind, be it for configuration or compilation. > > My problem with ocamlfind is that it takes too much control over me. > Also it doesn't help you with the tedious publishing aspect (which I > try to mitigate by using news feeds) and it won't help you with the > binary update problem. > > Le 15 janv. 08 à 16:07, Sylvain Le Gall a écrit : > >> Unfortunately, a decentralized system has also several drawbacks: > [...] > > Yes of course. But the point is that we already have a decentralized > system. All these tarballs that are referenced from the hump and not > part of godi. My aim is to be able to quickly install or publish such > decentralized bits. Currently these two tasks take too much time: > using them, because everyone does it its own way, publishing them, > because you have to devise your own way (make a readme, think about > how to structure the tarball how to manage releases, announce on the > mailing list, etc.). The idea is to simplify all this uninteresting > business to entice people to share their modules. Lowering the bar may > mean a decrease in quality but in the end good modules and reliable > publishers will be identified by the community. > > Also note that the proposal in itself doesn't prevent the development > of a more authoritative, centralized and stable source of packages. I've just started with OCaml, and my immediate perception was that modules and libraries are quite hard to find. This is due to several factors, one being that the web interface for Hump doesn't allow complex searches and stuff, doesn't offer RSS to keep track of updates, etc. Did you guys look at how this problem is solved in Python? There is a standard library module which allows one to write a package metadata in a "minilanguage". Then once the metadata is there, it's possible to use that for packaging (again, through the standard utility) and/or to update the centralized package index (pypi.python.org). It is as easy as: # Create metadata, listing files included into the package and some mandatory fields like version, homepage, author, keywords, etc. $ vi setup.py # Create a tarball for source distribution $ python setup.py sdist # ...or a binary distribution $ python setup.py bdist # Now tell the world we have a new package here $ python setup.py register More information here: http://docs.python.org/dist/setup-script.html My 0.02. -- Vlad Skvortsov, vss@73rus.com, http://vss.73rus.com