From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jambunathan K Subject: Version string (was Re: ELPA Howto) Date: Tue, 05 Oct 2010 16:39:35 +0530 Message-ID: <814od06gls.fsf_-_@gmail.com> References: <81pqvvofgz.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from [140.186.70.92] (port=41518 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1P35aJ-0008H7-E3 for emacs-orgmode@gnu.org; Tue, 05 Oct 2010 07:21:38 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1P35PB-0003Gy-1g for emacs-orgmode@gnu.org; Tue, 05 Oct 2010 07:09:58 -0400 Received: from mail-px0-f169.google.com ([209.85.212.169]:56642) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1P35PA-0003Gs-SH for emacs-orgmode@gnu.org; Tue, 05 Oct 2010 07:09:57 -0400 Received: by pxi5 with SMTP id 5so4047286pxi.0 for ; Tue, 05 Oct 2010 04:09:56 -0700 (PDT) In-Reply-To: (Carsten Dominik's message of "Mon, 4 Oct 2010 15:39:02 +0200") List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Carsten Dominik Cc: emacs-orgmode@gnu.org In the context of ELPA packages, I think there might be a need to revisit how orgmode's version string is defined. For example, 7.01h wouldn't be successfully parsed by (version-to-list ...) which the package manager uses internally. So 7.01h could be mapped to 7.0.1.8 or 7.1.8. ,----[ C-h f version-to-list RET ] | version-to-list is a compiled Lisp function in `subr.el'. | | (version-to-list VER) | | Convert version string VER into an integer list. | | The version syntax is given by the following EBNF: | | VERSION ::= NUMBER ( SEPARATOR NUMBER )*. | | NUMBER ::= (0|1|2|3|4|5|6|7|8|9)+. | | SEPARATOR ::= `version-separator' (which see) | | `version-regexp-alist' (which see). | | The NUMBER part is optional if SEPARATOR is a match for an element | in `version-regexp-alist'. | | As an example of valid version syntax: | | 1.0pre2 1.0.7.5 22.8beta3 0.9alpha1 6.9.30Beta | | As an example of invalid version syntax: | | 1.0prepre2 1.0..7.5 22.8X3 alpha3.2 .5 | | As an example of version convertion: | | String Version Integer List Version | "1.0.7.5" (1 0 7 5) | "1.0pre2" (1 0 -1 2) | "1.0PRE2" (1 0 -1 2) | "22.8beta3" (22 8 -2 3) | "22.8Beta3" (22 8 -2 3) | "0.9alpha1" (0 9 -3 1) | "0.9AlphA1" (0 9 -3 1) | "0.9alpha" (0 9 -3) | | See documentation for `version-separator' and `version-regexp-alist'. | | [back] `---- Jambunathan K.