I have no strong opinion, either, but... In most software projects, `make test` is something that you can do with the sources, but not with an installation. I think we agree that the tests for package "X" should be in the same repository as "X-lib", "X-doc", etc., but I don't think there's much precedent for including tests in the main distribution.
From the perspective of avoiding dependencies, I think there is value in leaving things out of "X" (i.e., "X" as a typical user of the library would want to install it), even when "X-lib" and other packages are available. For example, the "main-distribution" package includes "X" for various "X"s --- not "X-lib" plus "X-doc" plus .... It makes more sense to me to put the decision of what is normally included as "X" with "X" itself, instead of with each package that defines a distribution. At Wed, 16 Oct 2013 06:55:21 -0500, Robby Findler wrote: > It seems like a common thing to have a "make test" that comes with various > software packages out the "in the wild". Judging from the traffic on the > gambit list, their version seems to get used, too. I'm not sure if you'd > classify gambit's 'make test' as something that would be in the test > package, tho. A conscientious user might run the test suite (if it were > written by a conscientious owner who made it easily push-button) before > submitting a bug report just to see if there were something interesting to > report along with the bug report. > > I guess I still don't actually have a strong opinion, but if we don't go > this direction, it would be nice to have a positive rationale for why we > suggest leaving this particular piece out of "X". I can clearly see a > strong reason to leave parts out of "X-lib" for minimizing dependencies, > but that ship has sailed if we are including "X-doc" in "X". > > Robby > > > On Tue, Oct 15, 2013 at 11:00 PM, Neil Toronto <neil.toro...@gmail.com>wrote: > > > On 10/15/2013 06:40 PM, Robby Findler wrote: > > > >> Actually, on second thought, I think I'm going to buck the trend here > >> and answer "yes" to the question in the subject line. > >> > >> Two scenarios come to mind: someone hears about some cool new library > >> and then does something like 'raco pkg install math'. Next thing, > >> something goes wrong and they ask about it on a mailing list and get the > >> response "Run this code: (require ...)" which ends up running something > >> from the test suite of that library [1]. In that case, we'd probably > >> like them to have everything related to the library. > >> > >> Second: someone decides to build a library that depends on the, say, the > >> math library and they have to choose what to put in their info.rkt file. > >> They don't want to put math no matter if it includes the tests or not, > >> since they don't to force their clients to install the docs. So they'll > >> put math-lib. > >> > >> In other words, I don't see a lot of value in a pkg name taken up for > >> the lib+docs subset of some (conceptual) pile of code, but I do see > >> value in the "everything" pile and the "non-docs non-tests" pile. So I'd > >> say that the name "X" (from the subject) should mean everything. > >> > >> ... at least for a library. For an app, I'm less clear. > >> > >> Robby > >> > >> > >> [1] this actually happened recently as you probably recall (altho > >> 'test-floating-point' may not be in the math-test pkg) > >> > >> > http://lists.racket-lang.org/**users/archive/2013-October/**059881.html<http:// > lists.racket-lang.org/users/archive/2013-October/059881.html> > >> > > > > Right. It's in "math-lib" (the `math/utils' module) because it's useful > > outside of automated testing. Users can run it to find out how reliable and > > repeatable their floating-point results are on a given system. > > > > The rest of the math library tests are more or less system-agnostic. > > (There's a custodian shutdown test for unloading `math/bigfloat' that I > > think may be good to test on multiple platforms, but that's more of an > > automation thing.) I can't imagine asking a user to run them, and if I did, > > I wouldn't mind asking them to install an extra package first. > > > > Are there any other circumstances, besides a package owner asking, that a > > user would want to run all the tests for a package? > > > > Neil ⊥ > > > > > > _________________________ > > Racket Developers list: > > http://lists.racket-lang.org/**dev <http://lists.racket-lang.org/dev> > > > _________________________ > Racket Developers list: > http://lists.racket-lang.org/dev _________________________ Racket Developers list: http://lists.racket-lang.org/dev