github apollographql/apollo-kotlin v2.5.3

latest releases: v3.8.4, v4.0.0-beta.6, v3.8.3...
3 years ago

Version 2.5.3 is a maintenance release with improvements around codegen, runtime and cache.

Interfaces on interfaces

Version 2.5.3 adds support for GraphQL RFC 373 (interfaces implementing interfaces). This makes sure the codegen understands interfaces implementing other interfaces and can compute the fragments possible types appropriately. It doesn't change the generated code.

Json Content-Type

Version 2.5.3 changes the Content-Type for apollo-runtime-kotlin from "aplication/json; charset=utf-8" to "application/json". This has been confusing spring servers and is the default json content type moving forward. If everything goes well, apollo-runtime will also switch to "application/json" in a future release. Read more in #2883. Many thanks to @vikrama for diving into this and fixing it.

Full Changelog

✨ New

  • [Runtime] Added toString methods to api.Error and api.Error.Location (#2905)
  • [Codegen] Support interface on interface (#2887)

👷‍ Fixes

  • [Normalized Cache] Be more robust to publish errors (#2900)
  • [Multiplatform] Removing deprecated charset=utf-8 from Content-Type header for multiplatform (#2883)
  • [Build scripts] configure the Kotlin compiler option for multiplatform projects (#2877)
  • [Tests] Fix potential case where the tests would wait forever (#2875)
  • [Runtime] Use Okio's base64 implementation (#2870)
  • [Runtime] Allow to store Json custom scalars in cache records (#2859)

📖 Documentation

  • [Docs] Add redirect for /tutorial to the first page of the tutorial in docs (#2898)
  • [Docs] Fix callback blocks (#2873)

❤️ External contributors

Many thanks to @vikrama for fixing the content-type, to @AOrobator for making the Error and Location classes easier to debug, to @ansman for fixing Base64 on old Android versions, to @emmano for improving the documentation and @lwasyl for all the cache investigations!

Don't miss a new apollo-kotlin release

NewReleases is sending notifications on new releases.