Tags: tricktron/manifest-tool
Tags
manifest-tool 2.1.3 Welcome to the v2.1.3 release of manifest-tool! **NOTE:** *v2.1.3 is a quick re-spin of v2.1.x to handle a timeout during the GH Actions release script run* The v2.1.3 release includes several new features and is now dependent on the containerd 1.7.x resolver library and ORAS v2 Go library, with updated vendoring of the OCI 1.1.0-rc specs. This enables manifest-tool to include better support for artifacts and upcoming features in the image and distribution specifications. The following list highlights some new capabilities: - Merging two or more index/image lists into a final target image - Related to the above: preserving attestations/artifacts stored alongside images in the registry - Properly outputting JSON with the use of `--raw` on `inspect` - Displaying config JSON with an `--expand-config` option with `--raw` Also, the Alpine variant of the manifest-tool image on DockerHub has been improved with the addition of credential helpers for GCR, ECR, and ACR. Thanks to @keg for a contribution that improved the Alpine image with credential helpers! If you do find bugs, please report them to the GitHub issue tracker for `manifest-tool`. Please report bugs to the issue tracker at [https://github.com/estesp/manifest-tool/issues](https://github.com/estesp/manifest-tool/issues).
manifest-tool 2.1.2 Welcome to the v2.1.2 release of manifest-tool! **NOTE:** *v2.1.2 is a quick re-spin of v2.1.x with fixes for the cross-compilation of credential helpers in the Alpine variant image on DockerHub* The v2.1.2 release includes several new features and is now dependent on the containerd 1.7.x resolver library and ORAS v2 Go library, with updated vendoring of the OCI 1.1.0-rc specs. This enables manifest-tool to include better support for artifacts and upcoming features in the image and distribution specifications. The following list highlights some new capabilities: - Merging two or more index/image lists into a final target image - Related to the above: preserving attestations/artifacts stored alongside images in the registry - Properly outputting JSON with the use of `--raw` on `inspect` - Displaying config JSON with an `--expand-config` option with `--raw` Also, the Alpine variant of the manifest-tool image on DockerHub has been improved with the addition of credential helpers for GCR, ECR, and ACR. Thanks to @keg for a contribution that improved the Alpine image with credential helpers! If you do find bugs, please report them to the GitHub issue tracker for `manifest-tool`. Please report bugs to the issue tracker at [https://github.com/estesp/manifest-tool/issues](https://github.com/estesp/manifest-tool/issues).
manifest-tool 2.1.1 Welcome to the v2.1.1 release of manifest-tool! **NOTE:** *v2.1.1 is a quick re-spin of v2.1.0 with fixes for the cross-compilation of credential helpers in the Alpine variant image on DockerHub* The v2.1.1 release includes several new features and is now dependent on the containerd 1.7.x resolver library and ORAS v2 Go library, with updated vendoring of the OCI 1.1.0-rc specs. This enables manifest-tool to include better support for artifacts and upcoming features in the image and distribution specifications. The following list highlights some new capabilities: - Merging two or more index/image lists into a final target image - Related to the above: preserving attestations/artifacts stored alongside images in the registry - Properly outputting JSON with the use of `--raw` on `inspect` - Displaying config JSON with an `--expand-config` option with `--raw` Also, the Alpine variant of the manifest-tool image on DockerHub has been improved with the addition of credential helpers for GCR, ECR, and ACR. Thanks to @keg for a contribution that improved the Alpine image with credential helpers! If you do find bugs, please report them to the GitHub issue tracker for `manifest-tool`. Please report bugs to the issue tracker at [https://github.com/estesp/manifest-tool/issues](https://github.com/estesp/manifest-tool/issues).
manifest-tool 2.1.0 Welcome to the v2.1.0 release of manifest-tool! The v2.1.0 release includes several new features and is now dependent on the containerd 1.7.x resolver library and ORAS v2 Go library, with updated vendoring of the OCI 1.1.0-rc specs. This enables manifest-tool to include better support for artifacts and upcoming features in the image and distribution specifications. The following list highlights some new capabilities: - Merging two or more index/image lists into a final target image - Related to the above: preserving attestations/artifacts stored alongside images in the registry - Properly outputting JSON with the use of `--raw` on `inspect` - Displaying config JSON with an `--expand-config` option with `--raw` Also, the Alpine variant of the manifest-tool image on DockerHub has been improved with the addition of credential helpers for GCR, ECR, and ACR. Thanks to @keg for a contribution that improved the Alpine image with credential helpers! If you do find bugs, please report them to the GitHub issue tracker for `manifest-tool`. Please report bugs to the issue tracker at [https://github.com/estesp/manifest-tool/issues](https://github.com/estesp/manifest-tool/issues).
manifest-tool 2.0.8 Welcome to the v2.0.8 release of manifest-tool! The v2.0.8 release has many vendoring updates which mitigate various CVEs in Go, containerd, and other related dependencies. This release also moves from the v1 oras library to the v2 oras-go, causing minor changes to the manifest-tool use of ORAS data structures. With the removal of the auth package in oras, the auth behavior is migrated to a simpler implementation in the util package here in manifest-tool. Docker auth configs and credential helpers are still supported and have been verified to work properly in this release. A few minor feature additions to v2.0.8: - Attestations created by BuildKit are now visible in the `inspect` command, unique from layers/blobs. A future release will add the ability to properly consume BuildKit index manifests as inputs to a multi-platform image. Currently the check to not have an index as an input prevents this from working properly. - You can now add additional tags from the command line. Previously this was only possible when using the input YAML format. Thanks to @neanton and @deitch for their contributions to this release! If you do find bugs, please report them to the GitHub issue tracker for `manifest-tool`. The v2.0.7 release had a significant bug (my fault!) and the actual changes and additions are reflected above in the v2.0.8 release notes. The v2.0.6 release of `manifest-tool` fixes an early mistake in the v2 codebase that removed the "type" flag support for handling push of both OCI and Docker v2 manifests. In addition to this one bug fix, the Go version has been updated to 1.19.2, key imports to their latest releases, and the GitHub Actions worker Linux version moves off the soon-deprecated Ubuntu 18.04 LTS release to 20.04 LTS. This means the Linux release binaries will be built against an Ubuntu 20.04 base image. This should not cause issues for downstream users but please open an issue if you find a runtime error. The v2.0.5 release of `manifest-tool` upgrades several go module imports to versions that allow for the removal of all the `replace` clauses in the v2 `go.mod`. This allows for cleaner import and use of `manifest-tool` from the Go ecosystem. The v2.0.4 release of `manifest-tool` includes a new image variant which is valuable for those who need to use the published images with other platforms that require a shell inside the image. This new variant is based on Alpine, and prepends the tag name with `alpine`; so `mplatform/manifest-tool:alpine` will be the latest release, and `mplatform/manifest-tool:alpine-v2.0.4` will retrieve this specific released version, on top of an Alpine Linux base. Thanks to [Brandon Butler](https://github.com/Starttoaster) for contributing the release packaging changes to add this [feature](estesp#166). This release also moves up dependencies for various CVEs (aside from the fact that manifest-tool was unaffected), as well as building with Go 1.18. A single bug fix for a reported segfault in using `--docker-cfg` with a file instead of the expected directory is also fixed via [PR estesp#169](estesp#169). Thanks to [Jian Zhang](https://github.com/jianzhangbjz) for the bug report. 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. 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. Please report bugs to the issue tracker at [https://github.com/estesp/manifest-tool/issues](https://github.com/estesp/manifest-tool/issues).
manifest-tool 2.0.7 Welcome to the v2.0.7 release of manifest-tool! The v2.0.7 release has many vendoring updates which mitigate various CVEs in Go, containerd, and other related dependencies. This release also moves from the v1 oras library to the v2 oras-go, causing minor changes to the manifest-tool use of ORAS data structures. With the removal of the auth package in oras, the auth behavior is migrated to a simpler implementation in the util package here in manifest-tool. Docker auth configs and credential helpers are still supported and have been verified to work properly in this release. A few minor feature additions to v2.0.7: - Attestations created by BuildKit are now visible in the `inspect` command, unique from layers/blobs. A future release will add the ability to properly consume BuildKit index manifests as inputs to a multi-platform image. Currently the check to not have an index as an input prevents this from working properly. - You can now add additional tags from the command line. Previously this was only possible when using the input YAML format. Thanks to @neanton and @deitch for their contributions to this release! If you do find bugs, please report them to the GitHub issue tracker for `manifest-tool`. The v2.0.6 release of `manifest-tool` fixes an early mistake in the v2 codebase that removed the "type" flag support for handling push of both OCI and Docker v2 manifests. In addition to this one bug fix, the Go version has been updated to 1.19.2, key imports to their latest releases, and the GitHub Actions worker Linux version moves off the soon-deprecated Ubuntu 18.04 LTS release to 20.04 LTS. This means the Linux release binaries will be built against an Ubuntu 20.04 base image. This should not cause issues for downstream users but please open an issue if you find a runtime error. The v2.0.5 release of `manifest-tool` upgrades several go module imports to versions that allow for the removal of all the `replace` clauses in the v2 `go.mod`. This allows for cleaner import and use of `manifest-tool` from the Go ecosystem. The v2.0.4 release of `manifest-tool` includes a new image variant which is valuable for those who need to use the published images with other platforms that require a shell inside the image. This new variant is based on Alpine, and prepends the tag name with `alpine`; so `mplatform/manifest-tool:alpine` will be the latest release, and `mplatform/manifest-tool:alpine-v2.0.4` will retrieve this specific released version, on top of an Alpine Linux base. Thanks to [Brandon Butler](https://github.com/Starttoaster) for contributing the release packaging changes to add this [feature](estesp#166). This release also moves up dependencies for various CVEs (aside from the fact that manifest-tool was unaffected), as well as building with Go 1.18. A single bug fix for a reported segfault in using `--docker-cfg` with a file instead of the expected directory is also fixed via [PR estesp#169](estesp#169). Thanks to [Jian Zhang](https://github.com/jianzhangbjz) for the bug report. 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. 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. Please report bugs to the issue tracker at [https://github.com/estesp/manifest-tool/issues](https://github.com/estesp/manifest-tool/issues).
manifest-tool 2.0.6 Welcome to the v2.0.6 release of manifest-tool! The v2.0.6 release of `manifest-tool` fixes an early mistake in the v2 codebase that removed the "type" flag support for handling push of both OCI and Docker v2 manifests. In addition to this one bug fix, the Go version has been updated to 1.19.2, key imports to their latest releases, and the GitHub Actions worker Linux version moves off the soon-deprecated Ubuntu 18.04 LTS release to 20.04 LTS. This means the Linux release binaries will be built against an Ubuntu 20.04 base image. This should not cause issues for downstream users but please open an issue if you find a runtime error. The v2.0.5 release of `manifest-tool` upgrades several go module imports to versions that allow for the removal of all the `replace` clauses in the v2 `go.mod`. This allows for cleaner import and use of `manifest-tool` from the Go ecosystem. The v2.0.4 release of `manifest-tool` includes a new image variant which is valuable for those who need to use the published images with other platforms that require a shell inside the image. This new variant is based on Alpine, and prepends the tag name with `alpine`; so `mplatform/manifest-tool:alpine` will be the latest release, and `mplatform/manifest-tool:alpine-v2.0.4` will retrieve this specific released version, on top of an Alpine Linux base. Thanks to [Brandon Butler](https://github.com/Starttoaster) for contributing the release packaging changes to add this [feature](estesp#166). This release also moves up dependencies for various CVEs (aside from the fact that manifest-tool was unaffected), as well as building with Go 1.18. A single bug fix for a reported segfault in using `--docker-cfg` with a file instead of the expected directory is also fixed via [PR estesp#169](estesp#169). Thanks to [Jian Zhang](https://github.com/jianzhangbjz) for the bug report. 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. 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. Please report bugs to the issue tracker at [https://github.com/estesp/manifest-tool/issues](https://github.com/estesp/manifest-tool/issues).
manifest-tool 2.0.5 Welcome to the v2.0.5 release of manifest-tool! The v2.0.5 release of `manifest-tool` upgrades several go module imports to versions that allow for the removal of all the `replace` clauses in the v2 `go.mod`. This allows for cleaner import and use of `manifest-tool` from the Go ecosystem. The v2.0.4 release of `manifest-tool` includes a new image variant which is valuable for those who need to use the published images with other platforms that require a shell inside the image. This new variant is based on Alpine, and prepends the tag name with `alpine`; so `mplatform/manifest-tool:alpine` will be the latest release, and `mplatform/manifest-tool:alpine-v2.0.4` will retrieve this specific released version, on top of an Alpine Linux base. Thanks to [Brandon Butler](https://github.com/Starttoaster) for contributing the release packaging changes to add this [feature](estesp#166). This release also moves up dependencies for various CVEs (aside from the fact that manifest-tool was unaffected), as well as building with Go 1.18. A single bug fix for a reported segfault in using `--docker-cfg` with a file instead of the expected directory is also fixed via [PR estesp#169](estesp#169). Thanks to [Jian Zhang](https://github.com/jianzhangbjz) for the bug report. 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. 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. Please report bugs to the issue tracker at [https://github.com/estesp/manifest-tool/issues](https://github.com/estesp/manifest-tool/issues).
manifest-tool 2.0.4 Welcome to the v2.0.4 release of manifest-tool! The v2.0.4 release of `manifest-tool` includes a new image variant which is valuable for those who need to use the published images with other platforms that require a shell inside the image. This new variant is based on Alpine, and prepends the tag name with `alpine`; so `mplatform/manifest-tool:alpine` will be the latest release, and `mplatform/manifest-tool:alpine-v2.0.4` will retrieve this specific released version, on top of an Alpine Linux base. Thanks to [Brandon Butler](https://github.com/Starttoaster) for contributing the release packaging changes to add this [feature](estesp#166). This release also moves up dependencies for various CVEs (aside from the fact that manifest-tool was unaffected), as well as building with Go 1.18. A single bug fix for a reported segfault in using `--docker-cfg` with a file instead of the expected directory is also fixed via [PR estesp#169](estesp#169). Thanks to [Jian Zhang](https://github.com/jianzhangbjz) for the bug report. 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. 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. Please report bugs to the issue tracker at [https://github.com/estesp/manifest-tool/issues](https://github.com/estesp/manifest-tool/issues).
manifest-tool 2.0.3 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).
PreviousNext