[SciPy-dev] Add bz2 support to io.mmio [not tested] <--

Stéfan van der Walt stefan at sun.ac.za
Thu Apr 10 13:07:46 EDT 2008


On 10/04/2008, Pearu Peterson <pearu at cens.ioc.ee> wrote:
> On Thu, April 10, 2008 3:01 pm, Stéfan van der Walt wrote:
>  > Pearu,
>  >
>  > Why do checkins like these even happen?
>  >
>  > 04:03 Changeset [4125] by pearu
>  >     Add bz2 support to io.mmio [not tested]
>  >
>  > I appreciate that you labelled the test deficiency, but what now?  Are
>  > you going to add the test, or was the message meant as a reminder to
>  > someone else?
>
>
> Have you followed the thread
>
>   http://projects.scipy.org/pipermail/scipy-dev/2008-April/008804.html
>
>  ? The changeset is there because a user asked a feature. Adding
>  this feature was trivial, testing it is not so because it requires certain
>  input that I don't have at hand. There is a request for the user to check
>  if the feature works.

While waiting for input, why not attach the change as a patch to the
ticket?  That way, once the user leaves feedback, a test can be
constructed and the patch checked in.

>  I don't see harm in such patches, it does not break anything,
>  and there is potential user who can confirm if the feature works or not.

The problem is that, while I trust your coding skill, I have no
guarantee that your code is working right now on my machine, or that
it won't stop working at some point in the future.  Here's an abstract
from a testing guideline I am busy writing, that describes my point of
view:

"""
Why should each changeset be accompanied by a test?
---------------------------------------------------
A changeset addresses some deficiency (e.g. missing functionality) or
breakage (e.g. incorrect results, or failure to execute).  Breakages
should ideally be reported automatically by the test framework.  In
order to accomplish this, new functionality should have test coverage,
to ensure that our software produces valid and accurate output, now
and in the future, on any of a multitude of platforms and build
systems.

Are tests useful for anything other than verifying results?
-----------------------------------------------------------
Mainly, there are three groups who benefit from tests: the
documentation team, developers and users.

To the documentation team, tests are invaluable since they illustrate
function calling conventions.  Developers also rely on tests to
highlight corner cases, of which they need to be aware when rewriting
functionality.

The most important group, the end-users, benefits from tests in the
form of doctests; these inline examples illustrate how to use our
libraries.
"""

I hope I caused no offense, I have a lot of respect for the work you
and others did in SciPy.  I just hope that we can strive to build an
higher quality codebase in the future.

Regards
Stéfan



More information about the SciPy-Dev mailing list