v2.0.0-rc.3
Pre-release
Pre-release
New Features
- Added utility functions for content descriptors
- content.NewDescriptorFromBytes() to generate a descriptor from a byte slice
- content.Equal() to compare if two descriptors point to the same content
- Simplified API
- registry/remote/auth.StaticCredential() for easier and secure credential setting for simple scenarios
- oras.Fetch() to fetch content as a reader via a reference string from any target
- oras.FetchBytes() to fetch content as a byte slice via a reference string from any target
- oras.PushBytes() to push a byte slice to any target
- oras.TagN() to tag content with multiple tags
- oras.TagBytes() to push a byte slice to any target and tag it with a single tag
- oras.TagBytesN() to push a byte slice to any target and tag it with multiple tags
- Extracted content.Tagger interface from content.TagResolver
Deprecation
- BREAKING CHANGE Moved
content.ErrSizeExceedLimit
toerrdef.ErrSizeExceedsLimit
- BREAKING CHANGE Removed
registry.ReferenceTagger
- BREAKING CHANGE Removed
registry/remote.Repository.TagReference()
Bug Fixes
- fix #225: Pulling from AWS ECR fails with error
empty response Docker-Content-Digest
- fix #294: Pushing artifacts to Google GAR fails with error
Error PUT ... unexpected status code 400: Bad Request
- fix potential security vulnerabilities: #289, #291
Other Changes
- BREAKING CHANGE Updated support window to Go
1.18
and1.19
- BREAKING CHANGE Reduced interface requirements in corresponding functions of the package
oras
toReadOnly
interfaces - BREAKING CHANGE
Manifest()
of registry.Repository returns a ManifestStore instead of a BlobStore - Improved error message on planform mismatch
Detailed Commits
- build: update support window to Go 1.18, 1.19 by @wangxiaoxuan273 in #270
- refactor: Small refactor of reference module and tests by @nima in #279
- fix: oras pull error
empty response Docker-Content-Digest
by @nima in #237 - refactor!: add read-only interfaces by @Wwwsylvia in #283
- feat: add utility methods for creating and comparing OCI descriptors by @wangxiaoxuan273 in #281
- fix: remove
+json
encoding from the default config media type by @Wwwsylvia in #288 - feat!: support
oras.Fetch
andoras.FetchBytes
by @Wwwsylvia in #282 - feat: add a utility method for specifying static credentials by @wangxiaoxuan273 in #280
- refactor: improve error message on platform mismatch in order to distinguish platform not found and manifest not found by @lizMSFT in #292
- feat: Support
oras.PushBytes
andoras.TagBytes
by @Wwwsylvia in #293 - fix: Revert "Upload empty blob when packing" by @Wwwsylvia in #295
- fix: Revert "fix: remove
+json
encoding from the default config media type" by @Wwwsylvia in #297 - fix: use a default value when
Concurrency
is not specified by @Wwwsylvia in #296 - feat!: Support specifying
MaxMetadataBytes
option fororas.Resolve
andoras.Copy
by @Wwwsylvia in #299 - feat:
Repository.Manifest()
now returns aManifestStore
by @Wwwsylvia in #300 - feat!: support
oras.TagN
by @Wwwsylvia in #301 - feat: implement ReferenceParser for manifestStore by @Wwwsylvia in #305
New Contributors
Full Changelog: v2.0.0-rc.2...v2.0.0-rc.3