Releases: stuebingerb/KGraphQL
Releases · stuebingerb/KGraphQL
0.36.0
Breaking Changes
- fix!: validate fragment usage by @stuebingerb in #428
Queries with unused fragments now result in an error
What's Changed
- fix(deps): update dependency ch.qos.logback:logback-classic to v1.5.20 by @renovate[bot] in #429
- chore(deps): update dependency org.jetbrains.kotlinx.kover to v0.9.3 by @renovate[bot] in #422
- fix: allow nullable variables when location has default by @stuebingerb in #427
- docs: document error handling by @stuebingerb in #430
- fix(deps): update dependency org.jetbrains.kotlin:kotlin-gradle-plugin to v2.2.21 by @renovate[bot] in #432
- chore(deps): update dependency org.jetbrains.kotlin.jvm to v2.2.21 by @renovate[bot] in #431
- chore(deps): update GraphiQL playground by @stuebingerb in #433
- chore(deps): update gradle to v9.2.0 by @renovate[bot] in #436
- feat: use JsonNodeFactory from configured objectMapper by @stuebingerb in #438
- fix(deps): update jackson monorepo to v2.20.1 by @renovate[bot] in #439
- feat: add ktor error handler by @grumpy-programmer in #437
- fix(deps): update junit-framework monorepo to v6.0.1 by @renovate[bot] in #440
- chore(deps): update dependency mkdocs-material to v9.6.23 by @renovate[bot] in #441
- test: extend StitchedSchemaExecutionTest by @stuebingerb in #443
- test: rework DataLoaderTest by @stuebingerb in #442
- refactor: improve stitched schema execution by @stuebingerb in #444
- feat: improve error handling during schema compilation by @stuebingerb in #445
- fix(deps): update ktor monorepo to v3.3.2 by @renovate[bot] in #446
- fix!: validate fragment usage by @stuebingerb in #428
- fix(deps): update dependency ch.qos.logback:logback-classic to v1.5.21 by @renovate[bot] in #448
- chore(deps): update dependency mkdocs-material to v9.7.0 by @renovate[bot] in #449
- fix(deps): update dependency com.vanniktech.maven.publish:com.vanniktech.maven.publish.gradle.plugin to v0.35.0 by @renovate[bot] in #450
- chore(deps): update dependency pymdown-extensions to v10.17.1 by @renovate[bot] in #451
- fix(deps): update dependency io.kotest:kotest-assertions-core to v6.0.5 by @renovate[bot] in #456
- chore(deps): update actions/checkout digest to 93cb6ef by @renovate[bot] in #455
- chore(deps): update gradle to v9.2.1 by @renovate[bot] in #454
- build: add ktlint by @stuebingerb in #453
- chore(deps): update actions/checkout action to v6 by @renovate[bot] in #457
- feat: provide proper node path by @stuebingerb in #458
- chore(deps): update actions/setup-python digest to 83679a8 by @renovate[bot] in #460
- chore(deps): update dependency pymdown-extensions to v10.17.2 by @renovate[bot] in #464
- feat: support generic input types by @MineKing9534 in #465
- fix(deps): update ktor monorepo to v3.3.3 by @renovate[bot] in #462
- ci: run test workflows on pull_request by @stuebingerb in #466
- fix: enhance support for remote schemas by @stuebingerb in #463
- test: rework DataLoaderTest by @stuebingerb in #467
- feat: support specifiedBy for scalars by @stuebingerb in #468
New Contributors
- @grumpy-programmer made their first contribution in #437
- @MineKing9534 made their first contribution in #465
Full Changelog: 0.35.0...0.36.0
0.35.0
Breaking Changes
- refactor!: remove plugins configuration by @stuebingerb in #380
Schema configuration allowed to providepluginsfor apparently some (unused) form of Ktor integration. This option has been removed. - feat!: support dataProperty with ParallelRequestExecutor by @stuebingerb in #305
Adds proper handling fordataPropertiestoParallelRequestExecutorand gets rid ofDataLoaderPreparedRequestExecutor, along with the option to configure the request executor inSchemaConfigurationand relatedDataLoaderPreparedRequestExecutor-specific options.
Highlights
- feat: handle enums automatically by @stuebingerb in #408
Enums are now automatically discovered, similar to regular types. This lowers the entry barrier for new users and simplifies schema definition.
What's Changed
- chore(deps): update amannn/action-semantic-pull-request action to v6.1.1 by @renovate[bot] in #373
- chore(deps): update dependency mkdocs-material to v9.6.18 by @renovate[bot] in #374
- fix(deps): update dependency io.kotest:kotest-assertions-core to v6.0.1 by @renovate[bot] in #377
- chore(deps): update actions/upload-pages-artifact action to v4 by @renovate[bot] in #376
- feat: support request document caching by @stuebingerb in #375
- ci: ignore JMH and test fixtures for coverage by @stuebingerb in #378
- test: add tests for schema configuration by @stuebingerb in #379
- refactor!: remove plugins configuration by @stuebingerb in #380
- fix(deps): update dependency com.sksamuel.aedile:aedile-core to v3.0.1 by @renovate[bot] in #381
- fix(deps): update jackson monorepo to v2.20.0 by @renovate[bot] in #382
- fix(deps): update dependency io.kotest:kotest-assertions-core to v6.0.2 by @renovate[bot] in #383
- chore(deps): update actions/setup-python action to v6 by @renovate[bot] in #385
- chore(deps): update codecov/codecov-action digest to 5a10915 by @renovate[bot] in #386
- chore(deps): update gradle/actions digest to ed40850 by @renovate[bot] in #389
- chore(deps): update dependency org.jetbrains.kotlinx.kover to v0.9.2 by @renovate[bot] in #393
- chore(deps): update gradle to v9.1.0 by @renovate[bot] in #394
- chore(deps): update dependency mkdocs-material to v9.6.20 by @renovate[bot] in #387
- fix(deps): update dependency com.h2database:h2 to v2.4.240 by @renovate[bot] in #396
- fix(deps): update dependency io.kotest:kotest-assertions-core to v6.0.3 by @renovate[bot] in #388
- fix(deps): update ktor monorepo to v3.3.0 by @renovate[bot] in #392
- chore: remove some unused stuff by @stuebingerb in #397
- chore(deps): update kotlin to v2.2.20 by @renovate[bot] in #390
- feat!: support dataProperty with ParallelRequestExecutor by @stuebingerb in #305
- chore(deps): update gradle/actions digest to 748248d by @renovate[bot] in #398
- fix(deps): update junit-framework monorepo to v6 (major) by @renovate[bot] in #400
- fix(deps): update dependency ch.qos.logback:logback-classic to v1.5.19 by @renovate[bot] in #402
- chore(deps): update dependency mkdocs-material to v9.6.21 by @renovate[bot] in #403
- chore(deps): update gradle/actions action to v5 by @renovate[bot] in #405
- feat: handle enums automatically by @stuebingerb in #408
- chore(deps): update python docker tag to v3.14.0 by @renovate[bot] in #409
- fix: merge selection sets for the same object on top level by @stuebingerb in #407
- chore(deps): update python:3.14.0-alpine3.22 docker digest to 9c32c2f by @renovate[bot] in #411
- chore(deps): update python:3.14.0-alpine3.22 docker digest to e1a5672 by @renovate[bot] in #412
- fix(deps): update ktor monorepo to v3.3.1 by @renovate[bot] in #410
- chore(deps): update python:3.14.0-alpine3.22 docker digest to 8373231 by @renovate[bot] in #415
- fix: fix incorrect descriptions in SDL by @stuebingerb in #416
- fix(deps): update dependency io.kotest:kotest-assertions-core to v6.0.4 by @renovate[bot] in #418
- chore(deps): update dependency mkdocs-material to v9.6.22 by @renovate[bot] in #420
- fix(deps): update dependency org.jetbrains.dokka:org.jetbrains.dokka.gradle.plugin to v2.1.0 by @renovate[bot] in #421
Full Changelog: 0.34.0...0.35.0
0.34.0
What's Changed
- chore(deps): update gradle/actions digest to 017a9ef by @renovate[bot] in #344
- chore(deps): update dependency gradle to v9 by @renovate[bot] in #343
- chore(deps): update python docker tag to v3.13.6 by @renovate[bot] in #346
- fix(deps): update dependency com.zaxxer:hikaricp to v7.0.1 by @renovate[bot] in #347
- chore(deps): update github/codeql-action digest to 76621b6 by @renovate[bot] in #345
- chore(deps): update actions/checkout digest to 08eba0b by @renovate[bot] in #348
- chore(deps): update actions/checkout action to v5 by @renovate[bot] in #349
- ci: remove custom CodeQL action by @stuebingerb in #351
- feat: allow single parameter transformations by @stuebingerb in #350
- chore(deps): update python:3.13.6-alpine3.22 docker digest to c28add7 by @renovate[bot] in #353
- feat: add ID scalar by @stuebingerb in #352
- chore(deps): update python:3.13.6-alpine3.22 docker digest to 97990f8 by @renovate[bot] in #354
- refactor: cleanup code by @stuebingerb in #355
- chore(deps): update python:3.13.6-alpine3.22 docker digest to af1fd7a by @renovate[bot] in #356
- chore(deps): update amannn/action-semantic-pull-request action to v6 by @renovate[bot] in #357
- fix(deps): update dependency org.jetbrains.kotlin:kotlin-gradle-plugin to v2.2.10 by @renovate[bot] in #359
- chore(deps): update dependency org.jetbrains.kotlin.jvm to v2.2.10 by @renovate[bot] in #358
- chore(deps): update dependency mkdocs-material to v9.6.17 by @renovate[bot] in #360
- chore(deps): update python docker tag to v3.13.7 by @renovate[bot] in #361
- chore(deps): update python:3.13.7-alpine3.22 docker digest to 9ba6d8c by @renovate[bot] in #363
- chore(deps): update amannn/action-semantic-pull-request action to v6.1.0 by @renovate[bot] in #364
- refactor: improve type name validation by @stuebingerb in #365
- test: add test for missing fragments by @stuebingerb in #366
- fix(deps): update dependency com.zaxxer:hikaricp to v7.0.2 by @renovate[bot] in #367
- chore(deps): update codecov/codecov-action digest to fdcc847 by @renovate[bot] in #368
- fix(deps): update dependency io.kotest:kotest-assertions-core to v6 by @renovate[bot] in #362
- test: add test coverage for some issues by @stuebingerb in #369
- build: enable gradle configuration cache by @stuebingerb in #370
- fix: missing validation on input objects by @stuebingerb in #372
Full Changelog: 0.33.0...0.34.0
0.33.0
Highlights
- feat: property transformation to different type by @stuebingerb in #322
Allows property transformation to change the return type. This allows to e.g. make nullable properties non-nullable in the response, or change the type to something completely different.
What's Changed
- chore(deps): update github/codeql-action digest to 181d5ee by @renovate[bot] in #315
- chore(deps): update dependency mkdocs-material to v9.6.15 by @renovate[bot] in #316
- fix(deps): update ktor monorepo to v3.2.1 by @renovate[bot] in #317
- fix(deps): update junit-framework monorepo to v5.13.3 by @renovate[bot] in #319
- chore(deps): update dependency gradle to v8.14.3 by @renovate[bot] in #318
- chore(deps): update plugin org.jetbrains.kotlinx.binary-compatibility-validator to v0.18.1 by @renovate[bot] in #320
- docs: add codecov badge by @stuebingerb in #326
- fix(deps): update ktor monorepo to v3.2.2 by @renovate[bot] in #324
- fix(deps): update dependency com.vanniktech.maven.publish:com.vanniktech.maven.publish.gradle.plugin to v0.34.0 by @renovate[bot] in #325
- test: add test coverage for data loaders by @stuebingerb in #327
- feat: property transformation to different type by @stuebingerb in #322
- docs: enhance documentation by @stuebingerb in #323
- chore(deps): update python:3.13.5-alpine docker digest to d005934 by @renovate[bot] in #328
- chore(deps): update python:3.13.5-alpine docker digest to 610020b by @renovate[bot] in #329
- chore(deps): update python:3.13.5-alpine3.22 docker digest to 37b14db by @renovate[bot] in #330
- fix(deps): update dependency com.sksamuel.aedile:aedile-core to v3 by @renovate[bot] in #332
- fix(deps): update jackson monorepo to v2.19.2 by @renovate[bot] in #331
- fix(deps): update dependency com.zaxxer:hikaricp to v6.3.1 by @renovate[bot] in #333
- fix(deps): update junit-framework monorepo to v5.13.4 by @renovate[bot] in #334
- chore(deps): update github/codeql-action digest to d6bbdef by @renovate[bot] in #335
- chore(deps): update github/codeql-action digest to 4e828ff by @renovate[bot] in #336
- fix(deps): update dependency com.zaxxer:hikaricp to v6.3.2 by @renovate[bot] in #337
- chore(deps): update dependency mkdocs-material to v9.6.16 by @renovate[bot] in #338
- chore(deps): update dependency pymdown-extensions to v10.16.1 by @renovate[bot] in #339
- fix(deps): update dependency com.zaxxer:hikaricp to v7 by @renovate[bot] in #340
- fix(deps): update ktor monorepo to v3.2.3 by @renovate[bot] in #341
- chore(deps): update github/codeql-action digest to 51f7732 by @renovate[bot] in #342
Full Changelog: 0.32.0...0.33.0
0.32.0
Breaking Changes
- refactor!: remove deprecated GraphQLError properties by @stuebingerb in #279
Cleans upGraphQLError - fix!: prevent duplicate object fields by @stuebingerb in #293
Ensures that all fields of an Object type have unique names
What's Changed
- fix(deps): update junit5 monorepo to v5.13.0 by @renovate in #276
- chore(deps): update python:3.13.3-alpine docker digest to a94caf6 by @renovate in #277
- fix: explicit error handling for variable deserialization by @stuebingerb in #278
- refactor!: remove deprecated GraphQLError properties by @stuebingerb in #279
- refactor: replace SuspendCache with aedile wrapper by @stuebingerb in #280
- chore(deps): update github/codeql-action digest to fca7ace by @renovate in #281
- fix(deps): update dependency com.sksamuel.aedile:aedile-core to v2.1.2 by @renovate in #282
- chore(deps): update python docker tag to v3.13.4 by @renovate in #283
- chore(deps): update dependency gradle to v8.14.2 by @renovate in #284
- fix(deps): update junit5 monorepo to v5.13.1 by @renovate in #285
- chore(deps): update github/codeql-action digest to ce28f5b by @renovate in #286
- chore(deps): update gradle/actions digest to ac638b0 by @renovate in #287
- fix(deps): update ktor monorepo to v3.2.0 by @renovate in #288
- chore(deps): update python docker tag to v3.13.5 by @renovate in #289
- fix(deps): update jackson monorepo to v2.19.1 by @renovate in #290
- fix: fix variable input coercion for numbers by @stuebingerb in #291
- refactor: cleanup Lexer and Parser a bit by @stuebingerb in #292
- fix!: prevent duplicate object fields by @stuebingerb in #293
- refactor: restructure some tests by @stuebingerb in #296
- chore(deps): update dependency pymdown-extensions to v10.16 by @renovate in #303
- fix(deps): update dependency com.vanniktech.maven.publish:com.vanniktech.maven.publish.gradle.plugin to v0.33.0 by @renovate in #306
- fix(deps): update junit.jupiter to v5.13.2 by @renovate in #309
- chore(deps): upgrade graphiql by @citywalki in #311
- chore(deps): update github/codeql-action digest to 39edc49 by @renovate in #312
- chore(deps): update plugin org.jetbrains.kotlinx.binary-compatibility-validator to v0.18.0 by @renovate in #310
- chore(deps): update kotlin to v2.2.0 by @renovate in #307
- fix(deps): update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.9.0 by @renovate in #313
- refactor: minor cleanup by @stuebingerb in #314
New Contributors
- @citywalki made their first contribution in #311
Full Changelog: 0.31.0...0.32.0
0.31.0
What's Changed
- fix: fix coercion for Long and Short by @stuebingerb in #275
- chore(deps): update gradle/actions digest to 8379f6a by @renovate in #274
Full Changelog: 0.30.0...0.31.0
0.30.0
Highlights
- feat: Allow property renaming by @stuebingerb in #251
Existing (Kotlin) properties of objects and input objects can now be renamed via DSL
Breaking Changes
- feat!: Automatic input type naming by @stuebingerb in #252
To avoid equal names between input and query types, input types now get an automated"Input"suffix unless their name already ends with"Input"or they have explicit configuration in the DSL viainputType {}. - fix!: Prevent illegal type and field names by @stuebingerb in #255
Reworks type and field name validation to align closer with the spec
What's Changed
- refactor: Reduce code duplication in schema compilation by @stuebingerb in #244
- fix: Prevent illegal names with stitching by @stuebingerb in #245
- chore(deps): update actions/setup-python digest to a26af69 by @renovate in #246
- fix(deps): update jackson monorepo to v2.19.0 by @renovate in #248
- chore(deps): update dependency gradle to v8.14 by @renovate in #249
- chore(deps): update dependency pymdown-extensions to v10.15 by @renovate in #250
- refactor: Make variables work with ValueNodes by @stuebingerb in #247
- feat: Allow property renaming by @stuebingerb in #251
- feat!: Automatic input type naming by @stuebingerb in #252
- fix!: Prevent illegal type and field names by @stuebingerb in #255
- fix(deps): update ktor monorepo to v3.1.3 by @renovate in #254
- build: Add explicit permissions to workflows by @stuebingerb in #256
- chore(deps): update dependency mkdocs-material to v9.6.13 by @renovate in #258
- chore(deps): update python:3.13.3-alpine docker digest to 452682e by @renovate in #257
- build: Add artifact validation by @stuebingerb in #259
- chore(deps): update kotlin to v2.1.21 by @renovate in #260
- chore(deps): update dependency mkdocs-material to v9.6.14 by @renovate in #262
- fix(deps): update kotlinx.benchmark to v0.4.14 by @renovate in #264
- fix(deps): update dependency com.vanniktech.maven.publish:com.vanniktech.maven.publish.gradle.plugin to v0.32.0 by @renovate in #265
- refactor: Replace hamcrest+kluent with kotest by @stuebingerb in #263
- chore: Add PR title validation by @stuebingerb in #266
- style: Add static code analysis via detekt by @stuebingerb in #267
- chore(deps): update plugin org.gradle.toolchains.foojay-resolver-convention to v1 by @renovate in #269
- chore(deps): update dependency gradle to v8.14.1 by @renovate in #271
- build: update jvmToolchains by @stuebingerb in #270
- docs: fix CodeQL badge by @stuebingerb in #272
- ci: exclude test fixtures from publication by @stuebingerb in #273
Full Changelog: 0.29.0...0.30.0
0.29.0
What's Changed
- docs: Add stitching to navigation by @stuebingerb in #227
- docs: Rearrange links by @stuebingerb in #228
- fix(deps): update kotlinx-coroutines monorepo to v1.10.2 by @renovate in #229
- chore(deps): update python docker tag to v3.13.3 by @renovate in #230
- chore(deps): update python:3.13.3-alpine docker digest to 18159b2 by @renovate in #231
- fix(deps): update exposed to v0.61.0 by @renovate in #232
- chore(deps): update plugin org.gradle.toolchains.foojay-resolver-convention to v0.10.0 by @renovate in #233
- fix(deps): update junit5 monorepo to v5.12.2 by @renovate in #234
- chore(deps): update dependency mkdocs-material to v9.6.12 by @renovate in #239
- fix: Improve handling of input types by @stuebingerb in #238
- feature: Allow arbitrary error extensions by @stuebingerb in #241
- fix: Fix remote error extensions by @stuebingerb in #240
Full Changelog: 0.28.0...0.29.0
0.28.0
Highlights
- feat: First support for schema stitching by @stuebingerb in #195
This release introduces experimental support for schema stitching in the newkgraphql-ktor-stitchedartifact. Schema stitching allows to combine multiple GraphQL schemas into a single, unified schema. This can be useful when implementing an integration layer for a frontend that orchestrates multiple backend APIs to provide your UI with all the required data in a single request, without having to think about CORS.
What's Changed
- build: Prepare version 0.28.0 by @stuebingerb in #188
- chore(deps): update dependency mkdocs-material to v9.6.2 by @renovate in #189
- fix(deps): update exposed to v0.59.0 by @renovate in #191
- chore(deps): update dependency mkdocs-material to v9.6.3 by @renovate in #194
- chore(deps): update python docker tag to v3.13.2 by @renovate in #193
- chore(deps): update dependency mkdocs-material to v9.6.4 by @renovate in #197
- fix(deps): update ktor monorepo to v3.1.0 by @renovate in #196
- chore(deps): update python:3.13.2-alpine docker digest to 2c39ec9 by @renovate in #198
- chore(deps): update python:3.13.2-alpine docker digest to 323a717 by @renovate in #199
- chore(deps): update dependency mkdocs-material to v9.6.5 by @renovate in #200
- fix(deps): update dependency org.junit.jupiter:junit-jupiter-api to v5.12.0 by @renovate in #201
- fix(deps): update ktor monorepo to v3.1.1 by @renovate in #202
- chore(deps): update dependency gradle to v8.13 by @renovate in #203
- fix(deps): update dependency ch.qos.logback:logback-classic to v1.5.17 by @renovate in #204
- chore(deps): update dependency mkdocs-material to v9.6.6 by @renovate in #206
- fix(deps): update jackson monorepo to v2.18.3 by @renovate in #205
- fix(deps): update exposed to v0.60.0 by @renovate in #208
- chore(deps): update dependency mkdocs-material to v9.6.7 by @renovate in #207
- fix(deps): update dependency com.vanniktech.maven.publish:com.vanniktech.maven.publish.gradle.plugin to v0.31.0 by @renovate in #209
- feat: Add binary compatibility validation by @stuebingerb in #210
- chore(deps): update dependency mkdocs-material to v9.6.8 by @renovate in #211
- fix(deps): update junit5 monorepo to v5.12.1 by @renovate in #212
- chore(deps): update dependency mkdocs-material to v9.6.9 by @renovate in #213
- fix(deps): update dependency ch.qos.logback:logback-classic to v1.5.18 by @renovate in #214
- chore(deps): update kotlin to v2.1.20 by @renovate in #215
- fix(deps): update dependency org.jetbrains.kotlin:kotlin-gradle-plugin to v2.1.20 - autoclosed by @renovate in #216
- fix(deps): update dependency com.zaxxer:hikaricp to v6.3.0 by @renovate in #217
- chore(deps): update actions/setup-python digest to 8d9ed9a by @renovate in #218
- chore(deps): update gradle/actions digest to 06832c7 by @renovate in #219
- fix(deps): update ktor monorepo to v3.1.2 by @renovate in #220
- chore(deps): update dependency mkdocs-material to v9.6.10 by @renovate in #221
- chore(deps): update dependency mkdocs-material to v9.6.11 by @renovate in #222
- fix(deps): update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.8.1 by @renovate in #223
- feat: First support for schema stitching by @stuebingerb in #195
Full Changelog: 0.27.0...0.28.0
0.27.0
What's Changed
- build: Prepare version 0.27.0 by @stuebingerb in #163
- docs: Enhance docs by @stuebingerb in #162
- chore(deps): update dependency mkdocs-material to v9.5.50 by @renovate in #165
- fix(deps): update dependency com.github.ben-manes.caffeine:caffeine to v3.2.0 by @renovate in #164
- chore(deps): update dependency pymdown-extensions to v10.14.1 by @renovate in #168
- fix: Fix set input arguments by @stuebingerb in #170
- chore(deps): update plugin com.github.ben-manes.versions to v0.52.0 by @renovate in #172
- chore(deps): update dependency gradle to v8.12.1 by @renovate in #173
- chore(deps): update python:3.13.1-alpine docker digest to f9d772b by @renovate in #175
- build: use v2 of the official dokka gradle plugin by @mervyn-mccreight in #177
- test(benchmark): make benchmarks runnable by @mervyn-mccreight in #174
- chore(deps): update actions/setup-python digest to 4237552 by @renovate in #180
- chore(deps): update dependency pymdown-extensions to v10.14.2 by @renovate in #181
- fix(deps): update dependency org.jetbrains.kotlin:kotlin-gradle-plugin to v2.1.10 by @renovate in #178
- chore(deps): update dependency org.jetbrains.kotlin.jvm to v2.1.10 by @renovate in #179
- docs: Update limitations of DataLoaderPrepared executor by @stuebingerb in #182
- refactor: Back to actual types (2) by @stuebingerb in #184
- chore(deps): update dependency mkdocs-material to v9.6.1 by @renovate in #186
- chore(deps): update gradle/actions digest to 94baf22 by @renovate in #185
- fix: Sort arguments by name in SDL by @stuebingerb in #183
- chore(deps): update dependency pymdown-extensions to v10.14.3 by @renovate in #187
Full Changelog: 0.26.0...0.27.0