Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-16 Thread konsolebox
On Wed, Sep 16, 2015 at 3:29 PM, konsolebox wrote: > On Tue, Sep 15, 2015 at 5:31 PM, Ulrich Mueller wrote: >>> On Tue, 15 Sep 2015, Ulrich Mueller wrote: >> > We consider 5.01 and 5.010 as equal versions. >> And do we still plan to keep them

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-16 Thread konsolebox
On Tue, Sep 15, 2015 at 5:31 PM, Ulrich Mueller wrote: >> On Tue, 15 Sep 2015, Ulrich Mueller wrote: > We consider 5.01 and 5.010 as equal versions. > >>> And do we still plan to keep them equal when we fix =*? > >> Yes. Makes me wonder. Are there even packages that

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-16 Thread Kent Fredric
On 15 September 2015 at 06:54, Ulrich Mueller wrote: > >> I think it'd be okay to e.g. change the meaning and behavior of * in >> a new EAPI. > > Bug 560466 now. Assuming the syntax can be changed in a future EAPI. What EAPI applies to the use of these specifiers on the

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-16 Thread konsolebox
On Tue, Sep 15, 2015 at 8:18 PM, Ciaran McCreesh wrote: > Semantic versioning is a new fad. I believe it's already been there for a while. It just didn't become a standard soon. > Certain upstreams still think that > 5.10 is a lower version that 5.2. Perl used

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-16 Thread Kent Fredric
On 16 September 2015 at 19:40, konsolebox wrote: > And I find it so wrong that it makes me think that it shouldn't have > been acknowledged by any packaging system. That versioning madness > should have been just fixed in the ebuilds level. Yeah. My experience with

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-15 Thread konsolebox
On Tue, Sep 15, 2015 at 3:26 PM, konsolebox wrote: > Subslots are only applicable when creating ebuilds. Sorry I have to correct this. They are also applicable to other areas but not always sensible to use.

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-15 Thread konsolebox
On Mon, Sep 14, 2015 at 9:53 PM, Manuel Rüger wrote: > Please don't add any more syntactic sugar to dependency strings. > People might become confused about stuff like this: > > =cat/foo-1.3.1_rc3_p20130829-r42+[!a=,!b?,c(+)]:3= =cat/foo-xyz+ is only one of the forms (we can

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-15 Thread konsolebox
On Tue, Sep 15, 2015 at 2:07 AM, Paweł Hajdan, Jr. wrote: > On 9/14/15 9:13 AM, konsolebox wrote: >> On Mon, Sep 14, 2015 at 2:29 PM, Paweł Hajdan, Jr. >> wrote: >>> On 9/14/15 6:35 AM, konsolebox wrote: Many times we need to match packages like

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-15 Thread konsolebox
On Tue, Sep 15, 2015 at 2:12 AM, Kristian Fiskerstrand wrote: > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA512 > > On 09/14/2015 06:35 AM, konsolebox wrote: >> So my suggestion is to add ~> as another operator. With it we can >> have an expression like '~>pkg-1.0.2a' and it

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-15 Thread Ulrich Mueller
> On Tue, 15 Sep 2015, konsolebox wrote: > Here are my issues if we try to modify =* and not add another operator: > 1) We'll completely abandon having an operator that matches the > remaining parts of a version number for good: =cat/foo-5.2015* would > no longer work. If you look at the

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-15 Thread konsolebox
On Tue, Sep 15, 2015 at 4:38 PM, Ulrich Mueller wrote: > We consider 5.01 and 5.010 as equal versions. And do we still plan to keep them equal when we fix =*? Would that mean 5.1 is the same as 5.10? That's clearly illegal to what most versioning schemes packages follow

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-15 Thread Ulrich Mueller
> On Tue, 15 Sep 2015, konsolebox wrote: >> We consider 5.01 and 5.010 as equal versions. > And do we still plan to keep them equal when we fix =*? Yes. > Would that mean 5.1 is the same as 5.10? No. RTFPMS, all the rules for version comparison are there:

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-15 Thread Ulrich Mueller
> On Tue, 15 Sep 2015, Ulrich Mueller wrote: >>> We consider 5.01 and 5.010 as equal versions. >> And do we still plan to keep them equal when we fix =*? > Yes. >> Would that mean 5.1 is the same as 5.10? > No. > RTFPMS, all the rules for version comparison are there: >

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-15 Thread Ciaran McCreesh
On Tue, 15 Sep 2015 16:54:59 +0800 konsolebox wrote: > Would that mean 5.1 is the same as 5.10? That's clearly illegal to > what most versioning schemes packages follow including the semantic > versioning (http://semver.org/). Semantic versioning is a new fad. Certain

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Ulrich Mueller
> On Mon, 14 Sep 2015, hasufell wrote: > On 09/14/2015 01:46 PM, Ulrich Mueller wrote: >> Interesting. So Portage follows the wording of the spec (prefix >> string matching), whereas Paludis behaves like (IMHO) the spec >> should have been written. > The question is now... can we fix the

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Ulrich Mueller
> On Mon, 14 Sep 2015, Kent Fredric wrote: > On 14 September 2015 at 21:04, Ulrich Mueller wrote: >> Well, version comparison is described in [1] and it says that >> =cat/foo-1.020.3 will match cat/foo-1.02.3. > Surely, as per Algorithm 2, that is false, because "020" and

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Kent Fredric
On 14 September 2015 at 23:38, Ulrich Mueller wrote: > Comparison in Algorithm 2 only takes place for the zeroth component > (i.e., "1", for the example above). > > For all following numeric components Algorithm 3 is called. For the > next component, the condition in line 1 is

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Ulrich Mueller
> On Mon, 14 Sep 2015, Kent Fredric wrote: > On 14 September 2015 at 23:38, Ulrich Mueller wrote: >> That is, versions 1.020.3 and 1.02.3 will be considered equal. > It seems that it may not have been implemented that way . > Or am I expecting the wrong things when I read

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Ulrich Mueller
> On Mon, 14 Sep 2015, Kent Fredric wrote: > Portage: > emerge --ignore-default-opts -vpO =dev-lang/perl-5.2* > These are the packages that would be merged, in order: > [ebuild R] dev-lang/perl-5.22.0:0/5.22::gentoo USE="berkdb doc > gdbm -debug -ithreads" 0 KiB > Paludis: > cave

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread hasufell
On 09/14/2015 01:46 PM, Ulrich Mueller wrote: > > Interesting. So Portage follows the wording of the spec (prefix string > matching), whereas Paludis behaves like (IMHO) the spec should have > been written. > The question is now... can we fix the spec?

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Manuel Rüger
On 14.09.2015 10:41, konsolebox wrote: > On Mon, Sep 14, 2015 at 4:32 PM, konsolebox wrote: >> On Mon, Sep 14, 2015 at 4:28 PM, Kent Fredric wrote: >>> On 14 September 2015 at 20:22, konsolebox wrote: If we use an

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Ciaran McCreesh
On Mon, 14 Sep 2015 13:46:34 +0200 Ulrich Mueller wrote: > Interesting. So Portage follows the wording of the spec (prefix string > matching), whereas Paludis behaves like (IMHO) the spec should have > been written. Not so fast! Paludis has two different behaviours for =*,

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Ulrich Mueller
> On Mon, 14 Sep 2015, Andreas K Huettel wrote: > Am Montag, 14. September 2015, 15:11:35 schrieb Ulrich Mueller: >> I could find only two instances of string prefix matching in the tree: >> >> - autotools.eclass depends on "=sys-devel/autoconf-2.1*" (with >> WANT_AUTOCONF=2.1). >> -

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Zac Medico
On 09/14/2015 01:19 PM, hasufell wrote: > On 09/14/2015 09:56 PM, Andreas K. Huettel wrote: >> >> (Unless someone insists on a revision bump for each dependency modification > > Yes, because everything else will cause a mess. > Performing updates with a behavior like emerge --changed-deps gives

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread hasufell
On 09/14/2015 09:56 PM, Andreas K. Huettel wrote: > > (Unless someone insists on a revision bump for each dependency modification Yes, because everything else will cause a mess.

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Ulrich Mueller
> On Mon, 14 Sep 2015, hasufell wrote: >> (Unless someone insists on a revision bump for each dependency >> modification > Yes, because everything else will cause a mess. Fortunately, for autotools.eclass it is a pure build-time dependency whose updating doesn't need any revbump. This

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Ulrich Mueller
> On Mon, 14 Sep 2015, Kent Fredric wrote: > I don't believe it works that way. > That would imply > =pkg-1.0.2* would match 1.0.20 It does, in fact. > When it only matches 1.0.2 and 1.0.2.* > You're reading it in shell glob notation and not the portage notation, > that the trailing dot

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread konsolebox
On Mon, Sep 14, 2015 at 2:29 PM, Paweł Hajdan, Jr. wrote: > On 9/14/15 6:35 AM, konsolebox wrote: >> Many times we need to match packages like this: something-1.0.2a.* > > Could you give specific examples, i.e. what packages, what dependencies, > why is that needed? For

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Ulrich Mueller
> On Mon, 14 Sep 2015, Kent Fredric wrote: > On 14 September 2015 at 18:52, Ulrich Mueller wrote: >> No, there isn't any dot implied. It uses simple prefix comparison, >> as in shell globbing. > Ugh. That's really really nasty. I'm going to have to go reprogram > my brain

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread konsolebox
On Mon, Sep 14, 2015 at 1:51 PM, Ulrich Mueller wrote: > Sorry, but I don't get it. How would these be different from the > existing "=pkg-1.0.2a*" and "=pkg-1.0.2*"? Because they could also match pkg-1.0.2aa (not sure if it's still valid atom) and pkg-1.0.20 respectively.

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Kent Fredric
On 14 September 2015 at 18:52, Ulrich Mueller wrote: > It does, in fact. > >> When it only matches 1.0.2 and 1.0.2.* > >> You're reading it in shell glob notation and not the portage notation, >> that the trailing dot is *implied*, > > No, there isn't any dot implied. It uses

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Paweł Hajdan , Jr .
On 9/14/15 9:13 AM, konsolebox wrote: > On Mon, Sep 14, 2015 at 2:29 PM, Paweł Hajdan, Jr. > wrote: >> On 9/14/15 6:35 AM, konsolebox wrote: >>> Many times we need to match packages like this: >>> something-1.0.2a.* >> >> Could you give specific examples, i.e. what

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Kristian Fiskerstrand
-BEGIN PGP SIGNED MESSAGE- Hash: SHA512 On 09/14/2015 06:35 AM, konsolebox wrote: > Many times we need to match packages like this: something-1.0.2a.* > > But that expression is not allowed with ~ (only targets revisions) > and neither with * (.*) is invalid. > > So my suggestion is to

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Andreas K. Huettel
-BEGIN PGP SIGNED MESSAGE- Hash: SHA512 Am Montag, 14. September 2015, 15:11:35 schrieb Ulrich Mueller: > > > The question is now... can we fix the spec? > > I could find only two instances of string prefix matching in the tree: > > - autotools.eclass depends on

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Ulrich Mueller
> On Mon, 14 Sep 2015, Paweł Hajdan, wrote: > I agree =pkg-4.1* also matching pkg-4.10 is a concern. > In that case though, it would change the focus of the discussion to > how * operator should work, not necessarily adding a new ~> > operator. > I think it'd be okay to e.g. change the

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread konsolebox
On Mon, Sep 14, 2015 at 1:38 PM, Daniel Campbell wrote: > Honestly, this situation looks like a perfect candidate for slotting > instead of adding a new feature. If SLOT is setup correctly between > ebuilds, you could check to be sure it's a specific SLOT. So in your > case,

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Kent Fredric
On 14 September 2015 at 18:09, konsolebox wrote: > Because they could also match pkg-1.0.2aa I don't believe it works that way. That would imply =pkg-1.0.2* would match 1.0.20 When it only matches 1.0.2 and 1.0.2.* You're reading it in shell glob notation and not the

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Paweł Hajdan , Jr .
On 9/14/15 6:35 AM, konsolebox wrote: > Many times we need to match packages like this: something-1.0.2a.* Could you give specific examples, i.e. what packages, what dependencies, why is that needed? Paweł signature.asc Description: OpenPGP digital signature

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread konsolebox
On Mon, Sep 14, 2015 at 2:19 PM, Kent Fredric wrote: > On 14 September 2015 at 18:09, konsolebox wrote: >> Because they could also match pkg-1.0.2aa > > That would imply > > =pkg-1.0.2* would match 1.0.20 > > When it only matches 1.0.2 and 1.0.2.* > >

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Kent Fredric
On 14 September 2015 at 20:01, Ulrich Mueller wrote: > We could fix this in a future EAPI such that version components would > not be split when matching. So =1.3* would not match 1.30 any more > because the 30 could only be matched as a whole. > > OTOH, I am not aware of any

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread konsolebox
On Mon, Sep 14, 2015 at 4:32 PM, konsolebox wrote: > On Mon, Sep 14, 2015 at 4:28 PM, Kent Fredric wrote: >> On 14 September 2015 at 20:22, konsolebox wrote: >>> If we use an arithmetic operator like ~> then that could be

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Kent Fredric
On 14 September 2015 at 21:04, Ulrich Mueller wrote: > Well, version comparison is described in [1] and it says that > =cat/foo-1.020.3 will match cat/foo-1.02.3. Surely, as per Algorithm 2, that is false, because "020" and "02" are both integers, and therefor they'd default to

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Kent Fredric
On 14 September 2015 at 21:04, Ulrich Mueller wrote: > Could someone check what is Paludis's behaviour for the examples > above? Also, does =cat/foo-1.2* match cat/foo-1.20 in Paludis? Portage: emerge --ignore-default-opts -vpO =dev-lang/perl-5.2* These are the packages that

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Kent Fredric
On 14 September 2015 at 20:01, Ulrich Mueller wrote: >=cat/foo-1.020.3 >=cat/foo-1.020.3* >=cat/foo-01.02.3* Of those, I only expect the last to match, because leading 0's are not typically significant. However, that "=dev-lang/perl-05.22*" matches

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread konsolebox
On Mon, Sep 14, 2015 at 4:01 PM, Ulrich Mueller wrote: >> On Mon, 14 Sep 2015, Kent Fredric wrote: > >> On 14 September 2015 at 18:52, Ulrich Mueller wrote: > Another interesting example: Which of the following will match the > package "cat/foo-1.02.3", and

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Kent Fredric
On 14 September 2015 at 20:22, konsolebox wrote: > If we use an arithmetic operator like ~> then that could be decided As a counter proposal I'd suggest a different suffix character than "*" instead. It just seems less confusing to have something like =cat/foo-1.30+

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread konsolebox
On Mon, Sep 14, 2015 at 4:28 PM, Kent Fredric wrote: > On 14 September 2015 at 20:22, konsolebox wrote: >> If we use an arithmetic operator like ~> then that could be decided > > As a counter proposal I'd suggest a different suffix character than >

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-14 Thread Ulrich Mueller
> On Mon, 14 Sep 2015, Kent Fredric wrote: > On 14 September 2015 at 20:01, Ulrich Mueller wrote: >> Which of the following will match the package "cat/foo-1.02.3", >> and why: >> >>=cat/foo-1.020.3 >>=cat/foo-1.020.3* >>=cat/foo-01.02.3* > Of those, I only

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-13 Thread Kent Fredric
On 14 September 2015 at 16:35, konsolebox wrote: > Many times we need to match packages like this: something-1.0.2a.* > > But that expression is not allowed with ~ (only targets revisions) and > neither with * (.*) is invalid. What does =cat/pkg-something-1.0.2a* do? (

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-13 Thread Ulrich Mueller
> On Mon, 14 Sep 2015, konsolebox wrote: > Many times we need to match packages like this: something-1.0.2a.* > But that expression is not allowed with ~ (only targets revisions) > and neither with * (.*) is invalid. > `So my suggestion is to add ~> as another operator. With it we can >

Re: [gentoo-dev] Request to add ~> atom prefix operator on Portage.

2015-09-13 Thread Daniel Campbell
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 On 09/13/2015 09:35 PM, konsolebox wrote: > Many times we need to match packages like this: something-1.0.2a.* > > But that expression is not allowed with ~ (only targets revisions) > and neither with * (.*) is invalid. > > So my suggestion is to