[TangerineSDR] Filename structure, Node info contents, other stuff to ponder

Rob Wiesler robert.wiesler at case.edu
Wed May 6 18:15:44 EDT 2020


On Wed, May 06, 2020 at 16:42:44 -0400, John Gibbons wrote:
> Update to spec - tried to be concise but specific for definitions so there
> is no confusion.

Thanks.

Nits:

'#' is called "hash", not "hashtag".  Children call it "hashtag" because
Twitter made them stick a "hash" in front of their "tags", and they
started conflating the hash ('#'), the tag ("getoffmylawn"), and the
entire hashtag ("#getoffmylawn").  If that bothers you, call it an
octothorpe.

There's a typo immediately after that ("Metadata,txt" vs.
"Metadata.txt").


More serious issues:

Please don't set aside any node ID other than "N00000".  Feel free to
tag any nodes as test nodes either in the database or in the metadata,
but no spec should try to list them all if there's going to be more than
just the one (or a larger range of test node IDs).

Again, Windows 7/10/etc. allow the use of '.' in filenames [0].  If you
disagree, try running this on a Windows machine:

	python -c "open('foo-2.5-bar.txt', 'w').close()"

[0] https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file

Please provide your specifications as plain text files so that I and
others can make diffs of it instead of having to re-read the whole thing
every single time (unless you don't want me nitpicking anymore?).  Also,
you wanted these specifications to end up in version control, right?
Turning them into plain text is step 1.


Really serious issues:

Don't specify the Python code to be anywhere inside the user's home
directory!  Ever!  We're going to at least try to package up all of the
code, right?  We'll put our Python modules in a proper namespace, and
they will be installed in a standard location according to the FHS,
Python convention, and the distribution's rules for Python packages.
There's no reason for you to specify any location other than that.  Our
importable modules will live in PYTHONPATH.  Our binaries will live in
PATH.  Lintian may scream at us for the state of our packages, but it
will *not* complain about us trying to install files in /home .

Don't use "/temp" as a temp directory!  Either use "/tmp" (which exists,
and is part of the FHS, and actually tends to be temporary), or better
yet, use some combination of mktemp(1), mkdtemp(3), et. al. to generate
temp files/directories subdirectory correctly.  In Python, take a look
at the "tempfile" module.



More information about the TangerineSDR mailing list