Skip to content

Releases: oras-project/oras-go

v2.0.2

17 Mar 07:57
336b9fb
Compare
Choose a tag to compare

Bug Fixes

  • Fix #461: Untagged manifests might be accidentally removed from the index.json file in OCI layouts

Other Changes

  • Improve repository governance

Detailed Commits

Full Changelog: v2.0.1...v2.0.2

v1.2.3

28 Mar 02:43
cb56255
Compare
Choose a tag to compare

What's Changed

  • build(deps): bump golang.org/x/crypto from 0.4.0 to 0.5.0 by @dependabot in #408
  • build(deps): bump github.com/docker/cli from 20.10.21+incompatible to 20.10.22+incompatible by @dependabot in #405
  • build(deps): bump github.com/docker/docker from 20.10.21+incompatible to 20.10.22+incompatible by @dependabot in #406
  • build(deps): bump github.com/containerd/containerd from 1.6.12 to 1.6.15 by @dependabot in #407
  • build(deps): bump golang.org/x/crypto from 0.5.0 to 0.6.0 by @dependabot in #436
  • build(deps): bump github.com/containerd/containerd from 1.6.15 to 1.6.17 by @dependabot in #441
  • bump: update docker and docker/cli by @benschlueter in #428
  • build(deps): bump github.com/docker/cli from 23.0.1+incompatible to 23.0.1+incompatible by @dependabot in #439
  • build(deps): bump github.com/docker/docker from 23.0.0+incompatible to 23.0.1+incompatible by @dependabot in #440
  • build(deps): bump github.com/containerd/containerd from 1.6.17 to 1.6.18 by @dependabot in #447
  • build(deps): bump github.com/containerd/containerd from 1.6.18 to 1.6.19 by @dependabot in #452
  • build(deps): bump github.com/stretchr/testify from 1.8.1 to 1.8.2 by @dependabot in #451
  • build(deps): bump golang.org/x/crypto from 0.6.0 to 0.7.0 by @dependabot in #455
  • build(deps): bump github.com/containerd/containerd from 1.6.19 to 1.7.0 by @dependabot in #460

New Contributors

Full Changelog: v1.2.2...v1.2.3

v2.0.1

13 Mar 09:30
216f081
Compare
Choose a tag to compare

Bug Fixes

  • fix #449: index.json is not generated for OCI Stores that contain no manifests
  • fix #431: Some unit tests fail on Mac

Other Changes

  • Update the Go support window to [1.19, 1.20] (#442)
  • Improve documentation and repository governance

Detailed Commits

New Contributors

Full Changelog: v2.0.0...v2.0.1

v2.0.0

19 Jan 06:45
96a37c2
Compare
Choose a tag to compare

Brand New V2 Library

What's New

In version v2, ORAS Go library has been completely refreshed with:

  • More unified interfaces
  • Notably fewer dependencies
  • Higher test coverage
  • Better documentation
  • Balanced security and performance

Besides, ORAS Go v2 is now a registry client conforming image-spec v1.1.0-rc.2 and distribution-spec v1.1.0-rc1.

In ORAS Go v2, artifacts are modeled as Directed Acyclic Graphs (DAGs) stored in Content-Addressable Storages (CASs). Copying artifacts across repositories or generic targets is implemented as copying single-rooted DAGs across CASs. By extending the copy operation, ORAS Go v2 further supports copying underlying DAGs identified by a specific node. For instance, copying a signed artifact with its signatures across repositories.

Documentation and examples are available at pkg.go.dev.

Deprecation

Docker based key management is no longer supported. Credentials are required to be supplied to auth.Client for authentication. Related discussion can be found at #413.

Migration From v1

See MIGRATION_GUIDE.md.

What's Changed Since RC.6

New Features

Bug Fixes

  • fix #395: oras.Tag() and oras.TagN() should return a descriptor
  • fix #402: file.Store fails to extract folder containing symbolic links
  • fix #404: oci.Store and file.Store should record an absolute path instead of a relative path for root

Deprecation

  • BREAKING CHANGE: Interface registry.ReferrerFinder is renamed to registry.ReferrerLister
  • BREAKING CHANGE: Remove file.PackFiles()

Other Changes

Detailed Commits

  • fix: add error detail to resolve failure by @qweeah in #390
  • fix!: Tag() and TagN() return a descriptor by @shizhMSFT in #396
  • feat!: implement Tags for package content/oci by @shizhMSFT in #394
  • refactor: optimize performance for Extended Copy by @Wwwsylvia in #397
  • remove!: Remove file.PackFiles() and add an example instead by @Wwwsylvia in #400
  • doc: Remove main from the godoc URLs in README by @Wwwsylvia in #403
  • build: add dependabot for v1 branch, add GitHub Actions by @lucacome in #399
  • fix!: fix error when extracting folder containing symbolic links by @Wwwsylvia in #411
  • fix!: use absolute path for OCI root by @Wwwsylvia in #412
  • test: improve the symlink unit tests for file store by @Wwwsylvia in #414
  • feat!: retryable http client by @souleb in #398
  • doc: Update README and clean up godoc comments by @Wwwsylvia in #418

Full Changelog: v2.0.0-rc.6...v2.0.0

v1.2.2

23 Dec 09:53
715ce36
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.2.1...v1.2.2

v2.0.0-rc.6

12 Dec 15:03
4e58192
Compare
Choose a tag to compare
v2.0.0-rc.6 Pre-release
Pre-release

New Features

Bug Fixes

Other Changes

  • BREAKING CHANGE: Change the type of Concurrency options from int64 to int
  • Improve code quality (#363, #364)
  • Improve the readability of GoDoc

Detailed Commits

  • doc: fix testable example name by @Wwwsylvia in #365
  • fix: avoid copying Repository mutex state by @abursavich in #364
  • fix: attempt range query only if server explicitly supports by @shizhMSFT in #369
  • doc: make the default options displayed next to the option type on godoc by @Wwwsylvia in #372
  • fix: avoid panic from releasing unacquired semaphore by @abursavich in #363
  • refactor!: update the type of Concurrency options to int by @Wwwsylvia in #376
  • fix: allow chunked responses via HEAD request fallback by @AaronFriel in #370
  • feat: support creating read-only OCI store from fs.FS by @Wwwsylvia in #367
  • feat: support reading OCI layout from tarballs by @Wwwsylvia in #379
  • feat: change foreign layer error message at repository.Fetch() by @wangxiaoxuan273 in #377
  • feat: skip foreign layers on oras.Copy by @shizhMSFT in #380
  • fix: use proxy when copying node with successors by @qweeah in #384
  • refactor: refactor OCI store to fully support Predecessors() and Resolve() by @Wwwsylvia in #385

New Contributors

Full Changelog: v2.0.0-rc.5...v2.0.0-rc.6

v2.0.0-rc.5

18 Nov 03:41
621970f
Compare
Choose a tag to compare
v2.0.0-rc.5 Pre-release
Pre-release

New Features

Bug Fixes

Other Changes

  • Improve the performance of using referrers tag schema when pushing and deleting manifest concurrently
  • Revise the documentation of registry.Reference

Detailed Commits

  • feat!: add ReferrerFinder to Repository interface by @shizhMSFT in #357
  • fix: fix potential deadlock in oras.Copy by @Wwwsylvia in #359
  • doc: revise doc of registry.Reference by @nima in #358
  • perf: improve the performance of using referrers tag schema by @Wwwsylvia in #360

Full Changelog: v2.0.0-rc.4...v2.0.0-rc.5

v2.0.0-rc.4

31 Oct 12:40
f701e60
Compare
Choose a tag to compare
v2.0.0-rc.4 Pre-release
Pre-release

New Features

Bug Fixes

  • fix #303: Scrutinize references for digests posing as tags

Other Changes

  • BREAKING CHANGE: Change the signature of Repository.Referrers()
  • BREAKING CHANGE: Merge oras.PackArtifact() into oras.Pack()
  • Improve error message on platform mismatch
  • Improve error message for Repository.FetchReference()
  • Increase test coverage
  • Check license header in Github workflow
  • Other minor fixes

Detailed Commits

New Contributors

Full Changelog: v2.0.0-rc.3...v2.0.0-rc.4

v2.0.0-rc.3

07 Sep 15:54
a018d99
Compare
Choose a tag to compare
v2.0.0-rc.3 Pre-release
Pre-release

New Features

Deprecation

  • BREAKING CHANGE Moved content.ErrSizeExceedLimit to errdef.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

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 and oras.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 and oras.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 for oras.Resolve and oras.Copy by @Wwwsylvia in #299
  • feat: Repository.Manifest() now returns a ManifestStore by @Wwwsylvia in #300
  • feat!: support oras.TagN by @Wwwsylvia in #301
  • feat: implement ReferenceParser for manifestStore by @Wwwsylvia in #305

New Contributors

  • @nima made their first contribution in #279

Full Changelog: v2.0.0-rc.2...v2.0.0-rc.3

v1.2.1

17 Oct 07:15
3b21210
Compare
Choose a tag to compare

What's Changed

  • Implement Info, which will return metadata about the content available in the OCI store by @oanatmaria in #187
  • Bump docker/distribution to v2.8.1 by @mihaibuzgau in #276

New Contributors

Full Changelog: v1.2.0...v1.2.1