Title: Recommended command line best practice to expose version · Issue #6 · codeisscience/software-usage-reporting · GitHub
Open Graph Title: Recommended command line best practice to expose version · Issue #6 · codeisscience/software-usage-reporting
X Title: Recommended command line best practice to expose version · Issue #6 · codeisscience/software-usage-reporting
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 Pa...
Open Graph 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...
X 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...
Opengraph URL: https://github.com/codeisscience/software-usage-reporting/issues/6
X: @github
Domain: patch-diff.githubusercontent.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Recommended command line best practice to expose version","articleBody":"We should recommend best practice for version information (and check what already exist for that), given a command line tool.\r\n\r\n_TODO: Find/link to tool author guides_\r\n\r\nFor instance:\r\n\r\n## Level 0\r\n\r\n* MUST have a programmatic way to get version info \r\n* Parameter SHOULD be `--version` but MAY be arbitrarily named\r\n\r\n```shell\r\n$ tool -custom-version-parameter`\r\n\u003e 1.2.3\r\n```\r\n\r\n## Level 1\r\n\r\n* MUST respond to parameter `--version`\r\n* MUST include tool name\r\n* MUST include version number\r\n* Version number SHOULD be [semantic version](https://semver.org/spec/v2.0.0.html) (_TODO: How can you tell?_)\r\n\r\n\r\n```shell\r\n$ python --version\r\nPython 3.7.1\r\n```\r\n\r\n## Level 2\r\n\r\n* MUST support/include detailed version info\r\n* SHOULD support `--version --verbose`\r\n* SHOULD list important dependencies and their versions\r\n* MAY recursively ask dependencies for detailed version info (_TODO: How to show nesting?_)\r\n\r\n```shell\r\n$ python --version -V\r\nPython 3.7.1 (default, Dec 14 2018, 19:28:38) \r\n[GCC 7.3.0]\r\n```\r\n\r\n```shell\r\n$ latex --version --verbose\r\npdfTeX 3.14159265-2.6-1.40.18 (TeX Live 2017/Debian)\r\nkpathsea version 6.2.3\r\nCopyright 2017 Han The Thanh (pdfTeX) et al.\r\nThere is NO warranty. Redistribution of this software is\r\ncovered by the terms of both the pdfTeX copyright and\r\nthe Lesser GNU General Public License.\r\nFor more information about these matters, see the file\r\nnamed COPYING and the pdfTeX source.\r\nPrimary author of pdfTeX: Han The Thanh (pdfTeX) et al.\r\nCompiled with libpng 1.6.34; using libpng 1.6.34\r\nCompiled with zlib 1.2.11; using zlib 1.2.11\r\nCompiled with poppler version 0.62.0\r\n\r\n```\r\n\r\n## Level 3\r\n\r\n* MUST support structured version info\r\n* MUST support `--version=cff`\r\n* MUST return *only* valid [CITATION.cff](https://citation-file-format.github.io/) YAML/JSON content on stdout\r\n* SHOULD include a CFF `references` section\r\n* Dependencies SHOULD be listed as `software` under `references`\r\n* MAY recurse call `--version=cff`on tools and embed result in their `references` item\r\n\r\n_TODO: Check if anything already supports something like this_\r\n\r\n```shell\r\n$ tool --version=cff\r\ncff-version: 1.0.3\r\nmessage: If you use this software, please cite it as below.\r\nauthors:\r\n - family-names: Druskat\r\n given-names: Stephan\r\n orcid: https://orcid.org/0000-0003-4925-7248\r\ntitle: My Research Tool\r\nversion: 1.0.4\r\ndoi: 10.5281/zenodo.1234\r\ndate-released: 2017-12-18\r\n```","author":{"url":"https://github.com/stain","@type":"Person","name":"stain"},"datePublished":"2019-07-27T09:33:43.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":1},"url":"https://github.com/6/software-usage-reporting/issues/6"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:61a0a29a-220f-84af-13a1-9d3768b225a6 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | 9252:1E178:DB4372:11C158A:697E3FE4 |
| html-safe-nonce | a96159e78ee1e62b9a4b55b43593047f757226f35c0945267684ef40ef6e48a9 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5MjUyOjFFMTc4OkRCNDM3MjoxMUMxNThBOjY5N0UzRkU0IiwidmlzaXRvcl9pZCI6IjM2MTM1MjAyNDQ2MjM5NDk3OTYiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | d1b9b9fc3310876fa7a053908085b65cdedbfd8f4cd31385ac923b7daf1a5de8 |
| hovercard-subject-tag | issue:473620530 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/codeisscience/software-usage-reporting/6/issue_layout |
| twitter:image | https://opengraph.githubassets.com/e4bc5bee630088d2fde68be5bc02cd70a41bff8792acd68c05e0e69fe5c00949/codeisscience/software-usage-reporting/issues/6 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/e4bc5bee630088d2fde68be5bc02cd70a41bff8792acd68c05e0e69fe5c00949/codeisscience/software-usage-reporting/issues/6 |
| og:image:alt | 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... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | stain |
| hostname | github.com |
| expected-hostname | github.com |
| None | 60279d4097367e16897439d16d6bbe4180663db828c666eeed2656988ffe59f6 |
| turbo-cache-control | no-preview |
| go-import | github.com/codeisscience/software-usage-reporting git https://github.com/codeisscience/software-usage-reporting.git |
| octolytics-dimension-user_id | 37867383 |
| octolytics-dimension-user_login | codeisscience |
| octolytics-dimension-repository_id | 199130518 |
| octolytics-dimension-repository_nwo | codeisscience/software-usage-reporting |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 199130518 |
| octolytics-dimension-repository_network_root_nwo | codeisscience/software-usage-reporting |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 7c85641c598ad130c74f7bcc27f58575cac69551 |
| ui-target | canary-2 |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width