Skip to content

Conversation

FelipeCortez
Copy link
Contributor

What was changed

This PR adds two dependencies to temporal-shaded that are necessary for writing test suites.

Why?

Tests rely on InProcessServerBuilder:

import io.grpc.inprocess.InProcessChannelBuilder;
import io.grpc.inprocess.InProcessServerBuilder;

The ServerBuilder class is part of the io.grpc:grpc-inprocess artifact, which was not currently covered by the dependencies declared for temporal-shaded, causing java.lang.ClassNotFoundException: io.temporal.shaded.io.grpc.inprocess.InProcessServerBuilder errors at (test executing) runtime.

We also depend on SecretRoundRobinLoadBalancerProvider:

"name":"io.grpc.util.SecretRoundRobinLoadBalancerProvider$Provider",
"methods":[{"name":"<init>","parameterTypes":[] }]

I'm not exactly sure on how the reflection mechanism works, but I got similar ClassNotFoundExceptions without declaring a dependency on grpc-util.

How was this tested

I have a separate project that uses the Temporal Java SDK and contains a test suite. No tests passed using the shaded SDK prior to this change. I applied the changes that are commited to this PR, rebuilt temporal-shaded with cd temporal-shaded && gradle build and installed the updated temporal-shaded dependency to my local maven repository by updating the plugins section in temporal-shaded/build:

plugins {
    id 'com.gradleup.shadow' version '8.3.3'
+   id 'maven-publish'
}
   

and then running cd temporal-shaded && gradle publishToMavenLocal. I changed my project to use the new artifact and all tests passed.

@FelipeCortez FelipeCortez requested a review from a team as a code owner October 14, 2025 17:20
@CLAassistant
Copy link

CLAassistant commented Oct 14, 2025

CLA assistant check
All committers have signed the CLA.

@maciejdudko
Copy link
Contributor

Hi Felipe, thank you for your contribution!

The PR looks good, but the Features Integration Tests CI job has failed. It looks like you haven't copied tags from our repository into your fork - without that, this job will not work. Please run the following commands inside your repository clone:

git remote add upstream https://github.com/temporalio/sdk-java.git
git fetch upstream --tags
git push origin --tags

Please leave a comment when you've run the commands so we can re-run CI.

@FelipeCortez
Copy link
Contributor Author

@maciejdudko done!

Copy link
Contributor

@maciejdudko maciejdudko left a comment

Choose a reason for hiding this comment

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

Looks good, LGTM!

@maciejdudko maciejdudko merged commit 832785d into temporalio:master Oct 15, 2025
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants