From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Juanma Barranquero Newsgroups: gmane.emacs.devel Subject: Re: trunk r115926: In preparation for the move to git, sanitize out some Bazaar-specific names. Date: Thu, 9 Jan 2014 10:36:45 +0100 Message-ID: References: <56y52qcbbh.fsf@fencepost.gnu.org> <20140108233424.GA15258@thyrsus.com> <20140109000406.GA22775@thyrsus.com> <87mwj6f23d.fsf@bzg.ath.cx> <20140109002754.GA22950@thyrsus.com> <20140109012554.GA23333@thyrsus.com> <20140109052705.GA3424@thyrsus.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-Trace: ger.gmane.org 1389260250 19250 80.91.229.3 (9 Jan 2014 09:37:30 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 9 Jan 2014 09:37:30 +0000 (UTC) Cc: Bastien , Emacs developers To: Eric Raymond Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Jan 09 10:37:35 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1W1C3S-0002iR-08 for ged-emacs-devel@m.gmane.org; Thu, 09 Jan 2014 10:37:34 +0100 Original-Received: from localhost ([::1]:50916 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W1C3R-0005wO-8b for ged-emacs-devel@m.gmane.org; Thu, 09 Jan 2014 04:37:33 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:53616) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W1C3O-0005wB-17 for emacs-devel@gnu.org; Thu, 09 Jan 2014 04:37:31 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W1C3M-0006u0-Lf for emacs-devel@gnu.org; Thu, 09 Jan 2014 04:37:29 -0500 Original-Received: from mail-ee0-x22e.google.com ([2a00:1450:4013:c00::22e]:47546) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W1C3K-0006sZ-Jk; Thu, 09 Jan 2014 04:37:26 -0500 Original-Received: by mail-ee0-f46.google.com with SMTP id d49so1170116eek.5 for ; Thu, 09 Jan 2014 01:37:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=6vbN/dZ7uyp1Dh8FUTeTLgbVDaT7iIOjGaFCrDp8nQ0=; b=HV1/TArXvNrghoJkBRqbiCdqxUH6y5yWoW+d6eliLHDDMqBDqYJp2cyNuugfC017j4 oiG3R7Ob2tOWhQ6mhHYQBWG4oh2iIiEIvJCubfCrojO98l8Koyq/kPWHMf2nIravdo9c R74eKY+eyMSbkmNe+i0xBvv6Gne8uH9WqBC+5Q2P7ixcohOIxIeVTUcVXtMHzJHyyk/E onSLOLh/PYIO7cVuSqEZW3tGI5yj+pIrf/5ig+JnGOz0iHBP02LsoZLH6KGYrPUvgHPd B/exQYCv+IwuSHMS2cQD0MqprRHp2VNvDLDIPCa2k1zNBSAmxaVdb8+ajCDUaroEE1rD zXEA== X-Received: by 10.15.45.67 with SMTP id a43mr2310993eew.17.1389260245487; Thu, 09 Jan 2014 01:37:25 -0800 (PST) Original-Received: by 10.14.209.69 with HTTP; Thu, 9 Jan 2014 01:36:45 -0800 (PST) In-Reply-To: <20140109052705.GA3424@thyrsus.com> X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2a00:1450:4013:c00::22e X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:167877 Archived-At: On Thu, Jan 9, 2014 at 6:27 AM, Eric S. Raymond wrote: > When we change > over to git, there won't be a local revision number because there is > no such entity in the git universe. This can't be fixed by anything > in the way our LISP is named or factored. True. > You're making a good case for removing the obsolete alias. No. I'm making a case for keeping both variables (and functions) different. You've rushed a bit with the change, and currently, if you remove the alias, you'll break my code**. The logical things would be to keep emacs-bzr(-get)-version as they were, because we *are* still using Bazaar, and when we switch, or just a bit before, you introduce your new API (with "repository" or "git" names, to your liking) and make the old ones obsolete, but *not* obsolete aliases. **[It's broken right now, in fact; I also use emacs-bzr-get-version from my .emacs] > It might, if we were going to use two VCSes in parallel. That's not > the case. Where the rubber meets the road is: What should emacs-bug call to > get a build version to report? There can be only one... Yes. Currently, it's Bazaar that we are using. After the switch, it should call your function. Having the two (but one pair as obsolete non-aliases) does not depend of using two VCSes in parallel, depends that the fact that you're changing an already published API. So you have to make it obsolete, and it cannot be an alias of the new one because both aren't compatible. > The implementation, no. But the behavior "return a unique magic cookie > that identifies the build" is DVCS-independent. You're feeling pain > because you want the magic cookie to have substructure, and *that* > can't be guaranteed across VCSes. Eric, the behavior of the old emacs-bzr(-get)-version was not to "return a unique magic cookie that identifies the build". I am not using the revno because I wanted to do weird things with the cookie. It was *documented* as having structure and I used that fact; it's your commits which have changed it, so you're effectively changing that interface. Which it's perhaps the right thing to do (or not, depending of what the cookie has I will still extract information from it, so documenting it would be nice), but you shouldn't rewrite the past. So, to summarize, I think the right thing to do is: 1.- Restore emacs-bzr(-get)-version, with docstring and all. 2.- (Keep, if you want, your new and currently useless emacs-revision(-get)-version API) 3.- Just after the switch, make obsolete the old pair with (make-obsolete 'emacs-bzr-get-version 'emacs-repository-get-version "24.4") (make-obsolete-variable 'emacs-bzr-version 'emacs-repository-version "24.4") J