Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

softwareSuggestions on

See original GitHub issue

Splitting off this conversation from #232 given discussion with the task force on the 1/15 call.

It looks like including “suggestions” in the term name might be better than “dependencies” given that “dependency” and “optional” are kind of antonyms— it should be noted though that the codemeta crosswalk to NodeJS maddeningly includes the NodeJS term “devDependencies / optionalDependencies” and the crosswalk with Ruby includes “add_development_dependency”

R community’s use of the term “suggests” is more clarifying: “your package can use these packages, but doesn’t require them. You might use suggested packages for example datasets, to run tests, build vignettes, or maybe there’s only one function that needs the package.” This description from the R community is a bit different from the current codemeta description: “Optional dependencies, e.g. for optional features, code development, etc.”

The R description implies that the code is deliberately written with accommodations for working with specific R packages, whereas my interpretation had been more general. However, an actual list from the R community shows that the use of “Suggests” is really quite broad (i.e., suggesting knitr and rmarkdown when any R script run in R Studio could use these).

My interpretation is that “suggestions” are really more “recommendations” here. Meaning that rather than just saying people could consider using particular packages, they are listing packages that they endorse as suitable for specific enhancements and added features. For these reasons I’m suggesting a changes to the term description and name in addition to updating my proposal text:

Status Property Description
Current softwareSuggestions Optional dependencies , e.g. for optional features, code development, etc.
Proposed addRecommendations Additional software to enable optional features, code development, interoperability, etc.

If renaming the term is way out of scope, I would propose at least updating the description.

Updated proposal text:

It is sometimes useful to specify when a software package is helpful (but not required) to run or test a specific code or enhance some aspect or implementation of a software package. For instance, something like the Python module “Palettable” could be used to visualize results and make a graph more accessible to people with visual impairments, but it may not be required to render the graph. Similarly, certain R and Python packages may make it easier to generate PDFs and HTML to more easily share code with others (e.g. knitr + R Studio; Jupyter)

A new property named “addRecommendations” could be used to make distinctions between true dependencies that are required to run software, and optional additional software deemed to be particular useful for a given purpose. A property like this could be used to describe something like a “software add-on” (Wikidata item) or a package that just includes useful example datasets but is not needed to run a particular piece of software (e.g., diamonds in ggplot2).

This text is also available for comment here.

Issue Analytics

  • State:open
  • Created 4 years ago
  • Comments:13 (5 by maintainers)

github_iconTop GitHub Comments

arfoncommented, Jun 1, 2021

Personally I am tempted to drop the codemeta term entirely, and stick with the vocabulary where we have only softwareRequirements. The metadata provider can then interpret that as they choose. I am not convinced there is a semantically meaningful distinction to be made between the two categories in the abstract, independent of a specific package management software tool.

👍 to dropping a term if we don’t think it’s absolutely needed.

mfennercommented, Jun 30, 2021

+1 to dropping this term as per Force11 Codemeta Task Force call.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Write proposal for the adoption of the CodeMeta ...
Proposal text for softwareSuggestions: It is sometimes useful to specify when a software package is helpful, but not required, ...
Read more >
SoftwareApplication - Type
Property Expected Type Description memoryRequirements Text or. URL Minimum memory requirements. releaseNotes Text or. URL Description of what changed in this version. screenshot ImageObject or. URL...
Read more >
Getting started with using Microdata is a set of extensible schemas that enables webmasters to embed structured data on their web pages for use by search engines...
Read more >
applicationCategory - Property Property: applicationCategory - Type of software application, e.g. 'Game, Multimedia'.
Read more >
Organization of Schemas is a set of extensible schemas that enables webmasters to embed structured data on their web pages for use by search engines...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Post

No results found

github_iconTop Related Hashnode Post

No results found