Seems that new method of specifying dependencies in newer ebuilds (ruby_add_rdepend) is missing something: it specifies build dependencies conditionally (depending on [test] use flag. May it be related to the following method call in the ebuild: ruby_add_bdepend test "dev-ruby/mocha" ? I think, the idea was to depend on mocha only with [test], and depend on everything else unconditionally... But something got wrong. Reproducible: Always Steps to Reproduce: 1. Pretend to install dev-ruby/capistrano-2.5.18 (or 15, or 16) or somehow else look at the dependencies list (not in the ebuild itself, but in your package manager!) Actual Results: * dev-ruby/capistrano funtoo: 2.5.5 2.5.9(~) 2.5.10(~) 2.5.16(~) 2.5.17(~) 2.5.18(~) {:2} installed: 2.5.18* {:2} Description: A distributed application deployment system Homepage: http://capify.org/ License: MIT Installed time: Thu Mar 18 19:24:17 MSK 2010 Use flags: (-test) ruby_targets: (ruby18) Build Options: -trace From repositories: funtoo Installed using: paludis-0.44.2 Build dependencies: test? ( >=dev-ruby/net-ssh-2.0.14[ruby_targets_ruby18?] ) test? ( >=dev-ruby/net-sftp-2.0.2[ruby_targets_ruby18?] ) test? ( >=dev-ruby/net-scp-1.0.2[ruby_targets_ruby18?] ) test? ( >=dev-ruby/net-ssh-gateway-1.0.0[ruby_targets_ruby18?] ) test? ( >=dev-ruby/highline-1.2.7[ruby_targets_ruby18?] ) test? ( dev-ruby/mocha[ruby_targets_ruby18?] ) ruby_targets_ruby18? ( dev-lang/ruby:1.8 ) test? ( dev-ruby/rake[ruby_targets_ruby18?] ) test? ( virtual/rubygems[ruby_targets_ruby18?] ) Run dependencies: !dev-ruby/capistrano-launcher ruby_targets_ruby18? ( dev-lang/ruby:1.8 ) virtual/rubygems[ruby_targets_ruby18?] Post dependencies: Source URI: mirror://rubygems/capistrano-2.5.18.gem Expected Results: Capistrano should depend on some gems from dev-ruby/* (net-ssh, net-scp, net-sftp, etc) not only with [test] flag enabled.
This also seems to happen with portage, judging from the DEPEND and RDEPEND files in /var/db/pkg/dev-ruby/capistrano-2.5.18 This should not happen since we add the dependencies both as runtime dependencies *and* as built-time dependencies covered by the test USE flag (all of this is done in the ruby-ng.eclass as part of the ruby_add_rdepend method).
Fixed in .18 now, thanks for reporting.