public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: Ciaran McCreesh <ciaran.mccreesh@googlemail.com>
To: gentoo-dev@lists.gentoo.org
Subject: Re: versionator.eclass terminator, was [gentoo-dev]  Re: GLEP 55 updated
Date: Mon, 18 May 2009 16:33:44 +0100	[thread overview]
Message-ID: <20090518163344.5b5aa8ee@snowcone> (raw)
In-Reply-To: <20090518172800.7576c34a@epia.jer-c2.orkz.net>

[-- Attachment #1: Type: text/plain, Size: 2054 bytes --]

On Mon, 18 May 2009 17:28:00 +0200
Jeroen Roovers <jer@gentoo.org> wrote:
> On Mon, 18 May 2009 16:16:46 +0100
> Ciaran McCreesh <ciaran.mccreesh@googlemail.com> wrote:
> > Why do you think I wrote the awful hack that is versionator?
> 
> Why don't you explain why, historically, you put that in the tree? It
> would help us now if you were to simply record your mistakes for
> everybody else to easily avoid. It's still being used in the tree and
> should be discouraged.

Versionator was created because the alternative was worse: developers
were hard-coding versions in ebuilds, writing dodgy bash substitutions
that wouldn't reliably convert between versions and using things like
sed and tr in global scope.

The problem is, versionator was written before the current version
rules. It doesn't handle some things that are now legal, and it still
uses the old meanings for numeric components.

The correct solution is two-fold:

* Replace versionator with package-manager internal functions that use
  the package manager's rules for version parsing.

* Reduce the need to use MY_PV by extending the version rules.

Both of these are things that can't be done with current EAPI rules.

> > Anything that finally lets us kill that off has to be good...
> 
> Loosening VERSION requirements won't fix the problem. This will:
> 
> 1) Discourage its use by putting a QA ewarn in the eclass.
> 2) Have all ebuilds converted either through QA bugs or a nice
> Saturday afternoon coding spree.
> 3) Announce its removal.
> 4) Remove.

You can't discourage versionator until the replacement's in place.
Going back to the old way of doing things is a loooooot worse than
using versionator. So no, the way to fix it is:

1) Change the EAPI rules to allow global scope and version suffix
changes.

2) Bring in a versionator replacement done as internals in a new EAPI.

3) Extend the version format rules in a new EAPI.

4) Disallow versionator use in the first EAPI that has 2) and 3).

-- 
Ciaran McCreesh

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

  reply	other threads:[~2009-05-18 15:33 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-05-17 15:56 [gentoo-dev] GLEP 55 updated Piotr Jaroszyński
2009-05-17 16:06 ` Peter Alfredsen
2009-05-17 17:24   ` Nirbheek Chauhan
2009-05-17 18:47     ` Peter Alfredsen
2009-05-17 16:20 ` Denis Dupeyron
2009-05-17 17:20   ` Ulrich Mueller
2009-05-17 17:39     ` Jorge Manuel B. S. Vicetto
2009-05-17 17:43       ` Markos Chandras
2009-05-17 17:44       ` Joe Peterson
2009-05-17 21:17       ` Ben de Groot
2009-05-17 21:20         ` Ciaran McCreesh
2009-05-17 22:04           ` Joe Peterson
2009-05-18 15:07             ` [gentoo-dev] " Steven J Long
2009-05-18 15:16               ` Ciaran McCreesh
2009-05-18 15:28                 ` versionator.eclass terminator, was " Jeroen Roovers
2009-05-18 15:33                   ` Ciaran McCreesh [this message]
2009-05-18 15:42                   ` Robert Buchholz
2009-05-18 15:45                     ` Ciaran McCreesh
2009-05-18 15:30                 ` Joe Peterson
2009-05-17 22:08           ` [gentoo-dev] " Ben de Groot
2009-05-17 22:11             ` Ciaran McCreesh
2009-05-17 22:54               ` Ulrich Mueller
2009-05-17 22:58                 ` Ciaran McCreesh
2009-05-17 23:11                   ` Ulrich Mueller
2009-05-17 23:16                     ` Ciaran McCreesh
2009-05-17 23:30                       ` Ulrich Mueller
2009-05-17 23:33                         ` Ciaran McCreesh
2009-05-17 23:43                           ` [gentoo-dev] GLEP 54 and hyphens in PV (was: GLEP 55 updated) Ulrich Mueller
2009-05-17 23:49                             ` Ciaran McCreesh
2009-05-18  4:59                               ` [gentoo-dev] GLEP 54 and hyphens in PV Ulrich Mueller
2009-05-18 14:13                                 ` Ciaran McCreesh
2009-05-19 17:01                                   ` Ulrich Mueller
2009-05-19 17:59                                     ` Joe Peterson
2009-05-19 19:01                                     ` Kent Fredric
2009-05-28  7:59                                     ` Tiziano Müller
2009-05-28 10:54                                       ` Ulrich Mueller
2009-05-28 11:10                                         ` Piotr Jaroszyński
2009-05-28 15:13                                           ` Marijn Schouten (hkBst)
2009-05-28 15:55                                             ` Piotr Jaroszyński
2009-05-17 22:15             ` [gentoo-dev] GLEP 55 updated David Leverton
2009-05-18 15:28               ` [gentoo-dev] " Steven J Long
2009-05-18 15:58                 ` David Leverton
2009-05-17 17:36   ` [gentoo-dev] " Joe Peterson
2009-05-17 18:15 ` [gentoo-dev] " Ryan Hill
2009-05-17 18:17   ` Piotr Jaroszyński
2009-05-17 18:18   ` Ciaran McCreesh
2009-05-17 18:59     ` Ryan Hill
2009-05-17 18:40 ` [gentoo-dev] " Thomas de Grenier de Latour
2009-05-17 18:47   ` Ciaran McCreesh
2009-05-17 19:57     ` Thomas de Grenier de Latour
2009-05-17 20:20       ` Ciaran McCreesh
2009-05-17 18:57 ` Robert Buchholz
2009-05-17 19:31   ` Arfrever Frehtes Taifersar Arahesis
2009-05-17 19:33   ` Piotr Jaroszyński
2009-05-17 19:25 ` [gentoo-dev] " Piotr Jaroszyński

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090518163344.5b5aa8ee@snowcone \
    --to=ciaran.mccreesh@googlemail.com \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox