[MacPorts] #40042: port clean all fails at R with variants
#40042: port clean all fails at R with variants ------------------------+-------------------------------- Reporter: c.herbig@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: base | Version: 2.2.0 Keywords: | Port: ------------------------+-------------------------------- Trying to run {{{port clean all}}} fails at port R: {{{ ---> Cleaning qyoto Error: Inconsistent variant specification: R variant +x11 is required by at least one of +cairo +accelerate +gcc47 +recommended, but specified -x11 Error: Unable to open port: Error evaluating variants }}} My variants.conf looks like this: {{{ +quartz -x11 -video -gnome -ogg -cdparanoia -gnome_vfs -universal # old style variants +no_x11 +no_gnome +no_ogg +no_gnome_vfs }}} -- Ticket URL: <https://trac.macports.org/ticket/40042> MacPorts <http://www.macports.org/> Ports system for OS X
#40042: port clean all fails at R with variants -------------------------+-------------------------------- Reporter: c.herbig@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: base | Version: 2.2.0 Resolution: | Keywords: Port: | -------------------------+-------------------------------- Comment (by c.herbig@…): P.S. Although it seems to be the fault of R, I filed this under base, since it might be good to see if there is a way to make base more resilient to what is causing this. -- Ticket URL: <https://trac.macports.org/ticket/40042#comment:1> MacPorts <http://www.macports.org/> Ports system for OS X
#40042: R: Inconsistent variant specification: R variant +x11 is required by at least one of +cairo +accelerate +gcc47 +recommended, but specified -x11 -------------------------+--------------------------- Reporter: c.herbig@… | Owner: kjell.konis@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.0 Resolution: | Keywords: Port: R | -------------------------+--------------------------- Changes (by ryandesign@…): * owner: macports-tickets@… => kjell.konis@… * component: base => ports * port: => R Comment: I don't think we need to make any changes to base. This is simply a bug in the way R is specifying its default variants. R specifies that +cairo and +x11 are default variants, and +cairo requires +x11. So logically when the user has specified -x11, there will be an error when MacPorts attempts to then select +cairo. R should only make +cairo a default variant if the user has not already specified that they want to disable x11. {{{ default_variants +x11 if {[variant_isset x11]} { default_variants +cairo } }}} But the fact that +cairo requires +x11 is weird in and of itself, since the cairo port does not require x11 (it merely enables that option by default, but the user could disable it). If R requires that cairo be installed with its +x11 variant, then it should enforce that requirement using the active_variants 1.1 portgroup. And if it does not require that, then its +cairo variant should not require its +x11 variant. -- Ticket URL: <https://trac.macports.org/ticket/40042#comment:2> MacPorts <http://www.macports.org/> Ports system for OS X
#40042: base should ignore variant conflicts when cleaning --------------------------+-------------------------------- Reporter: c.herbig@… | Owner: macports-tickets@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: base | Version: 2.2.0 Resolution: | Keywords: Port: | --------------------------+-------------------------------- Changes (by ryandesign@…): * owner: kjell.konis@… => macports-tickets@… * type: defect => enhancement * component: ports => base * port: R => Comment: Eh, I didn't realize there was already a separate ticket #39228 for R itself. You should have mentioned that. Still not sure how we could enhance base to work around such problems. Perhaps we could special case "`port clean`" and other operations that shouldn't care about variants to ignore them. -- Ticket URL: <https://trac.macports.org/ticket/40042#comment:3> MacPorts <http://www.macports.org/> Ports system for OS X
#40042: base should ignore variant conflicts when cleaning --------------------------+-------------------------------- Reporter: c.herbig@… | Owner: macports-tickets@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: base | Version: 2.2.0 Resolution: | Keywords: Port: | --------------------------+-------------------------------- Comment (by c.herbig@…): Replying to [comment:3 ryandesign@…]:
Eh, I didn't realize there was already a separate ticket #39228 for R itself. You should have mentioned that. I guess I didn't find it because I was looking for tickets involving {{{port clean}}}. I myself don't use R, so I can't really suggest how the maintainer should fix it.
-- Ticket URL: <https://trac.macports.org/ticket/40042#comment:4> MacPorts <http://www.macports.org/> Ports system for OS X
#40042: base should ignore variant conflicts when cleaning --------------------------+-------------------------------- Reporter: c.herbig@… | Owner: macports-tickets@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: base | Version: 2.2.0 Resolution: | Keywords: Port: | --------------------------+-------------------------------- Comment (by larryv@…): Replying to [comment:3 ryandesign@…]:
Still not sure how we could enhance base to work around such problems. Perhaps we could special case "`port clean`" and other operations that shouldn't care about variants to ignore them.
This… {{{ % sudo port clean R +cairo -x11 ---> Cleaning R % }}} …doesn’t cause any problems, but perhaps setting variants via the command line uses a different code path than setting them in `variants.conf`. -- Ticket URL: <https://trac.macports.org/ticket/40042#comment:5> MacPorts <http://www.macports.org/> Ports system for OS X
#40042: base should ignore variant conflicts when cleaning --------------------------+-------------------------------- Reporter: c.herbig@… | Owner: macports-tickets@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: base | Version: 2.2.0 Resolution: | Keywords: Port: | --------------------------+-------------------------------- Comment (by ryandesign@…): Replying to [comment:4 c.herbig@…]:
I myself don't use R, so I can't really suggest how the maintainer should fix it.
The maintainer should fix it the way I [comment:2 suggested above], but we'll let that be handled in #39228 and leave this ticket for any related improvements to base. -- Ticket URL: <https://trac.macports.org/ticket/40042#comment:6> MacPorts <http://www.macports.org/> Ports system for OS X
#40042: base should ignore variant conflicts when cleaning --------------------------+-------------------------------- Reporter: c.herbig@… | Owner: macports-tickets@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: base | Version: 2.2.0 Resolution: | Keywords: Port: | --------------------------+-------------------------------- Comment (by c.herbig@…): Well, in the meanwhile, {{{port clean all and not R}}} seems to work. -- Ticket URL: <https://trac.macports.org/ticket/40042#comment:7> MacPorts <http://www.macports.org/> Ports system for OS X
#40042: base should ignore variant conflicts when cleaning --------------------------+-------------------------------- Reporter: c.herbig@… | Owner: macports-tickets@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: base | Version: 2.2.0 Resolution: | Keywords: Port: | --------------------------+-------------------------------- Comment (by kjell.konis@…): Replying to [comment:6 ryandesign@…]:
Replying to [comment:4 c.herbig@…]:
I myself don't use R, so I can't really suggest how the maintainer should fix it.
The maintainer should fix it the way I [comment:2 suggested above], but we'll let that be handled in #39228 and leave this ticket for any related improvements to base.
R port maintainer here. #40304 has a patch that fixes this as suggested. Thanks. -- Ticket URL: <https://trac.macports.org/ticket/40042#comment:8> MacPorts <http://www.macports.org/> Ports system for OS X
#40042: base should ignore variant conflicts when cleaning --------------------------+-------------------------------- Reporter: c.herbig@… | Owner: macports-tickets@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: base | Version: 2.2.0 Resolution: | Keywords: Port: | --------------------------+-------------------------------- Comment (by c.herbig@…): Perhaps this would best be fixed by simply recommending users to run {{{port -p clean all}}. I would be happy to contribute to the documentation if that is in turn needed. Feel free to close this ticket. -- Ticket URL: <https://trac.macports.org/ticket/40042#comment:9> MacPorts <http://www.macports.org/> Ports system for OS X
#40042: base should ignore variant conflicts when cleaning --------------------------+-------------------------------- Reporter: c.herbig@… | Owner: macports-tickets@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: base | Version: 2.2.0 Resolution: | Keywords: Port: | --------------------------+-------------------------------- Comment (by cal@…): Has duplicate #40879. -- Ticket URL: <https://trac.macports.org/ticket/40042#comment:10> MacPorts <http://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts