Repository: kroxylicious/kroxylicious
Pull request #665 (2023-10-09 03:36:26)

Bump org.apache.kafka:kafka-clients from 3.5.1 to 3.6.0
Bumps org.apache.kafka:kafka-clients from 3.5.1 to 3.6.0.


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.apache.kafka:kafka-clients&package-manager=maven&previous-version=3.5.1&new-version=3.6.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

SamBarker: @dependabot recreate
SamBarker: argh! I missed 
>@[k-wall](https://github.com/k-wall) k-wall [force-pushed](https://github.com/kroxylicious/kroxylicious/compare/1a2892401b6d875e50ce5679a9045991702ab0ec..2586790402fdc5e3f5389ffc1aa666cb9763ac2c) the dependabot/maven/org.apache.kafka-kafka-clients-3.6.0 branch from [1a28924 ](https://github.com/kroxylicious/kroxylicious/commit/1a2892401b6d875e50ce5679a9045991702ab0ec)to [2586790 ](https://github.com/kroxylicious/kroxylicious/commit/2586790402fdc5e3f5389ffc1aa666cb9763ac2c)
[18 hours ago](https://github.com/kroxylicious/kroxylicious/pull/665#event-10588903473)
Sorry @k-wall 
SamBarker: Upgrading to a version of the junit extension (0.6.0-SNAPSHOT) fixes the parameter resolution error. Lets get the extension released and then revisit the tight coupling of versions.

```
[ERROR] io.kroxylicious.test.tester.KroxyliciousTestersTest.shouldReturnClosableProducer(KafkaCluster) -- Time elapsed: 0.002 s <<< ERROR!
org.junit.jupiter.api.extension.ParameterResolutionException: Failed to resolve parameter [io.kroxylicious.testing.kafka.api.KafkaCluster cluster] in method [void io.kroxylicious.test.tester.KroxyliciousTestersTest.shouldReturnClosableProducer(io.kroxylicious.testing.kafka.api.KafkaCluster)]: Could not initialize class kafka.server.KafkaConfig$
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class kafka.server.KafkaConfig$
	at kafka.server.KafkaConfig.LogDirProp(KafkaConfig.scala)
	at io.kroxylicious.testing.kafka.invm.InVMKafkaCluster.buildBrokerConfig(InVMKafkaCluster.java:165)
	at io.kroxylicious.testing.kafka.invm.InVMKafkaCluster.buildKafkaServer(InVMKafkaCluster.java:106)
	at io.kroxylicious.testing.kafka.invm.InVMKafkaCluster.lambda$start$5(InVMKafkaCluster.java:186)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at java.base/java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:290)
	at java.base/java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:754)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387)
	at java.base/java.util.concurrent.ForkJoinTask.invoke(ForkJoinTask.java:667)
	at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateParallel(ForEachOps.java:159)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateParallel(ForEachOps.java:173)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:233)
	at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
	at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:765)
	at io.kroxylicious.testing.kafka.invm.InVMKafkaCluster.start(InVMKafkaCluster.java:185)
	at io.kroxylicious.testing.kafka.junit5ext.KafkaClusterExtension.createCluster(KafkaClusterExtension.java:956)
	at io.kroxylicious.testing.kafka.junit5ext.KafkaClusterExtension.lambda$getCluster$12(KafkaClusterExtension.java:814)
	at io.kroxylicious.testing.kafka.junit5ext.KafkaClusterExtension.getCluster(KafkaClusterExtension.java:812)
	at io.kroxylicious.testing.kafka.junit5ext.KafkaClusterExtension.resolveParameter(KafkaClusterExtension.java:492)
	at io.kroxylicious.testing.kafka.junit5ext.KafkaClusterExtension.resolveParameter(KafkaClusterExtension.java:464)
	... 2 more
Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchFieldError: id [in thread "main"]
	at kafka.server.Defaults$.<clinit>(KafkaConfig.scala:186)
	at kafka.server.KafkaConfig$.<clinit>(KafkaConfig.scala:734)
	... 24 more
```
k-wall: > Upgrading to a version of the junit extension (0.6.0-SNAPSHOT) fixes the parameter resolution error. Lets get the extension released and then revisit the tight coupling of versions.
> 
> ```
> [ERROR] io.kroxylicious.test.tester.KroxyliciousTestersTest.shouldReturnClosableProducer(KafkaCluster) -- Time elapsed: 0.002 s <<< ERROR!
> org.junit.jupiter.api.extension.ParameterResolutionException: Failed to resolve parameter [io.kroxylicious.testing.kafka.api.KafkaCluster cluster] in method [void io.kroxylicious.test.tester.KroxyliciousTestersTest.shouldReturnClosableProducer(io.kroxylicious.testing.kafka.api.KafkaCluster)]: Could not initialize class kafka.server.KafkaConfig$
> 	at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
> 	at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
> Caused by: java.lang.NoClassDefFoundError: Could not initialize class kafka.server.KafkaConfig$
> 	at kafka.server.KafkaConfig.LogDirProp(KafkaConfig.scala)
> 	at io.kroxylicious.testing.kafka.invm.InVMKafkaCluster.buildBrokerConfig(InVMKafkaCluster.java:165)
> 	at io.kroxylicious.testing.kafka.invm.InVMKafkaCluster.buildKafkaServer(InVMKafkaCluster.java:106)
> 	at io.kroxylicious.testing.kafka.invm.InVMKafkaCluster.lambda$start$5(InVMKafkaCluster.java:186)
> 	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
> 	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
> 	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
> 	at java.base/java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:290)
> 	at java.base/java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:754)
> 	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387)
> 	at java.base/java.util.concurrent.ForkJoinTask.invoke(ForkJoinTask.java:667)
> 	at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateParallel(ForEachOps.java:159)
> 	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateParallel(ForEachOps.java:173)
> 	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:233)
> 	at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
> 	at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:765)
> 	at io.kroxylicious.testing.kafka.invm.InVMKafkaCluster.start(InVMKafkaCluster.java:185)
> 	at io.kroxylicious.testing.kafka.junit5ext.KafkaClusterExtension.createCluster(KafkaClusterExtension.java:956)
> 	at io.kroxylicious.testing.kafka.junit5ext.KafkaClusterExtension.lambda$getCluster$12(KafkaClusterExtension.java:814)
> 	at io.kroxylicious.testing.kafka.junit5ext.KafkaClusterExtension.getCluster(KafkaClusterExtension.java:812)
> 	at io.kroxylicious.testing.kafka.junit5ext.KafkaClusterExtension.resolveParameter(KafkaClusterExtension.java:492)
> 	at io.kroxylicious.testing.kafka.junit5ext.KafkaClusterExtension.resolveParameter(KafkaClusterExtension.java:464)
> 	... 2 more
> Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchFieldError: id [in thread "main"]
> 	at kafka.server.Defaults$.<clinit>(KafkaConfig.scala:186)
> 	at kafka.server.KafkaConfig$.<clinit>(KafkaConfig.scala:734)
> 	... 24 more
> ```

We're ending up with a mess on the classpath.  This project is depending on kafka-3.6.0 bringing the client whereas the testing framework is bring the remainder of kafka at 3.5.1.

It might be better if the junit ext used a provided dependency scope for the kafka itself, allowing users to use the version they desire.   The junit ext would strive to stay compatible.    Sounds like this should be a separate issue in the junit ext project.
SamBarker: > Maybe the mistake was mine. Did I violate least surprise by adding a commit to dependabot's PR? 

Nah, I think you made the right call. I just see the commit before asking dependabot to update things.
sonarcloud[bot]: Kudos, SonarCloud Quality Gate passed!&nbsp; &nbsp; [![Quality Gate passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/passed-16px.png 'Quality Gate passed')](https://sonarcloud.io/dashboard?id=kroxylicious_kroxylicious&pullRequest=665)

[![Bug](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/bug-16px.png 'Bug')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=BUG) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=BUG) [0 Bugs](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=BUG)  
[![Vulnerability](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/vulnerability-16px.png 'Vulnerability')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=VULNERABILITY) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=VULNERABILITY) [0 Vulnerabilities](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=VULNERABILITY)  
[![Security Hotspot](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/security_hotspot-16px.png 'Security Hotspot')](https://sonarcloud.io/project/security_hotspots?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=SECURITY_HOTSPOT) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/security_hotspots?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=SECURITY_HOTSPOT) [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=SECURITY_HOTSPOT)  
[![Code Smell](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/code_smell-16px.png 'Code Smell')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=CODE_SMELL) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=CODE_SMELL) [0 Code Smells](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=CODE_SMELL)

[![No Coverage information](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/CoverageChart/NoCoverageInfo-16px.png 'No Coverage information')](https://sonarcloud.io/component_measures?id=kroxylicious_kroxylicious&pullRequest=665&metric=coverage&view=list) No Coverage information  
[![0.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/Duplications/3-16px.png '0.0%')](https://sonarcloud.io/component_measures?id=kroxylicious_kroxylicious&pullRequest=665&metric=new_duplicated_lines_density&view=list) [0.0% Duplication](https://sonarcloud.io/component_measures?id=kroxylicious_kroxylicious&pullRequest=665&metric=new_duplicated_lines_density&view=list)


k-wall: @SamBarker could you review too? Merge it if you are happy.
sonarcloud[bot]: Kudos, SonarCloud Quality Gate passed!&nbsp; &nbsp; [![Quality Gate passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/passed-16px.png 'Quality Gate passed')](https://sonarcloud.io/dashboard?id=kroxylicious_kroxylicious&pullRequest=665)

[![Bug](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/bug-16px.png 'Bug')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=BUG) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=BUG) [0 Bugs](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=BUG)  
[![Vulnerability](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/vulnerability-16px.png 'Vulnerability')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=VULNERABILITY) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=VULNERABILITY) [0 Vulnerabilities](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=VULNERABILITY)  
[![Security Hotspot](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/security_hotspot-16px.png 'Security Hotspot')](https://sonarcloud.io/project/security_hotspots?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=SECURITY_HOTSPOT) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/security_hotspots?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=SECURITY_HOTSPOT) [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=SECURITY_HOTSPOT)  
[![Code Smell](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/code_smell-16px.png 'Code Smell')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=CODE_SMELL) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=CODE_SMELL) [0 Code Smells](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=CODE_SMELL)

[![No Coverage information](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/CoverageChart/NoCoverageInfo-16px.png 'No Coverage information')](https://sonarcloud.io/component_measures?id=kroxylicious_kroxylicious&pullRequest=665&metric=coverage&view=list) No Coverage information  
[![0.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/Duplications/3-16px.png '0.0%')](https://sonarcloud.io/component_measures?id=kroxylicious_kroxylicious&pullRequest=665&metric=new_duplicated_lines_density&view=list) [0.0% Duplication](https://sonarcloud.io/component_measures?id=kroxylicious_kroxylicious&pullRequest=665&metric=new_duplicated_lines_density&view=list)


sonarcloud[bot]: Kudos, SonarCloud Quality Gate passed!&nbsp; &nbsp; [![Quality Gate passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/passed-16px.png 'Quality Gate passed')](https://sonarcloud.io/dashboard?id=kroxylicious_kroxylicious&pullRequest=665)

[![Bug](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/bug-16px.png 'Bug')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=BUG) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=BUG) [0 Bugs](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=BUG)  
[![Vulnerability](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/vulnerability-16px.png 'Vulnerability')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=VULNERABILITY) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=VULNERABILITY) [0 Vulnerabilities](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=VULNERABILITY)  
[![Security Hotspot](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/security_hotspot-16px.png 'Security Hotspot')](https://sonarcloud.io/project/security_hotspots?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=SECURITY_HOTSPOT) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/security_hotspots?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=SECURITY_HOTSPOT) [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=SECURITY_HOTSPOT)  
[![Code Smell](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/code_smell-16px.png 'Code Smell')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=CODE_SMELL) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=CODE_SMELL) [0 Code Smells](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=CODE_SMELL)

[![No Coverage information](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/CoverageChart/NoCoverageInfo-16px.png 'No Coverage information')](https://sonarcloud.io/component_measures?id=kroxylicious_kroxylicious&pullRequest=665&metric=coverage&view=list) No Coverage information  
[![0.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/Duplications/3-16px.png '0.0%')](https://sonarcloud.io/component_measures?id=kroxylicious_kroxylicious&pullRequest=665&metric=new_duplicated_lines_density&view=list) [0.0% Duplication](https://sonarcloud.io/component_measures?id=kroxylicious_kroxylicious&pullRequest=665&metric=new_duplicated_lines_density&view=list)


sonarcloud[bot]: Kudos, SonarCloud Quality Gate passed!&nbsp; &nbsp; [![Quality Gate passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/passed-16px.png 'Quality Gate passed')](https://sonarcloud.io/dashboard?id=kroxylicious_kroxylicious&pullRequest=665)

[![Bug](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/bug-16px.png 'Bug')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=BUG) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=BUG) [0 Bugs](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=BUG)  
[![Vulnerability](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/vulnerability-16px.png 'Vulnerability')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=VULNERABILITY) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=VULNERABILITY) [0 Vulnerabilities](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=VULNERABILITY)  
[![Security Hotspot](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/security_hotspot-16px.png 'Security Hotspot')](https://sonarcloud.io/project/security_hotspots?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=SECURITY_HOTSPOT) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/security_hotspots?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=SECURITY_HOTSPOT) [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=SECURITY_HOTSPOT)  
[![Code Smell](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/code_smell-16px.png 'Code Smell')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=CODE_SMELL) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=CODE_SMELL) [0 Code Smells](https://sonarcloud.io/project/issues?id=kroxylicious_kroxylicious&pullRequest=665&resolved=false&types=CODE_SMELL)

[![No Coverage information](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/CoverageChart/NoCoverageInfo-16px.png 'No Coverage information')](https://sonarcloud.io/component_measures?id=kroxylicious_kroxylicious&pullRequest=665&metric=coverage&view=list) No Coverage information  
[![0.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/Duplications/3-16px.png '0.0%')](https://sonarcloud.io/component_measures?id=kroxylicious_kroxylicious&pullRequest=665&metric=new_duplicated_lines_density&view=list) [0.0% Duplication](https://sonarcloud.io/component_measures?id=kroxylicious_kroxylicious&pullRequest=665&metric=new_duplicated_lines_density&view=list)



Patch:
diff --git a/CHANGELOG.md b/CHANGELOG.md
index f7584a87..3afc0135 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -6,6 +6,7 @@ Please enumerate **all user-facing** changes using format `<githib issue/pr numb
 
 ## 0.3.0
 
+* [#665](https://github.com/kroxylicious/kroxylicious/pull/665): Bump org.apache.kafka:kafka-clients from 3.5.1 to 3.6.0
 * [#660](https://github.com/kroxylicious/kroxylicious/pull/660): Use container registry neutral terminology in docs/scripts #660
 * [#648](https://github.com/kroxylicious/kroxylicious/pull/648): Bump io.netty.incubator:netty-incubator-transport-native-io_uring from 0.0.22.Final to 0.0.23.Final
 * [#649](https://github.com/kroxylicious/kroxylicious/pull/649): Bump io.netty:netty-bom from 4.1.97.Final to 4.1.99.Final
diff --git a/pom.xml b/pom.xml
index 693f238c..8b0105d0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -37,8 +37,8 @@
         <hamcrest.version>2.2</hamcrest.version>
         <jackson.version>2.15.2</jackson.version>
         <junit.version>5.10.0</junit.version>
-        <kafka.version>3.5.1</kafka.version>
-        <kroxy.extension.version>0.5.0</kroxy.extension.version>
+        <kafka.version>3.6.0</kafka.version>
+        <kroxy.extension.version>0.6.0</kroxy.extension.version>
         <log4j.version>2.20.0</log4j.version>
         <picocli.version>4.7.5</picocli.version>
         <netty.version>4.1.99.Final</netty.version>


Test patch:
diff --git a/kroxylicious-additional-filters/kroxylicious-multitenant/src/test/resources/io/kroxylicious/proxy/filter/multitenant/OffsetCommit.test.yaml b/kroxylicious-additional-filters/kroxylicious-multitenant/src/test/resources/io/kroxylicious/proxy/filter/multitenant/OffsetCommit.test.yaml
index ab52b7e1..8b433a42 100644
--- a/kroxylicious-additional-filters/kroxylicious-multitenant/src/test/resources/io/kroxylicious/proxy/filter/multitenant/OffsetCommit.test.yaml
+++ b/kroxylicious-additional-filters/kroxylicious-multitenant/src/test/resources/io/kroxylicious/proxy/filter/multitenant/OffsetCommit.test.yaml
@@ -9,7 +9,7 @@
   request:
     payload:
       groupId: mygroup
-      generationId: 0
+      generationIdOrMemberEpoch: 0
       memberId: mymemberid
       groupInstanceId: mygroupinstanceid
       topics:
diff --git a/krpc-code-gen/src/test/java/io/kroxylicious/krpccodegen/main/KrpcGeneratorTest.java b/krpc-code-gen/src/test/java/io/kroxylicious/krpccodegen/main/KrpcGeneratorTest.java
index cdf69f08..13a43c38 100644
--- a/krpc-code-gen/src/test/java/io/kroxylicious/krpccodegen/main/KrpcGeneratorTest.java
+++ b/krpc-code-gen/src/test/java/io/kroxylicious/krpccodegen/main/KrpcGeneratorTest.java
@@ -119,10 +119,10 @@ class KrpcGeneratorTest {
     }
 
     @ParameterizedTest
-    @CsvSource({ "AddPartitionsToTxnRequest.json,yes", "FetchRequest.json,no" })
-    void testLatestVersionUnstable(String messageSpec, String expectedContents, @TempDir File tempDir) throws Exception {
-        testSingleGeneration(tempDir, messageSpec, "${messageSpec.latestVersionUnstable.isPresent()?string('yes', 'no')}", expectedContents);
-        testSingleGeneration(tempDir, messageSpec, "${messageSpec.latestVersionUnstable.orElse(false)?string('yes', 'no')}", expectedContents);
+    @CsvSource({ "AddPartitionsToTxnRequest.json,yes,no", "FetchRequest.json,no,no" })
+    void testLatestVersionUnstable(String messageSpec, String expectField, String expectValue, @TempDir File tempDir) throws Exception {
+        testSingleGeneration(tempDir, messageSpec, "${messageSpec.latestVersionUnstable.isPresent()?string('yes', 'no')}", expectField);
+        testSingleGeneration(tempDir, messageSpec, "${messageSpec.latestVersionUnstable.orElse(false)?string('yes', 'no')}", expectValue);
     }
 
     private void assertFileHasExpectedContents(File file, String expectedFile) throws IOException {
@@ -173,4 +173,4 @@ class KrpcGeneratorTest {
             throw new RuntimeException("Couldn't resolve build directory", e);
         }
     }
-}
+}
\ No newline at end of file