From 79aba66ff31f6eacc3860571a217e15d6b271115 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 17 Sep 2026 22:24:12 +0000 Subject: [PATCH] Update module github.com/onsi/gomega to v1.43.1 --- go.mod | 2 +- go.sum | 4 +- vendor/github.com/onsi/gomega/.gitignore | 3 +- vendor/github.com/onsi/gomega/CHANGELOG.md | 14 ++ vendor/github.com/onsi/gomega/README.md | 7 +- vendor/github.com/onsi/gomega/RELEASING.md | 166 +++++++++++++++++--- vendor/github.com/onsi/gomega/gomega_dsl.go | 2 +- vendor/modules.txt | 2 +- 8 files changed, 169 insertions(+), 31 deletions(-) diff --git a/go.mod b/go.mod index 5cf9ac16..743078f6 100644 --- a/go.mod +++ b/go.mod @@ -15,7 +15,7 @@ require ( github.com/jarcoal/httpmock v1.4.2 github.com/moby/moby/api v1.56.0 github.com/onsi/ginkgo/v2 v2.32.2 - github.com/onsi/gomega v1.43.0 + github.com/onsi/gomega v1.43.1 github.com/spf13/cobra v1.10.2 github.com/testcontainers/testcontainers-go v0.44.0 ) diff --git a/go.sum b/go.sum index 034125c9..b871a4b0 100644 --- a/go.sum +++ b/go.sum @@ -570,8 +570,8 @@ github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+W github.com/onsi/ginkgo/v2 v2.32.2 h1:2o6vyFvR6snrJWgRVztC+OwuqqPEMI1UzYl2s2iU7Cg= github.com/onsi/ginkgo/v2 v2.32.2/go.mod h1:+aXOY+vzZ5mu2iI2HpTZUPmM//oQfsNFX6gU9kNcA44= github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= -github.com/onsi/gomega v1.43.0 h1:VlG/1FxqNxhSO+lq/OHBNaaqwiBK/mO8JbVkX9Y+FeU= -github.com/onsi/gomega v1.43.0/go.mod h1:REff/hsDsodHoKlWsP2mAPhu1+5/6hVYNf9rIEBpeSg= +github.com/onsi/gomega v1.43.1 h1:vGIPFuYrIO6/0Z09s0I0QQQgFchiX4+tb1re3MScJYo= +github.com/onsi/gomega v1.43.1/go.mod h1:e/C2HwaZ1DhvjzXXuFhcR7hY7Sh9pl7MmoWKEjzwcdA= 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.1 h1:y0fUlFfIZhPF1W537XOLg0/fcx6zcHCJwooC2xJA040= diff --git a/vendor/github.com/onsi/gomega/.gitignore b/vendor/github.com/onsi/gomega/.gitignore index 425d0a50..b3003b4e 100644 --- a/vendor/github.com/onsi/gomega/.gitignore +++ b/vendor/github.com/onsi/gomega/.gitignore @@ -4,4 +4,5 @@ .idea gomega.iml TODO -.vscode \ No newline at end of file +.vscode +/.release/ diff --git a/vendor/github.com/onsi/gomega/CHANGELOG.md b/vendor/github.com/onsi/gomega/CHANGELOG.md index 8f1d34e3..51239daf 100644 --- a/vendor/github.com/onsi/gomega/CHANGELOG.md +++ b/vendor/github.com/onsi/gomega/CHANGELOG.md @@ -1,3 +1,17 @@ +## Unreleased + +### Features + +### Fixes + +### Maintenance + +## 1.43.1 + +### Maintenance +- Update go.yaml.in/yaml/v3 to v3.0.5 [d547015] +- Releases are now cut by a GitHub Actions workflow (Actions -> Release -> Run workflow) rather than by hand, with changelog entries collected under `## Unreleased` as the work happens. Releases still ship the stripped-down tree on `master-lite` - tests removed and Ginkgo dropped from `go.mod` - and the workflow now builds it and checks it on every push. See RELEASING.md. [e9dc84d] + ## 1.43.0 ### Features diff --git a/vendor/github.com/onsi/gomega/README.md b/vendor/github.com/onsi/gomega/README.md index 6eb36fdf..ac545907 100644 --- a/vendor/github.com/onsi/gomega/README.md +++ b/vendor/github.com/onsi/gomega/README.md @@ -1,6 +1,9 @@ -![Gomega: Ginkgo's Preferred Matcher Library](http://onsi.github.io/gomega/images/gomega.png) + + + Gomega: Ginkgo's Preferred Matcher Library + -[![test](https://github.com/onsi/gomega/actions/workflows/test.yml/badge.svg)](https://github.com/onsi/gomega/actions/workflows/test.yml) +[![test](https://github.com/onsi/gomega/actions/workflows/test.yml/badge.svg?branch=master)](https://github.com/onsi/gomega/actions/workflows/test.yml?query=branch%3Amaster) [![Gomega Docs](docs/images/docs-badge.svg)](https://onsi.github.io/gomega/) [![Sponsor onsi](docs/images/sponsor-badge.svg)](https://github.com/sponsors/onsi) Jump straight to the [docs](http://onsi.github.io/gomega/) to learn about Gomega, including a list of [all available matchers](http://onsi.github.io/gomega/#provided-matchers). diff --git a/vendor/github.com/onsi/gomega/RELEASING.md b/vendor/github.com/onsi/gomega/RELEASING.md index 9973fff4..fdbeb37c 100644 --- a/vendor/github.com/onsi/gomega/RELEASING.md +++ b/vendor/github.com/onsi/gomega/RELEASING.md @@ -1,23 +1,143 @@ -A Gomega release is a tagged sha and a GitHub release. To cut a release: - -1. Ensure CHANGELOG.md is up to date. - - Use - ```bash - LAST_VERSION=$(git tag --sort=version:refname | tail -n1) - CHANGES=$(git log --pretty=format:'- %s [%h]' HEAD...$LAST_VERSION) - echo -e "## NEXT\n\n$CHANGES\n\n### Features\n\n### Fixes\n\n### Maintenance\n\n$(cat CHANGELOG.md)" > CHANGELOG.md - ``` - to update the changelog - - Categorize the changes into - - Breaking Changes (requires a major version) - - New Features (minor version) - - Fixes (fix version) - - Maintenance (which in general should not be mentioned in `CHANGELOG.md` as they have no user impact) -1. Update GOMEGA_VERSION in `gomega_dsl.go` -1. Commit, push, and release: - ``` - git commit -m "vM.m.p" - git push - gh release create "vM.m.p" - git fetch --tags origin master - ``` \ No newline at end of file +# Releasing Gomega + +A release is one GitHub Actions run: **Actions → Release → Run workflow → bump: patch | minor**, +from `master`. From the command line: + +```bash +gh workflow run release.yml -f bump=patch # or -f bump=minor +``` + +The run: + +1. Runs the whole test workflow (`test.yml`). Nothing else happens unless it passes. +2. Runs `scripts/release.sh`, which + - computes the next version from `GOMEGA_VERSION` in `gomega_dsl.go`, + - renames `## Unreleased` in `CHANGELOG.md` to `## X.Y.Z` (dropping empty `###` subsections) and + puts a fresh, empty `## Unreleased` above it, + - writes `GOMEGA_VERSION` and stamps the version into every plugin manifest + (`plugins/*/.claude-plugin/plugin.json`), so the Claude Code plugin ships in lockstep, + - commits that on `master` as `vX.Y.Z (full)`, as `github-actions[bot]`, + - builds the released tree on `master-lite` and tags **that** commit `vX.Y.Z` (see below), + - pushes `master`, `master-lite`, and the tag together (`git push --atomic`, fast-forward only), + - creates the GitHub release `vX.Y.Z`, whose notes are the body of `## X.Y.Z`. + +## master and master-lite + +Gomega uses Ginkgo for its own tests, and the go toolchain pulls a dependency's *test* dependencies +into consuming projects as indirect requirements — so a project that uses only Gomega would end up +with all of Ginkgo in its `go.mod`. Since 1.40.0, releases therefore ship a stripped-down tree: + +- `master` holds the real repository, tests and all. The release commit there is `vX.Y.Z (full)`, + and it is **not** what the go toolchain resolves. +- `master-lite` holds the released trees: the same tree with every `_test.go` file deleted and + `go.mod` re-tidied, which drops Ginkgo. `scripts/strip-tests.sh` does that, and asserts that the + result still builds and no longer requires Ginkgo. +- Each release adds one commit to `master-lite`: a merge whose tree is the stripped tree and whose + parents are the previous `master-lite` commit and the `vX.Y.Z (full)` commit on `master`. So + `master-lite`'s history connects to master's, and `git log master-lite` reads as the release + history. +- The `vX.Y.Z` tag is on that `master-lite` commit. It is what `go get github.com/onsi/gomega` + resolves, so `go build` never even sees the test files. + +The test workflow's **Check the released (lite) tree** job runs `scripts/strip-tests.sh` on every +push. If a non-test file ever imports Ginkgo, that job fails long before release day — the released +module could not be built otherwise. + +Release tags are not on `master`, so `git describe` on master does not find them. `GOMEGA_VERSION` +in `gomega_dsl.go` is the version of record, and `git tag --sort=version:refname | tail -n1` names +the latest release. + +If this release process ever causes unexpected changes for a project, please open an issue. + +### Never merge master-lite into master + +`master-lite` always looks ahead of `master`, because its newest commit merges master's release +commit. But its *tree* has the tests taken out, so merging or rebasing it back into master deletes +every `_test.go` file and drops Ginkgo from `go.mod` — cleanly, with no conflicts. GitHub's +"master-lite had recent pushes — Compare & pull request" banner is the one click to avoid. + +Nothing you do locally needs `master-lite`: the release workflow writes it from a fresh checkout. A +stale local `master-lite` branch is harmless, and you can delete it. + +`scripts/check-full-tree.sh` guards against a stripped master: it asserts that a checkout has +`_test.go` files and that `go.mod` requires Ginkgo. The test workflow runs it on every push and +`scripts/release.sh` runs it before cutting a release, so a stripped master gets reported plainly +instead of turning into a test run with nothing in it. + +### Cutting one release after another + +Work on master as usual between releases. The `vX.Y.Z (full)` commit the workflow pushed is an +ordinary commit: `git pull` fast-forwards onto it, it carries the released `CHANGELOG.md` and +`GOMEGA_VERSION`, and you add new `## Unreleased` entries above it. The next release repeats the +same two steps — a new `vX.Y.Z (full)` commit on master, and a new merge on `master-lite` whose +tree is the stripped version of it, carrying the tag. + +Nothing accumulates between releases, and nothing needs reconciling in either direction: each +`master-lite` commit's tree is built from the release commit rather than merged into the previous +one, so `git diff vX.Y.Z vX.Y.Z+1` over two releases shows only the real changes. + +## The changelog + +`CHANGELOG.md` starts with an `## Unreleased` section: + +```markdown +## Unreleased + +### Features + +### Fixes + +### Maintenance + +## 1.43.0 +... +``` + +Add an entry under `## Unreleased` with each user-facing change, as you make it. Never edit a +released section. Empty subsections are dropped when the section is released, so leaving +`### Maintenance` empty costs nothing. + +If `## Unreleased` has no entries (only blank lines and `###` headings), the release stops before +changing anything — and so does a re-run after a successful release. + +To draft entries from the commits since the last release: + +```bash +git log --pretty=format:'- %s [%h]' "$(git tag --sort=version:refname | tail -n1)"..HEAD +``` + +Categorize what you keep into + +- Breaking changes (these need a major version, which this workflow does not cut) +- `### Features` (minor version) +- `### Fixes` (patch version) +- `### Maintenance` (in general, changes with no user impact don't belong in the changelog at all) + +## If a release fails + +Open the failed run and click **Re-run failed jobs**. A re-run checks out the same commit as the +first attempt and computes the same version. It resumes based on what already exists: + +| Where it failed | What a re-run does | +|---|---| +| Tests, or before the push | Nothing reached GitHub. The re-run starts over. | +| The push (master or master-lite moved during the run) | The re-run fails the same way. Start a new run from the current master. | +| After the push (the tag `vX.Y.Z` is on GitHub) | The re-run builds from the tag instead of making new commits. | +| Creating the GitHub release | The release is created, or its notes are refreshed if it already exists. | + +Both branches and the tag are pushed together, so the tag being on GitHub means both release +commits are there too. + +## Trying the release script locally + +`GOMEGA_RELEASE_DRY_RUN=1 scripts/release.sh patch` does the whole release locally — the changelog +and version rewrites, the `master` commit, the stripped `master-lite` commit and the tag on it — +then skips the push and the GitHub release. It still checks `origin` for an existing tag and needs +`origin/master-lite`, so run it in a throwaway clone whose `origin` is a local bare repository, not +in your working copy. + +`scripts/strip-tests.sh` rewrites the working tree in place, so run *it* only on a throwaway +checkout too. + +The version and changelog logic lives in `scripts/release`, with its own Ginkgo suite +(`scripts/release/release_test.go`) that runs with the rest of the suites. diff --git a/vendor/github.com/onsi/gomega/gomega_dsl.go b/vendor/github.com/onsi/gomega/gomega_dsl.go index 3206e05d..dd1511f2 100644 --- a/vendor/github.com/onsi/gomega/gomega_dsl.go +++ b/vendor/github.com/onsi/gomega/gomega_dsl.go @@ -22,7 +22,7 @@ import ( "github.com/onsi/gomega/types" ) -const GOMEGA_VERSION = "1.43.0" +const GOMEGA_VERSION = "1.43.1" const nilGomegaPanic = `You are trying to make an assertion, but haven't registered Gomega's fail handler. If you're using Ginkgo then you probably forgot to put your assertion in an It(). diff --git a/vendor/modules.txt b/vendor/modules.txt index 28e9a3ef..c4b792b8 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1198,7 +1198,7 @@ github.com/onsi/ginkgo/v2/internal/reporters github.com/onsi/ginkgo/v2/internal/testingtproxy github.com/onsi/ginkgo/v2/reporters github.com/onsi/ginkgo/v2/types -# github.com/onsi/gomega v1.43.0 +# github.com/onsi/gomega v1.43.1 ## explicit; go 1.25.0 github.com/onsi/gomega github.com/onsi/gomega/format