Comment 3 for bug 142968

Revision history for this message
John Belmonte (john-neggie) wrote :

> = Comment - Entry #3 by tim_one on May 24, 2004 4:14 pm
> stats.py is intended to be run directly from a shell, ditto simul.py and
> dangle.py, so it's appropriate that they have #! lines. Added them to
> setup.py's "scripts" list, also on HEAD.

When a script is installed into /usr/bin, there is a responsibility associated with that. Distributions such as Debian have policies requiring every command in /usr/bin to have a man page. So someone will have to bear the burden of maintaining a man page, either the ZODB team or the distribution packager, for each item you add to the scripts list. Also you have to worry about command name collisions, which I've pointed out elsewhere.

I don't think every .py file in the ZODB distribution that can be run directly from the shell should be installed into /usr/bin. The precedent seems to already exist: there are scripts in the various test directories which aren't installed into /usr/bin (e.g., ZEO/tests/speed.py).

I think one way to go about resolving all of this is to make sure things like simul.py, which would rarely get used by a normal user, are properly located in a test directory. Furthermore, the scripts in the test directories should not have headers or execute permission set, and should not be installed into /usr/bin. They are tests and experiments, and it's probably best to avoid having users mistake them for published and supported command line interfaces.