Ciaran McCreesh wrote:
On Thu, 26 Feb 2009 21:40:26 +0100
Luca Barbato <lu_z...@gentoo.org> wrote:
Be specific. Explain how this works when, say, 0.34.4 is current,
you have a 0.34.5_live and 0.34.5 comes out.
being live working as substitute for 0.34.5_preN (_live) component
the appearance of 0.34.5 will be higher than those. If we consider
the .live alternative you'd have 0.34.live that is shadowed only by
0.35.x

So it doesn't work Right.

I'd like to have more details on this point since it works the very same -scm does: the version component substituted gets higher than any other value when is resolved.

That is pretty much the same you get with -scm, what happens is that
in the case of live template you have portage installing 0.34.5_preN
with revision informations and adding the template to the "live" set.

No, with -scm the order works correctly.

"works correctly"

You are always not stating what correctly is in your opinion or why other solutions are broken.

In my opinion is correct to mark a version component as it will be the higher within that boundary, so 1.2.live means 1.2.x when x is the highest value, no matter which are the others at that time. Using a timestamp to replace x is the simplest way to grant this property.

How do I track an upstream who has a 0.34 branch (which is equal
to or ahead of the most recent 0.34.x release), a 0.36 branch
(which is equal to or ahead of the most recent 0.36.x release) and
a master branch (which is ahead of any release) using the live
property?
the live property doesn't tell much about versioning
so you could use 9999 as the "x" version component or .live or -scm,
the live property just makes portage aware that the sources are live.

This situation is one in those pkg-scm and pkg.live work better, but just for one branch.

As you said you could address the problem using useflags, so you
could by extension you can use the same way to address the single
case in proposals not supporting the tip of a single non version
branch as well:

have the all the ebuilds in a package having IUSE=-live that if
enabled triggers the live property and changes the src_uri to the
live branch you desire.

So if you do that, how does the package manager know that one version
is less than another if a particular use flag is enabled, but greater
than it if it is disabled?

The same argument is valid about the case of more than one tip branch you'd like to follow, how pkg-scm[master] is higher than pkg-scm[pu]?

With property live you just know that it was from a live sources, so you can consider it always new when it comes to resolve it and that pretty much gives you the same behavior you get out -scm as is detailed in the glep-54

With live template you know when you installed it and what you installed so you can re-emerge or update depending on what you want and you get at least the timestamp giving some more information.

If you throw in the mix SLOT alteration depending on or not on useflags or timestamps then you may also archive the property of having multiple version installed within any proposed framework. (e.g SLOT="$branch")

Still this is something could enjoy some more discussion.

As I stated long ago the main issue with the glep you proposed are the lack of informations in the document. You can fill every detail in mailing list as you like but if the document remains this way it doesn't get more informative.

lu

--

Luca Barbato
Gentoo Council Member
Gentoo/linux Gentoo/PPC
http://dev.gentoo.org/~lu_zero


Reply via email to