Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 504732 - Suggestions for dependency resolution should be amended to minimize potential future problems
Summary: Suggestions for dependency resolution should be amended to minimize potential...
Status: CONFIRMED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - External Interaction (show other bugs)
Hardware: All All
: High enhancement (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords: Goal
Depends on:
Blocks:
 
Reported: 2014-03-15 17:45 UTC by Richard Yao (RETIRED)
Modified: 2014-03-16 07:17 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Richard Yao (RETIRED) gentoo-dev 2014-03-15 17:45:30 UTC
Whenever a user tries to build a package that requires local keywording or a changed USE flag, they are given a message saying how to make things work, which states to use the explicit package version. Consequently, they do this, the portage tree changes and things break.

I just had an arch user ask me why sys-kernle/spl did not support Linux 3.12 because of this, even though it does. In other situations, I have people tell me that binary package managers are beter at dependency resolution than portage because the dependency resolution is hell. So far, I have been able to trace every single case to portage's dependency resolution messages.

Consequently, I have come to think that these messages set traps for users that could be avoided by amending them with more intelligent advice. In particular, I think that the USE flag suggestions should be amended to omit package version numbers and that the keywording suggestions be amended to recommend that a user that does this and finds that it works should file a bug report so that the packages can be properly keyworded by the tree maintainers to mitigate problems other changes might have in the future.
Comment 1 Alexander Berntsen (RETIRED) gentoo-dev 2014-03-15 18:12:36 UTC
(In reply to Richard Yao from comment #0)
> In particular, I think that the USE flag suggestions should be amended to
> omit package version numbers
I disagree. This would annoy me. And I'd like to think that users are smart enough to figure this out themselves.

> and that the keywording suggestions be amended to recommend that a user
> that does this and finds that it works should file a bug report so that
> the packages can be properly keyworded by the tree maintainers to mitigate
> problems other changes might have in the future.
I don't think this sort of information belongs in emerge.
Comment 2 Sebastian Luther (few) 2014-03-15 18:14:56 UTC
(In reply to Richard Yao from comment #0)
> Whenever a user tries to build a package that requires local keywording or a
> changed USE flag, they are given a message saying how to make things work,
> which states to use the explicit package version. Consequently, they do
> this, the portage tree changes and things break.

Unfortunately I forgot about the reason for this behavior. Maybe it's time for --autounmask-unrestricted-atoms to default to 'yes'.

> [...] the keywording suggestions be amended to
> recommend that a user that does this and finds that it works should file a
> bug report so that the packages can be properly keyworded by the tree
> maintainers to mitigate problems other changes might have in the future.

The keywording feature is only meant for users that mix arch and ~arch. This way it's possible to keyword a leaf package and leave it to emerge to figure out what else needs to be keyworded. If a package is missing a keyword, that's a bug that should have been caught be repoman.
Comment 3 Richard Yao (RETIRED) gentoo-dev 2014-03-16 01:12:43 UTC
(In reply to Sebastian Luther (few) from comment #2)
> (In reply to Richard Yao from comment #0)
> > Whenever a user tries to build a package that requires local keywording or a
> > changed USE flag, they are given a message saying how to make things work,
> > which states to use the explicit package version. Consequently, they do
> > this, the portage tree changes and things break.
> 
> Unfortunately I forgot about the reason for this behavior. Maybe it's time
> for --autounmask-unrestricted-atoms to default to 'yes'.

I think this is needed on USE flags, but doing it for keywords is probably not the worst thing to do.

> > [...] the keywording suggestions be amended to
> > recommend that a user that does this and finds that it works should file a
> > bug report so that the packages can be properly keyworded by the tree
> > maintainers to mitigate problems other changes might have in the future.
> 
> The keywording feature is only meant for users that mix arch and ~arch. This
> way it's possible to keyword a leaf package and leave it to emerge to figure
> out what else needs to be keyworded. If a package is missing a keyword,
> that's a bug that should have been caught be repoman.

The problem is that users do what it suggests and then get upset when things understandably break. We need to tell them to file bug reports about keywording here.
Comment 4 Sebastian Luther (few) 2014-03-16 07:17:18 UTC
(In reply to Richard Yao from comment #3)
> (In reply to Sebastian Luther (few) from comment #2)
> > (In reply to Richard Yao from comment #0)
> > > Whenever a user tries to build a package that requires local keywording or a
> > > changed USE flag, they are given a message saying how to make things work,
> > > which states to use the explicit package version. Consequently, they do
> > > this, the portage tree changes and things break.
> > 
> > Unfortunately I forgot about the reason for this behavior. Maybe it's time
> > for --autounmask-unrestricted-atoms to default to 'yes'.
> 
> I think this is needed on USE flags, but doing it for keywords is probably
> not the worst thing to do.
> 

IIRC, it already checks with --autounmask-unrestricted-atoms=y if an >=-atom is the right thing. If it isn't it will fall back to =-atoms.

> > > [...] the keywording suggestions be amended to
> > > recommend that a user that does this and finds that it works should file a
> > > bug report so that the packages can be properly keyworded by the tree
> > > maintainers to mitigate problems other changes might have in the future.
> > 
> > The keywording feature is only meant for users that mix arch and ~arch. This
> > way it's possible to keyword a leaf package and leave it to emerge to figure
> > out what else needs to be keyworded. If a package is missing a keyword,
> > that's a bug that should have been caught be repoman.
> 
> The problem is that users do what it suggests and then get upset when things
> understandably break. We need to tell them to file bug reports about
> keywording here.

Could you give a more detail example what the user does that ends with "user gets upset"?