[RFC][PERFORMANCE][PYREX][TIRED OF THESE YET?] *fast* walkdirs.
Robert Collins
robertc at robertcollins.net
Thu Jun 15 16:31:11 BST 2006
On Thu, 2006-06-15 at 09:42 -0500, John Arbash Meinel wrote:
> >
> > Right. A --debug-disable-C flag or something might theoretically be useful, but
> > is clearly a different use case than for --no-plugins.
> >
> > -Andrew.
>
> Yeah. I agree with you on version skew. I also agree that Robert's
> method is a little too 'magical'. And doesn't give you any way to
> disable it. I'm not sure if he does it for expediency as he does
> prototyping, or if it is his long-term plan.
A number of reasons.
The first one is the tension between casual user/developer tests and
PQM:
- When an end user without the C extensions runs 'bzr selftest', no
tests should fail.
- When PQM runs the test suite via 'make check' the C extensions *must*
build and *must pass*.
The second one is return on effort: as long as the extensions load
reliably and get tested by PQM, my concerns about quality are covered.
Interface based testing avoids getting into the N-dimensions multiplier
of test runs - so interface testing is usually better. To do that here
and not break either of the first two cases I described, we need flags
to the test suite to say 'fail if the C extensions are not present' -
which is just glue code to no innate value. (Doing interface testing
with two different module names is a *trivial* problem).
Lastly... there is a much greater risk with the C extensions of having
something slip through interface tests, because we have quite a
different environment suddenly poking its head up. So I actually think
its *worth* running the whole test suite with and without the C
extensions. Most of the time I would not say that :).
That said, obviously whatever gets merged should work well, be easy to
install for a user, degrade gracefully, and also meet the quality
concerns above.
Right now, I think the Makefile approach I have is not polished - I have
not tested that 'Make install' degrades properly, for instance - so I
wouldn't merge it today anyway. But I think that the QC aspects are well
covered, and I'm not keen on writing largely valueless glue code simply
to avoid doing two runs of the test suite, when I actually want that in
this case.
If someone else wants to write it, sure, I'll give pointers etc.
As for disabling the extensions, I dont think there should be an option
- just like we dont have an option to disable Transports.
Rob
--
GPG key available at: <http://www.robertcollins.net/keys.txt>.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 191 bytes
Desc: This is a digitally signed message part
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20060616/cece56dd/attachment.pgp
More information about the bazaar
mailing list