Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package oras for openSUSE:Factory checked in at 2024-12-06 14:27:04 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/oras (Old) and /work/SRC/openSUSE:Factory/.oras.new.28523 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "oras" Fri Dec 6 14:27:04 2024 rev:3 rq:1228678 version:1.2.1 Changes: -------- --- /work/SRC/openSUSE:Factory/oras/oras.changes 2024-08-01 22:06:47.666320112 +0200 +++ /work/SRC/openSUSE:Factory/.oras.new.28523/oras.changes 2024-12-06 14:27:17.922798094 +0100 @@ -1,0 +2,22 @@ +Fri Dec 06 06:30:57 UTC 2024 - [email protected] + +- Update to version 1.2.1: + * bump: tag and release ORAS CLI v1.2.1 + * docs: add experimental marks to examples (#1570) + * fix: document pushing files with colon in name (#1508) + * docs: improve the description of cp (#1498) + * docs: add examples for --format (#1497) + * docs: fix typo in help text of 'attach' command (#1477) + * fix: Mention the resolve command in manifest fetch help (#1466) + * fix: oras repo tags exlude-digest-tags documentation (#1467) + * fix: disable oras tag fallback to tag schema when tagging a + referrer (#1435) + * fix(doc): resolve example error for `oras tag` (#1419) + * Update links in README.md (#1408) + * chore: Update goreleaser to v6 and configuration to v2 (#1402) + * chore: bump golang and dependencies (#1564) + * bump: golang version to fix CVE-2024-24790 and CVE-2024-34156 + (#1562) +- fix zsh completions + +------------------------------------------------------------------- Old: ---- oras-1.2.0.obscpio New: ---- oras-1.2.1.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ oras.spec ++++++ --- /var/tmp/diff_new_pack.ButxDw/_old 2024-12-06 14:27:19.266854505 +0100 +++ /var/tmp/diff_new_pack.ButxDw/_new 2024-12-06 14:27:19.270854673 +0100 @@ -16,17 +16,18 @@ # -%define __arch_install_post export NO_BRP_STRIP_DEBUG=true - Name: oras -Version: 1.2.0 +Version: 1.2.1 Release: 0 Summary: OCI registry client - manage content like artifacts, images, packages License: Apache-2.0 URL: https://github.com/oras-project/oras Source: %{name}-%{version}.tar.gz Source1: vendor.tar.gz -BuildRequires: go >= 1.22 +BuildRequires: bash-completion +BuildRequires: fish +BuildRequires: go >= 1.23 +BuildRequires: zsh %description ORAS is the de facto tool for working with OCI Artifacts. It treats media types @@ -93,8 +94,8 @@ %{buildroot}/%{_bindir}/%{name} completion fish > %{buildroot}%{_datarootdir}/fish/vendor_completions.d/%{name}.fish # create the zsh completion file -mkdir -p %{buildroot}%{_datarootdir}/zsh_completion.d/ -%{buildroot}/%{_bindir}/%{name} completion zsh > %{buildroot}%{_datarootdir}/zsh_completion.d/_%{name} +mkdir -p %{buildroot}%{_datarootdir}/zsh/site-functions/ +%{buildroot}/%{_bindir}/%{name} completion zsh > %{buildroot}%{_datarootdir}/zsh/site-functions/_%{name} %files %doc README.md @@ -102,16 +103,11 @@ %{_bindir}/%{name} %files -n %{name}-bash-completion -%dir %{_datarootdir}/bash-completion/completions/ %{_datarootdir}/bash-completion/completions/%{name} %files -n %{name}-fish-completion -%dir %{_datarootdir}/fish -%dir %{_datarootdir}/fish/vendor_completions.d %{_datarootdir}/fish/vendor_completions.d/%{name}.fish %files -n %{name}-zsh-completion -%defattr(-,root,root) -%dir %{_datarootdir}/zsh_completion.d/ -%{_datarootdir}/zsh_completion.d/_%{name} +%{_datarootdir}/zsh/site-functions/_%{name} ++++++ _service ++++++ --- /var/tmp/diff_new_pack.ButxDw/_old 2024-12-06 14:27:19.298855847 +0100 +++ /var/tmp/diff_new_pack.ButxDw/_new 2024-12-06 14:27:19.302856016 +0100 @@ -3,10 +3,10 @@ <param name="url">https://github.com/oras-project/oras</param> <param name="scm">git</param> <param name="exclude">.git</param> - <param name="revision">v1.2.0</param> + <param name="revision">v1.2.1</param> <param name="versionformat">@PARENT_TAG@</param> - <param name="changesgenerate">enable</param> <param name="versionrewrite-pattern">v(.*)</param> + <param name="changesgenerate">enable</param> </service> <service name="set_version" mode="manual"> </service> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.ButxDw/_old 2024-12-06 14:27:19.326857023 +0100 +++ /var/tmp/diff_new_pack.ButxDw/_new 2024-12-06 14:27:19.326857023 +0100 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/oras-project/oras</param> - <param name="changesrevision">dcef719e208a9b226b15bc6512ad729a7dd93270</param></service></servicedata> + <param name="changesrevision">a0228556766b6276010d8feb937af512e8a50808</param></service></servicedata> (No newline at EOF) ++++++ oras-1.2.0.obscpio -> oras-1.2.1.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/.github/workflows/build.yml new/oras-1.2.1/.github/workflows/build.yml --- old/oras-1.2.0/.github/workflows/build.yml 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/.github/workflows/build.yml 2024-12-05 09:41:54.000000000 +0100 @@ -27,7 +27,7 @@ runs-on: ubuntu-latest strategy: matrix: - go-version: ['1.22'] + go-version: ['1.23'] fail-fast: true steps: - name: Checkout diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/.github/workflows/release-github.yml new/oras-1.2.1/.github/workflows/release-github.yml --- old/oras-1.2.0/.github/workflows/release-github.yml 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/.github/workflows/release-github.yml 2024-12-05 09:41:54.000000000 +0100 @@ -29,11 +29,11 @@ - name: setup go environment uses: actions/setup-go@v5 with: - go-version: '1.22.3' + go-version: '1.23.4' - name: run goreleaser - uses: goreleaser/goreleaser-action@v5 + uses: goreleaser/goreleaser-action@v6 with: - version: latest - args: release --rm-dist + version: '~> v2' + args: release --clean env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/.goreleaser.yml new/oras-1.2.1/.goreleaser.yml --- old/oras-1.2.0/.goreleaser.yml 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/.goreleaser.yml 2024-12-05 09:41:54.000000000 +0100 @@ -14,6 +14,7 @@ # To release: # GITHUB_TOKEN=*** goreleaser +version: 2 builds: - main: ./cmd/oras binary: ./oras diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/Dockerfile new/oras-1.2.1/Dockerfile --- old/oras-1.2.0/Dockerfile 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/Dockerfile 2024-12-05 09:41:54.000000000 +0100 @@ -11,7 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -FROM --platform=$BUILDPLATFORM docker.io/library/golang:1.22.3-alpine as builder +FROM --platform=$BUILDPLATFORM docker.io/library/golang:1.23.4-alpine as builder ARG TARGETPLATFORM RUN apk add git make ENV ORASPKG /oras diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/README.md new/oras-1.2.1/README.md --- old/oras-1.2.0/README.md 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/README.md 2024-12-05 09:41:54.000000000 +0100 @@ -15,7 +15,7 @@ ## Development Environment Setup -Refer to the [development guide](https://oras.land/docs/community/developer_guide) to get started [contributing to ORAS](https://oras.land/docs/community/contributing_guide). +Refer to the [development guide](https://oras.land/community/developer_guide) to get started [contributing to ORAS](https://oras.land/community/contributing_guide). ## Code of Conduct diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/cmd/oras/internal/display/status/print_test.go new/oras-1.2.1/cmd/oras/internal/display/status/print_test.go --- old/oras-1.2.0/cmd/oras/internal/display/status/print_test.go 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/cmd/oras/internal/display/status/print_test.go 2024-12-05 09:41:54.000000000 +0100 @@ -16,7 +16,7 @@ package status import ( - "fmt" + "errors" "strconv" "strings" "testing" @@ -33,7 +33,7 @@ return len(string(p)), nil } mw.errorCount++ - return 0, fmt.Errorf("Boom: " + string(p)) + return 0, errors.New("Boom: " + string(p)) } func (mw *mockWriter) String() string { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/cmd/oras/root/attach.go new/oras-1.2.1/cmd/oras/root/attach.go --- old/oras-1.2.0/cmd/oras/root/attach.go 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/cmd/oras/root/attach.go 2024-12-05 09:41:54.000000000 +0100 @@ -55,7 +55,7 @@ ** This command is in preview and under development. ** -Example - Attach file 'hi.txt' with aritifact type 'doc/example' to manifest 'hello:v1' in registry 'localhost:5000': +Example - Attach file 'hi.txt' with artifact type 'doc/example' to manifest 'hello:v1' in registry 'localhost:5000': oras attach --artifact-type doc/example localhost:5000/hello:v1 hi.txt Example - Attach file 'hi.txt' to a specific artifact with platform 'linux/amd64' in multi-arch index 'hello:v1' @@ -77,6 +77,12 @@ Example - Attach file 'hi.txt' and add manifest annotations: oras attach --artifact-type doc/example --annotation "key=val" localhost:5000/hello:v1 hi.txt +Example - [Experimental] Attach file 'hi.txt' and format output in JSON: + oras attach --artifact-type doc/example localhost:5000/hello:v1 hi.txt --format json + +Example - [Experimental] Attach file 'hi.txt' and format output with Go template: + oras attach --artifact-type doc/example localhost:5000/hello:v1 hi.txt --format go-template --template "{{.digest}}" + Example - Attach file 'hi.txt' and export the pushed manifest to 'manifest.json': oras attach --artifact-type doc/example --export-manifest manifest.json localhost:5000/hello:v1 hi.txt diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/cmd/oras/root/cp.go new/oras-1.2.1/cmd/oras/root/cp.go --- old/oras-1.2.0/cmd/oras/root/cp.go 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/cmd/oras/root/cp.go 2024-12-05 09:41:54.000000000 +0100 @@ -58,7 +58,7 @@ Use: "cp [flags] <from>{:<tag>|@<digest>} <to>[:<tag>[,<tag>][...]]", Aliases: []string{"copy"}, Short: "Copy artifacts from one target to another", - Long: `Copy artifacts from one target to another + Long: `Copy artifacts from one target to another. When copying an image index, all of its manifests will be copied Example - Copy an artifact between registries: oras cp localhost:5000/net-monitor:v1 localhost:6000/net-monitor-copy:v1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/cmd/oras/root/discover.go new/oras-1.2.1/cmd/oras/root/discover.go --- old/oras-1.2.0/cmd/oras/root/discover.go 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/cmd/oras/root/discover.go 2024-12-05 09:41:54.000000000 +0100 @@ -51,27 +51,29 @@ ** This command is in preview and under development. ** -Example - Discover direct referrers of manifest 'hello:v1' in registry 'localhost:5000': +Example - Discover referrers of manifest 'hello:v1' in registry 'localhost:5000', displayed in a tree view: oras discover localhost:5000/hello:v1 -Example - Discover direct referrers via referrers API: +Example - Discover referrers via referrers API: oras discover --distribution-spec v1.1-referrers-api localhost:5000/hello:v1 -Example - Discover direct referrers via tag scheme: +Example - Discover referrers via tag scheme: oras discover --distribution-spec v1.1-referrers-tag localhost:5000/hello:v1 -Example - Discover all the referrers of manifest 'hello:v1' in registry 'localhost:5000', displayed in a tree view: - oras discover -o tree localhost:5000/hello:v1 +Example - [Experimental] Discover referrers and display in a table view: + oras discover localhost:5000/hello:v1 --format table + +Example - [Experimental] Discover referrers and format output with Go template: + oras discover localhost:5000/hello:v1 --format go-template --template "{{.manifests}}" Example - Discover all the referrers of manifest with annotations, displayed in a tree view: - oras discover -v -o tree localhost:5000/hello:v1 + oras discover -v localhost:5000/hello:v1 Example - Discover referrers with type 'test-artifact' of manifest 'hello:v1' in registry 'localhost:5000': oras discover --artifact-type test-artifact localhost:5000/hello:v1 Example - Discover referrers of the manifest tagged 'v1' in an OCI image layout folder 'layout-dir': oras discover --oci-layout layout-dir:v1 - oras discover --oci-layout -v -o tree layout-dir:v1 `, Args: oerrors.CheckArgs(argument.Exactly(1), "the target artifact to discover referrers from"), PreRunE: func(cmd *cobra.Command, args []string) error { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/cmd/oras/root/manifest/fetch.go new/oras-1.2.1/cmd/oras/root/manifest/fetch.go --- old/oras-1.2.0/cmd/oras/root/manifest/fetch.go 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/cmd/oras/root/manifest/fetch.go 2024-12-05 09:41:54.000000000 +0100 @@ -55,6 +55,12 @@ Example - Fetch the descriptor of a manifest from a registry: oras manifest fetch --descriptor localhost:5000/hello:v1 +Example - [Experimental] Fetch the manifest digest from a registry similar to the resolve command: + oras manifest fetch --format go-template --template '{{ .digest }}' localhost:5000/hello:v1 + +Example - [Experimental] Fetch manifest and output metadata encoded in JSON: + oras manifest fetch localhost:5000/hello:v1 --format json + Example - Fetch manifest from a registry with specified media type: oras manifest fetch --media-type 'application/vnd.oci.image.manifest.v1+json' localhost:5000/hello:v1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/cmd/oras/root/pull.go new/oras-1.2.1/cmd/oras/root/pull.go --- old/oras-1.2.0/cmd/oras/root/pull.go 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/cmd/oras/root/pull.go 2024-12-05 09:41:54.000000000 +0100 @@ -82,6 +82,12 @@ Example - Pull all files with concurrency level tuned: oras pull --concurrency 6 localhost:5000/hello:v1 +Example - [Experimental] Pull files and format output in JSON: + oras pull localhost:5000/hello:v1 --format json + +Example - [Experimental] Pull files and format output with Go template: + oras pull localhost:5000/hello:v1 --format go-template="{{.reference}}" + Example - Pull artifact files from an OCI image layout folder 'layout-dir': oras pull --oci-layout layout-dir:v1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/cmd/oras/root/push.go new/oras-1.2.1/cmd/oras/root/push.go --- old/oras-1.2.0/cmd/oras/root/push.go 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/cmd/oras/root/push.go 2024-12-05 09:41:54.000000000 +0100 @@ -70,6 +70,9 @@ Example - Push multiple files with different media types: oras push localhost:5000/hello:v1 hi.txt:application/vnd.me.hi bye.txt:application/vnd.me.bye +Example - Push file with colon in name "hi:txt" with the default media type: + oras push localhost:5000/hello:v1 hi:txt: + Example - Push file "hi.txt" with artifact type "application/vnd.example+type": oras push --artifact-type application/vnd.example+type localhost:5000/hello:v1 hi.txt @@ -79,6 +82,12 @@ Example - Push file "hi.txt" with the custom manifest config "config.json" of the custom media type "application/vnd.me.config": oras push --config config.json:application/vnd.me.config localhost:5000/hello:v1 hi.txt +Example - [Experimental] Push file "hi.txt" and format output in JSON: + oras push localhost:5000/hello:v1 hi.txt --format json + +Example - [Experimental] Push file "hi.txt" and format output with Go template: + oras push localhost:5000/hello:v1 hi.txt --format go-template="{{.digest}}" + Example - Push file to the insecure registry: oras push --insecure localhost:5000/hello:v1 hi.txt diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/cmd/oras/root/repo/tags.go new/oras-1.2.1/cmd/oras/root/repo/tags.go --- old/oras-1.2.0/cmd/oras/root/repo/tags.go 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/cmd/oras/root/repo/tags.go 2024-12-05 09:41:54.000000000 +0100 @@ -47,7 +47,7 @@ oras repo tags localhost:5000/hello Example - Show tags in the target repository with digest-like tags hidden: - oras repo tags --exclude-digest-tag localhost:5000/hello + oras repo tags --exclude-digest-tags localhost:5000/hello Example - Show tags of the target repository that include values lexically after last: oras repo tags --last "last_tag" localhost:5000/hello diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/cmd/oras/root/tag.go new/oras-1.2.1/cmd/oras/root/tag.go --- old/oras-1.2.0/cmd/oras/root/tag.go 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/cmd/oras/root/tag.go 2024-12-05 09:41:54.000000000 +0100 @@ -22,6 +22,7 @@ "github.com/spf13/cobra" "oras.land/oras-go/v2" "oras.land/oras-go/v2/errdef" + "oras.land/oras-go/v2/registry/remote" "oras.land/oras/cmd/oras/internal/argument" "oras.land/oras/cmd/oras/internal/command" "oras.land/oras/cmd/oras/internal/display/status" @@ -57,7 +58,7 @@ oras tag --concurrency 1 localhost:5000/hello:v1.0.1 v1.0.2 latest Example - Tag the manifest 'v1.0.1' to 'v1.0.2' in an OCI image layout folder 'layout-dir': - oras tag layout-dir:v1.0.1 v1.0.2 + oras tag --oci-layout layout-dir:v1.0.1 v1.0.2 `, Args: func(cmd *cobra.Command, args []string) error { if len(args) > 0 && (args[0] == "list" || args[0] == "ls") { @@ -102,6 +103,11 @@ if err != nil { return err } + if targetRepo, ok := target.(*remote.Repository); ok { + // Since referrer capability has not been set or detected yet, + // nil is the only returned value and thus can be ignored + _ = targetRepo.SetReferrersCapability(true) + } if err := opts.EnsureReferenceNotEmpty(cmd, true); err != nil { return err } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/go.mod new/oras-1.2.1/go.mod --- old/oras-1.2.0/go.mod 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/go.mod 2024-12-05 09:41:54.000000000 +0100 @@ -1,33 +1,33 @@ module oras.land/oras -go 1.22.0 +go 1.23.1 require ( - github.com/Masterminds/sprig/v3 v3.2.3 + github.com/Masterminds/sprig/v3 v3.3.0 github.com/containerd/console v1.0.4 github.com/morikuni/aec v1.0.0 github.com/opencontainers/go-digest v1.0.0 github.com/opencontainers/image-spec v1.1.0 github.com/sirupsen/logrus v1.9.3 - github.com/spf13/cobra v1.8.0 + github.com/spf13/cobra v1.8.1 github.com/spf13/pflag v1.0.5 - golang.org/x/sync v0.7.0 - golang.org/x/term v0.20.0 + golang.org/x/sync v0.10.0 + golang.org/x/term v0.27.0 gopkg.in/yaml.v3 v3.0.1 oras.land/oras-go/v2 v2.5.0 ) require ( + dario.cat/mergo v1.0.1 // indirect github.com/Masterminds/goutils v1.1.1 // indirect - github.com/Masterminds/semver/v3 v3.2.1 // indirect + github.com/Masterminds/semver/v3 v3.3.0 // indirect github.com/google/uuid v1.6.0 // indirect - github.com/huandu/xstrings v1.4.0 // indirect - github.com/imdario/mergo v0.3.16 // indirect + github.com/huandu/xstrings v1.5.0 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/mitchellh/copystructure v1.2.0 // indirect github.com/mitchellh/reflectwalk v1.0.2 // indirect - github.com/shopspring/decimal v1.3.1 // indirect - github.com/spf13/cast v1.6.0 // indirect - golang.org/x/crypto v0.18.0 // indirect - golang.org/x/sys v0.20.0 // indirect + github.com/shopspring/decimal v1.4.0 // indirect + github.com/spf13/cast v1.7.0 // indirect + golang.org/x/crypto v0.26.0 // indirect + golang.org/x/sys v0.28.0 // indirect ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/go.sum new/oras-1.2.1/go.sum --- old/oras-1.2.0/go.sum 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/go.sum 2024-12-05 09:41:54.000000000 +0100 @@ -1,39 +1,33 @@ +dario.cat/mergo v1.0.1 h1:Ra4+bf83h2ztPIQYNP99R6m+Y7KfnARDfID+a+vLl4s= +dario.cat/mergo v1.0.1/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= github.com/Masterminds/goutils v1.1.1 h1:5nUrii3FMTL5diU80unEVvNevw1nH4+ZV4DSLVJLSYI= github.com/Masterminds/goutils v1.1.1/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= -github.com/Masterminds/semver/v3 v3.2.0/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ= -github.com/Masterminds/semver/v3 v3.2.1 h1:RN9w6+7QoMeJVGyfmbcgs28Br8cvmnucEXnY0rYXWg0= -github.com/Masterminds/semver/v3 v3.2.1/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ= -github.com/Masterminds/sprig/v3 v3.2.3 h1:eL2fZNezLomi0uOLqjQoN6BfsDD+fyLtgbJMAj9n6YA= -github.com/Masterminds/sprig/v3 v3.2.3/go.mod h1:rXcFaZ2zZbLRJv/xSysmlgIM1u11eBaRMhvYXJNkGuM= +github.com/Masterminds/semver/v3 v3.3.0 h1:B8LGeaivUe71a5qox1ICM/JLl0NqZSW5CHyL+hmvYS0= +github.com/Masterminds/semver/v3 v3.3.0/go.mod h1:4V+yj/TJE1HU9XfppCwVMZq3I84lprf4nC11bSS5beM= +github.com/Masterminds/sprig/v3 v3.3.0 h1:mQh0Yrg1XPo6vjYXgtf5OtijNAKJRNcTdOOGZe3tPhs= +github.com/Masterminds/sprig/v3 v3.3.0/go.mod h1:Zy1iXRYNqNLUolqCpL4uhk6SHUMAOSCzdgBfDb35Lz0= github.com/containerd/console v1.0.4 h1:F2g4+oChYvBTsASRTz8NP6iIAi97J3TtSAsLbIFn4ro= github.com/containerd/console v1.0.4/go.mod h1:YynlIjWYF8myEu6sdkwKIvGQq+cOckRm6So2avqoYAk= -github.com/cpuguy83/go-md2man/v2 v2.0.3/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= -github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= -github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= -github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/huandu/xstrings v1.3.3/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= -github.com/huandu/xstrings v1.4.0 h1:D17IlohoQq4UcpqD7fDk80P7l+lwAmlFaBHgOipl2FU= -github.com/huandu/xstrings v1.4.0/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= -github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= -github.com/imdario/mergo v0.3.16 h1:wwQJbIsHYGMUyLSPrEq1CT16AhnhNJQ51+4fdHUnCl4= -github.com/imdario/mergo v0.3.16/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY= +github.com/huandu/xstrings v1.5.0 h1:2ag3IFq9ZDANvthTwTiqSSZLjDc+BedvHPAp5tJy2TI= +github.com/huandu/xstrings v1.5.0/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/mitchellh/copystructure v1.0.0/go.mod h1:SNtv71yrdKgLRyLFxmLdkAbkKEFWgYaq1OVrnRcwhnw= github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa15WveJJGw= github.com/mitchellh/copystructure v1.2.0/go.mod h1:qLl+cE2AmVv+CoeAwDPye/v+N2HKCj9FbZEVFJRxO9s= -github.com/mitchellh/reflectwalk v1.0.0/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zxSIeXaQ= github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A= @@ -47,65 +41,31 @@ github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8= github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= -github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= -github.com/shopspring/decimal v1.3.1 h1:2Usl1nmF/WZucqkFZhnfFYxxxu8LG21F6nPQBE5gKV8= -github.com/shopspring/decimal v1.3.1/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= +github.com/shopspring/decimal v1.4.0 h1:bxl37RwXBklmTi0C79JfXCEBD1cqqHt0bbgBAGFp81k= +github.com/shopspring/decimal v1.4.0/go.mod h1:gawqmDU56v4yIKSwfBSFip1HdCCXN8/+DMd9qYNcwME= github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= -github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= -github.com/spf13/cast v1.6.0 h1:GEiTHELF+vaR5dhz3VqZfFSzZjYbgeKDpBxQVS4GYJ0= -github.com/spf13/cast v1.6.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo= -github.com/spf13/cobra v1.8.0 h1:7aJaZx1B85qltLMc546zn58BxxfZdR/W22ej9CFoEf0= -github.com/spf13/cobra v1.8.0/go.mod h1:WXLWApfZ71AjXPya3WOlMsY9yMs7YeiHhFVlvLyhcho= +github.com/spf13/cast v1.7.0 h1:ntdiHjuueXFgm5nzDRdOS4yfT43P5Fnud6DH50rz/7w= +github.com/spf13/cast v1.7.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo= +github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM= +github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= -github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5CcY= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= -golang.org/x/crypto v0.18.0 h1:PGVlW0xEltQnzFZ55hkuX5+KLyrMYhHld1YHO4AKcdc= -golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg= -golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= -golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= -golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= -golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw= +golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= +golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ= +golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y= -golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= -golang.org/x/term v0.20.0 h1:VnkxpohqXaOBYJtBmEppKUG6mXpi+4O6purfc2+sMhw= -golang.org/x/term v0.20.0/go.mod h1:8UkIAJTvZgivsXaD6/pH6U9ecQzZ45awqEOzuCvwpFY= -golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA= +golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/term v0.27.0 h1:WP60Sv1nlK1T6SupCHbXzSaN0b9wUmsPoRS9b61A23Q= +golang.org/x/term v0.27.0/go.mod h1:iMsnZpn0cago0GOrHO2+Y7u7JPn5AylBrcoWkElMTSM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/internal/version/version.go new/oras-1.2.1/internal/version/version.go --- old/oras-1.2.0/internal/version/version.go 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/internal/version/version.go 2024-12-05 09:41:54.000000000 +0100 @@ -17,7 +17,7 @@ var ( // Version is the current version of the oras. - Version = "1.2.0" + Version = "1.2.1" // BuildMetadata is the extra build time data BuildMetadata = "unreleased" // GitCommit is the git sha1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/snapcraft.yaml new/oras-1.2.1/snapcraft.yaml --- old/oras-1.2.0/snapcraft.yaml 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/snapcraft.yaml 2024-12-05 09:41:54.000000000 +0100 @@ -34,7 +34,7 @@ - on amd64 to {ARCH}: - TARGET_ARCH: "{ARCH}" build-snaps: - - go/1.22/stable + - go/1.23/stable build-packages: - make stage-packages: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/test/e2e/go.mod new/oras-1.2.1/test/e2e/go.mod --- old/oras-1.2.0/test/e2e/go.mod 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/test/e2e/go.mod 2024-12-05 09:41:54.000000000 +0100 @@ -1,10 +1,10 @@ module oras.land/oras/test/e2e -go 1.22.0 +go 1.23.1 require ( - github.com/onsi/ginkgo/v2 v2.19.0 - github.com/onsi/gomega v1.33.1 + github.com/onsi/ginkgo/v2 v2.22.0 + github.com/onsi/gomega v1.36.0 github.com/opencontainers/go-digest v1.0.0 github.com/opencontainers/image-spec v1.1.0 gopkg.in/yaml.v2 v2.4.0 @@ -12,14 +12,14 @@ ) require ( - github.com/go-logr/logr v1.4.1 // indirect + github.com/go-logr/logr v1.4.2 // indirect github.com/go-task/slim-sprig/v3 v3.0.0 // indirect github.com/google/go-cmp v0.6.0 // indirect - github.com/google/pprof v0.0.0-20240424215950-a892ee059fd6 // indirect - golang.org/x/net v0.25.0 // indirect - golang.org/x/sync v0.7.0 // indirect - golang.org/x/sys v0.20.0 // indirect - golang.org/x/text v0.15.0 // indirect - golang.org/x/tools v0.21.0 // indirect + github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db // indirect + golang.org/x/net v0.30.0 // indirect + golang.org/x/sync v0.8.0 // indirect + golang.org/x/sys v0.26.0 // indirect + golang.org/x/text v0.19.0 // indirect + golang.org/x/tools v0.26.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/test/e2e/go.sum new/oras-1.2.1/test/e2e/go.sum --- old/oras-1.2.0/test/e2e/go.sum 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/test/e2e/go.sum 2024-12-05 09:41:54.000000000 +0100 @@ -1,17 +1,17 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= -github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= +github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= +github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI= github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8= github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= -github.com/google/pprof v0.0.0-20240424215950-a892ee059fd6 h1:k7nVchz72niMH6YLQNvHSdIE7iqsQxK1P41mySCvssg= -github.com/google/pprof v0.0.0-20240424215950-a892ee059fd6/go.mod h1:kf6iHlnVGwgKolg33glAes7Yg/8iWP8ukqeldJSO7jw= -github.com/onsi/ginkgo/v2 v2.19.0 h1:9Cnnf7UHo57Hy3k6/m5k3dRfGTMXGvxhHFvkDTCTpvA= -github.com/onsi/ginkgo/v2 v2.19.0/go.mod h1:rlwLi9PilAFJ8jCg9UE1QP6VBpd6/xj3SRC0d6TU0To= -github.com/onsi/gomega v1.33.1 h1:dsYjIxxSR755MDmKVsaFQTE22ChNBcuuTWgkUDSubOk= -github.com/onsi/gomega v1.33.1/go.mod h1:U4R44UsT+9eLIaYRB2a5qajjtQYn0hauxvRm16AVYg0= +github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db h1:097atOisP2aRj7vFgYQBbFN4U4JNXUNYpxael3UzMyo= +github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144= +github.com/onsi/ginkgo/v2 v2.22.0 h1:Yed107/8DjTr0lKCNt7Dn8yQ6ybuDRQoMGrNFKzMfHg= +github.com/onsi/ginkgo/v2 v2.22.0/go.mod h1:7Du3c42kxCUegi0IImZ1wUQzMBVecgIHjR1C+NkhLQo= +github.com/onsi/gomega v1.36.0 h1:Pb12RlruUtj4XUuPUqeEWc6j5DkVVVA49Uf6YLfC95Y= +github.com/onsi/gomega v1.36.0/go.mod h1:PvZbdDc8J6XJEpDK4HCuRBm8a6Fzp9/DmhC9C7yFlog= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= github.com/opencontainers/image-spec v1.1.0 h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug= @@ -20,18 +20,18 @@ github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= -golang.org/x/net v0.25.0 h1:d/OCCoBEUq33pjydKrGQhw7IlUPI2Oylr+8qLx49kac= -golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= -golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= -golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= -golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y= -golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/text v0.15.0 h1:h1V/4gjBv8v9cjcR6+AR5+/cIYK5N/WAgiv4xlsEtAk= -golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= -golang.org/x/tools v0.21.0 h1:qc0xYgIbsSDt9EyWz05J5wfa7LOVW0YTLOXrqdLAWIw= -golang.org/x/tools v0.21.0/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk= -google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= -google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +golang.org/x/net v0.30.0 h1:AcW1SDZMkb8IpzCdQUaIq2sP4sZ4zw+55h6ynffypl4= +golang.org/x/net v0.30.0/go.mod h1:2wGyMJ5iFasEhkwi13ChkO/t1ECNC4X4eBKkVFyYFlU= +golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= +golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo= +golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM= +golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= +golang.org/x/tools v0.26.0 h1:v/60pFQmzmT9ExmjDv2gGIfi3OqfKoEP6I5+umXlbnQ= +golang.org/x/tools v0.26.0/go.mod h1:TPVVj70c7JJ3WCazhD8OdXcZg/og+b9+tH/KxylGwH0= +google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA= +google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/test/e2e/go.work new/oras-1.2.1/test/e2e/go.work --- old/oras-1.2.0/test/e2e/go.work 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/test/e2e/go.work 2024-12-05 09:41:54.000000000 +0100 @@ -1,4 +1,4 @@ -go 1.22.0 +go 1.23.1 use ( . diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oras-1.2.0/test/e2e/suite/command/tag.go new/oras-1.2.1/test/e2e/suite/command/tag.go --- old/oras-1.2.0/test/e2e/suite/command/tag.go 2024-05-28 09:33:43.000000000 +0200 +++ new/oras-1.2.1/test/e2e/suite/command/tag.go 2024-12-05 09:41:54.000000000 +0100 @@ -19,10 +19,12 @@ "fmt" "path/filepath" "regexp" + "strings" . "github.com/onsi/ginkgo/v2" "github.com/onsi/gomega" "github.com/onsi/gomega/gbytes" + "oras.land/oras/test/e2e/internal/testdata/foobar" "oras.land/oras/test/e2e/internal/testdata/multi_arch" . "oras.land/oras/test/e2e/internal/utils" ) @@ -56,14 +58,15 @@ }) }) +func tagAndValidate(reg string, repo string, tagOrDigest string, digestText string, tags ...string) { + out := ORAS(append([]string{"tag", RegistryRef(reg, repo, tagOrDigest)}, tags...)...).MatchKeyWords(tags...).Exec().Out + hint := regexp.QuoteMeta(fmt.Sprintf("Tagging [registry] %s", RegistryRef(reg, repo, digestText))) + gomega.Expect(out).To(gbytes.Say(hint)) + gomega.Expect(out).NotTo(gbytes.Say(hint)) // should only say hint once + ORAS("repo", "tags", RegistryRef(reg, repo, "")).MatchKeyWords(tags...).Exec() +} + var _ = Describe("1.1 registry users:", func() { - var tagAndValidate = func(reg string, repo string, tagOrDigest string, digest string, tags ...string) { - out := ORAS(append([]string{"tag", RegistryRef(reg, repo, tagOrDigest)}, tags...)...).MatchKeyWords(tags...).Exec().Out - hint := regexp.QuoteMeta(fmt.Sprintf("Tagging [registry] %s", RegistryRef(reg, repo, digest))) - gomega.Expect(out).To(gbytes.Say(hint)) - gomega.Expect(out).NotTo(gbytes.Say(hint)) // should only say hint once - ORAS("repo", "tags", RegistryRef(reg, repo, "")).MatchKeyWords(tags...).Exec() - } When("running `tag`", func() { It("should add a tag to an existent manifest when providing tag reference", func() { tagAndValidate(ZOTHost, ImageRepo, multi_arch.Tag, multi_arch.Digest, "tag-via-tag") @@ -77,6 +80,39 @@ It("should add multiple tags to an existent manifest when providing tag reference", func() { tagAndValidate(ZOTHost, ImageRepo, multi_arch.Tag, multi_arch.Digest, "tag1-via-tag", "tag1-via-tag", "tag1-via-tag") }) + It("should tag a referrer witout tag schema", func() { + // parepare: + repo := fmt.Sprintf("command/tag/%d/referrers", GinkgoRandomSeed()) + ORAS("cp", "-r", RegistryRef(ZOTHost, ArtifactRepo, foobar.Tag), "--to-distribution-spec", "v1.1-referrers-api", RegistryRef(ZOTHost, repo, foobar.Tag)).Exec() + // test + referrerDigest := foobar.SBOMImageReferrer.Digest.String() + tagAndValidate(ZOTHost, repo, referrerDigest, referrerDigest, "tagged-referrer") + // ensure no referrer index is created + ref := RegistryRef(ZOTHost, repo, strings.Replace(foobar.Digest, ":", "-", 1)) + ORAS("manifest", "fetch", ref). + MatchErrKeyWords(fmt.Sprintf("%s: not found", ref)). + ExpectFailure(). + Exec() + }) + }) +}) + +var _ = Describe("1.0 registry users:", func() { + When("running `tag`", func() { + It("should tag a referrer witout tag schema", func() { + // prepare: copy to the fallback registry + repo := fmt.Sprintf("command/tag/%d/referrers", GinkgoRandomSeed()) + ORAS("cp", "-r", RegistryRef(FallbackHost, ArtifactRepo, foobar.Tag), "--to-distribution-spec", "v1.1-referrers-api", RegistryRef(FallbackHost, repo, foobar.Tag)).Exec() + // test + referrerDigest := foobar.SBOMImageReferrer.Digest.String() + tagAndValidate(FallbackHost, repo, referrerDigest, referrerDigest, "tagged-referrer") + // ensure no referrer index is created + indexReferrerTag := RegistryRef(FallbackHost, repo, strings.Replace(foobar.Digest, ":", "-", 1)) + ORAS("manifest", "fetch", indexReferrerTag). + MatchErrKeyWords(fmt.Sprintf("%s: not found", indexReferrerTag)). + ExpectFailure(). + Exec() + }) }) }) ++++++ oras.obsinfo ++++++ --- /var/tmp/diff_new_pack.ButxDw/_old 2024-12-06 14:27:19.530865586 +0100 +++ /var/tmp/diff_new_pack.ButxDw/_new 2024-12-06 14:27:19.530865586 +0100 @@ -1,5 +1,5 @@ name: oras -version: 1.2.0 -mtime: 1716881623 -commit: dcef719e208a9b226b15bc6512ad729a7dd93270 +version: 1.2.1 +mtime: 1733388114 +commit: a0228556766b6276010d8feb937af512e8a50808 ++++++ vendor.tar.gz ++++++ ++++ 10176 lines of diff (skipped)
