[Numpy-discussion] Branching 1.1.x and starting 1.2.x development

Pearu Peterson pearu@cens.ioc...
Tue May 20 05:47:56 CDT 2008


On Tue, May 20, 2008 12:59 pm, Jarrod Millman wrote:

> Commits to the trunk (1.2.x) should follow these rules:
>
> 1.  Documentation fixes are allowed and strongly encouraged.
> 2.  Bug-fixes are strongly encouraged.
> 3.  Do not break backwards compatibility.
> 4.  New features are permissible.
> 5.  New tests are highly desirable.
> 6.  If you add a new feature, it must have tests.
> 7.  If you fix a bug, it must have tests.
>
> If you want to break a rule, don't.  If you feel you absolutely have
> to, please don't--but feel free send an email to the list explain your
> problem.
...
> In particular, let me know it there is some aspect of this that
> you simply refuse to agree to in at least principle.

Since you asked, I have a problem with the rule 7 when applying
it to packages like numpy.distutils and numpy.f2py, for instance.

Do you realize that there exists bugs/features for which unittests cannot
be written in principle? An example: say, a compiler vendor changes
a flag of the new version of the compiler so that numpy.distutils
is not able to detect the compiler or it uses wrong flags for the
new compiler when compiling sources. Often, the required fix
is trivial to find and apply, also just reading the code one can
easily verify that the patch does not break anything. However, to
write a unittest covering such a change would mean that one needs
to ship also the corresponding compiler to the unittest directory.
This is nonsense, of course. I can find other similar examples
that have needed attention and changes to numpy.distutils and
numpy.f2py in past and I know that few are coming up.

Pearu



More information about the Numpy-discussion mailing list