gxwf tool-versions
List the TRS-published versions of a Tool Shed tool, ordered oldest→newest (newest last). Used after tool-search has surfaced a candidate trsToolId and the caller needs to pick a version to cache.
<tool-id> accepts both forms:
- TRS form:
owner~repo~tool_id(e.g.devteam~fastqc~fastqc). - Pretty form:
owner/repo/tool_id(e.g.devteam/fastqc/fastqc).
The ~ form is the Tool Shed’s TRS encoding (slashes break FastAPI path-param decoding); the CLI accepts both and normalizes.
Output
Default: one version string per line, oldest first.
--json:
{
"trsToolId": "devteam~fastqc~fastqc",
"versions": ["0.72+galaxy1", "0.73+galaxy0", "0.74+galaxy0"]
}
--latest --json:
{
"trsToolId": "devteam~fastqc~fastqc",
"versions": ["0.74+galaxy0"]
}
Examples
gxwf tool-versions devteam/fastqc/fastqc
gxwf tool-versions devteam~fastqc~fastqc --latest
gxwf tool-versions devteam/fastqc/fastqc --json
Gotchas
- TRS dedupes by version string. If multiple changesets publish the same
version(which is legal — the XML version field is not monotonic and not enforced unique), only the last-seen one appears. The other changesets are invisible at this layer. To see the full set of changesets that publish a given version, use tool-revisions. See component-tool-shed-search §3 and §5. --latestreturns the lexicographically/iteration-order last item, not a semver-parsed maximum. In practice the TRS list is ordered consistent with the Tool Shed’s installable-revisions ordering, so “newest” is normally what you want — but do not assume strict semver semantics.- Versions ≠ changesets. A single TRS version can correspond to multiple changesets in the underlying Mercurial repo. Pinning a workflow for reproducible reinstall requires a
(name, owner, changeset_revision)triple, not just a version — that is what tool-revisions produces. - Stub list endpoint. The Tool Shed’s TRS
/toolsenumerator is unimplemented (returns[]). You cannot bulk-list tools via TRS; you must already have atrsToolIdfrom search or a known input.
Pairs with
- tool-search — produces the
trsToolIdconsumed here. - tool-revisions — drills from a
(trsToolId, version)down to changeset revisions. galaxy-tool-cache add toolshed.g2.bx.psu.edu/repos/<owner>/<repo>/<tool_id> --version <v>— caches the picked version’sParsedTool.