Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 398853 - dev-ruby/* - Please let src_test() fail nicely instead of requiring FEATURES=-test USE=-test
Summary: dev-ruby/* - Please let src_test() fail nicely instead of requiring FEATURES=...
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal major (vote)
Assignee: Gentoo Ruby Team
URL:
Whiteboard:
Keywords:
: 445170 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-01-14 08:10 UTC by Jeroen Roovers (RETIRED)
Modified: 2022-02-22 04:29 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jeroen Roovers (RETIRED) gentoo-dev 2012-01-14 08:10:52 UTC
I don't know whether I have reported this before.

Having FEATURES=test makes `emerge world' fail because some ruby packages recursively require other ruby packages to do src_test() properly. It would be extremely easy to test for that in src_test() or some prevailing eclass, and to fail elegantly when the requirements aren't met, and then just have users get on with it. It would remain a developer's or arch tester's task to then test again with the right requirements in place.

Example:

 = = = = = = = 
Total: 21 packages (1 downgrade, 20 new), Size of downloads: 603 kB

 * Error: circular dependencies:

(dev-ruby/parsetree-3.0.7::gentoo, ebuild scheduled for merge) depends on
 (dev-ruby/ruby2ruby-1.2.4-r2::gentoo, ebuild scheduled for merge) (buildtime)
  (dev-ruby/parsetree-3.0.7::gentoo, ebuild scheduled for merge) (buildtime)

It might be possible to break this cycle
by applying any of the following changes:
- dev-ruby/ruby2ruby-1.2.4-r2 (Change USE: -test)
- dev-ruby/parsetree-3.0.7 (Change USE: -test)

Note that this change can be reverted, once the package has been installed.
 = = = = = = = 

Note that no other herd requires such src_test() deps.
Comment 1 Hans de Graaff gentoo-dev Security 2012-01-14 08:53:18 UTC
I agree that this would be a useful thing to have. We could show a warning to indicate that tests were requested but could not be satisfied at this time.

I don't think it's extremely easy, though, but perhaps I'm overlooking a possible solution? I can see how we could do this by marking known circular dependencies in known ebuilds, but I don't really see yet how we could make this more generic.

Note that this also applies to USE=doc (see e.g. app-text/ronn and its dependencies).
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2012-03-06 22:45:55 UTC
(In reply to comment #1)
> I agree that this would be a useful thing to have. We could show a warning
> to indicate that tests were requested but could not be satisfied at this
> time.

Yes.

> I don't think it's extremely easy, though, but perhaps I'm overlooking a
> possible solution? I can see how we could do this by marking known circular
> dependencies in known ebuilds, but I don't really see yet how we could make
> this more generic.

CCing dev-portage@.

> Note that this also applies to USE=doc (see e.g. app-text/ronn and its
> dependencies).

USE=doc is different, because it isn't enabled with FEATURES=test like USE=test is. Since USE=test requirements cause circular deps, stuff cannot be emerged where it counts, i.e. on arch testers/devs machines.
Comment 3 Zac Medico gentoo-dev 2012-03-06 23:26:17 UTC
Maybe some of the test suites can be split into separate ebuilds in order to break the cycles?
Comment 4 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2012-03-07 05:08:40 UTC
Or portage could finally learn how to disable USE/FEATURES=test temporarily and then re-merge packages.
Comment 5 Zac Medico gentoo-dev 2012-03-07 06:12:49 UTC
(In reply to comment #4)
> Or portage could finally learn how to disable USE/FEATURES=test temporarily
> and then re-merge packages.

Yeah, we could classify that as bug 175808.
Comment 6 Jeroen Roovers (RETIRED) gentoo-dev 2012-11-29 14:48:50 UTC
*** Bug 445170 has been marked as a duplicate of this bug. ***
Comment 7 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-02-22 04:29:41 UTC
This is really resolved by --with-test-deps and isn't specific to Ruby. Python has this extensively, and Perl does too to an extent.