Return-Path: X-Original-To: notmuch@notmuchmail.org Delivered-To: notmuch@notmuchmail.org Received: from localhost (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id 1A714431FBF for ; Thu, 8 May 2014 16:35:36 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at olra.theworths.org X-Spam-Flag: NO X-Spam-Score: -0.1 X-Spam-Level: X-Spam-Status: No, score=-0.1 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001] autolearn=disabled Received: from olra.theworths.org ([127.0.0.1]) by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id I730R8ovzKlO for ; Thu, 8 May 2014 16:35:32 -0700 (PDT) Received: from qmta02.westchester.pa.mail.comcast.net (qmta02.westchester.pa.mail.comcast.net [76.96.62.24]) by olra.theworths.org (Postfix) with ESMTP id B99C4431FAE for ; Thu, 8 May 2014 16:35:32 -0700 (PDT) Received: from omta21.westchester.pa.mail.comcast.net ([76.96.62.72]) by qmta02.westchester.pa.mail.comcast.net with comcast id zay51n0021ZXKqc51bbYjP; Thu, 08 May 2014 23:35:32 +0000 Received: from odin.tremily.us ([24.18.63.50]) by omta21.westchester.pa.mail.comcast.net with comcast id zbbX1n00T152l3L3hbbYD0; Thu, 08 May 2014 23:35:32 +0000 Received: by odin.tremily.us (Postfix, from userid 1000) id F0F1A119462C; Thu, 8 May 2014 16:35:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tremily.us; s=odin; t=1399592130; bh=aRdBuS6FLx5bdsHswaQ01NtySi9LTBtp5JFUeWfk2KM=; h=Date:From:To:Subject:References:In-Reply-To; b=i+tcxvL+w49NyimtEeGfPYri6u8F4s2OTMBBL1ICzyw/RSf7/Wlot6/Y9OZpVPh78 Mg1jyhA86nx+2Yp5P456jlWlUfE+Bw5NhICL+lfl7Fob66rbqr2j4/xF23Zou0OZEr cOPIesAL0VPlmSswqkZXN8mNit/GntrpRhrntBK0= Date: Thu, 8 May 2014 16:35:30 -0700 From: "W. Trevor King" To: notmuch@notmuchmail.org Subject: Re: Submodules for language bindings (was: Github?) Message-ID: <20140508233530.GV28634@odin.tremily.us> References: <87iopgkaiz.fsf@nikula.org> <20140508101325.GC23124@vilya.m0g.net> <20140508203019.GA2374@chitra.no-ip.org> <20140508212100.GD23124@vilya.m0g.net> <20140508220046.GB2374@chitra.no-ip.org> <20140508222931.GU28634@odin.tremily.us> <20140508224527.GC2374@chitra.no-ip.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="/neOAU127r7zg3jS" Content-Disposition: inline In-Reply-To: <20140508224527.GC2374@chitra.no-ip.org> OpenPGP: id=39A2F3FA2AB17E5D8764F388FC29BDCDF15F5BE8; url=http://tremily.us/pubkey.txt User-Agent: Mutt/1.5.23 (2014-03-12) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net; s=q20140121; t=1399592132; bh=iRsOfteew/yMq/Y1osERG8OqsMdNztP7WabGKVazlZg=; h=Received:Received:Received:Date:From:To:Subject:Message-ID: MIME-Version:Content-Type; b=OWQ5wt9YGC3xxtcL8sXdTqF8z0IERhJ3O1w7yhoT/eGiKnah12ppAWiP+vLMH2EU1 l759Ter968dU/T50zvIp0xdTYbQkAkla7AkG51WIvifbeq5hL+dzdiJ7MnF/cmJPZ4 5KHGmLIhuIklrbm+kspvWBNPJxGxWTN5x7nA1uewzWO8C3N1KPHlktqwnXHhaa6TaM 4yx25T73lUCBhCCLU5LYmIKZbus9677l540YP/TWKQecYxbGIgehSeDQu85BcgGtrQ +OxDamc45s3rCAs73+LHCJNxGLND72O2uYe1YGHCFxGffEbJtTyQqBKH1Z/KTDAUrc 1oDXw38PUlvmA== X-BeenThere: notmuch@notmuchmail.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 May 2014 23:35:36 -0000 --/neOAU127r7zg3jS Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, May 09, 2014 at 12:45:27AM +0200, Suvayu Ali wrote: > On Thu, May 08, 2014 at 03:29:31PM -0700, W. Trevor King wrote: > > On Fri, May 09, 2014 at 12:00:46AM +0200, Suvayu Ali wrote: > > > One of my TODOs is to also package the ruby bindings, and > > > notmuch-vim. The only thing preventing me now is my > > > unfamiliarty with ruby, and Fedora packaging guidelines for > > > ruby-gems. > >=20 > > I think this is one argument argument in favor of submodules, > > because they make it easy to treat the bindings as separate > > packages. Once you have separate packages, it's easy to delegate > > packaging (e.g. =E2=80=9CI don't use the Ruby bindings, so I'm not going > > to maintain the Ruby-binding package. I'll leave that to Alice, > > who likes Ruby, but is less familiar with $distro's Python > > packaging=E2=80=9D). >=20 > Well as far as my understanding of rpm goes, sub-packages are > prefered here rather than independent packages. I believe the > reason is again easier dependency tracking[1]; all sub-packages > share the same source rpm, so no explicit `Requires' in the spec > file. It looks like sub-packages share a single spec file with the main package [1]. That means you'll have to have authors with the full range of binding-language expertise to bump that spec file (assuming there are any changes that require bumps). For example, Gentoo's Python eclasses have gone through a few revisions in the last year or two, and I wouldn't expect one person to stay on top of the latest packaging styles for every language with notmuch bindings. I think the benefit of having separate packages (and spec files, or ebuilds, or whatever) is that you can release notmuch-0.18 without worrying about all those bindings, and leave it to the other maintainers (who might include you) to independently package notmuch-python-0.18, notmuch-ruby-0.18, notmuch-go-0.18, =E2=80=A6. With only three sets of bindings, it doesn't really matter, but I think you'll want the weaker coupling of stand-alone packages by the time you hit a dozen languages. =E2=80=9CBump an explicit 'Requires'=E2=80=9D certainly seems l= ike a lower barrier than =E2=80=9Cpackage Go bindings idiomatically for Fedora=E2=80=9D= ;). Cheers, Trevor [1]: http://www.rpm.org/max-rpm/ch-rpm-subpack.html --=20 This email may be signed or encrypted with GnuPG (http://www.gnupg.org). For more information, see http://en.wikipedia.org/wiki/Pretty_Good_Privacy --/neOAU127r7zg3jS Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iQIcBAEBAgAGBQJTbBTAAAoJEKKfehoaNkbtjg4P/jSgmNZbgGA8Br8BfeG0E67f aDGqCJZdl07/oo943s+OEkFKUIKvkt/meMOW2117ULR8S9I5khhU579Ni6o0XFHG dPWVDt62cbK6DSdywnk/QfVuZQCQI89q2sfqo8HCdTmyj2FNw2iqP46UJ3pGKNe1 UB06jSqZzlSO+GNwXRw20XuIL6kxgksB6dfWFOx0vGFx9XquCQjh7MWAUdk1c+JO U+y8xbWLCTFRFuxwFxmr/8qdSqhg0Ju9aLEhJ/eHXgjIuvL98epRSG02cddqsp5t nFfA+UVDrHnPZEmy6YavIuv9Jvp44nq+HIlgVwnt1/OjGtl74a3tfYjQ5wPh93dD Mc4H48RAurHZu1PkmSlaze9ihluOl7uurg0maGkXj9wVJ0xK6BzKcDape8oZFJnb Zyvz2sZAMS9Md/3vJ/8Do4M6EYUQp8PmTZ28n3WZp0jcOdCG+RRf4/G3jihC208C fSuto8HNruv3tRjzZuVprsaoWTnRoGjIdonM6C1yffGAmGb4lPtGjcxjCLLbFam/ v1CuMm/jEgBoPosS4o2J7NBXH6owpvY5VAfCSH+gchpCFZvk3h4+3HOJNa000lqv 5EoFOwNbyT/Jhe1FaLS0zFEsOVtmm23AGw4E7VHH3JjyMHCh1F99hFVycuoRdBFi 0TGR0xW/d9Rda6HtIk2+ =watZ -----END PGP SIGNATURE----- --/neOAU127r7zg3jS--