| Summary: | app-admin/puppet-0.24.8 virtual/ruby[ssl] dep is invalid | ||
|---|---|---|---|
| Product: | Gentoo Linux | Reporter: | Brian Harring (RETIRED) <ferringb> |
| Component: | New packages | Assignee: | Gentoo Ruby Team <ruby> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | matsuu, pms |
| Priority: | High | ||
| Version: | unspecified | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
| Bug Depends on: | 265054 | ||
| Bug Blocks: | 270432 | ||
pardon, I'm a retard- "virtual/ruby is an old style virtual", not "virtual/ruby is an old style dependency". Bleh. Need my coffee... I think it makes sense to move to a new style virtual in any case. For this bug, though, the two other providers of ruby (dev-lang/rubinius and dev-java/jruby) don't have an ssl USE flag, so I'm not sure if it makes sense for puppet to depend on the virtual, or whether it should just depend on dev-lang/ruby directly. I'll leave that to matsuu since I don't know anything about the puppet requirements. The virtuals got changed to depend on dev-lang/ruby on April 6th, so I'm closing this bug. |
puppet 0.24.8 has a DEPEND/RDEPEND on virtual/ruby[ssl]; virtual/ruby is an old style dependency, thus has no iuse defined (nor is there any gurantee that all providers of an old style virt. would have a common IUSE subset). Quoting pms: It is an error for a use dependency to be applied to an ebuild which does not have the flag in question in \t{IUSE}, or for an ebuild to use a conditional use dependency when that ebuild does not have the flag in \t{IUSE}. Reason this is relevant- portage seems to allow this to work via a quirk of it's old style virtual support- the other two however do not. The wording of virtuals.tex *sort of* leaves this behaviour open as valid, although I suspect that's more due to it not being updated when slot/use were introduced (it forbids version restrictions only, while slotting has similar issues). An alt. solution is a new style virtual, via this the transitive use dep that puppet is attempting to the provider could be implemented easily enough (in a manner supported by all three also). Reproducible: Always Steps to Reproduce: