Skip to content

Update dependencies and gradle config #640

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

Merged
merged 5 commits into from
Mar 19, 2020

Conversation

smyrick
Copy link
Contributor

@smyrick smyrick commented Mar 18, 2020

📝 Description

Include certain dependencies as implementation instead of api so that they are not exposed by default. If you want to use coroutine in your GraphQL API you will need to also include the library

🔗 Related Issues

Include certain dependencies as implementation instead of api so that they are not exposed by default. If you want to use coroutine in your GraphQL API you will need to also include the library
@smyrick smyrick added changes: patch Changes require a patch version type: dependency changes Dependency change which doesn't affect our library usage labels Mar 18, 2020
@@ -14,8 +14,8 @@ dependencies {
api(project(path = ":graphql-kotlin-federation"))
api("org.springframework.boot:spring-boot-starter-webflux:$springBootVersion")
kapt("org.springframework.boot:spring-boot-configuration-processor:$springBootVersion")
api("io.projectreactor.kotlin:reactor-kotlin-extensions:$reactorExtensionsVersion")
api("org.jetbrains.kotlinx:kotlinx-coroutines-reactor:$kotlinCoroutinesVersion")
implementation("io.projectreactor.kotlin:reactor-kotlin-extensions:$reactorExtensionsVersion")
Copy link
Collaborator

Choose a reason for hiding this comment

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

I think that spring-server as SpringBoot autoconfiguration library should pull in all the required dependencies including both Reactor and Coroutines.

Copy link
Contributor Author

@smyrick smyrick Mar 19, 2020

Choose a reason for hiding this comment

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

We can exposes coroutines as an api dependency but I don't think we need to expose the reactor and kotlin extensions, right?

You don't explicitly need to use those to use graphql-kotlin-spring-server.

Or do we just want to include them for convenience?

Copy link
Collaborator

Choose a reason for hiding this comment

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

i believe SpringBoot pulls in reactor so adding api dependency on coroutines should be fine

Copy link
Contributor Author

Choose a reason for hiding this comment

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

We do use these in the example apps, so we could make them api or do we want to update the example apps to pull in the extensions as well?

Copy link
Collaborator

Choose a reason for hiding this comment

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

Let's keep them as api deps for now.

Copy link
Collaborator

@dariuszkuc dariuszkuc left a comment

Choose a reason for hiding this comment

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

LGTM

@smyrick smyrick merged commit f92faba into ExpediaGroup:master Mar 19, 2020
@smyrick smyrick deleted the gradle-config branch March 19, 2020 18:28
dariuszkuc pushed a commit to dariuszkuc/graphql-kotlin that referenced this pull request Aug 5, 2022
* Update dependencies and gradle config

Include certain dependencies as implementation instead of api so that they are not exposed by default. If you want to use coroutine in your GraphQL API you will need to also include the library

* Include coroutines in graphql-kotlin-spring-server as api dep

* Include coroutines as implementation dep on all modules

* Move deps to api for spring server

* Remove unused gradle props

Co-authored-by: Shane Myrick <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
changes: patch Changes require a patch version type: dependency changes Dependency change which doesn't affect our library usage
Development

Successfully merging this pull request may close these issues.

2 participants