-
Notifications
You must be signed in to change notification settings - Fork 84
testr: use an interface to make it work with *testing.B and *testing.F #143
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This makes sense to me. It's the same approach that I took in https://github.com/kubernetes/klog/blob/a585df903e8653af246bcb8291cc856af2df9cfd/ktesting/testinglogger.go#L41-L65
It is an API break not just because of the Underlier change, but also because the function signature of the New function changes. One option to avoid this would be to have yet another constructor that takes TestingT plus options and have a second Underlier which is implemented by the struct returned by that (and only that) constructor.
Most of the common code can still be shared by the two structs, but the devil will be in the details. 🤷
testr/testr.go
Outdated
type TestingT interface { | ||
Helper() | ||
Log(args ...interface{}) | ||
Logf(format string, args ...interface{}) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Logf is not needed. Perhaps drop it to make it easier to satisfy the interface with something other than testing.T/B/F?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is being used in the implementation, but you're right, it's not strictly required so I removed it.
That makes sense. As you suggested, I created a new struct and created a new constructor that takes TestingT and left the existing implementation as-is. This seems to be working fine and doesn't change the API. I'm not sure about the naming though. Do you have any suggestion? |
testr/testr.go
Outdated
// NewFromInterfaceWithOptions returns a logr.Logger that prints through a | ||
// TestingT object. | ||
// In contrast to the simpler New, output formatting can be configured. | ||
func NewFromInterfaceWithOptions(t TestingT, opts Options) logr.Logger { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think a single NewWithInterface
may be okay. It matches the NewWithOptions
pattern.
We only need a single variant of it. That we have New
and NewWithOptions
is because of historic reasons, we don't need to repeat that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see, thanks for the explanation.
I renamed the variant with the Options
parameter NewWithInterface
and removed the other constructor.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You can squash all commits into one already during the review, GitHub's force-push links work for me.
5ab368c
to
a6dbdbc
Compare
testr/testr_test.go
Outdated
if underlier, ok := log.GetSink().(UnderlierInterface); ok { | ||
if underlierT, ok := underlier.GetUnderlying().(*testing.T); ok { | ||
if t != underlierT { | ||
t.Error("invalid underlier") | ||
} | ||
} else { | ||
t.Error("couldn't get underlying *testing.T") | ||
} | ||
} else { | ||
t.Error("couldn't get underlier") | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: this works, but doesn't look like idiomatic Go. How about this:
if underlier, ok := log.GetSink().(UnderlierInterface); ok { | |
if underlierT, ok := underlier.GetUnderlying().(*testing.T); ok { | |
if t != underlierT { | |
t.Error("invalid underlier") | |
} | |
} else { | |
t.Error("couldn't get underlying *testing.T") | |
} | |
} else { | |
t.Error("couldn't get underlier") | |
} | |
underlier, ok := log.GetSink().(UnderlierInterface) | |
if !ok { | |
t.Fatal("couldn't get underlier") | |
} | |
underlierT, ok := underlier.GetUnderlying().(*testing.T) | |
if !ok { | |
t.Fatal("couldn't get underlying *testing.T") | |
} | |
if t != underlierT { | |
t.Error("invalid underlier") | |
} |
The same applies above and below.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This does look better. I updated the tests to follow your suggestion.
a6dbdbc
to
f3aa5af
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good to me now, but I'll give @thockin some time to also have another look because this touches code that he wrote initially.
testr/testr.go
Outdated
GetUnderlying() TestingT | ||
} | ||
|
||
func logInfo( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you please un-linewrap the args? This is inconsistent with anything else in the codebase
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry for that.
testr/testr.go
Outdated
GetUnderlying() TestingT | ||
} | ||
|
||
func logInfo( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also please add comments on these funcs to explain why they exist
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added some comments to the new functions. They are here to prevent code duplication between testlogger
and testloggerInterface
.
testr/testr_test.go
Outdated
} | ||
} | ||
|
||
func BenchmarkLogger(b *testing.B) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do we really need this? What is it proving?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@thockin This is mostly to test that NewWithInterface
can be called with a *testing.B
in addition to *testing.T
.
But it's true that it is not really useful to benchmark this library, so I can remove it if you'd prefer.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see - I think it is important to have test-cases for B and F.
It's probably enough to have something like:
b := testing.B{}
log := NewWithInterface(b)
and same for F, just to prove it compiles.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added test cases for *testing.B
and *testing.F
.
I put the one for *testing.F
in a separate file since fuzzing is only available since Go 1.18 but the test cases are run on the CI pipeline with Go 1.16+.
f3aa5af
to
4f1beee
Compare
…F in addition to *testing.T
4f1beee
to
a326b84
Compare
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | Type | Update | |---|---|---|---|---|---|---|---| | @​defense-unicorns/unicorn-ui | [`0.0.37` -> `0.0.42`](https://renovatebot.com/diffs/npm/@defense-unicorns%2funicorn-ui/0.0.37/0.0.42) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [@docusaurus/core](https://togithub.com/facebook/docusaurus) | [`2.3.1` -> `2.4.0`](https://renovatebot.com/diffs/npm/@docusaurus%2fcore/2.3.1/2.4.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [@docusaurus/module-type-aliases](https://togithub.com/facebook/docusaurus) | [`2.3.1` -> `2.4.0`](https://renovatebot.com/diffs/npm/@docusaurus%2fmodule-type-aliases/2.3.1/2.4.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [@docusaurus/preset-classic](https://togithub.com/facebook/docusaurus) | [`2.3.1` -> `2.4.0`](https://renovatebot.com/diffs/npm/@docusaurus%2fpreset-classic/2.3.1/2.4.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [@docusaurus/theme-mermaid](https://togithub.com/facebook/docusaurus) | [`2.3.1` -> `2.4.0`](https://renovatebot.com/diffs/npm/@docusaurus%2ftheme-mermaid/2.3.1/2.4.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [@playwright/test](https://playwright.dev) ([source](https://togithub.com/Microsoft/playwright)) | [`1.31.2` -> `1.32.1`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.31.2/1.32.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [@sveltejs/kit](https://kit.svelte.dev) ([source](https://togithub.com/sveltejs/kit)) | [`1.12.0` -> `1.15.0`](https://renovatebot.com/diffs/npm/@sveltejs%2fkit/1.12.0/1.15.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [@typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/typescript-eslint) | [`5.55.0` -> `5.57.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2feslint-plugin/5.55.0/5.57.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [@typescript-eslint/parser](https://togithub.com/typescript-eslint/typescript-eslint) | [`5.55.0` -> `5.57.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2fparser/5.55.0/5.57.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [actions/checkout](https://togithub.com/actions/checkout) | `v3.4.0` -> `v3.5.0` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | action | minor | | [anchore/sbom-action](https://togithub.com/anchore/sbom-action) | `v0.13.3` -> `v0.13.4` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | action | patch | | [eslint](https://eslint.org) ([source](https://togithub.com/eslint/eslint)) | [`8.36.0` -> `8.37.0`](https://renovatebot.com/diffs/npm/eslint/8.36.0/8.37.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [eslint-config-prettier](https://togithub.com/prettier/eslint-config-prettier) | [`8.7.0` -> `8.8.0`](https://renovatebot.com/diffs/npm/eslint-config-prettier/8.7.0/8.8.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [github.com/defenseunicorns/syft](https://togithub.com/defenseunicorns/syft) | `v0.75.0-DU` -> `v0.75.0` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | replace | patch | | [github.com/docker/cli](https://togithub.com/docker/cli) | `v23.0.1+incompatible` -> `v23.0.2+incompatible` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | require | patch | | [github.com/fluxcd/helm-controller/api](https://togithub.com/fluxcd/helm-controller) | `v0.31.1` -> `v0.31.2` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | require | patch | | [github.com/fluxcd/source-controller/api](https://togithub.com/fluxcd/source-controller) | `v0.36.0` -> `v0.36.1` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | require | patch | | [github.com/go-logr/logr](https://togithub.com/go-logr/logr) | `v1.2.3` -> `v1.2.4` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | require | patch | | [github.com/goccy/go-yaml](https://togithub.com/goccy/go-yaml) | `v1.10.0` -> `v1.10.1` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | require | patch | | [github.com/moby/moby](https://togithub.com/moby/moby) | `v23.0.1+incompatible` -> `v23.0.2+incompatible` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | require | patch | | [github.com/pterm/pterm](https://togithub.com/pterm/pterm) | `v0.12.56` -> `v0.12.57` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | require | patch | | [github/codeql-action](https://togithub.com/github/codeql-action) | `v2.2.7` -> `v2.2.9` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | action | patch | | [material-symbols](https://marella.github.io/material-symbols/demo/) ([source](https://togithub.com/marella/material-symbols)) | [`0.5.0` -> `0.5.3`](https://renovatebot.com/diffs/npm/material-symbols/0.5.0/0.5.3) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [nodemon](https://nodemon.io) ([source](https://togithub.com/remy/nodemon)) | [`2.0.21` -> `2.0.22`](https://renovatebot.com/diffs/npm/nodemon/2.0.21/2.0.22) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [ossf/scorecard-action](https://togithub.com/ossf/scorecard-action) | `v2.1.2` -> `v2.1.3` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | action | patch | | [playwright](https://playwright.dev) ([source](https://togithub.com/Microsoft/playwright)) | [`1.31.2` -> `1.32.1`](https://renovatebot.com/diffs/npm/playwright/1.31.2/1.32.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [prettier](https://prettier.io) ([source](https://togithub.com/prettier/prettier)) | [`2.8.5` -> `2.8.7`](https://renovatebot.com/diffs/npm/prettier/2.8.5/2.8.7) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [prettier-plugin-svelte](https://togithub.com/sveltejs/prettier-plugin-svelte) | [`2.9.0` -> `2.10.0`](https://renovatebot.com/diffs/npm/prettier-plugin-svelte/2.9.0/2.10.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [quicktype](https://togithub.com/quicktype/quicktype) | [`23.0.17` -> `23.0.19`](https://renovatebot.com/diffs/npm/quicktype/23.0.17/23.0.19) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [sass](https://togithub.com/sass/dart-sass) | [`1.59.3` -> `1.60.0`](https://renovatebot.com/diffs/npm/sass/1.59.3/1.60.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [serde_json](https://togithub.com/serde-rs/json) | `1.0.94` -> `1.0.95` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [sigs.k8s.io/kustomize/api](https://togithub.com/kubernetes-sigs/kustomize) | `v0.12.1` -> `v0.13.2` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | require | minor | | [svelte](https://svelte.dev) ([source](https://togithub.com/sveltejs/svelte)) | [`3.57.0` -> `3.58.0`](https://renovatebot.com/diffs/npm/svelte/3.57.0/3.58.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [typescript](https://www.typescriptlang.org/) ([source](https://togithub.com/Microsoft/TypeScript)) | [`5.0.2` -> `5.0.3`](https://renovatebot.com/diffs/npm/typescript/5.0.2/5.0.3) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | --- ### Release Notes <details> <summary>facebook/docusaurus</summary> ### [`v2.4.0`](https://togithub.com/facebook/docusaurus/blob/HEAD/CHANGELOG.md#​240-2023-03-23) [Compare Source](https://togithub.com/facebook/docusaurus/compare/v2.3.1...v2.4.0) ##### :rocket: New Feature - `docusaurus-plugin-content-docs`, `docusaurus-theme-classic` - [#​8236](https://togithub.com/facebook/docusaurus/pull/8236) feat(content-docs): add support for sidebar item category/link descriptions in generated index page ([@​ZarakiKanzaki](https://togithub.com/ZarakiKanzaki)) - `docusaurus-theme-classic` - [#​8708](https://togithub.com/facebook/docusaurus/pull/8708) feat(theme): allow to load a Docusaurus page with theme from query-string: ?docusaurus-theme=dark ([@​slorber](https://togithub.com/slorber)) - [#​8616](https://togithub.com/facebook/docusaurus/pull/8616) feat(theme): add ability to translate navbar+footer logo alt text ([@​Mysterious-Dev](https://togithub.com/Mysterious-Dev)) - `docusaurus-remark-plugin-npm2yarn` - [#​8690](https://togithub.com/facebook/docusaurus/pull/8690) feat(npm-to-yarn): add support for PnPm and custom converters ([@​armano2](https://togithub.com/armano2)) - `docusaurus` - [#​8677](https://togithub.com/facebook/docusaurus/pull/8677) feat(core): add script env variables: NODE_ENV + BABEL_ENV + DOCUSAURUS_CURRENT_LOCALE (temporary i18n workaround) ([@​slorber](https://togithub.com/slorber)) - `docusaurus-theme-classic`, `docusaurus-theme-common` - [#​8674](https://togithub.com/facebook/docusaurus/pull/8674) feat(theme-classic): respect `prefers-reduced-motion: reduce` mediaquery, bump Infima to alpha.43 ([@​slorber](https://togithub.com/slorber)) - `docusaurus-theme-translations` - [#​8668](https://togithub.com/facebook/docusaurus/pull/8668) feat(theme-translations): add Hungarian theme translations ([@​trueqap](https://togithub.com/trueqap)) - [#​8631](https://togithub.com/facebook/docusaurus/pull/8631) feat(theme-translations): add Norwegian (Bokmål) theme translation ([@​dr0nn1](https://togithub.com/dr0nn1)) - `docusaurus-theme-common` - [#​8656](https://togithub.com/facebook/docusaurus/pull/8656) feat(theme-common): allow passing a string for details summary ([@​pReya](https://togithub.com/pReya)) - `docusaurus-plugin-google-gtag` - [#​8620](https://togithub.com/facebook/docusaurus/pull/8620) feat(gtag-plugin): gtag should support multiple tracking ids, notably for the UA => GA4 transition ([@​slorber](https://togithub.com/slorber)) ##### :bug: Bug Fix - `docusaurus-theme-classic` - [#​8803](https://togithub.com/facebook/docusaurus/pull/8803) fix(theme): codeblock buttons should be kept on the right when using RTL locale ([@​Vishruta-Patil](https://togithub.com/Vishruta-Patil)) - [#​8615](https://togithub.com/facebook/docusaurus/pull/8615) fix(theme): improve color toggle when using dark navbar ([@​dewanshDT](https://togithub.com/dewanshDT)) - [#​8699](https://togithub.com/facebook/docusaurus/pull/8699) fix(theme-classic): fix tab focus bug in dropdown ([#​8697](https://togithub.com/facebook/docusaurus/issues/8697)) ([@​kagankan](https://togithub.com/kagankan)) - `docusaurus-theme-classic`, `docusaurus-theme-common` - [#​8801](https://togithub.com/facebook/docusaurus/pull/8801) fix(theme): allow tabs children to be falsy ([@​Josh-Cena](https://togithub.com/Josh-Cena)) - `docusaurus-theme-common`, `docusaurus-theme-search-algolia` - [#​8757](https://togithub.com/facebook/docusaurus/pull/8757) fix(search): search page should react to querystring changes + cleanup/refactor ([@​slorber](https://togithub.com/slorber)) - `docusaurus` - [#​8746](https://togithub.com/facebook/docusaurus/pull/8746) fix(core): baseUrl error banner link anchor case ([@​slorber](https://togithub.com/slorber)) - `docusaurus-theme-translations` - [#​8744](https://togithub.com/facebook/docusaurus/pull/8744) fix(theme-translations): fix wrong arabic words (tip/next) ([@​Anasqx](https://togithub.com/Anasqx)) ##### :nail_care: Polish - `create-docusaurus` - [#​8712](https://togithub.com/facebook/docusaurus/pull/8712) polish(create-docusaurus): the starter template should use a navbar item "docSidebar" instead of "doc" (less fragile on updates) ([@​biplavmz](https://togithub.com/biplavmz)) - `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils-common`, `docusaurus` - [#​8735](https://togithub.com/facebook/docusaurus/pull/8735) polish(theme): better error messages on navbar item rendering failures + ErrorCauseBoundary API ([@​tannerdolby](https://togithub.com/tannerdolby)) - `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus` - [#​8736](https://togithub.com/facebook/docusaurus/pull/8736) polish(core): better styling for error screens ([@​tannerdolby](https://togithub.com/tannerdolby)) ##### Committers: 14 - Anas ([@​Anasqx](https://togithub.com/Anasqx)) - Armano ([@​armano2](https://togithub.com/armano2)) - Davide Donadio ([@​ZarakiKanzaki](https://togithub.com/ZarakiKanzaki)) - Dewansh Thakur ([@​dewanshDT](https://togithub.com/dewanshDT)) - Joshua Chen ([@​Josh-Cena](https://togithub.com/Josh-Cena)) - Kagan ([@​kagankan](https://togithub.com/kagankan)) - Moritz Stückler ([@​pReya](https://togithub.com/pReya)) - Mysterious_Dev ([@​Mysterious-Dev](https://togithub.com/Mysterious-Dev)) - Petter Drønnen ([@​dr0nn1](https://togithub.com/dr0nn1)) - Sébastien Lorber ([@​slorber](https://togithub.com/slorber)) - Tanner Dolby ([@​tannerdolby](https://togithub.com/tannerdolby)) - TrueQAP ([@​trueqap](https://togithub.com/trueqap)) - Vishruta Patil ([@​Vishruta-Patil](https://togithub.com/Vishruta-Patil)) - [@​biplavmz](https://togithub.com/biplavmz) </details> <details> <summary>Microsoft/playwright</summary> ### [`v1.32.1`](https://togithub.com/microsoft/playwright/releases/tag/v1.32.1) [Compare Source](https://togithub.com/Microsoft/playwright/compare/v1.32.0...v1.32.1) #### Highlights [https://github.com/microsoft/playwright/issues/21832](https://togithub.com/microsoft/playwright/issues/21832) - \[BUG] Trace is not opening on specific broken locator[https://github.com/microsoft/playwright/issues/21897](https://togithub.com/microsoft/playwright/issues/21897)7 - \[BUG] --ui fails to open with error reading mainFrame from an undefined this.\_pa[https://github.com/microsoft/playwright/issues/21918](https://togithub.com/microsoft/playwright/issues/21918)918 - \[BUG]: UI mode, skipped tests not being fo[https://github.com/microsoft/playwright/issues/21941](https://togithub.com/microsoft/playwright/issues/21941)1941 - \[BUG] UI mode does not show webServer startup er[https://github.com/microsoft/playwright/issues/21953](https://togithub.com/microsoft/playwright/issues/21953)21953 - \[BUG] Parameterized tests are not displayed in the UI mode #### Browser Versions - Chromium 112.0.5615.29 - Mozilla Firefox 111.0 - WebKit 16.4 This version was also tested against the following stable channels: - Google Chrome 111 - Microsoft Edge 111 ### [`v1.32.0`](https://togithub.com/microsoft/playwright/releases/tag/v1.32.0) [Compare Source](https://togithub.com/Microsoft/playwright/compare/v1.31.2...v1.32.0) #### 📣 Introducing UI Mode (preview) <a href="https://www.youtube.com/watch?v=jF0yA-JLQW0"><img src="https://user-images.githubusercontent.com/746130/227044467-b4db82dc-c7fa-40d7-a0c8-8f702581c3b9.png" width=340></a> <a href="https://www.youtube.com/watch?v=jF0yA-JLQW0">Playwright v1.32 updates</a> New UI Mode lets you explore, run and debug tests. Comes with a built-in watch mode.  Engage with a new flag `--ui`: ```sh npx playwright test --ui ``` #### New APIs - New options `option: updateMode` and `option: updateContent` in [`page.routeFromHAR()`](https://playwright.dev/docs/api/class-page#page-route-from-har) and [`browserContext.routeFromHAR()`](https://playwright.dev/docs/api/class-browsercontext#browser-context-route-from-har). - Chaining existing locator objects, see [locator docs](https://playwright.dev/docs/locators#chaining-locators) for details. - New property [`TestInfo.testId`](https://playwright.dev/docs/api/class-testinfo#test-info-test-id). - New option `name` in method [`Tracing.startChunk()`](https://playwright.dev/docs/api/class-tracing#tracing-start-chunk). #### ⚠️ Breaking change in component tests Note: **component tests only**, does not affect end-to-end tests. - `@playwright/experimental-ct-react` now supports **React 18 only**. - If you're running component tests with React 16 or 17, please replace `@playwright/experimental-ct-react` with `@playwright/experimental-ct-react17`. #### Browser Versions - Chromium 112.0.5615.29 - Mozilla Firefox 111.0 - WebKit 16.4 This version was also tested against the following stable channels: - Google Chrome 111 - Microsoft Edge 111 </details> <details> <summary>sveltejs/kit</summary> ### [`v1.15.0`](https://togithub.com/sveltejs/kit/blob/HEAD/packages/kit/CHANGELOG.md#​1150) [Compare Source](https://togithub.com/sveltejs/kit/compare/@sveltejs/kit@1.14.0...@sveltejs/kit@1.15.0) ##### Minor Changes - feat: expose stronger typed `SubmitFunction` through `./$types` ([#​9201](https://togithub.com/sveltejs/kit/pull/9201)) ##### Patch Changes - fix: throw error when file can't be found in Vite manifest ([#​9558](https://togithub.com/sveltejs/kit/pull/9558)) - fix: make `error.message` enumerable when sending `ssrLoadModule` error to client ([#​9440](https://togithub.com/sveltejs/kit/pull/9440)) - fix: pass `publicDir` Vite config in SSR ([#​9565](https://togithub.com/sveltejs/kit/pull/9565)) - fix: balance parentheses in error about wrong content type for action ([#​9513](https://togithub.com/sveltejs/kit/pull/9513)) ### [`v1.14.0`](https://togithub.com/sveltejs/kit/blob/HEAD/packages/kit/CHANGELOG.md#​1140) [Compare Source](https://togithub.com/sveltejs/kit/compare/@sveltejs/kit@1.13.0...@sveltejs/kit@1.14.0) ##### Minor Changes - feat: add HMR to fallback error pages during dev ([#​9497](https://togithub.com/sveltejs/kit/pull/9497)) ##### Patch Changes - fix: add `submitter` type to `SumbitFunction` ([#​9484](https://togithub.com/sveltejs/kit/pull/9484)) ### [`v1.13.0`](https://togithub.com/sveltejs/kit/blob/HEAD/packages/kit/CHANGELOG.md#​1130) [Compare Source](https://togithub.com/sveltejs/kit/compare/@sveltejs/kit@1.12.0...@sveltejs/kit@1.13.0) ##### Minor Changes - feat: add dark mode styles to default error page ([#​9460](https://togithub.com/sveltejs/kit/pull/9460)) ##### Patch Changes - fix: recover from errors during dev by reloading ([#​9441](https://togithub.com/sveltejs/kit/pull/9441)) </details> <details> <summary>typescript-eslint/typescript-eslint (@​typescript-eslint/eslint-plugin)</summary> ### [`v5.57.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#​5570-httpsgithubcomtypescript-eslinttypescript-eslintcomparev5560v5570-2023-03-27) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v5.56.0...v5.57.0) ##### Bug Fixes - **eslint-plugin:** \[no-unnecessary-boolean-literal-compare] simplify fixer and add support for double negation ([#​6620](https://togithub.com/typescript-eslint/typescript-eslint/issues/6620)) ([81c8519](https://togithub.com/typescript-eslint/typescript-eslint/commit/81c85193d27d2e7f6d12bc259088b9b73dbe1e8b)) - **eslint-plugin:** correct crashes with getTypeArguments for ts < 3.7 ([#​6767](https://togithub.com/typescript-eslint/typescript-eslint/issues/6767)) ([59eab58](https://togithub.com/typescript-eslint/typescript-eslint/commit/59eab587890a915387444d00c4a9387aed602718)) ##### Features - **eslint-plugin:** \[consistent-type-assertions] add suggestions for objectLiteralTypeAssertions ([#​6642](https://togithub.com/typescript-eslint/typescript-eslint/issues/6642)) ([720e811](https://togithub.com/typescript-eslint/typescript-eslint/commit/720e81138b66c94c60c4a4471b86b7d8567b6df0)) - **eslint-plugin:** \[consistent-type-assertions] autofix angle bracket assertions to as ([#​6641](https://togithub.com/typescript-eslint/typescript-eslint/issues/6641)) ([ad8ea64](https://togithub.com/typescript-eslint/typescript-eslint/commit/ad8ea64dbdf06c92ff72b48022f041693a8d7076)) - **eslint-plugin:** add `no-duplicate-type-constituents` rule ([#​5728](https://togithub.com/typescript-eslint/typescript-eslint/issues/5728)) ([bc31078](https://togithub.com/typescript-eslint/typescript-eslint/commit/bc31078cf86d69eee881e4a7daeffa347c1d82a7)) ### [`v5.56.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#​5560-httpsgithubcomtypescript-eslinttypescript-eslintcomparev5550v5560-2023-03-20) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v5.55.0...v5.56.0) ##### Bug Fixes - **eslint-plugin:** \[member-ordering] check order when optionalityOrder is present with no optional members ([#​6619](https://togithub.com/typescript-eslint/typescript-eslint/issues/6619)) ([6aff431](https://togithub.com/typescript-eslint/typescript-eslint/commit/6aff431668eb0d25aa74b527cbe458f9dcd0d92a)) - **eslint-plugin:** \[no-misused-promises] avoid unnecessary calls to getContextualType ([#​6193](https://togithub.com/typescript-eslint/typescript-eslint/issues/6193)) ([745cfe4](https://togithub.com/typescript-eslint/typescript-eslint/commit/745cfe4a35319416b3c307ee9fd57c63bf1660cd)) - **eslint-plugin:** \[no-misused-promises] fix incorrect detection of void functions in JSX attributes ([#​6638](https://togithub.com/typescript-eslint/typescript-eslint/issues/6638)) ([9e41cee](https://togithub.com/typescript-eslint/typescript-eslint/commit/9e41ceeaea3bf266e5114cfb1855e70a1a13284b)) - **eslint-plugin:** \[strict-boolean-expression] support falsy and truthy literals simultaneously ([#​6672](https://togithub.com/typescript-eslint/typescript-eslint/issues/6672)) ([62ef487](https://togithub.com/typescript-eslint/typescript-eslint/commit/62ef487a99010827e99a792db5e565ad7c1d6220)) - **eslint-plugin:** \[strict-boolean-expressions] handle truthy enums ([#​6618](https://togithub.com/typescript-eslint/typescript-eslint/issues/6618)) ([0d0639f](https://togithub.com/typescript-eslint/typescript-eslint/commit/0d0639fb25e5ac8d7b5e4ceac4273e17e8ee0249)) - **eslint-plugin:** add TSPropertySignature with TSFunctionType annotation to typeMethod selector ([#​6645](https://togithub.com/typescript-eslint/typescript-eslint/issues/6645)) ([3fc5c63](https://togithub.com/typescript-eslint/typescript-eslint/commit/3fc5c63f87bfd9d95f7e51fddc7ef16a6c3c5662)) ##### Features - **eslint-plugin:** add allowNever support to restrict-template-expressions ([#​6554](https://togithub.com/typescript-eslint/typescript-eslint/issues/6554)) ([423f164](https://togithub.com/typescript-eslint/typescript-eslint/commit/423f1642424293488fa03a52777c0df73a40e5fd)) </details> <details> <summary>typescript-eslint/typescript-eslint (@​typescript-eslint/parser)</summary> ### [`v5.57.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#​5570-httpsgithubcomtypescript-eslinttypescript-eslintcomparev5560v5570-2023-03-27) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v5.56.0...v5.57.0) **Note:** Version bump only for package [@​typescript-eslint/parser](https://togithub.com/typescript-eslint/parser) ### [`v5.56.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#​5560-httpsgithubcomtypescript-eslinttypescript-eslintcomparev5550v5560-2023-03-20) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v5.55.0...v5.56.0) **Note:** Version bump only for package [@​typescript-eslint/parser](https://togithub.com/typescript-eslint/parser) </details> <details> <summary>actions/checkout</summary> ### [`v3.5.0`](https://togithub.com/actions/checkout/releases/tag/v3.5.0) [Compare Source](https://togithub.com/actions/checkout/compare/v3.4.0...v3.5.0) ##### What's Changed - Add new public key for known_hosts by [@​cdb](https://togithub.com/cdb) in [https://github.com/actions/checkout/pull/1237](https://togithub.com/actions/checkout/pull/1237) ##### New Contributors - [@​cdb](https://togithub.com/cdb) made their first contribution in [https://github.com/actions/checkout/pull/1237](https://togithub.com/actions/checkout/pull/1237) **Full Changelog**: https://github.com/actions/checkout/compare/v3.4.0...v3.5.0 </details> <details> <summary>anchore/sbom-action</summary> ### [`v0.13.4`](https://togithub.com/anchore/sbom-action/releases/tag/v0.13.4): v0.14.0 [Compare Source](https://togithub.com/anchore/sbom-action/compare/v0.13.3...v0.13.4) #### Changes in v0.13.4 - Added support of workflow artifact's retention policy ([#​398](https://togithub.com/anchore/sbom-action/issues/398)) \[[ViacheslavKudinov](https://togithub.com/ViacheslavKudinov)] - Use the correct SHA for dependency snapshots from pull requests ([#​401](https://togithub.com/anchore/sbom-action/issues/401)) \[[juxtin](https://togithub.com/juxtin)] - Update Syft to v0.75.0 ([#​394](https://togithub.com/anchore/sbom-action/issues/394)) \[[anchore-actions-token-generator](https://togithub.com/anchore-actions-token-generator)] </details> <details> <summary>eslint/eslint</summary> ### [`v8.37.0`](https://togithub.com/eslint/eslint/releases/tag/v8.37.0) [Compare Source](https://togithub.com/eslint/eslint/compare/v8.36.0...v8.37.0) #### Features - [`b6ab8b2`](https://togithub.com/eslint/eslint/commit/b6ab8b2a2ca8807baca121407f5bfb0a0a839427) feat: `require-unicode-regexp` add suggestions ([#​17007](https://togithub.com/eslint/eslint/issues/17007)) (Josh Goldberg) - [`10022b1`](https://togithub.com/eslint/eslint/commit/10022b1f4bda1ad89193512ecf18c2ee61db8202) feat: Copy getScope() to SourceCode ([#​17004](https://togithub.com/eslint/eslint/issues/17004)) (Nicholas C. Zakas) - [`1665c02`](https://togithub.com/eslint/eslint/commit/1665c029acb92bf8812267f1647ad1a7054cbcb4) feat: Use plugin metadata for flat config serialization ([#​16992](https://togithub.com/eslint/eslint/issues/16992)) (Nicholas C. Zakas) - [`b3634f6`](https://togithub.com/eslint/eslint/commit/b3634f695ddab6a82c0a9b1d8695e62b60d23366) feat: docs license ([#​17010](https://togithub.com/eslint/eslint/issues/17010)) (Samuel Roldan) - [`892e6e5`](https://togithub.com/eslint/eslint/commit/892e6e58c5a07a549d3104de3b6b5879797dc97f) feat: languageOptions.parser must be an object. ([#​16985](https://togithub.com/eslint/eslint/issues/16985)) (Nicholas C. Zakas) #### Bug Fixes - [`619f3fd`](https://togithub.com/eslint/eslint/commit/619f3fd17324c7b71bf17e02047d0c6dc7e5109e) fix: correctly handle `null` default config in `RuleTester` ([#​17023](https://togithub.com/eslint/eslint/issues/17023)) (Brad Zacher) - [`1fbf118`](https://togithub.com/eslint/eslint/commit/1fbf1184fed57df02640aad4659afb54dc26a2e9) fix: `getFirstToken`/`getLastToken` on comment-only node ([#​16889](https://togithub.com/eslint/eslint/issues/16889)) (Francesco Trotta) - [`129e252`](https://togithub.com/eslint/eslint/commit/129e252132c7c476d7de17f40b54a333ddb2e6bb) fix: Fix typo in `logical-assignment-operators` rule description ([#​17000](https://togithub.com/eslint/eslint/issues/17000)) (Francesco Trotta) #### Documentation - [`75339df`](https://togithub.com/eslint/eslint/commit/75339df99418df4d7e05a77e42ed7e22eabcc9e0) docs: fix typos and missing info in id-match docs ([#​17029](https://togithub.com/eslint/eslint/issues/17029)) (Ed Lucas) - [`ec2d830`](https://togithub.com/eslint/eslint/commit/ec2d8307850dd039e118c001416606e1e0342bc8) docs: Fix typos in the `semi` rule docs ([#​17012](https://togithub.com/eslint/eslint/issues/17012)) (Andrii Lundiak) - [`e39f28d`](https://togithub.com/eslint/eslint/commit/e39f28d8578a00f4da8d4ddad559547950128a0d) docs: add back to top button ([#​16979](https://togithub.com/eslint/eslint/issues/16979)) (Tanuj Kanti) - [`721c717`](https://togithub.com/eslint/eslint/commit/721c71782a7c11025689a1500e7690fb3794fcce) docs: Custom Processors cleanup and expansion ([#​16838](https://togithub.com/eslint/eslint/issues/16838)) (Ben Perlmutter) - [`d049f97`](https://togithub.com/eslint/eslint/commit/d049f974103e530ef76ede25af701635caf1f405) docs: 'How ESLint is Maintained' page ([#​16961](https://togithub.com/eslint/eslint/issues/16961)) (Ben Perlmutter) - [`5251a92`](https://togithub.com/eslint/eslint/commit/5251a921866e8d3b380dfe8db8a6e6ab97773d5e) docs: Describe guard options for guard-for-in ([#​16986](https://togithub.com/eslint/eslint/issues/16986)) (alope107) - [`6157d81`](https://togithub.com/eslint/eslint/commit/6157d813e19b80481a46f8cbdf9eae18a55e5619) docs: Add example to guard-for-in docs. ([#​16983](https://togithub.com/eslint/eslint/issues/16983)) (alope107) - [`fd47998`](https://togithub.com/eslint/eslint/commit/fd47998af6efadcdf5ba93e0bd1f4c02d97d22b3) docs: update `Array.prototype.toSorted` specification link ([#​16982](https://togithub.com/eslint/eslint/issues/16982)) (Milos Djermanovic) - [`3e1cf6b`](https://togithub.com/eslint/eslint/commit/3e1cf6bfc5ebc29314ddbe462d6cb580e9ab085c) docs: Copy edits on Maintain ESLint docs ([#​16939](https://togithub.com/eslint/eslint/issues/16939)) (Ben Perlmutter) #### Chores - [`c67f299`](https://togithub.com/eslint/eslint/commit/c67f2992a743de4765bb6f11c12622e3651324b9) chore: upgrade [@​eslint/js](https://togithub.com/eslint/js)[@​8](https://togithub.com/8).37.0 ([#​17033](https://togithub.com/eslint/eslint/issues/17033)) (Milos Djermanovic) - [`ee9ddbd`](https://togithub.com/eslint/eslint/commit/ee9ddbd63e262aed0052853760866c7a054af561) chore: package.json update for [@​eslint/js](https://togithub.com/eslint/js) release (ESLint Jenkins) - [`dddb475`](https://togithub.com/eslint/eslint/commit/dddb47528816cd7e2e737bfde108ed4d62e6a219) chore: upgrade [@​eslint/eslintrc](https://togithub.com/eslint/eslintrc)[@​2](https://togithub.com/2).0.2 ([#​17032](https://togithub.com/eslint/eslint/issues/17032)) (Milos Djermanovic) - [`522431e`](https://togithub.com/eslint/eslint/commit/522431e5206bac2fcb41c0d6dc98a84929203bee) chore: upgrade espree@9.5.1 ([#​17031](https://togithub.com/eslint/eslint/issues/17031)) (Milos Djermanovic) - [`f5f9a88`](https://togithub.com/eslint/eslint/commit/f5f9a88c79b32222c0331a9bac1c02571d953b69) chore: upgrade eslint-visitor-keys@3.4.0 ([#​17030](https://togithub.com/eslint/eslint/issues/17030)) (Milos Djermanovic) - [`4dd8d52`](https://togithub.com/eslint/eslint/commit/4dd8d524e0fc9e8e2019df13f8b968021600e85c) ci: bump actions/stale from 7 to 8 ([#​17026](https://togithub.com/eslint/eslint/issues/17026)) (dependabot\[bot]) - [`ad9dd6a`](https://togithub.com/eslint/eslint/commit/ad9dd6a933fd098a0d99c6a9aa059850535c23ee) chore: remove duplicate scss, ([#​17005](https://togithub.com/eslint/eslint/issues/17005)) (Strek) - [`ada6a3e`](https://togithub.com/eslint/eslint/commit/ada6a3e6e3607523958f35e1260537630ec0e976) ci: unpin Node 19 ([#​16993](https://togithub.com/eslint/eslint/issues/16993)) (Milos Djermanovic) - [`c3da975`](https://togithub.com/eslint/eslint/commit/c3da975e69fde46f35338ce48528841a8dc1ffd2) chore: Remove triage label from template ([#​16990](https://togithub.com/eslint/eslint/issues/16990)) (Nicholas C. Zakas) - [`69bc0e2`](https://togithub.com/eslint/eslint/commit/69bc0e2f4412998f9384600a100d7882ea4dd3f3) ci: pin Node 19 to 19.7.0 ([#​16987](https://togithub.com/eslint/eslint/issues/16987)) (Milos Djermanovic) </details> <details> <summary>prettier/eslint-config-prettier</summary> ### [`v8.8.0`](https://togithub.com/prettier/eslint-config-prettier/blob/HEAD/CHANGELOG.md#Version-880-2023-03-20) [Compare Source](https://togithub.com/prettier/eslint-config-prettier/compare/v8.7.0...v8.8.0) - Added: \[[@​typescript-eslint/lines-around-comment](https://togithub.com/typescript-eslint/lines-around-comment)]. Thanks to [@​ttionya](https://togithub.com/ttionya)! </details> <details> <summary>defenseunicorns/syft</summary> ### [`v0.75.0`](https://togithub.com/defenseunicorns/syft/compare/v0.75.0-DU...v0.75.0) [Compare Source](https://togithub.com/defenseunicorns/syft/compare/v0.75.0-DU...v0.75.0) </details> <details> <summary>docker/cli</summary> ### [`v23.0.2+incompatible`](https://togithub.com/docker/cli/compare/v23.0.1...v23.0.2) [Compare Source](https://togithub.com/docker/cli/compare/v23.0.1...v23.0.2) </details> <details> <summary>fluxcd/helm-controller</summary> ### [`v0.31.2`](https://togithub.com/fluxcd/helm-controller/releases/tag/v0.31.2) [Compare Source](https://togithub.com/fluxcd/helm-controller/compare/v0.31.1...v0.31.2) [CHANGELOG](https://togithub.com/fluxcd/helm-controller/blob/main/CHANGELOG.md) </details> <details> <summary>fluxcd/source-controller</summary> ### [`v0.36.1`](https://togithub.com/fluxcd/source-controller/releases/tag/v0.36.1) [Compare Source](https://togithub.com/fluxcd/source-controller/compare/v0.36.0...v0.36.1) [CHANGELOG](https://togithub.com/fluxcd/source-controller/blob/main/CHANGELOG.md) </details> <details> <summary>go-logr/logr</summary> ### [`v1.2.4`](https://togithub.com/go-logr/logr/releases/tag/v1.2.4) [Compare Source](https://togithub.com/go-logr/logr/compare/v1.2.3...v1.2.4) This is a collection of small bugfixes and documentation updates. #### What's Changed - Fix syntax in documentation by [@​balki](https://togithub.com/balki) in [https://github.com/go-logr/logr/pull/144](https://togithub.com/go-logr/logr/pull/144) - testr: use an interface to make it work with \*testing.B and \*testing.F by [@​jeandeaual](https://togithub.com/jeandeaual) in [https://github.com/go-logr/logr/pull/143](https://togithub.com/go-logr/logr/pull/143) - If logging as JSON and the type is json.RawMessage log it "as-is" by [@​sfc-gh-jchacon](https://togithub.com/sfc-gh-jchacon) in [https://github.com/go-logr/logr/pull/147](https://togithub.com/go-logr/logr/pull/147) - Make zero value useful & add .IsZero() by [@​wojas](https://togithub.com/wojas) in [https://github.com/go-logr/logr/pull/153](https://togithub.com/go-logr/logr/pull/153) - testr: merge testLogger and testLoggerInterface by [@​thockin](https://togithub.com/thockin) in [https://github.com/go-logr/logr/pull/160](https://togithub.com/go-logr/logr/pull/160) - funcr: JSON invalid output with 1st field omitted by [@​thockin](https://togithub.com/thockin) in [https://github.com/go-logr/logr/pull/159](https://togithub.com/go-logr/logr/pull/159) - Make github assign PRs and issues by [@​thockin](https://togithub.com/thockin) in [https://github.com/go-logr/logr/pull/162](https://togithub.com/go-logr/logr/pull/162) - Fix comments on optional sink interfaces by [@​thockin](https://togithub.com/thockin) in [https://github.com/go-logr/logr/pull/161](https://togithub.com/go-logr/logr/pull/161) - Add examples for Logger methods by [@​thockin](https://togithub.com/thockin) in [https://github.com/go-logr/logr/pull/163](https://togithub.com/go-logr/logr/pull/163) - funcr: optimize WithValues/WithName/WithCallDepth by [@​pohly](https://togithub.com/pohly) in [https://github.com/go-logr/logr/pull/165](https://togithub.com/go-logr/logr/pull/165) - make Discard logger equal to null logger by [@​pohly](https://togithub.com/pohly) in [https://github.com/go-logr/logr/pull/166](https://togithub.com/go-logr/logr/pull/166) #### New Contributors - [@​balki](https://togithub.com/balki) made their first contribution in [https://github.com/go-logr/logr/pull/144](https://togithub.com/go-logr/logr/pull/144) - [@​jeandeaual](https://togithub.com/jeandeaual) made their first contribution in [https://github.com/go-logr/logr/pull/143](https://togithub.com/go-logr/logr/pull/143) - [@​sfc-gh-jchacon](https://togithub.com/sfc-gh-jchacon) made their first contribution in [https://github.com/go-logr/logr/pull/147](https://togithub.com/go-logr/logr/pull/147) **Full Changelog**: https://github.com/go-logr/logr/compare/v1.2.3...v1.2.4 </details> <details> <summary>goccy/go-yaml</summary> ### [`v1.10.1`](https://togithub.com/goccy/go-yaml/releases/tag/v1.10.1): 1.10.1 [Compare Source](https://togithub.com/goccy/go-yaml/compare/v1.10.0...v1.10.1) #### What's Changed - Quote YAML 1.1 bools at encoding time for compatibility with other legacy parsers by [@​mumoshu](https://togithub.com/mumoshu) in [https://github.com/goccy/go-yaml/pull/354](https://togithub.com/goccy/go-yaml/pull/354) - Update CI by [@​goccy](https://togithub.com/goccy) in [https://github.com/goccy/go-yaml/pull/364](https://togithub.com/goccy/go-yaml/pull/364) - Update Go Version by [@​goccy](https://togithub.com/goccy) in [https://github.com/goccy/go-yaml/pull/365](https://togithub.com/goccy/go-yaml/pull/365) - Don't trim all space characters in SequenceNode.blockStyleString by [@​martin-sucha](https://togithub.com/martin-sucha) in [https://github.com/goccy/go-yaml/pull/361](https://togithub.com/goccy/go-yaml/pull/361) - Add support of 32-bit architecture by [@​ozraru](https://togithub.com/ozraru) in [https://github.com/goccy/go-yaml/pull/350](https://togithub.com/goccy/go-yaml/pull/350) - Support strings starting with @​ by [@​10io](https://togithub.com/10io) in [https://github.com/goccy/go-yaml/pull/339](https://togithub.com/goccy/go-yaml/pull/339) #### New Contributors - [@​mumoshu](https://togithub.com/mumoshu) made their first contribution in [https://github.com/goccy/go-yaml/pull/354](https://togithub.com/goccy/go-yaml/pull/354) - [@​ozraru](https://togithub.com/ozraru) made their first contribution in [https://github.com/goccy/go-yaml/pull/350](https://togithub.com/goccy/go-yaml/pull/350) - [@​10io](https://togithub.com/10io) made their first contribution in [https://github.com/goccy/go-yaml/pull/339](https://togithub.com/goccy/go-yaml/pull/339) **Full Changelog**: https://github.com/goccy/go-yaml/compare/v1.10.0...v1.10.1 </details> <details> <summary>moby/moby</summary> ### [`v23.0.2+incompatible`](https://togithub.com/moby/moby/compare/v23.0.1...v23.0.2) [Compare Source](https://togithub.com/moby/moby/compare/v23.0.1...v23.0.2) </details> <details> <summary>pterm/pterm</summary> ### [`v0.12.57`](https://togithub.com/pterm/pterm/blob/HEAD/CHANGELOG.md#v01257---2023-03-28) [Compare Source](https://togithub.com/pterm/pterm/compare/v0.12.56...v0.12.57) ##### Code Refactoring - use `pterm.Print` instead of `fmt.Print` functions </details> <details> <sum </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/defenseunicorns/zarf). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4xNy4xIiwidXBkYXRlZEluVmVyIjoiMzUuMjMuMyJ9--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Wayne Starr <me@racer159.com>
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [github.com/go-logr/logr](https://togithub.com/go-logr/logr) | indirect | patch | `v1.2.3` -> `v1.2.4` | --- ### ⚠ Dependency Lookup Warnings ⚠ Warnings were logged while processing this repo. Please check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>go-logr/logr</summary> ### [`v1.2.4`](https://togithub.com/go-logr/logr/releases/tag/v1.2.4) [Compare Source](https://togithub.com/go-logr/logr/compare/v1.2.3...v1.2.4) This is a collection of small bugfixes and documentation updates. #### What's Changed - Fix syntax in documentation by [@​balki](https://togithub.com/balki) in [https://github.com/go-logr/logr/pull/144](https://togithub.com/go-logr/logr/pull/144) - testr: use an interface to make it work with \*testing.B and \*testing.F by [@​jeandeaual](https://togithub.com/jeandeaual) in [https://github.com/go-logr/logr/pull/143](https://togithub.com/go-logr/logr/pull/143) - If logging as JSON and the type is json.RawMessage log it "as-is" by [@​sfc-gh-jchacon](https://togithub.com/sfc-gh-jchacon) in [https://github.com/go-logr/logr/pull/147](https://togithub.com/go-logr/logr/pull/147) - Make zero value useful & add .IsZero() by [@​wojas](https://togithub.com/wojas) in [https://github.com/go-logr/logr/pull/153](https://togithub.com/go-logr/logr/pull/153) - testr: merge testLogger and testLoggerInterface by [@​thockin](https://togithub.com/thockin) in [https://github.com/go-logr/logr/pull/160](https://togithub.com/go-logr/logr/pull/160) - funcr: JSON invalid output with 1st field omitted by [@​thockin](https://togithub.com/thockin) in [https://github.com/go-logr/logr/pull/159](https://togithub.com/go-logr/logr/pull/159) - Make github assign PRs and issues by [@​thockin](https://togithub.com/thockin) in [https://github.com/go-logr/logr/pull/162](https://togithub.com/go-logr/logr/pull/162) - Fix comments on optional sink interfaces by [@​thockin](https://togithub.com/thockin) in [https://github.com/go-logr/logr/pull/161](https://togithub.com/go-logr/logr/pull/161) - Add examples for Logger methods by [@​thockin](https://togithub.com/thockin) in [https://github.com/go-logr/logr/pull/163](https://togithub.com/go-logr/logr/pull/163) - funcr: optimize WithValues/WithName/WithCallDepth by [@​pohly](https://togithub.com/pohly) in [https://github.com/go-logr/logr/pull/165](https://togithub.com/go-logr/logr/pull/165) - make Discard logger equal to null logger by [@​pohly](https://togithub.com/pohly) in [https://github.com/go-logr/logr/pull/166](https://togithub.com/go-logr/logr/pull/166) #### New Contributors - [@​balki](https://togithub.com/balki) made their first contribution in [https://github.com/go-logr/logr/pull/144](https://togithub.com/go-logr/logr/pull/144) - [@​jeandeaual](https://togithub.com/jeandeaual) made their first contribution in [https://github.com/go-logr/logr/pull/143](https://togithub.com/go-logr/logr/pull/143) - [@​sfc-gh-jchacon](https://togithub.com/sfc-gh-jchacon) made their first contribution in [https://github.com/go-logr/logr/pull/147](https://togithub.com/go-logr/logr/pull/147) **Full Changelog**: go-logr/logr@v1.2.3...v1.2.4 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "before 3am on the first day of the month" (UTC), 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 [Renovate Bot](https://togithub.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC4xNTkuMiIsInVwZGF0ZWRJblZlciI6IjM0LjE1OS4yIn0=-->
The testr logger currently only works with
*testing.T
and is not usable in benchmarks and fuzz tests.By using an interface instead, it can be made to accept
*testing.T
,*testing.B
and*testing.F
.This is similar to what's done in other libraries, for example:
This changes the return type of
GetUnderlying
though, so I'm not sure if that's OK.