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

Move integrations to main repo + new Ktor client integration #3570

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

serras
Copy link
Member

@serras serras commented Jan 25, 2025

This PR does a few things (sorry, I forgot to switch branches).

It moves the Jackson module from arrow-integrations repo into the main repo, which makes it easier to release in the future. Alongside it reorganizes the repo, moving all the integrations modules (Retrofit, Jackson, kotlinx.serialization) into a new integrations folder.

Alongside those, it adds a new integration with Ktor in the form of a client plug-in. It does the same as the built-in HttpRetry but using our Schedule and CircuitBreaker.

@serras serras requested review from nomisRev and kyay10 January 25, 2025 15:03
Copy link
Contributor

Kover Report

File Coverage [78.78%]
arrow-libs/integrations/arrow-core-jackson/src/main/kotlin/arrow/integrations/jackson/module/ArrowModule.kt 100.00%
arrow-libs/integrations/arrow-core-jackson/src/main/kotlin/arrow/integrations/jackson/module/EitherModule.kt 100.00%
arrow-libs/integrations/arrow-core-jackson/src/main/kotlin/arrow/integrations/jackson/module/IorModule.kt 100.00%
arrow-libs/integrations/arrow-core-jackson/src/main/kotlin/arrow/integrations/jackson/module/OptionModule.kt 91.49%
arrow-libs/integrations/arrow-core-jackson/src/main/kotlin/arrow/integrations/jackson/module/internal/ElementDeserializer.kt 72.73%
arrow-libs/integrations/arrow-core-jackson/src/main/kotlin/arrow/integrations/jackson/module/internal/ProductTypeDeserializer.kt 75.00%
arrow-libs/integrations/arrow-core-jackson/src/main/kotlin/arrow/integrations/jackson/module/internal/ProductTypeSerializer.kt 100.00%
arrow-libs/integrations/arrow-core-jackson/src/main/kotlin/arrow/integrations/jackson/module/internal/UnionTypeDeserializer.kt 82.76%
arrow-libs/integrations/arrow-core-jackson/src/main/kotlin/arrow/integrations/jackson/module/internal/UnionTypeSerializer.kt 90.91%
arrow-libs/integrations/arrow-core-retrofit/src/main/kotlin/arrow/retrofit/adapter/either/ArrowEitherCallAdapter.kt 73.08%
arrow-libs/integrations/arrow-core-retrofit/src/main/kotlin/arrow/retrofit/adapter/either/ArrowResponseECallAdapter.kt 73.08%
arrow-libs/integrations/arrow-core-retrofit/src/main/kotlin/arrow/retrofit/adapter/either/EitherCallAdapterFactory.kt 64.52%
arrow-libs/integrations/arrow-core-retrofit/src/main/kotlin/arrow/retrofit/adapter/either/ResponseE.kt 100.00%
arrow-libs/integrations/arrow-core-retrofit/src/main/kotlin/arrow/retrofit/adapter/either/eitherAdapter.kt 80.00%
arrow-libs/integrations/arrow-core-retrofit/src/main/kotlin/arrow/retrofit/adapter/either/networkhandling/CallError.kt 100.00%
arrow-libs/integrations/arrow-core-retrofit/src/main/kotlin/arrow/retrofit/adapter/either/networkhandling/NetworkEitherCallAdapter.kt 69.44%
arrow-libs/integrations/arrow-core-serialization/src/commonMain/kotlin/arrow/core/serialization/EitherSerializer.kt 92.59%
arrow-libs/integrations/arrow-core-serialization/src/commonMain/kotlin/arrow/core/serialization/IorSerializer.kt 86.67%
arrow-libs/integrations/arrow-core-serialization/src/commonMain/kotlin/arrow/core/serialization/NonEmptyCollectionSerializers.kt 100.00%
arrow-libs/integrations/arrow-core-serialization/src/commonMain/kotlin/arrow/core/serialization/OptionSerializer.kt 100.00%
arrow-libs/integrations/arrow-core-serialization/src/commonMain/kotlin/arrow/core/serialization/SerializersModule.kt 100.00%
arrow-libs/integrations/arrow-resilience-ktor-client/src/commonMain/kotlin/arrow/resilience/ktor/client/ArrowResilience.kt 0.00%
Total Project Coverage 45.88%

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.

1 participant