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

Introduce quarkus-grpc-kotlin extension #46698

Closed
wants to merge 1 commit into from
Closed

Conversation

geoand
Copy link
Contributor

@geoand geoand commented Mar 10, 2025

This is automatically added by Quarkus during build time if both the quarkus-grpc and quarkus-kotlin extensions are present.
Currently, all the extension does is plug into the gRPC codegen phase.

/**
* Simple SPI that allows code to add additional options to the gRPC code generation invocation
*/
public interface AdditionalOutputHandler {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The signatures of the methods of this maybe overkill for what we want now, but I did it this way just to make sure we don't break anyone if we decide that we need more stuff in the future.
I'm open to just using what we need though if we think this is unlikely to ever change or be used elsewhere

This comment has been minimized.

@quarkus-bot quarkus-bot bot added area/devtools Issues/PR related to maven, gradle, platform and cli tooling/plugins area/documentation labels Mar 10, 2025
@geoand geoand force-pushed the #46675 branch 2 times, most recently from f9c1123 to e96a2e7 Compare March 10, 2025 13:53
@geoand
Copy link
Contributor Author

geoand commented Mar 10, 2025

It seems like this doesn't work in practice because the generation and compilation stage happens before Quarkus can add the conditional dependency to the classpath...

This comment has been minimized.

Copy link

github-actions bot commented Mar 10, 2025

🎊 PR Preview 58ff745 has been successfully built and deployed to https://quarkus-pr-main-46698-preview.surge.sh/version/main/guides/

  • Images of blog posts older than 3 months are not available.
  • Newsletters older than 3 months are not available.

This is automatically added by Quarkus during build time
if both the `quarkus-grpc` and `quarkus-kotlin` extensions
are present.
Currently, all the extension does is plug into the gRPC codegen
phase.

Fixes: quarkusio#46675
Copy link

quarkus-bot bot commented Mar 10, 2025

Status for workflow Quarkus Documentation CI

This is the status report for running Quarkus Documentation CI on commit 5ff6f1f.

✅ The latest workflow run for the pull request has completed successfully.

It should be safe to merge provided you have a look at the other checks in the summary.

Warning

There are other workflow runs running, you probably need to wait for their status before merging.

Copy link

quarkus-bot bot commented Mar 10, 2025

Status for workflow Quarkus CI

This is the status report for running Quarkus CI on commit 5ff6f1f.

✅ The latest workflow run for the pull request has completed successfully.

It should be safe to merge provided you have a look at the other checks in the summary.

You can consult the Develocity build scans.


Flaky tests - Develocity

⚙️ JVM Tests - JDK 17

📦 extensions/smallrye-reactive-messaging-kafka/deployment

io.quarkus.smallrye.reactivemessaging.kafka.deployment.testing.KafkaDevServicesContinuousTestingTestCase.testContinuousTestingScenario2 - History

  • io.quarkus.builder.BuildException: Build failure: Build failed due to errors [error]: Build step io.quarkus.apicurio.registry.devservice.DevServicesApicurioRegistryProcessor\#startApicurioRegistryDevService threw an exception: java.lang.RuntimeException: org.testcontainers.containers.ContainerLaunchException: Container startup failed for image quay.io/apicurio/apicurio-registry-mem:2.4.2.Final at io.quarkus.apicurio.registry.devservice.DevServicesApicurioRegistryProcessor.startApicurioRegistryDevService(DevServicesApicurioRegistryProcessor.java:90) at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:732) at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:856) - java.lang.RuntimeException
java.lang.RuntimeException: 
io.quarkus.builder.BuildException: Build failure: Build failed due to errors
	[error]: Build step io.quarkus.apicurio.registry.devservice.DevServicesApicurioRegistryProcessor#startApicurioRegistryDevService threw an exception: java.lang.RuntimeException: org.testcontainers.containers.ContainerLaunchException: Container startup failed for image quay.io/apicurio/apicurio-registry-mem:2.4.2.Final
	at io.quarkus.apicurio.registry.devservice.DevServicesApicurioRegistryProcessor.startApicurioRegistryDevService(DevServicesApicurioRegistryProcessor.java:90)
	at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:732)
	at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:856)
	at io.quarkus.builder.BuildContext.run(BuildContext.java:255)
	at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)

⚙️ JVM Integration Tests - JDK 17 Windows

📦 integration-tests/hibernate-orm-panache

io.quarkus.it.panache.defaultpu.PanacheFunctionalityTest.testBug7102 - History

  • expected: <jozo> but was: <pero> - org.opentest4j.AssertionFailedError
org.opentest4j.AssertionFailedError: expected: <jozo> but was: <pero>
	at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
	at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
	at org.junit.jupiter.api.AssertEquals.failNotEqual(AssertEquals.java:197)
	at org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:182)
	at org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:177)
	at org.junit.jupiter.api.Assertions.assertEquals(Assertions.java:1145)
	at io.quarkus.it.panache.defaultpu.PanacheFunctionalityTest.testBug7102(PanacheFunctionalityTest.java:220)

io.quarkus.it.panache.defaultpu.PanacheFunctionalityTest.testPanacheFunctionality - History

  • 1 expectation failed. Response body doesn't match expectation. Expected: is "OK" Actual: {"details":"Error id 239bedf4-e213-4ad7-aa3d-09e5355d3711-1, org.jboss.resteasy.spi.UnhandledException: org.opentest4j.AssertionFailedError: expected: <1> but was: <0>","stack":"org.jboss.resteasy.spi.UnhandledException: org.opentest4j.AssertionFailedError: expected: <1> but was: <0>\r\n\tat org.jboss.resteasy.core.ExceptionHandler.handleApplicationException(ExceptionHandler.java:107)\r\n\tat org.jboss.resteasy.core.ExceptionHandler.handleException(ExceptionHandler.java:344)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.writeException(SynchronousDispatcher.java:205)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:452)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.lambda$invokePropagateNotFound$6(SynchronousDispatcher.java:275)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.lambda$preprocess$0(SynchronousDispatcher.java:154)\r\n\tat... - java.lang.AssertionError
java.lang.AssertionError: 
1 expectation failed.
Response body doesn't match expectation.
Expected: is "OK"
  Actual: {"details":"Error id 239bedf4-e213-4ad7-aa3d-09e5355d3711-1, org.jboss.resteasy.spi.UnhandledException: org.opentest4j.AssertionFailedError: expected: <1> but was: <0>","stack":"org.jboss.resteasy.spi.UnhandledException: org.opentest4j.AssertionFailedError: expected: <1> but was: <0>\r\n\tat org.jboss.resteasy.core.ExceptionHandler.handleApplicationException(ExceptionHandler.java:107)\r\n\tat org.jboss.resteasy.core.ExceptionHandler.handleException(ExceptionHandler.java:344)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.writeException(SynchronousDispatcher.java:205)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:452)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.lambda$invokePropagateNotFound$6(SynchronousDispatcher.java:275)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.lambda$preprocess$0(SynchronousD...
  • 1 expectation failed. Response body doesn't match expectation. Expected: is "OK" Actual: {"details":"Error id bfdd3f2d-7de2-442d-97a4-9d4d2bd0fbe3-1, org.jboss.resteasy.spi.UnhandledException: org.opentest4j.AssertionFailedError: expected: <0> but was: <1>","stack":"org.jboss.resteasy.spi.UnhandledException: org.opentest4j.AssertionFailedError: expected: <0> but was: <1>\r\n\tat org.jboss.resteasy.core.ExceptionHandler.handleApplicationException(ExceptionHandler.java:107)\r\n\tat org.jboss.resteasy.core.ExceptionHandler.handleException(ExceptionHandler.java:344)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.writeException(SynchronousDispatcher.java:205)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:452)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.lambda$invokePropagateNotFound$6(SynchronousDispatcher.java:275)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.lambda$preprocess$0(SynchronousDispatcher.java:154)\r\n\tat... - java.lang.AssertionError
java.lang.AssertionError: 
1 expectation failed.
Response body doesn't match expectation.
Expected: is "OK"
  Actual: {"details":"Error id bfdd3f2d-7de2-442d-97a4-9d4d2bd0fbe3-1, org.jboss.resteasy.spi.UnhandledException: org.opentest4j.AssertionFailedError: expected: <0> but was: <1>","stack":"org.jboss.resteasy.spi.UnhandledException: org.opentest4j.AssertionFailedError: expected: <0> but was: <1>\r\n\tat org.jboss.resteasy.core.ExceptionHandler.handleApplicationException(ExceptionHandler.java:107)\r\n\tat org.jboss.resteasy.core.ExceptionHandler.handleException(ExceptionHandler.java:344)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.writeException(SynchronousDispatcher.java:205)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:452)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.lambda$invokePropagateNotFound$6(SynchronousDispatcher.java:275)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.lambda$preprocess$0(SynchronousD...

@geoand geoand closed this Mar 10, 2025
@quarkus-bot quarkus-bot bot added the triage/invalid This doesn't seem right label Mar 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/dependencies Pull requests that update a dependency file area/devtools Issues/PR related to maven, gradle, platform and cli tooling/plugins area/documentation area/gradle Gradle area/grpc gRPC triage/flaky-test triage/invalid This doesn't seem right
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[REGRESSION] - grpc kotlin code generation breaking other things
1 participant