public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: Steve Long <slong@rathaus.eclipse.co.uk>
To: gentoo-dev@lists.gentoo.org
Subject: [gentoo-dev]  Re: [GLEP] scm package version suffix
Date: Tue, 11 Dec 2007 00:27:11 +0000	[thread overview]
Message-ID: <fjkl7q$h3a$1@ger.gmane.org> (raw)
In-Reply-To: 8b4c83ad0712101144x19e75accm7845221977a6a73f@mail.gmail.com

Nirbheek Chauhan wrote:

> On Dec 10, 2007 8:44 PM, Robert Buchholz <rbu@gentoo.org> wrote:
>> That would still mean everything relies on n ebuilds with mutual blocks.
>> Even if that would work and it block upgrades, it is still not a
>> solution in terms of how to display a list of ebuilds in one tree in an
>> ordered list.
> 
> The mutual blocks can be via the very nature of the name of the ebuild
> (ie, the scm_bbranch), and not via unmaintainable dep blocks in the
> ebuilds. This could be similar to the way SLOTS are handled. In fact,
> as Donnie and Santiago discussed in the other "branch string" thread,
> the concept of SLOTS could be extended to branches with no concept of
> an "upgrade" between them, and them being mutually blocking and
> perhaps blocking the actual package as well.
> Of course this could be extended to apply only to branch ebuilds
> without a version number (where you don't know when the branch will be
> merged), etc.
>
This makes a lot of sense to me.

If different branches of a vcs build are to come into the tree, it only
makes sense they block the main package and each other. Handling that
within the package manager makes sense, since it's information that can be
derived automatically. At a later stage one can envisage branches being
installed to their own prefixes.

>> You are right. But this just shows that named feature branches do not
>> fit the context of this GLEP, as you usually cannot know when a feature
>> will be merged at the time one version is branched.
> 
> Completely removing the concept of an "upgrade" from (unversioned?)
> branch ebuilds and making them block all other versions of the package
> will give the task of knowing when a feature has been merged to the
> user itself. Which is after all what one does manually while working
> on branches.
> 
++

I don't find the argument for versioning the scm live ebuild compelling.
The point wrt comparison, ie foo-1-scm is < 2.0.1, doesn't seem enough; it'd
be better to slot that imo, and have a slot identifier[1] in the existing
cvs digit space. You could still have gtk-1-cvs, for example, for packages
where slots don't work.

I prefer the way it works now; SLOT and cvs compares later than any other
version in the same slot. (I agree the name is misleading and prefer vcs
since it collides less than other options.)

foo-vcs-rN    # standard vcs (i prefer the explicit 0 of current spec)
foo-vcsN-rN   # slotted pkg
foo-vcs_branch_FOO-rN # branch
foo-vcsN_branch_STRING-rN

..make sense[2] and cover all the use cases that I have read about so far.
It'd be useful to restrict the STRING to a simple upper case ID with a
length limit; the ebuild description will give more information to a user 

A numeric slot id with different branches applying to the same slot would
seem to be enough to track any project over its lifecycle. The id would
only be visible to users choosing to install a live ebuild when the package
is slotted. 

The reason I don't think it's a good idea to allow full versioning is that
it seems to be clouding the issue. Packages are available, in slots. If the
user chooses version control, it applies to the slot:pkg combination, and
beyond that only needs a mechanism to choose which branch to track.
Maintainers need to track ebuild revisions, and all of us, including
package managers, can do with keeping things simple, imo.

[1] Since SLOT is one of the most basic items in an ebuild, it's something
any user making an ebuild is aware of. A vcs ebuild-writer should have no
problem finding a suitable id, especially if it is to go into the tree.

[2] s/vcs/whatever acronym you prefer/
-vcsN* and -rN+ (or -r0N+.N+ for prefix portage) in regex terms
-rN if missing, is implicit -r0 (compares before explicit)


-- 
gentoo-dev@gentoo.org mailing list



  parent reply	other threads:[~2007-12-11  0:25 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-12-09 16:01 [gentoo-dev] [GLEP] scm package version suffix Piotr Jaroszyński
2007-12-09 16:18 ` Josh Sled
2007-12-09 17:22   ` Piotr Jaroszyński
2007-12-09 17:52 ` Petteri Räty
2007-12-09 18:00   ` Piotr Jaroszyński
2007-12-09 18:45 ` Jan Kundrát
2007-12-09 18:57   ` Ciaran McCreesh
2007-12-10  4:31     ` Donnie Berkholz
2007-12-10  7:18       ` Ciaran McCreesh
2007-12-10  7:44         ` Nirbheek Chauhan
2007-12-10  8:24           ` Ciaran McCreesh
2007-12-10  8:36             ` Robin H. Johnson
2007-12-10  8:44               ` Ciaran McCreesh
2007-12-11  1:12             ` [gentoo-dev] " Ryan Hill
2007-12-10 12:59           ` [gentoo-dev] " Robert Buchholz
2007-12-10 14:24             ` Nirbheek Chauhan
2007-12-10 15:14               ` Robert Buchholz
2007-12-10 19:44                 ` Nirbheek Chauhan
2007-12-10 19:49                   ` Nirbheek Chauhan
2007-12-11  0:27                   ` Steve Long [this message]
2007-12-11 10:59                     ` [gentoo-dev] " Nirbheek Chauhan
2007-12-11 11:03                     ` Nirbheek Chauhan
2007-12-11  8:21                   ` Duncan
2007-12-11 11:06                     ` Nirbheek Chauhan
2007-12-11 11:17                       ` Ciaran McCreesh
2007-12-11 12:10                         ` Nirbheek Chauhan
2007-12-10  8:26         ` [gentoo-dev] " Robin H. Johnson
2007-12-10  8:34           ` Ciaran McCreesh
2007-12-10  9:21           ` [gentoo-dev] Handling branch strings Donnie Berkholz
2007-12-10  9:34             ` Santiago M. Mola
2007-12-10 19:42               ` Donnie Berkholz
2007-12-11  1:35                 ` [gentoo-dev] " Ryan Hill
2007-12-11  8:11                 ` [gentoo-dev] " Ciaran McCreesh
2007-12-11 11:46                   ` Santiago M. Mola
2007-12-11 17:56             ` [gentoo-dev] " Christian Faulhammer
2007-12-09 19:38   ` [gentoo-dev] Re: [GLEP] scm package version suffix Ryan Hill

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='fjkl7q$h3a$1@ger.gmane.org' \
    --to=slong@rathaus.eclipse.co.uk \
    --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