-
Notifications
You must be signed in to change notification settings - Fork 3
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
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.9.0 #52
Open
renovate
wants to merge
1
commit into
main
Choose a base branch
from
renovate/com.github.ghostdogpr-caliban-2.x
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
January 30, 2023 04:44
e3c84a4
to
5c97647
Compare
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
March 28, 2023 14:26
5c97647
to
d852c31
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.0.2
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.1.0
Mar 28, 2023
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
May 28, 2023 11:38
d852c31
to
4177c50
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.1.0
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.2.1
May 28, 2023
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.2.1
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.3.0
Aug 6, 2023
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
August 6, 2023 12:09
4177c50
to
139adad
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.3.0
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.3.1
Sep 10, 2023
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
September 10, 2023 04:49
139adad
to
615f05e
Compare
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
October 15, 2023 17:12
615f05e
to
1ec51d9
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.3.1
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.4.0
Oct 15, 2023
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
October 20, 2023 15:33
1ec51d9
to
32b435e
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.4.0
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.4.1
Oct 20, 2023
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
November 9, 2023 06:26
32b435e
to
6775d20
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.4.1
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.4.2
Nov 9, 2023
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
November 16, 2023 01:10
6775d20
to
e623858
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.4.2
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.4.3
Nov 16, 2023
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
January 9, 2024 10:29
e623858
to
5143e92
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.4.3
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.5.0
Jan 9, 2024
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
January 16, 2024 14:09
5143e92
to
884a090
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.5.0
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.5.1
Jan 16, 2024
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
February 17, 2024 01:41
884a090
to
8de426f
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.5.1
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.5.2
Feb 17, 2024
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
March 20, 2024 15:18
8de426f
to
3198da8
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.5.2
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.5.3
Mar 20, 2024
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
April 16, 2024 04:35
3198da8
to
38748bb
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.5.3
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.6.0
Apr 16, 2024
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
May 29, 2024 13:38
38748bb
to
4da3130
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.6.0
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.7.0
May 29, 2024
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
June 2, 2024 02:13
4da3130
to
923bfe7
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.7.0
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.7.1
Jun 2, 2024
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
June 20, 2024 04:06
923bfe7
to
593899e
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.7.1
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.7.2
Jun 20, 2024
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
June 28, 2024 06:03
593899e
to
1a38e5c
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.7.2
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.8.0
Jun 28, 2024
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
July 2, 2024 05:05
1a38e5c
to
5a27ea1
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.8.0
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.8.1
Jul 2, 2024
renovate
bot
force-pushed
the
renovate/com.github.ghostdogpr-caliban-2.x
branch
from
September 24, 2024 11:34
5a27ea1
to
ac2a755
Compare
renovate
bot
changed the title
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.8.1
chore(deps): update dependency com.github.ghostdogpr:caliban to v2.9.0
Sep 24, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
None yet
0 participants
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
2.0.1
->2.9.0
Release Notes
ghostdogpr/caliban (com.github.ghostdogpr:caliban)
v2.9.0
Compare Source
Release Notes
This release brings a few interesting features, such as support for the
@stream
directive, alongside a new batch of performance improvements. Note that the@stream
addition caused some changes that impact the@defer
directive usage as well.The
QuickAdapter
now depends on the long-awaited stable 3.0.x version of zio-http, which means no more binary compatibility issues between releases.Finally, one noticeable change is that we are now using jsoniter internally to encode and decode GraphQL requests and responses, which means you don't need to depend and import one of the
tapir-json
libraries anymore.New features
@stream
directive by @paulpdaniels in https://github.com/ghostdogpr/caliban/pull/2309jsoniter
a required dependency and use it for enc/dec in tapir adapters by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2341Bug fixes
ArgBuilder
derivation for case classes containing only optional fields by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2408Performance improvements
GraphQLRequest
to identify GET requests by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2329Function0
allocations by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2366Field#allFieldsUniqueNameAndCondition
by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2368Important dependency upgrades
v2.8.1
Compare Source
Release Notes
This small release fixes a couple issues related to the
@oneOf
introduction in 2.8.0.Bug fixes
ArgBuilder
derivation when input is a value type by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2323oneOf
inputs and added fallback to parent type annotations for@GQLOneOfInput
by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2322Performance improvements
v2.8.0
Compare Source
Release Notes
This release brings a long-awaited feature:
@oneOf
inputs, based on this RFC which is almost finalized and already implemented in several libraries in other languages. This allows you to use ADTs as input parameters:This will generate the following schema, and the validation will verify that only one of those fields is provided in incoming queries.
This release also includes a few breaking changes that should impact a very low amount of users, but here they are just in case:
Validator.prepare
convertHttpStreamingEndpoint
/convertHttpEndpointToFuture
HttpInterpreter
/WebSocketInterpreter
). If you hadRequestInterceptor
before, you can use zio-httpMiddleware
instead.GraphQL#interpreter
) that returned aZIO
now return anExit
, which is a subtype ofZIO
that you can convert to anEither
orOption
without needing to run theZIO
New features
@oneOf
inputs for both server and client by @kyri-petrou in #1846 #2294Bug fixes
@GQLField
methods by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2305Performance improvements
caliban-zio-http
to depend oncaliban-quick
by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2287Either
instead ofZPure
inValidator
/VariableCoercer
by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2310Exit
for methods in Pagination by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2298Either
instead ofZIO
for methods that don't require it by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2292Code cleanup
Validator.prepare
by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2291zio-prelude
by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2314v2.7.2
Compare Source
Release Notes
This release contains a few bug fixes and performance improvements.
Bug fixes
Nothing
as routes error type by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2264Performance improvements
QuickAdapter#runServer
by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2288Field
creation when the SelectionSet doesn't contain fragments by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2280AtomicReference
instead ofRef
in theExecutor
by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2277allFieldsMap
private on __Type and use an accessor method by @kyri-petrou in https://github.com/ghostdogpr/caliban/pull/2279Important dependency upgrades
v2.7.1
Compare Source
Release Notes
This release contains a couple bug fixes and a small addition.
New features
Schema
andArgBuilder
for zio-json'sJson
#2260 by @paulpdanielsBug fixes
ExcludeArgument
transformer so that it doesn't exclude non-nullable arguments #2257 by @kyri-petrouv2.7.0
Compare Source
Release Notes
This release contains several new features as well as a few performance improvements.
Schema transformations
You can now transform types, fields or arguments of an existing
GraphQL
object. This gives you an easy alternative to modifying schemas. You can also implement your own custom transformers.Scala 3 union type derivation
You can now derive schemas from Scala 3 union types, and they will be translated to GraphQL unions:
New features
Schema
for Scala 3 union types #2215 by @oyvindberg@semanticNonNull
directive support #2180 by @XiNiHaPerformance improvements
ZIO.scoped
from APQ wrapper #2214 by @kyri-petrouresolve
performance in Scala 2 derivation #2239 by @ghostdogprParser
#2246 by @kyri-petrouConfigurator
#2250 by @kyri-petrouImportant dependency upgrades
v2.6.0
Compare Source
Release Notes
The highlight of this release is that Websocket support has been added to the
QuickAdapter
(the adapter that's the fastest to use and also provides the best performance). Since this adapter is using zio-http under the hood, we deprecated the existing tapir-basedZHttpAdapter
which you can simply replace by theQuickAdapter
. A small breaking change coming with this change is that we movedWebSocketHooks
to another package and changed the type to describe transformation fromStreamTransformer
toZPipeline
.Apart from that, there are quite a few performance improvements, in particular some coming from zio-query that should make things a lot faster if you use queries with a
DataSource
.New features
caliban-quick
#2150 by @kyri-petrouexcludeDeprecated
option to client code generation #2163 by @jeejeeoneHttpInterpreter
-generated Tapir endpoints #2188 by @olisikhzio.query.Cache
when executing queries by @kyri-petrouinterpreterUnsafe
method toGraphQL
#2160 by @kyri-petrouBug fixes
InputValue.ObjectValue#toString
#2173 by @ghostdogprPerformance improvements
Schema
,ArgBuilder
andExecutor
#2120 by @kyri-petrouzio-query
to get better performance #2177 by @kyri-petrouApolloFederatedTracing
wrapper #2167 by @kyri-petrouImportant dependency upgrades
zio-http
to 3.0.0-RC6 #2159 by @kyri-petrouv2.5.3
Compare Source
Release Notes
This release includes support for subscriptions over Server-Sent Events, as well as a few bug fixes and improvements.
Server
application/graphql-response+json
#2144 by @ghostdogprMixed
query execution mode, where top-level fields are guaranteed to be executed in parallel and nested fields are executed in batched mode #2129 by @kyri-petrouTools
@lazy
directive and the ZIO environment is notAny
#2125 by @develeonv2.5.2
Compare Source
Release Notes
This release includes a new set of performance improvements as well as some usability improvements, in particular for schema code generation. It is fully backward compatible with 2.5.0.
Server
innerThrowable
type for errors raised in ArgBuilders #2118 by @kyri-petrouClient
render
method inCalibanClientError
that can render extensions #2110 by @harrylaouTools
@newtype
for the schema codegen to mapID
to your own types #2091 by @develeon@GQLDeprecated
annotation for deprecated fields #2107 by @johnspadeAny
#2104 by @develeonimplements
#2116 by @ghostdogprv2.5.1
Compare Source
Release Notes
This release brings a bug fix for an issue that was introduced in 2.5.0 and possibly caused duplicated fields in responses when using fragments. It is fully backward compatible with 2.5.0.
Server
Document
serialization friendly-ier #2061 by @kyri-petrouFunctionStep
#2059 by @kyri-petrouInterop
InjectEnv
implicit for cats.effect.IO #2062 by @kyri-petrouTools
@lazy
fields with abstract effect #2064 by @johnspadev2.5.0
Compare Source
Release Notes
This release brings an incredible amount of performance improvements, some major library upgrades (zio-http, Play) as well as some powerful new derivation abilities such as deriving fields from case class methods.
Server
apply
method toSchema
andArgBuilder
for convenience #2023 by @kyri-petrouPathValue
type instead ofEither[String, Int]
#2048 by @kyri-petrouAdapters
api.unsafe.runServer
to run a server immediately in theQuickAdapter
#2050 by @kyri-petrouFederation
v2.4.3
Compare Source
Release Notes
This version brings a few bug fixes and improvements related to schema derivation on Scala 3.
In addition to that, it contains a new adapter named
QuickAdapter
and based on zio-http, that serves 2 purposes:Offer the best performance among all adapters. This adapter is not using Tapir under the hood to prevent any overhead. We picked zio-http and jsoniter-scala because they gave the best benchmarks results among all our supported adapters and json libraries. The only drawback is that it doesn't include WebSocket support at the moment. If you care about performance above all, use this adapter!
Be super quick and easy to get started. With this adapter you can simply do that to go from your api to a running server:
Server
QuickAdapter
(see above) #1998 by @kyri-petrouTools
v2.4.2
Compare Source
Release Notes
This version brings a few bug fixes as well as some performance improvements.
Big thanks to @kyri-petrou for his many contributions!
Server
@defer
fields not working as expected when backed by DataSources #1981 by @kyri-petrouTools
v2.4.1
Compare Source
Release Notes
This version fixes a regression introduced in 2.4.0 that prevents the usage of
java.time
types in schemas when using Scala 3 and JDK 17+ (https://github.com/ghostdogpr/caliban/pull/1950).v2.4.0
Compare Source
Release Notes
This version contains:
Server
die
errors happening inside theDataSource
#1916 by @ghostdogprmocking up superclass for module class macros
warning on Scala 3 #1880 by @kyri-petrourender
on a schema #1888 by @nox213CalibanError
(not thatgetCause
will returnnull
inValidationError
) #1924 by @kyri-petrouAdapters
Tools
@lazy
directive to generate side-effecting fields in server code generation #1927 by @oyvindbergFederation
v2.3.1
Compare Source
Release Notes
This version contains important performance improvements as well as support for Pekko.
Server
VariableCoercer
#1856 by @kyri-petrourenderSchema
to render a schema without a resolver #1877 by @ghostdogprAdapters
v2.3.0
Compare Source
Release Notes
This version contains a lot of small fixes as well as performance and usability improvements.
Server
status
label to thegraphql_fields_total
metric #1724 by @SvenWvalidateSchema
#1731 by @ghostdogprSemiAuto
#1785 by @kyri-petroufieldWithArgs
schema generation #1812 by @paulpdanielsAdapters
ServerRequest
inconfigure
#1816 by @ghostdogprTools
isRepeatable
during introspection (disable it if the remote server does not support it) #1732 by @ghostdogprderives Schema.SemiAuto
in schema code generation #1758 by @nox213v2.2.1
Compare Source
Release Notes
This is a tiny release with a single change on
ZHttpAdapter
(#1723). We noticed that the type signatures ofmakeHttpService
andmakeWebSocketService
were inconsistent (the former returnedHttpApp[R, Throwable]
while the latter returnedHttpApp[R, Response]
akaApp[R]
). We've made them both returnApp[R]
, which should be easier to use!v2.2.0
Compare Source
Release Notes
This release brings a few important changes, including a refactor of request interceptors, support for the
@defer
directive and support for Scala Native in caliban-client 🚀Love this project? I am now on Github Sponsors. A good way to give back and encourage future developments! ❤️
New Adapter API
Request interceptors and configuration options such as
skipValidation
orenableIntrospection
have been modified to be more powerful: you can now eliminate part of ZIO environment with request interceptors, and you can modify execution configuration dynamically.These improvements require a small change in existing code. When calling
makeHttpService
,makeHttpUploadService
ormakeWebSocketService
, you now need to wrap your interpreter into (respectively) anHttpInterpreter
,HttpUploadInterpreter
orWebSocketInterpreter
.With these wrapper classes come 2 powerful methods:
configure
takes aConfigurator[R]
which is an alias forURIO[R & Scope, Unit]
.It allows configuring the interpreter by running an effect that will run for each request and that can modify the configuration of the running fiber. Built-in configurators such as
setSkipValidation
,setEnableIntrospection
andsetQueryExecution
are available in theConfigurator
object and let you dynamically change the configuration of the interpreter.intercept
takes anInterceptor[-R1, +R]
which is an alias forZLayer[R1 & ServerRequest, TapirResponse, R]
.It is basically a more powerful version of
configure
that gives you access to the incoming request (ServerRequest
) and lets you modify the environment of the interpreter (fromR
toR1
). A typical use case would be to extract an authentication token from the request and eliminate the authentication requirement from the environment if the token is valid. See an example here. You can also use this to change the configuration based on the incoming request (e.g. allow introspection only when a valid token is present).This change was done in #1707 by @ghostdogpr
Other changes
Server
@defer
directive #1480 by @paulpdanielsscalarSchema
#1694 by @yarianderives ArgBuilder.GenAuto
derivation #1699 by @kyri-petrouderives Schema.Auto
derivation #1666 by @kyri-petrouobjectSchema
#1698 by @yarianClient
Adapters
v2.1.0
Compare Source
Release Notes
This release is packed with features, improvements and fixes. In fact, it is probably the single most important release since Caliban Client was added. It contains several breaking changes, so make to read what follows before upgrading!
Schema derivation
One of the most requested features of Caliban was the ability to opt out from the automatic schema derivation and use a semi-automatic approach where you have to create a schema for each individual type. Automatic schema derivation is convenient when you get started, but can quickly becoming a pain when you have large schemas: slow compilation, large amount of generated code, difficulty finding which types require a custom instance or even knowing which instance is actually used.
We decided to make automatic generation optional using an import. Without this import, you will need to provide an implicit/given schema for each type that is not already supported. We also added support for the
derives
keyword in Scala 3, so that it's super easy to create schemas with the least amount of boilerplate.Here is how derivation work with Scala 3:
Here's how it looks with Scala 2 (also cross-compile with Scala 3):
Note that
ArgBuilder
derivation follows the same pattern (without theR
part) and requires an import if you want auto generation.This change was done in #1591 by @ghostdogpr
Adapters and Json libraries
Historically each adapter was tied to a specific Json library: for example Circe was used for http4s and zio-http, while play-json was the default for play. As we recently introduced support for jsoniter-scala, we found it was quite inconvenient to use it with the existing adapters. So we decided to make the adapters completely free of any Json dependency, so you can use the Json library you want!
All you have to do is adding one of these Tapir dependencies:
And then later in your code (you only need one!):
This change was done in #1552 by @kyri-petrou
Performance improvements
Performance was improved in almost every parts of Caliban: from parsing to validation to execution. Even Caliban Client received some love! Here are the details:
ZPure
instead ofZIO
for validation logic, which improves validation performance greatly #1633 by @paulpdaniels