Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 421495 - Perl dependency handling is insane
Summary: Perl dependency handling is insane
Status: RESOLVED NEEDINFO
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Perl team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-06-16 21:42 UTC by Ciaran McCreesh
Modified: 2015-02-27 17:38 UTC (History)
3 users (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 Ciaran McCreesh 2012-06-16 21:42:27 UTC
The whole || ( huge list of perl versions ) dependency thing is clearly wrong, and not revbumping when you change that list is doubly so. What exactly are you trying to do, and what do you need in the next EAPI to get rid of this disgusting hack?
Comment 1 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2013-12-30 09:31:17 UTC
Ideally, where you presently see large || ( ) groups, something like this would seem more suited:


virtual/perl-Test-Simple-0.98:

|| (
  ( >=dev-lang/perl-5.13.1 <=dev-lang/perl-5.19.3 )
  perl-core/Test-Simple-0.98
)

Because thats communicating exactly the state of upstream.

Test-Simple 0.98 is provided by Perl Itself versions 5.13.1 to 5.19.3

And perl-core/Test-Simple-0.98 is a fallback for cases where your perl is not between those ranges.

However, we don't do it that way for some reason, though the reason is lost to me.

I seem to recall there being issues where it did unexpected things with that notation, though they may be EAPI specific.
Comment 2 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-12-30 09:49:03 UTC
Theoretically, something like:

|| (
  ( <=dev-lang/perl-5.19.3 >=dev-lang/perl-5.13.1  )
  perl-core/Test-Simple-0.98
)

would be more compatible. Not that any of the PMs doesn't work with the reversed order nowadays. But for a simple dependency resolution algos, it's better when the left-most atom limits the newest accepted version.
Comment 3 Andreas K. Hüttel archtester gentoo-dev 2014-10-10 17:19:05 UTC
I have no idea to which || list this refers.

But seriously, we're working on simplifying things. Once Perl 5.16 is gone and EAPI=4 is gone eclasses and virtuals will become clearer to read.

Meanwhile, more specific reports please.
Comment 4 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2015-02-27 17:38:11 UTC
*** Bug 541458 has been marked as a duplicate of this bug. ***