Nuts and Bolts, 2014-08-05 — making a Debian-compatible config, how to run tests

Zooko Wilcox-OHearn zooko at leastauthority.com
Wed Aug 13 02:08:26 UTC 2014


.. -*- coding: utf-8-with-signature-unix; fill-column: 73; -*-
.. -*- indent-tabs-mode: nil -*-

LAFS Nuts And Bolts Party, 2014-08-05
=====================================

in attendance: Daira, Nathan, Zooko (scribe), Meskio, Cypher (lurker)

theme: make Tahoe-LAFS be a proper daemon instead of a user-app from Debian's
perspective

https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2045# Make the paths of the
different folders configurable

Meskio already has a branch with a lot of patches, which has already gotten
some review and iteration with Leif:

https://github.com/tahoe-lafs/tahoe-lafs/pull/79

Daira and Nathan and Zooko started reviewing the patches and posting
comments.

Meskio started writing a new branch with patches that address the review
comments.

Nathan tried to run the tests, and encountered some problems:

1. He grepped for instructions for how to run tests in the docs/ subdir and
   didn't find any such instructions.

   (He didn't notice the part of
   https://tahoe-lafs.org/trac/tahoe-lafs/browser/trunk/docs/quickstart.rst?rev=82579cec966c3b8b0c2161c1946be01b6953f610
   that said to run "python setup.py trial".)

2. He got confused when he learned that there were two different commands
   that you could pass to "python setup.py" to run tests. You can run "python
   setup.py trial" or "python setup.py test". He began to wonder how these
   behaved differently from one another and whether one or the other was a
   convention shared with other software projects beyond Tahoe-LAFS.

3. He was further nonplussed when I told him that there was also a Makefile
   so that you could use "make $MAKECOMMAND" instead of "python setup.py
   $SETUPCOMMAND".

4. He was further nonplussed when I told him that there were at least two
   commands defined in the Makefile for running tests.

5. He was further nonplussed when I told him that the documentation that he
   failed to find in the docs/ directory was in fact hosted on the wiki:
   https://tahoe-lafs.org/trac/tahoe-lafs/wiki/HowToWriteTests (which,. while
   it is about how to *write* tests, also includes instructions on how to
   *run* tests).

6. He was further nonplussed when it turned out that the instructions on that
   wiki page do not tell you to use any of the four ways of running tests
   mentioned above, but instead instroduce a *fifth* way of running tests::

      ./bin/tahoe @coverage run --branch --include='src/allmydata/*'
@tahoe debug trial allmydata.test.test_fname

At this point, Nathan disconnected from the videoconference. I'm not sure if
it was due to a network outage at the San Francisco coffeeshop that he was
sitting in, or if his head exploded.

How could we improve this situation? First of all we should start with the
docs. We need a doc that is discoverable when someone looks for "how do I run
tests?".


Then the scribe (Zooko) had to leave, after only 1 hour and 23 minutes of
Nuts and Bolts Party goodness, so this missive here ends.



More information about the tahoe-dev mailing list