Releases: wot-oss/tmc
Releases · wot-oss/tmc
v0.0.0-alpha.7
Added
- Added verb
check
with sub-commandsindex
andresources
check index
: validates the index wrt stored Thing Modelscheck resources
: validates stored Thing Models (path, name, syntax etc.)- Put a limit on importable TM name length at 255 characters
Changed
- Removed the concept of official TMs
- Force all TM ids and key fields in imported TMs to be sanitized and lower case
v0.0.0-alpha.6
Changed
- Renamed the go module to "github.com/wot-oss/tmc"
- Renamed command
remote
torepo
- Renamed command
update-toc
toindex
- Tab-completions now only complete a path segment instead of the full name to resemble shell completion in a file system
- Removed mockery dependency from final binary
v0.0.0-alpha.5
Added
- Implemented REST API authentication with JWT tokens and JWKS validation
- Implemented
version
command to show the version of the tm-catalog-cli - Implemented autocompletion for most flags and arguments for the shell autocompletion script
- Added an optional flag to fetch to restore original external id to the fetched TM
Changed
- Request results from multiple remotes concurrently instead of sequentially
Fixed
- handle timestamp collisions on push by retrying after one second, forcing generation of new id, or reporting the error if all else fails
- Display errors when accessing remotes for list/verions instead of silently ignoring them
v0.0.0-alpha.4
Added
- REST API: added
meta.page.elements
to inventory response, reflecting number of entries in current result page
Changed
- REST API: renamed inventory endpoint
/versions
to/.versions
- REST API: removed
meta.created
from inventory response - Removed '--exact' flag to
list
andpull
list
andpull
: match given name pattern as a prefix by complete path partslist
: changed output format: put NAME column first, renamed PATH column to MPNversions
: changed output format: renamed PATH column to ID
v0.0.0-alpha.3
Added
- Building docker base image for releases to enable catalog hosting
- Implemented file locking to avoid data races (guaranteed for Linux/MacOSX)
- Implemented
pull
command to fetch and save multiple thing models at once - Implemented setting CORS options for API
- Implemented fetching a TM by a [partial] semantic version also in REST API
- Print information about used config file in
help
- Implemented a 'tmc' remote type, which uses our own REST API as the underlying TM storage
- Added 'filter.name' parameter to REST API '/inventory' listing
- Added '--exact' flag to
list
andpull
Changed
create-toc
: renamed toupdate-toc
and allow for partial updateslist
: allows now listing by name patternserve
: separate configuration of the remote(s) to be served from the target remote for pushfetch
:--output
now accepts only a target folder to save TM to,--with-path
has been removedlist, pull
: removed filter flagfilter.externalID
, search for externalID has now to be done by query search-s
- REST API: removed filter parameter filter.externalID from
/inventory
,/authors
,/manufacturers
,/mpns
,
search for externalID has now to be done by query parametersearch
- enable/disable logging is now done only by setting a loglevel
Fixed
- count only enabled remotes when checking if empty remote specification is unambiguous
- make fetch by partial semantic version match the most recent version beginning with given string
- (BREAKING!)
push
: file hash calculation has been made more reliable and idempotent. Consequently, some files if pushed to TMC, may receive a new version hash, despite no change in contents fetch
: fixed "Unable to parse TMID..." error when fetching an official TM by content hash- prevent
serve
from using one of remotes from config as push target when '-r' or '-d' are given - print the actual error if updating TOC after
push
fails
v0.0.0-alpha.2
Fixed
- config is now created if not existing
- Adding ".exe" to Windows binaries
v0.0.0-alpha.1
This the first alpha release, which implements the most basic verbs to create and interact with a thing model catalog.
Added
- Verbs: create-toc, fetch, list, push, remote, serve, validate, versions
- Target local catalogs with the '--directory' flag
- fetch can now create a file instead of printing to stdout
- serve now exposes a REST API
See README.md for a description of all current features.