Re: [gentoo-dev] EAPI-1 (or >1, perhaps) Proposal: AND Dependencies
On 6/15/07, Vlastimil Babka <[EMAIL PROTECTED]> wrote: Syntax shouldn't repeat package name twice. It wouldn't make much sense to use it with >=some-cat/foo-4.0 I was thinking about AND dependencies but the only reasonable examples I could thing of were ranges of versions and thus didn't recognize bug 4315 ("add support for version ranges in DEPEND") as *exactly* what I was talking about. It's already on SpanKy's EAPI-1 list, so, sorry for the channel noise. - John
Re: [gentoo-dev] EAPI-1 (or >1, perhaps) Proposal: AND Dependencies
On Fri, 15 Jun 2007 13:45:39 +0200 Luca Barbato <[EMAIL PROTECTED]> wrote: > Ciaran McCreesh wrote: > > Paludis allows users to do some-cat/foo[>=4.0&<4-3] and > > some-cat/foo[=4.1|=4.2|=4.3] . The syntax isn't particularly pretty, > > but it's cleaner than requiring duplication of the cat/pkg. Combined > > with :slot deps it should give you everything you need. > > Seems not bad, do you have plans to refine it before proposing it for > the pms? Well, I'm happy with it like that... > the combination with :slot defines within the [] or outside the [] or > both? Paludis currently requires a particular ordering: opcat/pkg-ver:slot::repo[bracketed][another][...] cat/pkg:slot::repo[bracketed][another][...] Bracketed things can be any of: [use] [-use] [opver] [opver|opver|opver...] [opver&opver&opver...] And reserved for future deviousness: [key=value] opcat/pkg-ver used with [opver] things is currently accepted (but probably shouldn't be). It behaves as if the external op-ver is added to the brackets with whatever combining operator the brackets use, or & if there's no combining operator. This isn't allowed for EAPI=0, so if you want to experiment you'll have to either do it in user config files (which can take anything that's legal for anything, and various extra things that aren't) or set EAPI=paludis-1. -- Ciaran McCreesh signature.asc Description: PGP signature
Re: [gentoo-dev] EAPI-1 (or >1, perhaps) Proposal: AND Dependencies
Ciaran McCreesh wrote: > Paludis allows users to do some-cat/foo[>=4.0&<4-3] and > some-cat/foo[=4.1|=4.2|=4.3] . The syntax isn't particularly pretty, > but it's cleaner than requiring duplication of the cat/pkg. Combined > with :slot deps it should give you everything you need. > Seems not bad, do you have plans to refine it before proposing it for the pms? the combination with :slot defines within the [] or outside the [] or both? lu -- Luca Barbato Gentoo/linux Gentoo/PPC http://dev.gentoo.org/~lu_zero -- [EMAIL PROTECTED] mailing list
Re: [gentoo-dev] EAPI-1 (or >1, perhaps) Proposal: AND Dependencies
Marijn Schouten (hkBst) wrote: > AND is already the implicit combinator. Thus simply listing both these > atoms > gives what you want: > > > =some-cat/foo-4.0 > > Still a special syntax for ranges seems like a good idea. If only portage > would not upgrade past such specifications (and downgrade the next time). Sorry; I made a mistake on my second example. Meant to say ( && >=some-cat/foo-4.1
Re: [gentoo-dev] EAPI-1 (or >1, perhaps) Proposal: AND Dependencies
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Marijn Schouten (hkBst) wrote: > John R. Graham wrote: >> What I'd really like to be able to code is a range with an AND operator, >> something like this >> ( && >=some-cat/foo-4.0 > AND is already the implicit combinator. Thus simply listing both these atoms > gives what you want: > > >=some-cat/foo-4.0 > Still a special syntax for ranges seems like a good idea. If only portage > would not upgrade past such specifications (and downgrade the next time). IIRC upgrade/downgrade loops were already solved in some recent version? Now it spits some error about conflicting deps that cause that. - -- Vlastimil Babka (Caster) Gentoo/Java -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.7 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFGcmHKtbrAj05h3oQRAjxQAJ9jYtK7aAAWBvYttCTLW1Kt7a/OzACeL2Oe aLZwTVOKohkRfcyyfRKpqMY= =gYLD -END PGP SIGNATURE- -- [EMAIL PROTECTED] mailing list
Re: [gentoo-dev] EAPI-1 (or >1, perhaps) Proposal: AND Dependencies
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 John R. Graham wrote: > What I'd really like to be able to code is a range with an AND operator, > something like this > ( && >=some-cat/foo-4.0 =some-cat/foo-4.0 http://enigmail.mozdev.org iD4DBQFGclz1p/VmCx0OL2wRAuxMAJY2sDo/FpEqRN3DPk3DkCGM5p++AJ9c/qG5 1TWUJff+OI4ut//e5vPIVg== =HLGX -END PGP SIGNATURE- -- [EMAIL PROTECTED] mailing list
Re: [gentoo-dev] EAPI-1 (or >1, perhaps) Proposal: AND Dependencies
Hi! On Fri, 15 Jun 2007, Kent Fredric wrote: > On 6/15/07, John R. Graham <[EMAIL PROTECTED]> wrote: > > I occasionally run across a package version dependency issue that cannot > > be elegantly solved by the current dependency syntax. Every time I've > > come across this, it's boiled down to a range. For example, package > > some-cat/foo has the following versions in the tree > > some-cat/foo-4.0.0-r2 > > some-cat/foo-4.1 > > some-cat/foo-4.1.1 > > some-cat/foo-4.1.2-r2 > > some-cat/foo-4.2.1-r5 > > some-cat/foo-4.3 > > some-cat/foo-4.4 > > > > /me votes for rubyesqe range syntax > > some-cat/foo-( s:4.1 .. s:4.2) // start at slot 4.1 , and go upto > and including 4.2 > some-cat/foo-( s:4.1 ... s:4.2) // start at slot 4.1 and go upto, but > not including 4.2 > some-cat/foo-( v:4.1.0 .. v:4.2.0 ) // start at version 4.1.0 and go > upto and including 4.2.0 > some-cat/foo-( v:4.1.0 ... v:4.2.0 ) // start at version 4.1.0 and go > upto , but excluding 4.2.0 > > I know thats probably not possible in a bash env tho, but hopefully > the 'range' concept will give some inspiration, as IMO, having to > specify the ebuild atom name for both upper and lower values is > redundant, and easily missused as lamented by Vlastimil Babka > > /me hides in his corner to avoid abuse from people despising ruby lovers > > /me goes and joins ruby addicts anonymous As a side note, while we're talking ranged dependencies. It would also be really, really nice to be able to (un)mask ranges in /etc/portage/package.(un)mask. Just my 1.953 Eurocent (adjusted for inflation). Rgards, Tobias -- In the future, everyone will be anonymous for 15 minutes. -- [EMAIL PROTECTED] mailing list
Re: [gentoo-dev] EAPI-1 (or >1, perhaps) Proposal: AND Dependencies
On 6/15/07, John R. Graham <[EMAIL PROTECTED]> wrote: I occasionally run across a package version dependency issue that cannot be elegantly solved by the current dependency syntax. Every time I've come across this, it's boiled down to a range. For example, package some-cat/foo has the following versions in the tree some-cat/foo-4.0.0-r2 some-cat/foo-4.1 some-cat/foo-4.1.1 some-cat/foo-4.1.2-r2 some-cat/foo-4.2.1-r5 some-cat/foo-4.3 some-cat/foo-4.4 /me votes for rubyesqe range syntax some-cat/foo-( s:4.1 .. s:4.2) // start at slot 4.1 , and go upto and including 4.2 some-cat/foo-( s:4.1 ... s:4.2) // start at slot 4.1 and go upto, but not including 4.2 some-cat/foo-( v:4.1.0 .. v:4.2.0 ) // start at version 4.1.0 and go upto and including 4.2.0 some-cat/foo-( v:4.1.0 ... v:4.2.0 ) // start at version 4.1.0 and go upto , but excluding 4.2.0 I know thats probably not possible in a bash env tho, but hopefully the 'range' concept will give some inspiration, as IMO, having to specify the ebuild atom name for both upper and lower values is redundant, and easily missused as lamented by Vlastimil Babka /me hides in his corner to avoid abuse from people despising ruby lovers /me goes and joins ruby addicts anonymous -- Kent ruby -e '[1, 2, 4, 7, 0, 9, 5, 8, 3, 10, 11, 6, 12, 13].each{|x| print "enNOSPicAMreil [EMAIL PROTECTED]"[(2*x)..(2*x+1)]}' -- [EMAIL PROTECTED] mailing list
Re: [gentoo-dev] EAPI-1 (or >1, perhaps) Proposal: AND Dependencies
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 John R. Graham wrote: > I occasionally run across a package version dependency issue that cannot > be elegantly solved by the current dependency syntax. Every time I've > come across this, it's boiled down to a range. For example, package > some-cat/foo has the following versions in the tree > some-cat/foo-4.0.0-r2 > some-cat/foo-4.1 > some-cat/foo-4.1.1 > some-cat/foo-4.1.2-r2 > some-cat/foo-4.2.1-r5 > some-cat/foo-4.3 > some-cat/foo-4.4 > > Now, package other-cat/bar has a runtime dependency on some-cat/foo but > it only works with the 4.1 and 4.2 slot. The other-cat/bar ebuild was > originally composed before the some-cat/foo-4.3 package came out, so the > ebuild developer coded the runtime dependency as > >=some-cat/foo-4.1 > > But, when some-cat/foo-4.3 came along, it got messy. The only possible > solution today that I know of is > ( || =some-cat/foo-4.1* =some-cat/foo-4.2* ) > and this potentially grows over time as new versions stabilize. If 4.1 and 4.2 are really SLOTs as you say, then this || syntax makes good sense. Of course would be better with real slot deps :) So your example is not so ideal. But nevermind. > What I'd really like to be able to code is a range with an AND operator, > something like this > ( && >=some-cat/foo-4.0 =some-cat/foo-4.0 So, my question is, does this make sense? Is something like this > planned for some EAPI>0? Would it be appropriate for me (a non-dev) to > file a bug and link it to SpanKy's "EAPI-1 tracker" bug? There's been bug 4315 for ages, so maybe just reassign it to PMS? - -- Vlastimil Babka (Caster) Gentoo/Java -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.7 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFGchsotbrAj05h3oQRAjg8AJ46/ofZuK6EI+LnQcTivJDzOjgj4gCfWNRe a56SGjmxI16imQxdkfRRoQI= =bu3E -END PGP SIGNATURE- -- [EMAIL PROTECTED] mailing list
[gentoo-dev] EAPI-1 (or >1, perhaps) Proposal: AND Dependencies
I occasionally run across a package version dependency issue that cannot be elegantly solved by the current dependency syntax. Every time I've come across this, it's boiled down to a range. For example, package some-cat/foo has the following versions in the tree some-cat/foo-4.0.0-r2 some-cat/foo-4.1 some-cat/foo-4.1.1 some-cat/foo-4.1.2-r2 some-cat/foo-4.2.1-r5 some-cat/foo-4.3 some-cat/foo-4.4 Now, package other-cat/bar has a runtime dependency on some-cat/foo but it only works with the 4.1 and 4.2 slot. The other-cat/bar ebuild was originally composed before the some-cat/foo-4.3 package came out, so the ebuild developer coded the runtime dependency as >=some-cat/foo-4.1 But, when some-cat/foo-4.3 came along, it got messy. The only possible solution today that I know of is ( || =some-cat/foo-4.1* =some-cat/foo-4.2* ) and this potentially grows over time as new versions stabilize. What I'd really like to be able to code is a range with an AND operator, something like this ( && >=some-cat/foo-4.0 0? Would it be appropriate for me (a non-dev) to file a bug and link it to SpanKy's "EAPI-1 tracker" bug? Thanks in advance. - John -- [EMAIL PROTECTED] mailing list