v0.7.0
What's New
Fixed
- Transient network failures no longer abort an entire scan. Network errors, truncated responses, and
429/5xxstatus codes are now retried with exponential backoff. A server-providedRetry-Afterheader continues to take precedence. - Chunks already held by the server are treated as successful. A
409 RANGE_CONFLICTresponse indicates the upload completed and no longer fails the scan. - Incomplete enrichment is now reported. Components left without data by a failed request are named on stderr, preventing a partial result from being mistaken for a complete one.
Added
Config.RetryBackoffBase— the initial backoff interval, doubled on each subsequent attempt. Defaults to 250ms.
Changed
Config.MaxRetriesnow applies to all transient failures, not only to429/503responses carryingRetry-After. A negative value disables retries, consistent withTimeout.
Breaking changes
Config.MaxRetryAfterhas been renamed toConfig.MaxServerRetryWait.ChunkError.Indexhas been replaced byChunkError.Purls, which identifies the components left without data.- Decoration pipeline results are now typed per layer.
PipelineResult.Servicesis replaced byLicenses,Cryptography,Geoprovenance, andVulnerabilities, each of type*Layer[T]. Unreadable responses are collected inErrors. - The
scansourceadapters no longer carry aFromsuffix:FromScanResultbecomesInventory,LicensesFrombecomesLicenses, and so on.LicenseKeybecomesKey.
Install
Prebuilt binary: download the archive for your platform below, extract it,
and move scanoss-cli onto your PATH. On Linux (amd64):
tar xzf scanoss-cli-linux-amd64.tar.gz
sudo mv scanoss-cli /usr/local/bin/Verify a download against checksums.txt:
sha256sum -c --ignore-missing checksums.txtGo:
go install github.com/scanoss/scanoss.go/cmd/scanoss-cli@latestSee the README and
CLIENT_HELP.md
to get started.