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 A6C9A4196F0 for ; Wed, 7 Apr 2010 15:27:06 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at olra.theworths.org X-Spam-Flag: NO X-Spam-Score: -2.89 X-Spam-Level: X-Spam-Status: No, score=-2.89 tagged_above=-999 required=5 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, T_MIME_NO_TEXT=0.01] autolearn=ham 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 3RooWtY0rS7T; Wed, 7 Apr 2010 15:27:05 -0700 (PDT) Received: from yoom.home.cworth.org (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id D632D431FC1; Wed, 7 Apr 2010 15:27:05 -0700 (PDT) Received: by yoom.home.cworth.org (Postfix, from userid 1000) id 9760025400C; Wed, 7 Apr 2010 15:27:05 -0700 (PDT) From: Carl Worth To: Michal Sojka , Sebastian Spaeth , notmuch@notmuchmail.org Subject: Re: [PATCH] Derive version numbers from git In-Reply-To: <87ochw7e8f.fsf@steelpick.2x.cz> References: <87hbnpo1yu.fsf@yoom.home.cworth.org> <87y6h16lun.fsf@steelpick.2x.cz> <87pr2c7pm1.fsf@SSpaeth.de> <87ochw7e8f.fsf@steelpick.2x.cz> Date: Wed, 07 Apr 2010 15:27:05 -0700 Message-ID: <871veqrj9i.fsf@yoom.home.cworth.org> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha1; protocol="application/pgp-signature" 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: Wed, 07 Apr 2010 22:27:06 -0000 --=-=-= Content-Transfer-Encoding: quoted-printable On Tue, 06 Apr 2010 18:11:28 +0200, Michal Sojka wrot= e: > On Tue, 06 Apr 2010, Sebastian Spaeth wrote: > > > But, there are people without git installed that download the release > > tarball. So if this patch makes it, we need to replace this with a > > static version number when baking a release tar. >=20 > Right, here is an updated patch. It's more complicated than the previous > one, but it solves the issue. I like this idea, definitely. But the other piece needed here is a way for me to be able to specify a version in order to release. In my current release instructions (notmuch/RELEASING) I do that by manually incrementing the version number in the Makefile. Then a tag is created later when the "make release" target runs. It would be possible for me to instead create the tag to specify the version, but there's a few things I don't like about this: 1. After I increment the version number (early in the release process) I often find one or two little things I need to change to make the release perfect. So there are likely more commits later, but I obviously don't want some git-describe version to end up in the final tar file. 2. I don't actually want to create a tag, (I *especially* don't want to push it), until the release actually happens. That's the point of the tag in my view, (to say "*this* is what I released"), so making the tag early seems wrong, (and leaves the door open to make mistakes). Any suggestion for this part? > +include Makefile.version > + > +.PHONY: Makefile.version > +Makefile.version: > + echo VERSION=3D$(if $(wildcard version),`cat version`,`git describe --d= irty`) > $@ Could that be simplified to just use $(shell) rather than a separate file and an include? I suppose what we could do is to just have the creation of the version file be part of the release process. That would be simple enough. Then we could drop this rule: > +version: > + git describe > $@ What do you think? =2DCarl --=-=-= Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) iD8DBQFLvQa56JDdNq8qSWgRAvdeAJ9LL2MhXC1yl6h2M3p9u9cOKxmG9wCfVdBy Me31xsB+SIl96YMKaWDrfJI= =nUAo -----END PGP SIGNATURE----- --=-=-=--