-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
We should recommend best practice for version information (and check what already exist for that), given a command line tool.
TODO: Find/link to tool author guides
For instance:
Level 0
- MUST have a programmatic way to get version info
- Parameter SHOULD be
--versionbut MAY be arbitrarily named
$ tool -custom-version-parameter`
> 1.2.3Level 1
- MUST respond to parameter
--version - MUST include tool name
- MUST include version number
- Version number SHOULD be semantic version (TODO: How can you tell?)
$ python --version
Python 3.7.1Level 2
- MUST support/include detailed version info
- SHOULD support
--version --verbose - SHOULD list important dependencies and their versions
- MAY recursively ask dependencies for detailed version info (TODO: How to show nesting?)
$ python --version -V
Python 3.7.1 (default, Dec 14 2018, 19:28:38)
[GCC 7.3.0]$ latex --version --verbose
pdfTeX 3.14159265-2.6-1.40.18 (TeX Live 2017/Debian)
kpathsea version 6.2.3
Copyright 2017 Han The Thanh (pdfTeX) et al.
There is NO warranty. Redistribution of this software is
covered by the terms of both the pdfTeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the pdfTeX source.
Primary author of pdfTeX: Han The Thanh (pdfTeX) et al.
Compiled with libpng 1.6.34; using libpng 1.6.34
Compiled with zlib 1.2.11; using zlib 1.2.11
Compiled with poppler version 0.62.0
Level 3
- MUST support structured version info
- MUST support
--version=cff - MUST return only valid CITATION.cff YAML/JSON content on stdout
- SHOULD include a CFF
referencessection - Dependencies SHOULD be listed as
softwareunderreferences - MAY recurse call
--version=cffon tools and embed result in theirreferencesitem
TODO: Check if anything already supports something like this
$ tool --version=cff
cff-version: 1.0.3
message: If you use this software, please cite it as below.
authors:
- family-names: Druskat
given-names: Stephan
orcid: https://orcid.org/0000-0003-4925-7248
title: My Research Tool
version: 1.0.4
doi: 10.5281/zenodo.1234
date-released: 2017-12-18Metadata
Metadata
Assignees
Labels
No labels