Re: [gentoo-portage-dev] [PATCH] per-package use.mask (bug 96368)

2006-08-06 Thread Brian Harring
On Fri, Aug 04, 2006 at 08:46:34PM -0700, Zac Medico wrote:
 Brian Harring wrote:
  On Fri, Aug 04, 2006 at 12:38:39PM -0700, Zac Medico wrote:
  I haven't seen a specification for use dependencies yet, so I'm not quite 
  sure how they'd work.
  cat/pkg-ver[use1,use2,-use3,use4]
  cat/pkg-ver[use]
  etc.
 
 Okay, so the only difference from package.use format is that whitespace is 
 replaced by square brackets and commas?

Yep- bracket/comma usage allows the atom and use reqs to bundled as 
one token.

  Is the existing format of of use.mask bad?  What about package.use?  The 
  implementation that I've proposed is a combination of these two formats 
  that everyone is already familiar with.
  
  No... the issue is that this _is_ basically a crappy form of 
  package.mask supporting use-deps; why use an alt syntax for it then?
 
 Well, no part of portage currently supports use-deps.  Therefore, 
 use-deps are an alternate syntax in themselves.  The implementation 
 that I've proposed uses the same type of syntax that portage already 
 uses in package.use files.

use-dep syntax is usable globally however- package.use is strictly 
config file, if/when portage gains use dep, killing off the 
package.use format for the globally usable use-dep will need to occur.

With that in mind, why not just do it from the get go?

  Just use what was originally intended, and at some point down the line 
  when either portage grows use deps, or it gets replaced, folks can 
  just copy the package.use.mask into package.mask, and wipe the file.
  
  ~harring
 
 Such a migration (if it ever takes place) could just as well be 
 performed by a simple conversion tool.
Or if just using use-dep, a cat :P
~harring


pgpEbCNxfV1Es.pgp
Description: PGP signature


Re: [gentoo-portage-dev] [PATCH] per-package use.mask (bug 96368)

2006-08-06 Thread Brian Harring
On Sun, Aug 06, 2006 at 02:54:36AM -0700, Zac Medico wrote:
 Brian Harring wrote:
  On Fri, Aug 04, 2006 at 08:46:34PM -0700, Zac Medico wrote:
  Brian Harring wrote:
  On Fri, Aug 04, 2006 at 12:38:39PM -0700, Zac Medico wrote:
  I haven't seen a specification for use dependencies yet, so I'm not 
  quite sure how they'd work.
  cat/pkg-ver[use1,use2,-use3,use4]
  cat/pkg-ver[use]
  etc.
  Okay, so the only difference from package.use format is that whitespace is 
  replaced by square brackets and commas?
  
  Yep- bracket/comma usage allows the atom and use reqs to bundled as 
  one token.
 
 Isn't there more of a difference than just in the parsing?

Not for what I'm suggesting- I'm suggesting just using use dep syntax 
for package.use.mask.

You've already got the code for the masking in your patch now, all you 
have to do is just change the parsing a bit.

 It 
 seems to me that we'd also have to implement use-dep matching in 
 order to correctly support use-dep syntax.

If you were actually supporting use deps, yes.  You're not 
however- package.use.mask is just a kludge in the (hopefully short) 
interim.

I'm suggesting that you think a bit forward- use use-dep syntax for it 
now rather then having to change it down the line.
~harring


pgpHaDIntI5xO.pgp
Description: PGP signature


Re: [gentoo-portage-dev] has_version and built_with_use ignore package.provided

2006-08-06 Thread Alec Warner
Paul Bredbury wrote:
 Hi, I was directed to this list after my Portage patches were rejected.
 I'm hoping that someone *other* than the rejecter will look at the bug,
 and: See it as a valid bug, reopen it, and take SpanKY's keyboard away
 so he can't reject it again.
 
 The bug is:  http://bugs.gentoo.org/show_bug.cgi?id=139842
 
 Executive Summary:  built_with_use returns the opposite answer to what
 it should, when the package referred to is not installed. I provided
 patches to stop that broken behaviour. People decided to talk about some
 mystical third state which doesn't exist in Boolean logic, and ended up
 convinced that black is white. And then proceeded to get themselves run
 over at the next Zebra crossing.

As I said on irc, you need to chill out; being a dick here won't help
you anymore than it did there.
-- 
gentoo-portage-dev@gentoo.org mailing list



Re: [gentoo-portage-dev] has_version and built_with_use ignore package.provided

2006-08-06 Thread Paul Bredbury
 There is a third option. Reporting an error.

But it is not an error. The answer is known to be False, through the
application of logic.
-- 
gentoo-portage-dev@gentoo.org mailing list



Re: [gentoo-portage-dev] has_version and built_with_use ignore package.provided

2006-08-06 Thread Simon Stelling

Paul Bredbury wrote:

But it is not an error. The answer is known to be False, through the
application of logic.


No. Let's get really sophisticated and do the 'application of logic' step.

There is a function built_with_use().
That function reports whether something was built with or without a specific USE 
flag.

The sentence above includes the fragment 'was built with or without'.
So it was built.
Uh, oh, but it wasn't built!!?!?
- Error

Really.

Go find a mathematician and discuss this matter with him. Tell him what you told 
me, and he will slap you with a large frying pan.


--
Kind Regards,

Simon Stelling
Gentoo/AMD64 Developer
--
gentoo-portage-dev@gentoo.org mailing list



Re: [gentoo-portage-dev] has_version and built_with_use ignore package.provided

2006-08-06 Thread Alec Warner
Paul Bredbury wrote:
 There is a third option. Reporting an error.
 
 But it is not an error. The answer is known to be False, through the
 application of logic.

There are really 3 states here

Either you have enough information to prove something true; OR
you have enough information to prove something false; OR
you don't have enough information to prove anything.

In this case there is no USE information available for PROVIDE'd
packages, which was your original complaint.

Just because you can't prove that
built_with_use provided pkg foo == true

doesn't mean you have enough information to prove that
built_with_use provided pkg foo == false

Becauase there IS a third state, it's call the we don't have enough
information to prove anything state, which is what we have here.

The package may very well work fine, the package may not, there is no
way to tell.  Thats our whole point.

Hell, SpanKY already filed the real bug, which is requesting support for
provided packages so that you can provide a package with USE flags set,
therefore solving this whole lack of information issue.

Because you see, that is what the real issue is, a lack of information.
-- 
gentoo-portage-dev@gentoo.org mailing list



Re: [gentoo-portage-dev] has_version and built_with_use ignore package.provided

2006-08-06 Thread Paul Bredbury
 and you have failed thus far.

The only other things I could do are start muttering about good
programming practices, and how to write correct and reliable programs.
Oh well, I did try, but I'll drop the subject now.

Remember: Every time that an ebuild dies for this reason, and the user
wonders why stupid Portage couldn't just go ahead with the obvious
answer, it annoys the user.
-- 
gentoo-portage-dev@gentoo.org mailing list



[gentoo-portage-dev] [PATCH] use.force and package.use.force (bug #142853)

2006-08-06 Thread Zac Medico
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Hi everyone,

I've written a patch [1] that implements support for use.force and 
package.use.force as originally described by Sven Wegener [2] over a year ago.  
Basically, this feature is the exact opposite of use.mask and package.use.mask. 
 It forces USE flags to be enabled.  The only way to disable these forced flags 
is to mask them via use.mask/package.use.mask or to unforce them in the 
profile stack.  Users can unforce them via 
/etc/portage/profile/{use.force,package.use.force} in the usual -flag way.

One of the many benefits that this will provide is the ability to invert the 
no* USE flags so that any flags can potentially have positive meaning if we 
choose.  Some type of functionality like this is certainly needed. Shall we add 
support for this?

Zac

[1] http://dev.gentoo.org/~zmedico/portage/branches/2.1/patches/use.force.patch
[2] http://article.gmane.org/gmane.linux.gentoo.devel/28727
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFE1s4u/ejvha5XGaMRAhimAKDIL5nV9InPExsxDHimYt0Q4Oa4BQCZAfAA
P4Xre/afHVq/7R4ekEOlfzo=
=InC1
-END PGP SIGNATURE-
-- 
gentoo-portage-dev@gentoo.org mailing list



Re: [gentoo-portage-dev] [PATCH] per-package use.mask (bug 96368)

2006-08-06 Thread Zac Medico
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Brian Harring wrote:
 On Sun, Aug 06, 2006 at 02:54:36AM -0700, Zac Medico wrote:
 seems to me that we'd also have to implement use-dep matching in 
 order to correctly support use-dep syntax.
 
 If you were actually supporting use deps, yes.  You're not 
 however- package.use.mask is just a kludge in the (hopefully short) 
 interim.

It doesn't make any sense to me to have use-deps syntax without support for 
use-deps matching.  Sorry.

Zac
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFE1tIG/ejvha5XGaMRAmjCAKDU7guES8UhHKpcG43+ArEpLxu3fQCbBXn0
YlmPIQgPUO09mcdKqtkMJBY=
=jXcS
-END PGP SIGNATURE-
-- 
gentoo-portage-dev@gentoo.org mailing list