8000 Release v2.0.3: manifest-tool 2.0.3 · tricktron/manifest-tool · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

v2.0.3

@estesp estesp tagged this 15 Mar 22:20
Welcome to the v2.0.3 release of manifest-tool!

To handle how Go module version support (e.g. `go get`) works,
since v2.0.0 the code is now located in a `/v2` subdirectory.
Because of this, if you are importing `manifest-tool` you will
need to add `/v2` to your `go.mod` import of `manifest-tool`
or when using `go get` to utilize the v2.x codebase.

The v2.0.3 release of `manifest-tool` includes a single bug fix
for an issue that most regularly occurred when assembling manifest
lists/indexes in a public repository in gcr.io or Quay. Due to
the authentication flow for these registries and an existing bug
in the containerd resolver, a push would fail with "cannot reuse
body" errors. Until containerd has a complete fix for this issue,
v2.0.3 will appropriately push to these registries by retrying
after the authentication challenge (401 Unauthorized) is handled.

Includes the fix mentioned in v2.0.3 but due to a release script
bug did not appropriately publish the release on GitHub.

Includes the fix mentioned in v2.0.3 but due to a release script
bug did not appropriately publish the release on GitHub.

The v2.0.0 release of `manifest-tool` represents a significant
change to the architecture and implementation of `manifest-tool`.
Instead of continuing to use the original implementation
for registry interaction (a similar heritage to what became skopeo) this
v2 re-worked codebase of `manifest-tool` uses the resolver/fetcher/pusher
implementation from containerd as a library. It uses the same model (and
some of the code) from [ORAS](https://github.com/deislabs/oras) to use
these distribution API capabilities within containerd as a
library without the need to run or even have containerd installed.

This greatly simplified the codebase of `manifest-tool` and allowed for
restructuring the code to itself be usable as a library. For example,
the query tool for manifest-lists ([estesp/mquery](https://github.com/estesp/mquery)) can now use
these functions directly without running a copy of manifest-tool
separately and parsing the raw output.

In addition to this major rework of the codebase, new features have
been added. The most significant are:

 - OCIv1 image/index support! (see the `--type` flag)
 - Color output from `inspect`
 - On average 75% faster `inspect` performance
 - credential helper support built-in

A number of small issues have been resolved and the v2 code has been
tested against most public container registries. However, software
being software, I'm sure there are bugs that have not been discovered
in the testing to date.

Please report bugs to the issue tracker at [https://github.com/estesp/manifest-tool/issues](https://github.com/estesp/manifest-tool/issues).
Assets 2
Loading
0