Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: required properties of message type are required in OpenAPI #2904

Conversation

gostajonasson
Copy link
Contributor

Properties of message type having the annotation [(google.api.field_behavior) = REQUIRED] are not marked as required in the generated OpenAPI specification.
This PR fixes that.

A maintainer should sanity check this PR since it naively removes logic someone added on purpose linking to a "JSON Reference syntax".

Fixes #2837

@google-cla
Copy link

google-cla bot commented Sep 26, 2022

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

@keyz
Copy link
Contributor

keyz commented Sep 28, 2022

Would love to see this merged!

@gostajonasson -- I added a few tests (in my fork) to verify your change, and I think you have the right fix.

  • keyz@91060e6: before applying the fix, required annotations are missing
  • keyz@deab66e: after applying the fix, openapi files seems legit with no regressions

Feel free to copy anything from my fork if it helps to get your PR merged :)

@johanbrandhorst
Copy link
Collaborator

Huh, this is a surprisingly small fix. I can't say I know why that check was there. @MakDon what do you think about the changes? You've contributed a fix in this space recently.

@MakDon
Copy link
Contributor

MakDon commented Sep 28, 2022

Huh, this is a surprisingly small fix. I can't say I know why that check was there. @MakDon what do you think about the changes? You've contributed a fix in this space recently.

I will take a look at it ASAP :D

@gostajonasson
Copy link
Contributor Author

Thanks @keyz!
@johanbrandhorst @MakDon just tell me if you want me to add the tests from @keyz to this PR.

@MakDon
Copy link
Contributor

MakDon commented Sep 28, 2022

It seems that this solution would cause another issue, see #1937 AND #1944
I am trying to confirm if this PR would break the generation again.

IMO, it is better to add the tests from @keyz
I am trying to confirm why the test TestSchemaOfField is not broken when running the CI

@johanbrandhorst
Copy link
Collaborator

More tests shouldn't hurt, so please feel free to add them here. Thanks @MakDon for taking a look!

@gostajonasson
Copy link
Contributor Author

It seems that this solution would cause another issue, see #1937 AND #1944

Yes you are correct @MakDon, this PR is naive and I need help fixing it.
This PR would cause message types marked with the OUTPUT_ONLY field behaviour as read only like this:

  Location pickup_location = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
    properties:
      pickupLocation:
        $ref: '#/definitions/Location'
        readOnly: true

Which isn't recommended since other members than $ref should be ignored per the JSON Reference spec.

But I'm also seeing that the description field is added (somewhere else in the code) next to $ref members so that's an existing bug.

Personally I think that the best fix is outside of the schemaOfField function and not output any members next to $ref (if openapiSchemaObject.Ref is set) in the final OpenAPI spec.
What I mean is that the schemaOfField function should not be responsible for filtering out fields just because it is of message type. That should a renderer do since it's OK to list the required fields outside of the property:

  Shipment:
    type: object
    properties:
      pickupLocation:
        $ref: '#/definitions/Location'
    description: A description.
    required:
      - pickupLocation

@gostajonasson gostajonasson force-pushed the make_required_messages_required_in_openapi branch from 5870b53 to d3eab36 Compare October 1, 2022 21:35
@gostajonasson
Copy link
Contributor Author

Pushed a fix for the bug that @MakDon mentioned my initial fix would cause.
Right now this PR fixes all bugs for my use case.
Will add the tests from @keyz later.

@johanbrandhorst
Copy link
Collaborator

Hi @gostajonasson, thanks again for working on this, do you think you'll bring this over the line in the next week or so? I'm just planning out the next release timing. Thanks!

@gostajonasson
Copy link
Contributor Author

gostajonasson commented Oct 12, 2022

Hi @gostajonasson, thanks again for working on this, do you think you'll bring this over the line in the next week or so? I'm just planning out the next release timing. Thanks!

@johanbrandhorst Yes I hope so! Sorry for the delay.

@gostajonasson
Copy link
Contributor Author

@keyz Do you think I should add everything from the two commits you linked to?
I'm not familiar with this repo and don't know exactly what to copy to test the fix in this PR.

@keyz
Copy link
Contributor

keyz commented Oct 12, 2022

@gostajonasson you can:

  1. start with copying what I did in examples/internal/proto/examplepb/a_bit_of_everything.proto (commit keyz@91060e6).
  2. after that, follow CONTRIBUTING.md to regenerate the fixtures
  3. you might need to tweak examples/internal/clients/abe/BUILD.bazel, but my commits (+ keyz@deab66e) should contain everything you need

@gostajonasson gostajonasson force-pushed the make_required_messages_required_in_openapi branch 2 times, most recently from 61a3894 to 1547c87 Compare October 13, 2022 17:54
@gostajonasson
Copy link
Contributor Author

@keyz Thanks for the instructions! I've followed them and pushed the changes. Happy for a review and a workflow run. 🤗

@gostajonasson gostajonasson force-pushed the make_required_messages_required_in_openapi branch from 1547c87 to ca03173 Compare October 13, 2022 18:01
@gostajonasson gostajonasson force-pushed the make_required_messages_required_in_openapi branch from ca03173 to 81c7453 Compare October 13, 2022 18:09
@gostajonasson gostajonasson force-pushed the make_required_messages_required_in_openapi branch from 81c7453 to db42d76 Compare October 13, 2022 18:46
@johanbrandhorst johanbrandhorst merged commit e3b2511 into grpc-ecosystem:master Oct 13, 2022
@johanbrandhorst
Copy link
Collaborator

Thanks for your contribution!

@johanbrandhorst
Copy link
Collaborator

another-rex referenced this pull request in google/osv.dev Nov 4, 2022
)

[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[github.com/grpc-ecosystem/grpc-gateway/v2](https://togithub.com/grpc-ecosystem/grpc-gateway)
| require | minor | `v2.11.3` -> `v2.13.0` |

---

### Release Notes

<details>
<summary>grpc-ecosystem/grpc-gateway</summary>

###
[`v2.13.0`](https://togithub.com/grpc-ecosystem/grpc-gateway/releases/tag/v2.13.0)

[Compare
Source](https://togithub.com/grpc-ecosystem/grpc-gateway/compare/v2.12.0...v2.13.0)

#### What's Changed

- Updated gRPC code Cancelled replaced with HTTP code 499 by
[@&#8203;tech-sumit](https://togithub.com/tech-sumit) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2957](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2957)
- fix: remove default service tag generation for methods by
[@&#8203;kkolur](https://togithub.com/kkolur) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2960](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2960)
- Use tag instead of has pin for SLSA generator by
[@&#8203;laurentsimon](https://togithub.com/laurentsimon) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2969](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2969)
- Add Conduit to adopters by
[@&#8203;hariso](https://togithub.com/hariso) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2981](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2981)
- feat(gen-openapiv2): support trailing comments by
[@&#8203;ionling](https://togithub.com/ionling) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2965](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2965)
- feat(gen-openapiv2): keep fields next to "$ref" fields by
[@&#8203;gostajonasson](https://togithub.com/gostajonasson) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2986](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2986)

#### New Contributors

- [@&#8203;tech-sumit](https://togithub.com/tech-sumit) made their first
contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2957](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2957)
- [@&#8203;hariso](https://togithub.com/hariso) made their first
contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2981](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2981)
- [@&#8203;ionling](https://togithub.com/ionling) made their first
contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2965](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2965)

**Full Changelog**:
grpc-ecosystem/grpc-gateway@v2.12.0...v2.13.0

###
[`v2.12.0`](https://togithub.com/grpc-ecosystem/grpc-gateway/releases/tag/v2.12.0)

[Compare
Source](https://togithub.com/grpc-ecosystem/grpc-gateway/compare/v2.11.3...v2.12.0)

#### What's Changed

- fix: support for oneof fields in request bodies by
[@&#8203;isbang](https://togithub.com/isbang) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2867](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2867)
- mux: calculate verb correctly for cases like DELETE /foo/bar:archive
when user provided wrong method by
[@&#8203;jonathaningram](https://togithub.com/jonathaningram) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2870](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2870)
- Update googleapis dependency by
[@&#8203;johanbrandhorst](https://togithub.com/johanbrandhorst) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2875](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2875)
- protoc-gen-openapiv2: RPC visibility setting transitively applied to
messages by [@&#8203;erademacher](https://togithub.com/erademacher) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2880](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2880)
- protoc-gen-openapiv2: Use json_name when generating required field
names by [@&#8203;patrick246](https://togithub.com/patrick246) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2885](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2885)
- fix: support service tags in OpenAPI config file
([#&#8203;2817](https://togithub.com/grpc-ecosystem/grpc-gateway/issues/2817))
by [@&#8203;y-takuya](https://togithub.com/y-takuya) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2858](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2858)
- feat: add option to disable rendering of service tags by
[@&#8203;kkolur](https://togithub.com/kkolur) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2928](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2928)
- fix: required properties of message type are required in OpenAPI by
[@&#8203;gostajonasson](https://togithub.com/gostajonasson) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2904](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2904)
- feat: add option to add description to tags by
[@&#8203;same-id](https://togithub.com/same-id) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2939](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2939)
- add extensions for Tag object by
[@&#8203;kkolur](https://togithub.com/kkolur) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2950](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2950)
- Make registry load packages deterministically by
[@&#8203;gonzaloserrano](https://togithub.com/gonzaloserrano) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2945](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2945)

#### New Contributors

- [@&#8203;erademacher](https://togithub.com/erademacher) made their
first contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2880](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2880)
- [@&#8203;patrick246](https://togithub.com/patrick246) made their first
contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2885](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2885)
- [@&#8203;y-takuya](https://togithub.com/y-takuya) made their first
contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2858](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2858)
- [@&#8203;kkolur](https://togithub.com/kkolur) made their first
contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2928](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2928)
- [@&#8203;gostajonasson](https://togithub.com/gostajonasson) made their
first contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2904](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2904)
- [@&#8203;same-id](https://togithub.com/same-id) made their first
contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2939](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2939)
- [@&#8203;gonzaloserrano](https://togithub.com/gonzaloserrano) made
their first contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2945](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2945)

**Full Changelog**:
grpc-ecosystem/grpc-gateway@v2.11.3...v2.12.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 6am on monday" in timezone
Australia/Sydney, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://app.renovatebot.com/dashboard#github/google/osv.dev).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzMi4yNDEuOSIsInVwZGF0ZWRJblZlciI6IjM0LjEyLjAifQ==-->

Co-authored-by: Rex P <106129829+another-rex@users.noreply.github.com>
f0rmiga referenced this pull request in aspect-build/talkie Aug 11, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [github.com/avast/retry-go/v4](https://togithub.com/avast/retry-go) |
require | minor | `v4.1.0` -> `v4.3.0` |
|
[github.com/bazelbuild/bazel-gazelle](https://togithub.com/bazelbuild/bazel-gazelle)
| require | minor | `v0.27.0` -> `v0.28.0` |
|
[github.com/bazelbuild/bazelisk](https://togithub.com/bazelbuild/bazelisk)
| require | patch | `v1.14.0` -> `v1.14.1` |
| [github.com/evanw/esbuild](https://togithub.com/evanw/esbuild) |
require | patch | `v0.15.10` -> `v0.15.12` |
|
[github.com/grpc-ecosystem/grpc-gateway/v2](https://togithub.com/grpc-ecosystem/grpc-gateway)
| require | minor | `v2.11.3` -> `v2.13.0` |
|
[github.com/grpc-ecosystem/grpc-health-probe](https://togithub.com/grpc-ecosystem/grpc-health-probe)
| require | patch | `v0.4.13` -> `v0.4.14` |
| [github.com/onsi/ginkgo/v2](https://togithub.com/onsi/ginkgo) |
require | minor | `v2.3.0` -> `v2.4.0` |
| [github.com/onsi/gomega](https://togithub.com/onsi/gomega) | require |
minor | `v1.22.1` -> `v1.24.0` |
| [github.com/spf13/cobra](https://togithub.com/spf13/cobra) | require |
patch | `v1.6.0` -> `v1.6.1` |
| [golang.org/x/sync](https://togithub.com/golang/sync) | require |
minor | `v0.0.0-20220929204114-8fcdb60fdcc0` -> `v0.1.0` |
|
[google.golang.org/genproto](https://togithub.com/googleapis/go-genproto)
| require | digest | `15ba04f` -> `115e99e` |
| [google.golang.org/grpc](https://togithub.com/grpc/grpc-go) | require
| patch | `v1.50.0` -> `v1.50.1` |
| [helm.sh/helm/v3](https://togithub.com/helm/helm) | require | patch |
`v3.10.0` -> `v3.10.1` |
| [k8s.io/apimachinery](https://togithub.com/kubernetes/apimachinery) |
require | patch | `v0.25.2` -> `v0.25.3` |
| [sigs.k8s.io/kind](https://togithub.com/kubernetes-sigs/kind) |
require | minor | `v0.16.0` -> `v0.17.0` |

---

### ⚠ Dependency Lookup Warnings ⚠

Warnings were logged while processing this repo. Please check the
Dependency Dashboard for more information.

---

### Release Notes

<details>
<summary>avast/retry-go</summary>

### [`v4.3.0`](https://togithub.com/avast/retry-go/releases/tag/v4.3.0)

[Compare
Source](https://togithub.com/avast/retry-go/compare/v4.2.0...v4.3.0)

[#&#8203;71](https://togithub.com/avast/retry-go/issues/71)
[#&#8203;48](https://togithub.com/avast/retry-go/issues/48)

### [`v4.2.0`](https://togithub.com/avast/retry-go/releases/tag/v4.2.0)

[Compare
Source](https://togithub.com/avast/retry-go/compare/v4.1.0...v4.2.0)

[#&#8203;65](https://togithub.com/avast/retry-go/issues/65)
[#&#8203;70](https://togithub.com/avast/retry-go/issues/70)

</details>

<details>
<summary>bazelbuild/bazel-gazelle</summary>

###
[`v0.28.0`](https://togithub.com/bazelbuild/bazel-gazelle/releases/tag/v0.28.0)

[Compare
Source](https://togithub.com/bazelbuild/bazel-gazelle/compare/v0.27.0...v0.28.0)

#### What's Changed

- language/proto: gen_known_imports creates structs instead of function
calls by [@&#8203;eric-skydio](https://togithub.com/eric-skydio) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1333](https://togithub.com/bazelbuild/bazel-gazelle/pull/1333)
- Add DoneGeneratingRules language hook by
[@&#8203;illicitonion](https://togithub.com/illicitonion) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1325](https://togithub.com/bazelbuild/bazel-gazelle/pull/1325)
- Allow configuring timeout of generation tests by
[@&#8203;illicitonion](https://togithub.com/illicitonion) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1324](https://togithub.com/bazelbuild/bazel-gazelle/pull/1324)
- bug: Allow user-specified tags on gazelle rule by
[@&#8203;Helcaraxan](https://togithub.com/Helcaraxan) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1308](https://togithub.com/bazelbuild/bazel-gazelle/pull/1308)
- Replace \_get_auth with Bazel's read_user_netrc by
[@&#8203;linzhp](https://togithub.com/linzhp) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1338](https://togithub.com/bazelbuild/bazel-gazelle/pull/1338)
- language/go should consider default_visibility set by OtherGen
([#&#8203;783](https://togithub.com/bazelbuild/bazel-gazelle/issues/783))
by [@&#8203;dnathe4th](https://togithub.com/dnathe4th) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1341](https://togithub.com/bazelbuild/bazel-gazelle/pull/1341)
- fix: pass `visibility` attribute for `gazelle` macro to resulting
`sh_binary` by [@&#8203;cgrindel](https://togithub.com/cgrindel) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1340](https://togithub.com/bazelbuild/bazel-gazelle/pull/1340)
- Add additional bzlmod requirements to allow grpc protobufs to work by
[@&#8203;shs96c](https://togithub.com/shs96c) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1345](https://togithub.com/bazelbuild/bazel-gazelle/pull/1345)
- bzlmod: Simplify go_grpc_library support by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1346](https://togithub.com/bazelbuild/bazel-gazelle/pull/1346)
- bzlmod: Add support for custom `go_proto_library` compilers by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1348](https://togithub.com/bazelbuild/bazel-gazelle/pull/1348)
- Add visibility extension to support recursive default_visibility
([#&#8203;783](https://togithub.com/bazelbuild/bazel-gazelle/issues/783))
by [@&#8203;dnathe4th](https://togithub.com/dnathe4th) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1343](https://togithub.com/bazelbuild/bazel-gazelle/pull/1343)
- Make `gazelle_generation_test` respect out suffix when generating
golden files by [@&#8203;blorente](https://togithub.com/blorente) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1352](https://togithub.com/bazelbuild/bazel-gazelle/pull/1352)
- Add size argument to `gazelle_generation_test` by
[@&#8203;charlesoconor](https://togithub.com/charlesoconor) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1351](https://togithub.com/bazelbuild/bazel-gazelle/pull/1351)

#### New Contributors

- [@&#8203;eric-skydio](https://togithub.com/eric-skydio) made their
first contribution in
[https://github.com/bazelbuild/bazel-gazelle/pull/1333](https://togithub.com/bazelbuild/bazel-gazelle/pull/1333)
- [@&#8203;dnathe4th](https://togithub.com/dnathe4th) made their first
contribution in
[https://github.com/bazelbuild/bazel-gazelle/pull/1341](https://togithub.com/bazelbuild/bazel-gazelle/pull/1341)
- [@&#8203;cgrindel](https://togithub.com/cgrindel) made their first
contribution in
[https://github.com/bazelbuild/bazel-gazelle/pull/1340](https://togithub.com/bazelbuild/bazel-gazelle/pull/1340)
- [@&#8203;shs96c](https://togithub.com/shs96c) made their first
contribution in
[https://github.com/bazelbuild/bazel-gazelle/pull/1345](https://togithub.com/bazelbuild/bazel-gazelle/pull/1345)
- [@&#8203;blorente](https://togithub.com/blorente) made their first
contribution in
[https://github.com/bazelbuild/bazel-gazelle/pull/1352](https://togithub.com/bazelbuild/bazel-gazelle/pull/1352)
- [@&#8203;charlesoconor](https://togithub.com/charlesoconor) made their
first contribution in
[https://github.com/bazelbuild/bazel-gazelle/pull/1351](https://togithub.com/bazelbuild/bazel-gazelle/pull/1351)

**Full Changelog**:
bazel-contrib/bazel-gazelle@v0.27.0...v0.28.0

</details>

<details>
<summary>bazelbuild/bazelisk</summary>

###
[`v1.14.1`](https://togithub.com/bazelbuild/bazelisk/compare/v1.14.0...v1.14.1)

[Compare
Source](https://togithub.com/bazelbuild/bazelisk/compare/v1.14.0...v1.14.1)

</details>

<details>
<summary>evanw/esbuild</summary>

###
[`v0.15.12`](https://togithub.com/evanw/esbuild/releases/tag/v0.15.12)

[Compare
Source](https://togithub.com/evanw/esbuild/compare/v0.15.11...v0.15.12)

- Fix minifier correctness bug with single-use substitutions
([#&#8203;2619](https://togithub.com/evanw/esbuild/issues/2619))

When minification is enabled, esbuild will attempt to eliminate
variables that are only used once in certain cases. For example, esbuild
minifies this code:

    ```js
    function getEmailForUser(name) {
      let users = db.table('users');
      let user = users.find({ name });
      let email = user?.get('email');
      return email;
    }
    ```

    into this code:

    ```js
function getEmailForUser(e){return
db.table("users").find({name:e})?.get("email")}
    ```

However, this transformation had a bug where esbuild did not correctly
consider the "read" part of binary read-modify-write assignment
operators. For example, it's incorrect to minify the following code into
`bar += fn()` because the call to `fn()` might modify `bar`:

    ```js
    const foo = fn();
    bar += foo;
    ```

In addition to fixing this correctness bug, this release also improves
esbuild's output in the case where all values being skipped over are
primitives:

    ```js
    function toneMapLuminance(r, g, b) {
      let hdr = luminance(r, g, b)
      let decay = 1 / (1 + hdr)
      return 1 - decay
    }
    ```

Previous releases of esbuild didn't substitute these single-use
variables here, but esbuild will now minify this to the following code
starting with this release:

    ```js
    function toneMapLuminance(e,n,a){return 1-1/(1+luminance(e,n,a))}
    ```

###
[`v0.15.11`](https://togithub.com/evanw/esbuild/releases/tag/v0.15.11)

[Compare
Source](https://togithub.com/evanw/esbuild/compare/v0.15.10...v0.15.11)

- Fix various edge cases regarding template tags and `this`
([#&#8203;2610](https://togithub.com/evanw/esbuild/issues/2610))

This release fixes some bugs where the value of `this` wasn't correctly
preserved when evaluating template tags in a few edge cases. These edge
cases are listed below:

    ```js
    async function test() {
      class Foo { foo() { return this } }
      class Bar extends Foo {
        a = async () => super.foo``
        b = async () => super['foo']``
        c = async (foo) => super[foo]``
      }
      function foo() { return this }
      const obj = { foo }
      const bar = new Bar
      console.log(
        (await bar.a()) === bar,
        (await bar.b()) === bar,
        (await bar.c('foo')) === bar,
        { foo }.foo``.foo === foo,
        (true && obj.foo)`` !== obj,
        (false || obj.foo)`` !== obj,
        (null ?? obj.foo)`` !== obj,
      )
    }
    test()
    ```

Each edge case in the code above previously incorrectly printed `false`
when run through esbuild with `--minify --target=es6` but now correctly
prints `true`. These edge cases are unlikely to have affected real-world
code.

</details>

<details>
<summary>grpc-ecosystem/grpc-gateway</summary>

###
[`v2.13.0`](https://togithub.com/grpc-ecosystem/grpc-gateway/releases/tag/v2.13.0)

[Compare
Source](https://togithub.com/grpc-ecosystem/grpc-gateway/compare/v2.12.0...v2.13.0)

#### What's Changed

- Updated gRPC code Cancelled replaced with HTTP code 499 by
[@&#8203;tech-sumit](https://togithub.com/tech-sumit) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2957](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2957)
- fix: remove default service tag generation for methods by
[@&#8203;kkolur](https://togithub.com/kkolur) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2960](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2960)
- Use tag instead of has pin for SLSA generator by
[@&#8203;laurentsimon](https://togithub.com/laurentsimon) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2969](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2969)
- Add Conduit to adopters by
[@&#8203;hariso](https://togithub.com/hariso) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2981](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2981)
- feat(gen-openapiv2): support trailing comments by
[@&#8203;ionling](https://togithub.com/ionling) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2965](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2965)
- feat(gen-openapiv2): keep fields next to "$ref" fields by
[@&#8203;gostajonasson](https://togithub.com/gostajonasson) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2986](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2986)

#### New Contributors

- [@&#8203;tech-sumit](https://togithub.com/tech-sumit) made their first
contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2957](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2957)
- [@&#8203;hariso](https://togithub.com/hariso) made their first
contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2981](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2981)
- [@&#8203;ionling](https://togithub.com/ionling) made their first
contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2965](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2965)

**Full Changelog**:
grpc-ecosystem/grpc-gateway@v2.12.0...v2.13.0

###
[`v2.12.0`](https://togithub.com/grpc-ecosystem/grpc-gateway/releases/tag/v2.12.0)

[Compare
Source](https://togithub.com/grpc-ecosystem/grpc-gateway/compare/v2.11.3...v2.12.0)

#### What's Changed

- fix: support for oneof fields in request bodies by
[@&#8203;isbang](https://togithub.com/isbang) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2867](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2867)
- mux: calculate verb correctly for cases like DELETE /foo/bar:archive
when user provided wrong method by
[@&#8203;jonathaningram](https://togithub.com/jonathaningram) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2870](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2870)
- Update googleapis dependency by
[@&#8203;johanbrandhorst](https://togithub.com/johanbrandhorst) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2875](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2875)
- protoc-gen-openapiv2: RPC visibility setting transitively applied to
messages by [@&#8203;erademacher](https://togithub.com/erademacher) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2880](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2880)
- protoc-gen-openapiv2: Use json_name when generating required field
names by [@&#8203;patrick246](https://togithub.com/patrick246) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2885](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2885)
- fix: support service tags in OpenAPI config file
([#&#8203;2817](https://togithub.com/grpc-ecosystem/grpc-gateway/issues/2817))
by [@&#8203;y-takuya](https://togithub.com/y-takuya) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2858](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2858)
- feat: add option to disable rendering of service tags by
[@&#8203;kkolur](https://togithub.com/kkolur) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2928](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2928)
- fix: required properties of message type are required in OpenAPI by
[@&#8203;gostajonasson](https://togithub.com/gostajonasson) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2904](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2904)
- feat: add option to add description to tags by
[@&#8203;same-id](https://togithub.com/same-id) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2939](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2939)
- add extensions for Tag object by
[@&#8203;kkolur](https://togithub.com/kkolur) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2950](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2950)
- Make registry load packages deterministically by
[@&#8203;gonzaloserrano](https://togithub.com/gonzaloserrano) in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2945](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2945)

#### New Contributors

- [@&#8203;erademacher](https://togithub.com/erademacher) made their
first contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2880](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2880)
- [@&#8203;patrick246](https://togithub.com/patrick246) made their first
contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2885](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2885)
- [@&#8203;y-takuya](https://togithub.com/y-takuya) made their first
contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2858](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2858)
- [@&#8203;kkolur](https://togithub.com/kkolur) made their first
contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2928](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2928)
- [@&#8203;gostajonasson](https://togithub.com/gostajonasson) made their
first contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2904](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2904)
- [@&#8203;same-id](https://togithub.com/same-id) made their first
contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2939](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2939)
- [@&#8203;gonzaloserrano](https://togithub.com/gonzaloserrano) made
their first contribution in
[https://github.com/grpc-ecosystem/grpc-gateway/pull/2945](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/2945)

**Full Changelog**:
grpc-ecosystem/grpc-gateway@v2.11.3...v2.12.0

</details>

<details>
<summary>grpc-ecosystem/grpc-health-probe</summary>

###
[`v0.4.14`](https://togithub.com/grpc-ecosystem/grpc-health-probe/releases/tag/v0.4.14)

[Compare
Source](https://togithub.com/grpc-ecosystem/grpc-health-probe/compare/v0.4.13...v0.4.14)

#### Changelog

-
[`aa786e3`](https://togithub.com/grpc-ecosystem/grpc-health-probe/commit/aa786e3)
Release v0.4.14

</details>

<details>
<summary>onsi/ginkgo</summary>

### [`v2.4.0`](https://togithub.com/onsi/ginkgo/releases/tag/v2.4.0)

[Compare
Source](https://togithub.com/onsi/ginkgo/compare/v2.3.1...v2.4.0)

#### 2.4.0

##### Features

- DeferCleanup supports functions with multiple-return values
\[[`5e33c75`](https://togithub.com/onsi/ginkgo/commit/5e33c75)]
- Add GinkgoLogr
([#&#8203;1067](https://togithub.com/onsi/ginkgo/issues/1067))
\[[`bf78c28`](https://togithub.com/onsi/ginkgo/commit/bf78c28)]
- Introduction of 'MustPassRepeatedly' decorator
([#&#8203;1051](https://togithub.com/onsi/ginkgo/issues/1051))
\[[`047c02f`](https://togithub.com/onsi/ginkgo/commit/047c02f)]

##### Fixes

- correcting some typos
([#&#8203;1064](https://togithub.com/onsi/ginkgo/issues/1064))
\[[`1403d3c`](https://togithub.com/onsi/ginkgo/commit/1403d3c)]
- fix flaky internal_integration interupt specs
\[[`2105ba3`](https://togithub.com/onsi/ginkgo/commit/2105ba3)]
- Correct busted link in README
\[[`be6b5b9`](https://togithub.com/onsi/ginkgo/commit/be6b5b9)]

##### Maintenance

- Bump actions/checkout from 2 to 3
([#&#8203;1062](https://togithub.com/onsi/ginkgo/issues/1062))
\[[`8a2f483`](https://togithub.com/onsi/ginkgo/commit/8a2f483)]
- Bump golang.org/x/tools from 0.1.12 to 0.2.0
([#&#8203;1065](https://togithub.com/onsi/ginkgo/issues/1065))
\[[`529c4e8`](https://togithub.com/onsi/ginkgo/commit/529c4e8)]
- Bump github/codeql-action from 1 to 2
([#&#8203;1061](https://togithub.com/onsi/ginkgo/issues/1061))
\[[`da09146`](https://togithub.com/onsi/ginkgo/commit/da09146)]
- Bump actions/setup-go from 2 to 3
([#&#8203;1060](https://togithub.com/onsi/ginkgo/issues/1060))
\[[`918040d`](https://togithub.com/onsi/ginkgo/commit/918040d)]
- Bump github.com/onsi/gomega from 1.22.0 to 1.22.1
([#&#8203;1053](https://togithub.com/onsi/ginkgo/issues/1053))
\[[`2098e4d`](https://togithub.com/onsi/ginkgo/commit/2098e4d)]
- Bump nokogiri from 1.13.8 to 1.13.9 in /docs
([#&#8203;1066](https://togithub.com/onsi/ginkgo/issues/1066))
\[[`1d74122`](https://togithub.com/onsi/ginkgo/commit/1d74122)]
- Add GHA to dependabot config
\[[`4442772`](https://togithub.com/onsi/ginkgo/commit/4442772)]

### [`v2.3.1`](https://togithub.com/onsi/ginkgo/releases/tag/v2.3.1)

[Compare
Source](https://togithub.com/onsi/ginkgo/compare/v2.3.0...v2.3.1)

#### 2.3.1

#### Fixes

Several users were invoking `ginkgo` by installing the latest version of
the cli via `go install github.com/onsi/ginkgo/v2/ginkgo@latest`. When
2.3.0 was released this resulted in an influx of issues as CI systems
failed due to a change in the internal contract between the Ginkgo CLI
and the Ginkgo library. Ginkgo only supports running the same version of
the library as the cli (which is why both are packaged in the same
repository).

With this patch release, the ginkgo CLI can now identify a version
mismatch and emit a helpful error message.

- Ginkgo cli can identify version mismatches and emit a helpful error
message \[[`bc4ae2f`](https://togithub.com/onsi/ginkgo/commit/bc4ae2f)]
- further emphasize that a version match is required when running Ginkgo
on CI and/or locally
\[[`2691dd8`](https://togithub.com/onsi/ginkgo/commit/2691dd8)]

#### Maintenance

- bump gomega to v1.22.0
\[[`822a937`](https://togithub.com/onsi/ginkgo/commit/822a937)]

</details>

<details>
<summary>onsi/gomega</summary>

### [`v1.24.0`](https://togithub.com/onsi/gomega/releases/tag/v1.24.0)

[Compare
Source](https://togithub.com/onsi/gomega/compare/v1.23.0...v1.24.0)

#### 1.24.0

##### Features

Introducting
[gcustom](https://onsi.github.io/gomega/#gcustom-a-convenient-mechanism-for-buildling-custom-matchers)
- a convenient mechanism for building custom matchers.

This is an RC release for `gcustom`. The external API may be tweaked in
response to feedback however it is expected to remain mostly stable.

##### Maintenance

- Update BeComparableTo documentation
\[[`756eaa0`](https://togithub.com/onsi/gomega/commit/756eaa0)]

### [`v1.23.0`](https://togithub.com/onsi/gomega/releases/tag/v1.23.0)

[Compare
Source](https://togithub.com/onsi/gomega/compare/v1.22.1...v1.23.0)

#### 1.23.0

##### Features

- Custom formatting on a per-type basis can be provided using
`format.RegisterCustomFormatter()` -- see the docs
[here](https://onsi.github.io/gomega/#adjusting-output)

-   Substantial improvement have been made to `StopTrying()`:
- Users can now use `StopTrying().Wrap(err)` to wrap errors and
`StopTrying().Attach(description, object)` to attach arbitrary objects
to the `StopTrying()` error
- `StopTrying()` is now always interpreted as a failure. If you are an
early adopter of `StopTrying()` you may need to change your code as the
prior version would match against the returned value even if
`StopTrying()` was returned. Going forward the `StopTrying()` api should
remain stable.
- `StopTrying()` and `StopTrying().Now()` can both be used in matchers -
not just polled functions.

- `TryAgainAfter(duration)` is used like `StopTrying()` but instructs
`Eventually` and `Consistently` that the poll should be tried again
after the specified duration. This allows you to dynamically adjust the
polling duration.

- `ctx` can now be passed-in as the first argument to `Eventually` and
`Consistently`.

#### Maintenance

- Bump github.com/onsi/ginkgo/v2 from 2.3.0 to 2.3.1
([#&#8203;597](https://togithub.com/onsi/gomega/issues/597))
\[[`afed901`](https://togithub.com/onsi/gomega/commit/afed901)]
- Bump nokogiri from 1.13.8 to 1.13.9 in /docs
([#&#8203;599](https://togithub.com/onsi/gomega/issues/599))
\[[`7c691b3`](https://togithub.com/onsi/gomega/commit/7c691b3)]
- Bump github.com/google/go-cmp from 0.5.8 to 0.5.9
([#&#8203;587](https://togithub.com/onsi/gomega/issues/587))
\[[`ff22665`](https://togithub.com/onsi/gomega/commit/ff22665)]

</details>

<details>
<summary>spf13/cobra</summary>

### [`v1.6.1`](https://togithub.com/spf13/cobra/releases/tag/v1.6.1)

[Compare
Source](https://togithub.com/spf13/cobra/compare/v1.6.0...v1.6.1)

##### Bug fixes 🐛

- Fixes a panic when `AddGroup` isn't called before
`AddCommand(my-sub-command)` is executed. This can happen within more
complex cobra file structures that have many different `init`s to be
executed. Now, the check for groups has been moved to `ExecuteC` and
provides more flexibility when working with grouped commands -
[@&#8203;marckhouzam](https://togithub.com/marckhouzam) (and shout out
to [@&#8203;aawsome](https://togithub.com/aawsome),
[@&#8203;andig](https://togithub.com/andig) and
[@&#8203;KINGSABRI](https://togithub.com/KINGSABRI) for a deep
investigation into this! 👏🏼)

</details>

<details>
<summary>grpc/grpc-go</summary>

### [`v1.50.1`](https://togithub.com/grpc/grpc-go/releases/tag/v1.50.1)

[Compare
Source](https://togithub.com/grpc/grpc-go/compare/v1.50.0...v1.50.1)

New Features

- gcp/observability: support new configuration defined in public preview
user guide

</details>

<details>
<summary>helm/helm</summary>

### [`v3.10.1`](https://togithub.com/helm/helm/releases/tag/v3.10.1)

[Compare
Source](https://togithub.com/helm/helm/compare/v3.10.0...v3.10.1)

Helm v3.10.1 is a patch release. Users are encouraged to upgrade for the
best experience. Users are encouraged to upgrade for the best
experience.

The community keeps growing, and we'd love to see you there!

- Join the discussion in [Kubernetes
Slack](https://kubernetes.slack.com):
    -   for questions and just to hang out
    -   for discussing PRs, code, and bugs
- Hang out at the Public Developer Call: Thursday, 9:30 Pacific via
[Zoom](https://zoom.us/j/696660622)
- Test, debug, and contribute charts:
[ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0)

#### Installation and Upgrading

Download Helm v3.10.1. The common platform binaries are here:

- [MacOS amd64](https://get.helm.sh/helm-v3.10.1-darwin-amd64.tar.gz)
([checksum](https://get.helm.sh/helm-v3.10.1-darwin-amd64.tar.gz.sha256sum)
/ e7f2db0df45a5011c1df8c82efde1e306a93a31eba4696d27cd751917e549ac6)
- [MacOS arm64](https://get.helm.sh/helm-v3.10.1-darwin-arm64.tar.gz)
([checksum](https://get.helm.sh/helm-v3.10.1-darwin-arm64.tar.gz.sha256sum)
/ 28a079a61c393d125c5d5e1a8e20a04b72c709ccfa8e7822f3f17bb1ad2bbc22)
- [Linux amd64](https://get.helm.sh/helm-v3.10.1-linux-amd64.tar.gz)
([checksum](https://get.helm.sh/helm-v3.10.1-linux-amd64.tar.gz.sha256sum)
/ c12d2cd638f2d066fec123d0bd7f010f32c643afdf288d39a4610b1f9cb32af3)
- [Linux arm](https://get.helm.sh/helm-v3.10.1-linux-arm.tar.gz)
([checksum](https://get.helm.sh/helm-v3.10.1-linux-arm.tar.gz.sha256sum)
/ 309f56a35185023262b4f20f7315d4e60854b517243444b34f5a458c81b33009)
- [Linux arm64](https://get.helm.sh/helm-v3.10.1-linux-arm64.tar.gz)
([checksum](https://get.helm.sh/helm-v3.10.1-linux-arm64.tar.gz.sha256sum)
/ d04b38d439ab8655abb4cb9ccc1efa8a3fe95f3f68af46d9137c6b7985491833)
- [Linux i386](https://get.helm.sh/helm-v3.10.1-linux-386.tar.gz)
([checksum](https://get.helm.sh/helm-v3.10.1-linux-386.tar.gz.sha256sum)
/ fb75a02d8a6e9ba6dd458f47dc0771a0f15c1842b6f6e2928c9136e676657993)
- [Linux ppc64le](https://get.helm.sh/helm-v3.10.1-linux-ppc64le.tar.gz)
([checksum](https://get.helm.sh/helm-v3.10.1-linux-ppc64le.tar.gz.sha256sum)
/ 855ab37613b393c68d50b4355273df2322f27db08b1deca8807bac80343a8a64)
- [Linux s390x](https://get.helm.sh/helm-v3.10.1-linux-s390x.tar.gz)
([checksum](https://get.helm.sh/helm-v3.10.1-linux-s390x.tar.gz.sha256sum)
/ e51220b4582a3cad4b45330c96e1b0408d33e25f90a9e66b06649903acf1bed1)
- [Windows amd64](https://get.helm.sh/helm-v3.10.1-windows-amd64.zip)
([checksum](https://get.helm.sh/helm-v3.10.1-windows-amd64.zip.sha256sum)
/ 4c6f89f005a86665e3e90c28d36446434945594aac960a8d5a2d1c4fb1e53522)

This release was signed with ` 672C 657B E06B 4B30 969C 4A57 4614 49C2
5E36 B98E ` and can be found at
[@&#8203;mattfarina](https://togithub.com/mattfarina) [keybase
account](https://keybase.io/mattfarina). Please use the attached
signatures for verifying this release using `gpg`.

The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get
you going from there. For **upgrade instructions** or detailed
installation notes, check the [install
guide](https://helm.sh/docs/intro/install/). You can also use a [script
to
install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3)
on any system with `bash`.

#### What's Next

- 3.10.2 will contain only bug fixes and be released on November 9, 2022
- 3.11.1 is the next feature releaseand be released on January 18, 2023

#### Changelog

- Updating the deb location for azure cli
[`9f88ccb`](https://togithub.com/helm/helm/commit/9f88ccb6aee40b9a0535fcc7efea6055e1ef72c9)
(Matt Farina)
- Updating the repo the azure cli is installed from
[`a59afc4`](https://togithub.com/helm/helm/commit/a59afc47d6c6b7946f5734bb51a7d1cf2599a0c1)
(Matt Farina)
- Updating to kubernetes 1.25.2 packages
[`35af809`](https://togithub.com/helm/helm/commit/35af809b4db460a8834b05d78a58eddcfc236558)
(Matt Farina)
- one defer
[`97780c7`](https://togithub.com/helm/helm/commit/97780c7ecc85dcb8e7ba302d50403152b2502ce6)
(CI)
- don't change r.CachePath
[`9f61b0a`](https://togithub.com/helm/helm/commit/9f61b0a6bd8686a0c509ec0bd4ec4e449d930c19)
(CI)
- avoid adding new public function
[`75a1369`](https://togithub.com/helm/helm/commit/75a1369794499daa7223271996781cadaf2c1adf)
(CI)
- fix tests
[`959acd8`](https://togithub.com/helm/helm/commit/959acd8a1da38d33b5069f083a040fa237c04bfd)
(CI)
- fix: clean up temp files in FindChartInAuthAndTLSAndPassRepoURL
([#&#8203;11171](https://togithub.com/helm/helm/issues/11171))
[`f6830f7`](https://togithub.com/helm/helm/commit/f6830f7b0ab91909454fbdc476b4e760d6525abc)
(CI)
- Allow CGO_ENABLED to be overridden for build
[`9140924`](https://togithub.com/helm/helm/commit/91409241993efe6032e078d73f95163f0dc550bc)
(Joe Julian)
- update: Optimize the error message
[`23ff142`](https://togithub.com/helm/helm/commit/23ff142d8b078287c3191260a10972699bf741a8)
(wujunwei)
- add nil judge for dependency , maintainers validate and some testcase.
[`f22e260`](https://togithub.com/helm/helm/commit/f22e26085ca44eef41f9c080374fcc056dd73cbb)
(wujunwei)
- Fix URL with encoded path support for ChartDownloader
[`4e07531`](https://togithub.com/helm/helm/commit/4e075315f81311372568d73f2c929577d10c0de2)
(Mathieu Parent)
- fix: add cases.NoLower option for we can get same effect to
strings.Title
[`4844431`](https://togithub.com/helm/helm/commit/48444319694a4b6110541ef7bfea9a8627c1aa39)
(wujunwei)
- Tolerate temporary errors from etcdserver
[`802a229`](https://togithub.com/helm/helm/commit/802a22903b9666aaba73a6e58602f4ff0dc9cf01)
(Davanum Srinivas)

</details>

<details>
<summary>kubernetes/apimachinery</summary>

###
[`v0.25.3`](https://togithub.com/kubernetes/apimachinery/compare/v0.25.2...v0.25.3)

[Compare
Source](https://togithub.com/kubernetes/apimachinery/compare/v0.25.2...v0.25.3)

</details>

<details>
<summary>kubernetes-sigs/kind</summary>

###
[`v0.17.0`](https://togithub.com/kubernetes-sigs/kind/releases/tag/v0.17.0)

[Compare
Source](https://togithub.com/kubernetes-sigs/kind/compare/v0.16.0...v0.17.0)

`v0.17.0` is a small release centered around fixing a bug loading docker
hub / docker.io tagged images with identical content but different tags
(including images with no explicit host)
[https://github.com/kubernetes-sigs/kind/pull/2955](https://togithub.com/kubernetes-sigs/kind/pull/2955)
and support for cross-architecture `kind load ...`.

This release also ships Kubernetes 1.25.3 and containerd 1.6.9 with
their respective fixes.

This release comes to you live from KubeCon NA 2022 😄

<h1 id="breaking-changes">Breaking Changes</h1>

- The default node image is a Kubernetes `v1.25.3` image:
`kindest/node:v1.25.2@&#8203;sha256:f52781bc0d7a19fb6c405c2af83abfeb311f130707a0e219175677e366cc45d1`
-   Internal config generation now defends against yaml-injection
- This should not be a breaking change if you were using the config
fields as documented
- This does not apply to config *patches* which are applied after config
generation, and by definition patch arbitrary yaml

<h1 id="new-features">New Features</h1>

-   **Support for loading cross-architecture images**
- When using `kind load docker-image` or `kind load image-archive`,
        kind now instructs containerd to import all architectures.
- This means that *if* you have multi-arch `docker run` enabled on your
host (binfmt_misc qemu-userspace),
such as in the Docker Desktop application out-of-the box, you may be
able to load and run pods with images
        for the wrong architecture (e.g. an amd64 image on an M1 mac).
-   containerd 1.6.9
-   go 1.19.2
- upgraded metallb
[https://github.com/kubernetes-sigs/kind/pull/2973](https://togithub.com/kubernetes-sigs/kind/pull/2973)
- overhauled docs code snippets
[https://github.com/kubernetes-sigs/kind/pull/2894](https://togithub.com/kubernetes-sigs/kind/pull/2894)

New Node images have been built for kind `v0.17.0`, please use these
**exact** images (IE like
`kindest/node:v1.25.3@&#8203;sha256:f52781bc0d7a19fb6c405c2af83abfeb311f130707a0e219175677e366cc45d1`
including the digest) or build your own as we may need to change the
image format again in the future 😅

Images built for this release:

- 1.25:
`kindest/node:v1.25.3@&#8203;sha256:f52781bc0d7a19fb6c405c2af83abfeb311f130707a0e219175677e366cc45d1`
- 1.24:
`kindest/node:v1.24.7@&#8203;sha256:577c630ce8e509131eab1aea12c022190978dd2f745aac5eb1fe65c0807eb315`
- 1.23:
`kindest/node:v1.23.13@&#8203;sha256:ef453bb7c79f0e3caba88d2067d4196f427794086a7d0df8df4f019d5e336b61`
- 1.22:
`kindest/node:v1.22.15@&#8203;sha256:7d9708c4b0873f0fe2e171e2b1b7f45ae89482617778c1c875f1053d4cef2e41`
- 1.21:
`kindest/node:v1.21.14@&#8203;sha256:9d9eb5fb26b4fbc0c6d95fa8c790414f9750dd583f5d7cee45d92e8c26670aa1`
- 1.20:
`kindest/node:v1.20.15@&#8203;sha256:a32bf55309294120616886b5338f95dd98a2f7231519c7dedcec32ba29699394`
- 1.19:
`kindest/node:v1.19.16@&#8203;sha256:476cb3269232888437b61deca013832fee41f9f074f9bed79f57e4280f7c48b7`

NOTE: These node images support amd64 and arm64. It remains possible to
build custom images for other architectures (see the docs).

<h1 id="fixes">Fixes</h1>

- Fix loading docker hub / docker.io tagged images with identical
content but different tags (including images with no explicit host)
[https://github.com/kubernetes-sigs/kind/pull/2955](https://togithub.com/kubernetes-sigs/kind/pull/2955)
-
[kindnetd](https://togithub.com/kubernetes-sigs/kind/tree/main/images/kindnetd)
(kind's lightweight networking daemonset) now supports removing wrong
routes when nodes are added and removed
- currently, kind does not explicitly have support for adding or
removing nodes
however, [Cluster API Provider
Docker](https://togithub.com/kubernetes-sigs/cluster-api/tree/main/test/infrastructure/docker)
(which is based on KIND), does support this.

<h1 id="contributors">Contributors</h1>

**Thank you to everyone who contributed to this release! ❤️**

Users whose commits are in this release (alphabetically by user name)

-   [@&#8203;aude](https://togithub.com/aude)
-   [@&#8203;BenTheElder](https://togithub.com/BenTheElder)
-   [@&#8203;chrischdi](https://togithub.com/chrischdi)
-   [@&#8203;converge](https://togithub.com/converge)
-   [@&#8203;curtbushko](https://togithub.com/curtbushko)
-   [@&#8203;flash-me](https://togithub.com/flash-me)
-   [@&#8203;hrittikhere](https://togithub.com/hrittikhere)
-   [@&#8203;k8s-ci-robot](https://togithub.com/k8s-ci-robot)
-   [@&#8203;mdurand54](https://togithub.com/mdurand54)
-   [@&#8203;raphaelauv](https://togithub.com/raphaelauv)
-   [@&#8203;Vlatombe](https://togithub.com/Vlatombe)

And thank you **very much** to everyone else not listed here who
contributed in other ways like filing issues, giving feedback, testing
fixes, helping users in slack, etc. 🙏

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://app.renovatebot.com/dashboard#github/aspect-build/silo).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzMi4yMzQuMiIsInVwZGF0ZWRJblZlciI6IjM0LjEzLjIifQ==-->

Signed-off-by: Thulio Ferraz Assis <3149049+f0rmiga@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Thulio Ferraz Assis <3149049+f0rmiga@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Required properties of message types get optional in OpenAPI
4 participants