Skip to content

Add support for Unity 6.7 LTS (when it releases) #4761

Description

@mhijaziB

Beamable SDK 6.1.0 does not currently compile in Unity 6.6 (6000.6.0f1). A Windows Editor investigation on 2026-09-07 reproduced five SDK compiler errors across two files, preventing Play Mode and further runtime validation.

The immediate compatibility target is the released Unity 6000.6.0f1. Unity classifies 6.6 as a Supported release, not LTS. Preserve the original intent of this ticket: reassess the target if a newer LTS is released before implementation is completed, rather than tying support exclusively to 6.5 or 6.6. Unity's 6.6 announcement.

Confirmed compatibility blocker

Unity rejects Beamable's calls to Object.GetInstanceID() with:

error CS0619: 'Object.GetInstanceID()' is obsolete: 'Use GetEntityId instead.'

Paths below are relative to the installed com.beamable 6.1.0 package:

File Line / column Affected behavior
Editor/Modules/Content/ContentValidationPropertyDrawer.cs 158:37, 192:37 Content-validation cache key creation and invalidation
Editor/UI/ContentWindow/ContentWindow_History.cs 1233:28, 1239:58, 1246:31 Registering, checking, and releasing read-only content-history previews

These are five distinct call sites with one shared API incompatibility. The compiler log repeats them three times; the 15 occurrences are not separate defects.

ValidationCacheKey stores an int object ID, and ContentHistoryInspectorPreview uses HashSet<int>. Migrate both API calls and identity storage to the newer identity type where required, while retaining compatibility with older supported Unity versions. A method rename alone is insufficient; do not truncate the identifier to int. Unity Object.GetEntityId API.

Reproduction and evidence

  • Environment: Windows x64, Unity CLI 1.0.0-beta.6, Unity 6000.6.0f1 revision f7f8ed4d1e24.
  • Upgrade the existing test project from Unity 6000.3.12f1 to 6000.6.0f1 and change com.beamable from 6.0.0-PREVIEW.RC7 to 6.1.0.
  • Allow Unity's normal package migration. Both the project lockfile and installed Beamable package metadata confirmed 6.1.0.
  • Run from the project root:
unity run . --editor-version 6000.6.0f1 --timeout 600 --format json -- -accept-apiupdate -logFile ./Logs/unity-6.6-compatibility.log

Expected: Editor compilation succeeds and the project can enter Play Mode.

Actual: the five CS0619 errors above, followed by Scripts have compiler errors. and process exit code 1. The API updater did not resolve the errors. A second compile run reproduced all five after removing the temporary com.unity.pipeline diagnostic dependency. No SDK fixes were applied.

Licensing/startup diagnostics, graphics warnings, and test-orchestration errors were excluded from the SDK findings. Runtime, authentication, purchasing, player builds, and mobile compatibility remain untested because Editor compilation is blocked. This investigation does not establish which Unity version first introduced the incompatibility.

Remaining compatibility work and acceptance criteria

  • Fix the five object-identity call sites and associated storage, then verify compilation on Unity 6.6 and older supported Editor versions.
  • Validate content-inspector caching/invalidation and content-history preview read-only behavior and cleanup.
  • Investigate the original oAPI-generated serialization concerns, including UAC1009. These were not validated by this blocked run.
  • Validate Addressables compatibility. Beamable declares 1.21.21, but the upgraded test project resolved 2.11.2; successful package resolution does not validate asset loading or builds.
  • Exercise initialization and repeated Play Mode entry/exit with domain reload enabled and disabled. Unity 6.6 defaults new projects to scene-only reload, so static state and cleanup require explicit coverage. Unity release announcement.
  • Complete runtime smoke tests and builds for the platforms included in the support claim; classify and resolve remaining SDK–Unity compatibility errors.
  • Record the tested Editor/package/platform matrix and remaining limitations before declaring support.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions