On Sun, 2018-08-26 at 01:43 -0700, Zac Medico wrote: > On 08/26/2018 01:08 AM, Michał Górny wrote: > > On Sun, 2018-08-26 at 00:58 -0700, Zac Medico wrote: > > > On 08/26/2018 12:39 AM, Michał Górny wrote: > > > > On Sun, 2018-08-26 at 00:28 -0700, Zac Medico wrote: > > > > > On 08/25/2018 07:11 PM, Andrew Savchenko wrote: > > > > > > On Sat, 25 Aug 2018 14:24:02 -0400 Mike Gilbert wrote: > > > > > > > On Sat, Aug 25, 2018 at 1:41 AM Andrew Savchenko > > > > > > > <birc...@gentoo.org> wrote: > > > > > > > > > > > > > > > > On Fri, 24 Aug 2018 14:24:06 -0400 Mike Gilbert wrote: > > > > > > > > > --- > > > > > > > > > general-concepts/dependencies/text.xml | 38 > > > > > > > > > ++++++++++++++++++++++++++ > > > > > > > > > 1 file changed, 38 insertions(+) > > > > > > > > > > > > > > > > > > diff --git a/general-concepts/dependencies/text.xml > > > > > > > > > b/general-concepts/dependencies/text.xml > > > > > > > > > index 2f10380..64be9dc 100644 > > > > > > > > > --- a/general-concepts/dependencies/text.xml > > > > > > > > > +++ b/general-concepts/dependencies/text.xml > > > > > > > > > @@ -578,6 +578,44 @@ valid. > > > > > > > > > </body> > > > > > > > > > </section> > > > > > > > > > > > > > > > > > > +<section> > > > > > > > > > +<title>Test Dependencies</title> > > > > > > > > > +<body> > > > > > > > > > + > > > > > > > > > +<p> > > > > > > > > > +Packages often have optional dependencies that are needed > > > > > > > > > only when running > > > > > > > > > +tests. These should be specified in DEPEND behind a USE > > > > > > > > > flag. Often, the > > > > > > > > > +'test' USE flag is used for this purpose. > > > > > > > > > +</p> > > > > > > > > > + > > > > > > > > > +<p> > > > > > > > > > +Since testing will likely fail when test dependencies are > > > > > > > > > not installed, the > > > > > > > > > +test phase should be disabled in this case. This may be > > > > > > > > > accomplished via USE > > > > > > > > > +conditionals in the RESTRICT variable. > > > > > > > > > +</p> > > > > > > > > > + > > > > > > > > > +<p> > > > > > > > > > +If other optional features must be enabled/disabled when > > > > > > > > > testing, REQUIRED_USE > > > > > > > > > +may be set to express this. > > > > > > > > > +</p> > > > > > > > > > + > > > > > > > > > +<codesample lang="ebuild"> > > > > > > > > > +# Define some USE flags > > > > > > > > > +IUSE="debug test" > > > > > > > > > + > > > > > > > > > +# Disable test phase when test USE flag is disabled > > > > > > > > > +RESTRICT="!test? ( test )" > > > > > > > > > > > > > > > > I do not understand why we need this useless code. If test USE > > > > > > > > flag > > > > > > > > is disabled, tests must be disabled as well. It is PM's job and > > > > > > > > there is no need to put this obvious stuff into each ebuild with > > > > > > > > tests and extra deps. I see no reason to support running > > > > > > > > src_test() > > > > > > > > with USE="-test". > > > > > > > > > > > > > > PMS does not specify that behavior (skipping src_test with > > > > > > > USE=-test). > > > > > > > It is better to define the requrement explicitly rather than > > > > > > > relying > > > > > > > on a Portage-specific behavior. > > > > > > > > > > > > Then PMS should be fixed. Putting useless code in thousands > > > > > > of ebuilds due to bureaucratic reasons is ridiculous. Having strict > > > > > > conformance to the PMS is good, but common sense should still be > > > > > > considered. > > > > > > > > > > Since PMS doesn't specify the behavior of FEATURES, I suppose we could > > > > > make FEATURES=test imply RESTRICT="!test? ( test )". Would there be > > > > > any > > > > > drawbacks to that? > > > > > > > > Except for Portage once again silently letting developers pass with non- > > > > PMS behavior, and making other PMs fail with the ebuilds? > > > > > > Is it really sane for other PMs to behave that way though? > > > > > > In PMS it says src_test "may be disabled by user too, using a > > > PM-specific mechanism", which doesn't explicitly rule out behavior based > > > on USE settings. > > > > It doesn't rule out disabling based on the phase of the moon either, or > > my mood which is degrading badly with this discussion. > > Well, using package.use for this doesn't really make sense within the > context of ebuilds that don't have IUSE=test, which is an argument for > people to use package.env as a consistent means to selectively disable > unit tests.
...and this is how it was supposed to work, and AFAIU how it works right now. -- Best regards, Michał Górny
signature.asc
Description: This is a digitally signed message part