Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 518660 - perl-cleaner pulls in unsatisfiable deps
Summary: perl-cleaner pulls in unsatisfiable deps
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Perl team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-07-31 11:22 UTC by Julian Ospald
Modified: 2014-08-01 16:00 UTC (History)
1 user (show)

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 Julian Ospald 2014-07-31 11:22:02 UTC
e.g. for the last update it pulled in

perl-core/Module-CoreList:0
virtual/perl-Module-CoreList:0

while virtual/perl-Module-CoreList-3.30.0 is stable it has a depstring like so:
RDEPEND="
	|| ( =dev-lang/perl-5.18* ~perl-core/${PN#perl-}-${PV} )
	!<perl-core/${PN#perl-}-${PV}
	!>perl-core/${PN#perl-}-${PV}-r999
"

But there is no perl-core/Module-CoreList-3.30.0 whatsoever, so this results in a block.

a) your ebuilds shouldn't depend on non-existing packages in the first place, even if it's within a || () string
b) why does perl-cleaner pull in the non-virtual anyway?
Comment 1 Andreas K. Hüttel archtester gentoo-dev 2014-07-31 12:07:14 UTC
No.
Comment 2 Julian Ospald 2014-07-31 12:10:30 UTC
(In reply to Andreas K. Hüttel from comment #1)
> No.

No, what?
Comment 3 Julian Ospald 2014-07-31 21:35:17 UTC
(In reply to Andreas K. Hüttel from comment #1)
> No.

I'm sorry, but this is not the right way to communicate on a bug tracker.

I'm not sure if you just had a bad day or if you are provoking on purpose, but you have to explain why a bug is invalid.
Comment 4 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2014-08-01 01:06:35 UTC
I believe that this is simply not easy to fix, and that the latest perl-cleaner gives a warning in this scenario with a technique for attempting to solve this problem.

That is, if you already have a copy of perl-core/Module-CoreList installed, that this problem may be *really* due to something else in your VBD/Worldfile pulling the perl-core/Module-CoreList unilatterally, even though you have =perl 5.18.

Which means even *if* perl-core/Module-CoreList-3.30.0 existed, it wouldn't solve this problem, it would just be invisible, as it would pull perl-core/Module-CoreList despite being satisfied by 5.18.

=~

- Perl Cleaner tells you now how to make this problem go away.
- If you followed those steps and you still have a problem, please report back with more context.
Comment 5 Mikle Kolyada (RETIRED) archtester Gentoo Infrastructure gentoo-dev Security 2014-08-01 12:59:00 UTC
good explanation ^
Comment 6 Julian Ospald 2014-08-01 13:10:42 UTC
(In reply to Kent Fredric from comment #4)
> 
> Which means even *if* perl-core/Module-CoreList-3.30.0 existed, it wouldn't
> solve this problem, it would just be invisible, as it would pull
> perl-core/Module-CoreList despite being satisfied by 5.18.
> 

I consider this an ebuild bug. Although it seems to be technically allowed, I think depending on non-existing versions in any kind of depstring (except version ranges ofc) should be banned by poliy.

The problem being invisible wouldn't matter if perl-core/Module-CoreList-3.30.0 existed (in stable arch ofc). The next depclean would solve it.
Comment 7 Julian Ospald 2014-08-01 13:12:13 UTC
(In reply to Mikle Kolyada from comment #5)
> good explanation ^

Looks rather like WONTFIX or CANTFIX to me. It's a usability issue, so still a valid bug.
Comment 8 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2014-08-01 13:23:19 UTC
"I think depending on non-existing versions in any kind of depstring (except version ranges ofc) should be banned by poliy."

Its kind-of an issue with how the versions happen upstream. Sometimes they'll get released "in perl" prior to being able to be shipped via perl-core/* , and other times they'll happen the other way around. Sometimes they might never arrive in a form we can ship via perl-core/*. 

And this adds maintenance burden for virtuals due to how many we have of them.

So the *less* virtual editing we have to do, the better.

And thus, the virtuals have a mostly consistent syntax for which, some point to things that don't exist yet under the assumption they might eventually. ( Which *should* be fine, because portage should simply ignore they exist in a conditional and choose between one of the options that exists. Of course, what portage "should do" and "does" appears to differ quite frequently. )

I'm all for adding perl-core/Module-CoreList-3.30.0 to tree, its just extra time and effort somebody has to put in
Comment 9 Mikle Kolyada (RETIRED) archtester Gentoo Infrastructure gentoo-dev Security 2014-08-01 16:00:11 UTC
(In reply to Julian Ospald (hasufell) from comment #7)
> (In reply to Mikle Kolyada from comment #5)
> > good explanation ^
> 
> Looks rather like WONTFIX or CANTFIX to me. It's a usability issue, so still
> a valid bug.