Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 616252

Summary: "<perl-core/Encode-2.800.100_rc" is blocking virtual/perl-Encode-2.800.100_rc ...
Product: Gentoo Linux Reporter: Thomas Beutin <tb>
Component: Current packagesAssignee: Gentoo Perl team <perl>
Status: RESOLVED INVALID    
Severity: normal CC: kentnl
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Thomas Beutin 2017-04-21 21:21:23 UTC
...but there is just perl-core/Encode-2.730.0 in tree.
Comment 1 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2017-04-21 21:26:53 UTC
https://wiki.gentoo.org/wiki/Perl

This means you need to uninstall perl-core/Encode to upgrade your perl.

There doesn't have to be more versions, because virtuals delegate between perl-core/ and dev-lang/perl as needed.

https://wiki.gentoo.org/wiki/Perl#Some_knowledge 

Re-open if you're sure this is a bug, but otherwise asking for help in #gentoo or #gentoo-perl is advised.
Comment 2 Thomas Beutin 2017-04-22 05:50:15 UTC
(In reply to Kent Fredric (IRC: kent\n) from comment #1)
> https://wiki.gentoo.org/wiki/Perl
> 
> This means you need to uninstall perl-core/Encode to upgrade your perl.

but shouldn't virtual/perl-Encode "know" about this and marking perl-core/Encode automagically for removing?
Comment 3 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2017-04-25 18:17:46 UTC
(In reply to Thomas Beutin from comment #2)
> (In reply to Kent Fredric (IRC: kent\n) from comment #1)
> > https://wiki.gentoo.org/wiki/Perl
> > 
> > This means you need to uninstall perl-core/Encode to upgrade your perl.
> 
> but shouldn't virtual/perl-Encode "know" about this and marking
> perl-core/Encode automagically for removing?

That's what this is *supposed* to do:

RDEPEND="
	|| ( =dev-lang/perl-5.24.1* ~perl-core/${PN#perl-}-${PV} )
	dev-lang/perl:=
	!<perl-core/${PN#perl-}-${PV}
	!>perl-core/${PN#perl-}-${PV}-r999
"

However, the "actually remove it" part is portage's responsibility.

And if you happen to have that in your world file, portage will stubbornly *refuse* to remove it, instead preferring to block.

Usually with lots of --backtrack=1000 portage *may* be smart enough to remove it otherwise.
Comment 4 Thomas Beutin 2017-04-25 21:31:49 UTC
(In reply to Kent Fredric (IRC: kent\n) from comment #3)
> (In reply to Thomas Beutin from comment #2)
> > (In reply to Kent Fredric (IRC: kent\n) from comment #1)
> > > https://wiki.gentoo.org/wiki/Perl
> > > 
> > > This means you need to uninstall perl-core/Encode to upgrade your perl.
> > 
> > but shouldn't virtual/perl-Encode "know" about this and marking
> > perl-core/Encode automagically for removing?
> 
> That's what this is *supposed* to do:
> 
> RDEPEND="
> 	|| ( =dev-lang/perl-5.24.1* ~perl-core/${PN#perl-}-${PV} )
> 	dev-lang/perl:=
> 	!<perl-core/${PN#perl-}-${PV}
> 	!>perl-core/${PN#perl-}-${PV}-r999
> "
> 
> However, the "actually remove it" part is portage's responsibility.

On another machine it actually did it, but the first one had problems with also one more package. After removing those blockers manually everything installed fine.


> And if you happen to have that in your world file, portage will stubbornly
> *refuse* to remove it, instead preferring to block.

This one i usually check before i report such a "bug" ;)


> Usually with lots of --backtrack=1000 portage *may* be smart enough to
> remove it otherwise.

I also tried this, but no success. Maybe that happend because of some other issues on this system with linphone, grass, qgis, ...

Anyway - now it works :) Tnx a lot!