Pragma Engine 0.0.33


Features #

  • Fixed a bug with the Multiplay Capacity Provider building the uuid parameter incorrectly
  • Fixed a bug where in a rare case, the platform would stop processing all incoming messages.
  • UnitySDK: Fixed a bug where the SDK was sending an extra character in the auth header that was ignored by previous versions of ktor.

Integration Notes #

  • Intellij IDE must be updated to at least 2021.2.1, and the Intellij Kotlin plugin updated to at least 1.5.21 (kotlin release notes)
  • The version of Kotlin has been updated to 1.5.21. This introduces a few deprecations:
    • toLowerCase() → lowercase()
    • toUpperCase() → uppercase()
    • capitalize() → .replaceFirstChar { it.uppercase() }
    • uncapitalize() → .replaceFirstChar { it.lowercase() }
    • .sumBy() → .sumOf()
  • The version of kotlinx-coroutines has been updated to 1.5.1. This introduces a few deprecations:
    • Channel.poll() -> Channel.tryReceive().onClosed { result -> if (result != null) throw result }.getOrNull()
  • The version of Ktor has been updated to 1.6.2. This introduces a few deprecations:
    • @KtorExperimentalAPI can be removed
    • httpClient calls will now throw a ClientRequestException exception when the request is not a 200 OK
  • Any references to KTor HeaderBuilder will need a suppression annotation added:

Deprecation #

  • generateAnyProto() has been removed from the test factory helpers. Use generateProto() instead (or create a tailored test factory for your proto)
  • The command line arguments social-configuration-filepaths and game-configuration-filepaths will be removed. Use configuration-filepaths instead. See platform/TemplatePragmaConfig.yml for an example of the new config file format.
  • The 3-apps/server module will be removed August 7.