1.3.2 → 1.4.0 迁移

预计阅读时间: 1 分钟

1.4.0

迁移说明

  • -native 现已不再使用,因为新版 Kotlin 多平台项目方式可以使用公共构件。这意味着,例如,kotlinx-client-core-native 要替换为 ktor-client-core
  • Maven 用户将无法解析 ktor-client-cio 中的符号,因为它在 1.4.0 中是公共包。可以用 ktor-client-cio-jvm 替代。得益于元数据,Gradle 用户可以使用任何构件。
  • Ktor 现在使用 native-mt 版本的 kotlinx.coroutines 库,因此请考虑检查下所用库版本是否包含 native-mt 后缀。

版本升级

  • Kotlin 1.3.61 -> 1.4.0
  • atomicfu 0.14.2 -> 0.14.4
  • kotlinx.coroutines 1.3.3 -> 1.3.8-native-mt-1.4.0-rc
  • kotlinx.serialization 0.20.0 -> 1.0.0-RC
  • kotlinx.html 0.7.1 -> 0.7.2
  • OkHttp 3.14.2 -> 4.6.0
  • Jetty: 9.4.24.v20191120 -> 9.4.31.v20200723
  • Netty: 4.1.43.Final -> 4.1.44.Final

已知问题

  • KTOR-917 cookie 值编码回归
  • KTOR-919 kotlinx.coroutines 1.3.9 回归。原生平台请考虑使用 1.3.8-native-mt-1.4.0-rc