[MacPorts] #28485: p5-extutils-cbuilder @0.280202 update breaks other perl modules
#28485: p5-extutils-cbuilder @0.280202 update breaks other perl modules ------------------------------+--------------------------------------------- Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist ------------------------------+--------------------------------------------- r76301 has added a dependency on p5-ipc-cmd to p5-extutils-cbuilder. p5 -ipc-cmd in turn depends on p5-module-corelist. And p5-module-corelist conflicts with perl5.8, as both p5-module-corelist and perl5.8 provide $prefix/bin/corelist. This breaks at least the following modules: p5-module-build, p5-sub- uplevel, p5-test-exception, p5-carp-clan, p5-bit-vector, p5-date-calc, p5 -date-holidays-de. -- Ticket URL: <https://trac.macports.org/ticket/28485> MacPorts <http://www.macports.org/> Ports system for Mac OS
#28485: p5-extutils-cbuilder @0.280202 update breaks other perl modules ------------------------------+--------------------------------------------- Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist ------------------------------+--------------------------------------------- Comment(by ricci@…): Possibly resolved in r76485, please test -- Ticket URL: <https://trac.macports.org/ticket/28485#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
#28485: p5-extutils-cbuilder @0.280202 update breaks other perl modules ------------------------------+--------------------------------------------- Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist ------------------------------+--------------------------------------------- Comment(by mas@…): r76485 makes perl5.12 the default. But even after manual removal of all perl5 @5.8* and perl5.8 ports, the perl5 package itself, now @5.12.3_0+perl5_12, still provides $prefix/bin/corelist. (You can check yourself using "port contents perl5|grep corelist" -- does this result in no output on your system? What output do you get for "port provides /opt/local/bin/corelist"?) In other words, r76485 does not fix this for me, sorry. -- Ticket URL: <https://trac.macports.org/ticket/28485#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
#28485: p5-extutils-cbuilder @0.280202 update breaks other perl modules ------------------------------+--------------------------------------------- Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist ------------------------------+--------------------------------------------- Comment(by mas@…): @narf_tm and @ricci: What's the rationale for p5-module-corelist? Under what circumstances do you get a perl5 installation without Module::Corelist, thus requiring p5-module-corelist? What I'm trying to get at is this: All p5 modules depend on perl5, so they already get Module::Corelist. Can we not simply get rid of p5-module- corelist altogether? Why do we need a separate package for it? -- Ticket URL: <https://trac.macports.org/ticket/28485#comment:8> MacPorts <http://www.macports.org/> Ports system for Mac OS
#28485: p5-extutils-cbuilder @0.280202 update breaks other perl modules ------------------------------+--------------------------------------------- Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist ------------------------------+--------------------------------------------- Comment(by narf_tm@…): ExtUtils::CBuilder requires IPC::Cmd. IPC::Cmd requires Module::Load::Conditional. Module::Load::Conditional 0.44 requires at least Module::CoreList 2.22. This is newer than the Module::CoreList that is included with Perl 5.8. -- Ticket URL: <https://trac.macports.org/ticket/28485#comment:9> MacPorts <http://www.macports.org/> Ports system for Mac OS
#28485: p5-extutils-cbuilder @0.280202 update breaks other perl modules ------------------------------+--------------------------------------------- Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist ------------------------------+--------------------------------------------- Comment(by mas@…): And is there a way to make this work in MacPorts? As it is, p5-module- corelist and perl5 (no matter what version) conflict. -- Ticket URL: <https://trac.macports.org/ticket/28485#comment:10> MacPorts <http://www.macports.org/> Ports system for Mac OS
#28485: p5-extutils-cbuilder @0.280202 update breaks other perl modules ------------------------------+--------------------------------------------- Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist ------------------------------+--------------------------------------------- Changes (by jmr@…): * cc: ricci@… (added) Comment: It's really easy to fix this kind of conflict with the new version of perl5. Just remove the offending binary from perl5/files/binList. @mas: I believe the idea is that p5-module-corelist can be updated independently of perl and will be a newer version than that bundled with older perl releases. -- Ticket URL: <https://trac.macports.org/ticket/28485#comment:11> MacPorts <http://www.macports.org/> Ports system for Mac OS
#28485: p5-extutils-cbuilder @0.280202 update breaks other perl modules ------------------------------+--------------------------------------------- Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist ------------------------------+--------------------------------------------- Comment(by roberto@…): Replying to [comment:11 jmr@…]:
It's really easy to fix this kind of conflict with the new version of perl5. Just remove the offending binary from perl5/files/binList.
Can you explain how this is done? I too am now affected by the conflict. -- Ticket URL: <https://trac.macports.org/ticket/28485#comment:12> MacPorts <http://www.macports.org/> Ports system for Mac OS
#28485: p5-extutils-cbuilder @0.280202 update breaks other perl modules ------------------------------+--------------------------------------------- Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist ------------------------------+--------------------------------------------- Comment(by ricci@…): If you want to remove corelist from the perl5 install: pushd `port dir perl5` sudo vi files/binList (or use your favorite editor) remove the 'corelist' line re-install the perl5 port *or* you can just do: sudo port -f install p5-module-corelist I'm a bit concerned about stripping things out of the perl5 port - what happens if something expects, say, corelist to be there and doesn't depend on p5-module-corelist? We've got another breakage that has to be dealt with. That may be the right way to go, and just add additional dependencies to other ports, maybe its not though. -- Ticket URL: <https://trac.macports.org/ticket/28485#comment:13> MacPorts <http://www.macports.org/> Ports system for Mac OS
#28485: p5-extutils-cbuilder @0.280202 update breaks other perl modules ------------------------------+--------------------------------------------- Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist ------------------------------+--------------------------------------------- Comment(by jmr@…): Leaving the conflict isn't a workable option. Dependencies will have to be added where needed. -- Ticket URL: <https://trac.macports.org/ticket/28485#comment:14> MacPorts <http://www.macports.org/> Ports system for Mac OS
#28485: conflict between perl5 and p5-module-corelist ------------------------------+--------------------------------------------- Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: perl5 p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist ------------------------------+--------------------------------------------- Changes (by mas@…): * cc: mcalhoun@… (added) * port: p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist => perl5 p5 -extutils-cbuilder p5-ipc-cmd p5-module-corelist -- Ticket URL: <https://trac.macports.org/ticket/28485#comment:15> MacPorts <http://www.macports.org/> Ports system for Mac OS
#28485: conflict between perl5 and p5-module-corelist ------------------------------+--------------------------------------------- Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: perl5 p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist ------------------------------+--------------------------------------------- Comment(by ww.galen@…): Above attachment is one potential solution: replace the port dependency on p5-module-corelist (`port:p5-module-corelis`t) with a path dependency on the corelist executable (`path:bin/corelist:p5-module-corelist`). Only if there isn't a corelist executable will an attempt to install p5-module- corelist be made. -- Ticket URL: <https://trac.macports.org/ticket/28485#comment:19> MacPorts <http://www.macports.org/> Ports system for Mac OS
#28485: conflict between perl5 and p5-module-corelist ------------------------------+--------------------------------------------- Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: perl5 p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist ------------------------------+--------------------------------------------- Comment(by narf_tm@…): How does this help? The sole purpose this port exists is to replace the corelist version that is included with perl because some modules need a newer version. -- Ticket URL: <https://trac.macports.org/ticket/28485#comment:20> MacPorts <http://www.macports.org/> Ports system for Mac OS
#28485: conflict between perl5 and p5-module-corelist ------------------------------+--------------------------------------------- Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: perl5 p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist ------------------------------+--------------------------------------------- Comment(by ww.galen@…): It's a short-term, stopgap measure rather than a long term, optimal solution. With the patch, the dependent ports wil install and update, which they don't do now. Perl 5.12.3 provides Module::Corelist 2.43, which is new enough for Module::Load::Conditional 0.44. -- Ticket URL: <https://trac.macports.org/ticket/28485#comment:21> MacPorts <http://www.macports.org/> Ports system for Mac OS
#28485: conflict between perl5 and p5-module-corelist ------------------------------+--------------------------------------------- Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: perl5 p5-ipc-cmd p5-module-load-conditional p5-module-corelist ------------------------------+--------------------------------------------- Changes (by mas@…): * port: perl5 p5-extutils-cbuilder p5-ipc-cmd p5-module-corelist => perl5 p5-ipc-cmd p5-module-load-conditional p5 -module-corelist Old description:
r76301 has added a dependency on p5-ipc-cmd to p5-extutils-cbuilder. p5 -ipc-cmd in turn depends on p5-module-corelist. And p5-module-corelist conflicts with perl5.8, as both p5-module-corelist and perl5.8 provide $prefix/bin/corelist.
This breaks at least the following modules: p5-module-build, p5-sub- uplevel, p5-test-exception, p5-carp-clan, p5-bit-vector, p5-date-calc, p5 -date-holidays-de.
New description: r76301 has added a dependency on p5-ipc-cmd to p5-extutils-cbuilder. p5 -ipc-cmd in turn depends on p5-module-corelist. And p5-module-corelist conflicts with perl5, as both p5-module-corelist and perl5 provide $prefix/bin/corelist. This breaks at least the following modules: p5-module-build, p5-sub- uplevel, p5-test-exception, p5-carp-clan, p5-bit-vector, p5-date-calc, p5 -date-holidays-de. -- Comment: (Just updated the description: with the new perl5 port, corelist is installed by perl5. The problem still persists, no matter whether perl 5.8, 5.10 or 5.12 are installed.) Do I get this right? At the moment, trying to make things compatible with perl 5.8 breaks them for *all* versions of perl. Not good. IOW, if perl 5.12 is installed (as is the default now), the dependency for p5-module-load-conditional is satisfied by simply having the perl5 port installed. p5-module-load-conditional really only requires p5-module- corelist (which, however, will still conflict with perl5) if perl 5.8 is selected. So would a possible short-term intervention be to change the p5-module- load-conditional port to only depend on p5-module-corelist in a variant called perl5_8? Things would still be broken, but at least not for everybody, but only for those still requiring perl 5.8. In the long term, I agree with ricci: Short of dropping support for perl 5.8, the "right" solution would be to remove corelist from the perl5 port and to add a dependency on p5-module-corelist to all ports needing it. Identifying those might be a daunting task. -- Ticket URL: <https://trac.macports.org/ticket/28485#comment:22> MacPorts <http://www.macports.org/> Ports system for Mac OS
#28485: conflict between perl5 and p5-module-corelist -----------------------------------------------------------------------------+ Reporter: mas@… | Owner: narf_tm@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Resolution: fixed | Keywords: Port: perl5 p5-ipc-cmd p5-module-load-conditional p5-module-corelist | -----------------------------------------------------------------------------+ Changes (by jmr@…): * status: new => closed * resolution: => fixed Comment: r76726 -- Ticket URL: <https://trac.macports.org/ticket/28485#comment:24> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts