Skip to content
This repository has been archived by the owner on Jan 18, 2022. It is now read-only.

GDK for Unity Alpha Release 0.3.3

Compare
Choose a tag to compare
@gdk-for-unity-bot gdk-for-unity-bot released this 14 Feb 16:10
19800e2

In this release, we've added support for the cn-production environment, upgraded to the latest Worker SDK 14.4.1, and introduced a public toolkit for writing code generators.

The GDK will automatically generate valid run configurations for the code generator that work with Jetbrains Rider, Visual Studio, and the dotnet CLI. This means that you no longer need to keep the Unity Editor constantly open to iterate on generators.

We've also fixed a couple of annoying code generator issues, and a bug where build targets not marked as required weren't actually skipped if the user did not have the build support installed.

There are a few breaking changes in this release, so please follow the upgrade guide to resolve any issues.

Keep giving us your feedback and/or suggestions! Check out our Discord, our forums, or here in the Github issues!

See the full release notes below! 👇


Breaking Changes

  • Your generated code Assembly Definition file now needs to have allow unsafe code selected to compile. #1255
  • The RedirectedProcess.WithArgs API will now concatenate arguments, instead of replacing the previously provided arguments. #1260
  • Building for Android clients now requires the Android NDK to be installed and configured on your machine. #1265
  • Renamed AndroidLaunchUtils to AndroidUtils, and iOSLaunchUtils to iOSUtils. #1269

Added

  • Added public toolkit for writing code generators. #1240 #1243 #1244 #1245 #1250
  • Added support for the cn-production environment.
  • Added RedirectedProcess.Spatial wrapper for calling the spatial CLI. This wrapper automatically uses the current project environment. #1260
  • Added generation of code generator run configurations for Jetbrains Rider, Visual Studio, and the dotnet CLI. #1256
    • This means you no longer need to keep the Unity Editor constantly open to iterate on generators.
  • The code generator now logs an error when an input schema source directory does not exist. #1256

Changed

  • Upgrade to Worker SDK v14.4.0. #1260
    • The Raknet, Tcp, and Kcp network protocols have been deprecated. Please use ModularKcp and ModularTcp instead.
    • ModularUdp has been renamed to ModularKcp.
  • Changed the Worker SDK package installed for iOS. #1268
    • Changed c-static-fullylinked-arm-clang-ios to c-static-arm-clang-ios.
    • Changed c-static-fullylinked-x86_64-clang-ios to c-static-x86_64-clang-ios.
  • Upgrade to Worker SDK v14.4.1. #1274

Fixed

  • Fixed a bug where build targets which were not marked as required were not skipped if the user did not have the build support installed. #1257
  • Fixed a bug where code generation would fail due to dotnet new failing to run. #1262
  • Fixed a bug where schema_compiler errors would be swallowed by the code generator. These should now appear in the Unity Editor and the log file as expected. #1266

Internal

  • Implemented a new CodeWriter in the code generator which provides a fluent interface for generating C# code. #1237
    • The CodeGenerationLib has been migrated to the new CodeWriter.
  • Added support for defining namespaces, structs, classes, enums and methods in the new CodeWriter. #1239
  • Ported test-project to new CodeWriter. #1241
  • Ported build system module to new CodeWriter. #1242
  • Ported gameobject creation module to new CodeWriter. #1247
  • Ported core module to new CodeWriter. #1247 #1248 #1249 #1251 #1252 #1253
  • Removed all Text Template Transformation Toolkit (T4) references and dependencies. #1254
  • Simplified dirtyBits logic and code generation #1255
  • The DeploymentLauncher now uses Platform SDK v14.4.0. #1260
  • init.sh and init.ps1 now support the --china and -china flag respectively to download from the cn-production environment. #1261
  • Simplified code generation for Command classes and relevant interfaces. #1263
  • Added --force flag to the CodeGenerator project to skip the dirty checks and re-generate everything. #1263
  • Added the targetiOSSdk commandline argument for CI builds for selecting either device or simulator target when building iOS. #1269