Subject: Re: inflation of PKGREVISION bumps [was Re: CVS commit: pkgsrc]
To: Rene Hexel <firstname.lastname@example.org>
From: Michal Pasternak <email@example.com>
Date: 01/04/2004 04:33:08
Rene Hexel [Sun, Jan 04, 2004 at 01:46:26PM +1000]:
> I don't know what the solution is. I tend towards the more
> pragmatic approach: if I have enough reason to believe that a
> package is backwards compatible and I have tested it with a
> sufficient/representative number of dependencies, I usually
> assume that it will work with other packages as well.
Neither so-called pragmatic nor testing-by-hand are good testing methods.
"Pragmatic" is not a testing method at all; testing by hand involves too
much of human error when the package count is larger, than, say, 3 - 5.
Automated tests units should be provided by packages (and, well, some do
provide them, some don't) -- see www.extremeprogramming.org . For X11
application I would just simply run it (well, that implies having X on the
build host; bulk-running a 3rd party apps would also make buildhosts less
secure) -- if the app won't segfault after a given time (well, they tend to
have longer and longer start-up time), it propably means it is working good
enough to release it to the world. There are unit tests implemented in
Python, that claim to be able to test a GUI application too, but I haven't
tested any yet.
Of course, this would take a lot of RAM, CPU and time to perform. But I am
perfectly sure, that good, automated unit tests are the only way to
drastically reduce bug count before actually releasing a binary package.
> Okay, what about this: add a new INCOMPATIBLE_WITH (better
> names welcome) entry that is stored in binary packages.
And where would you hold INCOMPATIBLE_WITH ? In Makefile? That's not a good
idea. Only in binary package? More hand-work needed to build a set of binary
packages, greater bug possibility.
> This solves the problem for binary packages (assuming that
> appropriate, newer versions are being uploaded onto ftp@),
Jeremy could also update libtiff, rebuild only amd64 packages, that needed
it and "silently" upload them to ftp (without a rev bump) and e-mail
port-amd64@ about the binary packages.
Why amd64 owners should use binary packages anyway? I bet they can build
mozilla in the same time, that my machine needs to install a binary package
of it :)