Comments (6)
I chose ZIO over Cats Effect because it supports explicit errors (no bifunctor in CE), environment and streams, as well as the overall simplicity of a concrete effect type over tagless final.
But it is completely possible that you wrap the main call (execute
) the same way you wrap a Future
, and you can write an instance of Schema
for Monix Task
. As long as you don't mind having both libraries in your classpath (ZIO and Monix), this is totally doable.
If there is interest, I can imagine having a caliban-cats or caliban-monix that does the wrapping work and provide what's needed.
from caliban.
Released 0.1.1 with the cats interop module. Happy people can thank @desbo 😄
from caliban.
Merged 2 related PRs:
- #53 allows using the
GraphQL
class with cats-effectF
instead of ZIO - #56 allows using
Http4sAdapter
with cats-effectF
instead of ZIO
What's missing:
- add an instance of
Schema
forF
- add a documentation page that summarizes all of it and show a full example using Cats IO or Monix
I'll do a release once this is done 😄
from caliban.
Alright, I intend to give this a go next time we need a scala graphql microservice and see how it goes :) Thanks for the cool lib
from caliban.
When handling GraphQL's ExecutionResult/IO[ExecutionResult], ZIO feet more
from caliban.
+1 for caliban-cats. :)
from caliban.
Related Issues (20)
- Full compliance with GraphQL over HTTP spec
- Example shuts down immediately HOT 1
- GraphQL instances get combined incorrectly if one or both root queries are somehow deferred HOT 4
- Codegen: Support union types as scala 3 union types HOT 3
- recursive types + semi-auto derivation + federation does not work HOT 4
- interfaces' field description derived incorrectly HOT 3
- Scala 3 different schema derivation
- `rename` fails when applied to derived recursive schema
- Interfaces are not rendered properly when renamed via `.rename`
- `@defer` fields not working as expected when backed by `DataSource`s
- Scala 3 different schema derivation nested types
- Scala 3 different schema derivation enum names HOT 2
- Scala 3 schema derivation duplicate types in union
- Scala 3 different schema derivation nested enum items missing
- Codegen: Incorrect order of description in server sealed trait generation HOT 1
- Outdated `SchemaReporting` docs
- Allow executing mutations / subscriptions in parallel / batched mode
- Support for IO in the tapir interop adapter HOT 12
- Add an apollo rover template HOT 1
- `SchemaComparison` from `caliban-tools` does not detect changes in base interfaces HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from caliban.