v0.1.61
Fixes personal-license activation on older Unity editors
A machine-bound .ulf fails on every ephemeral CI container with Machine bindings don't match. GameCI recovers by activating through the Unity account instead — but on older editors that recovery was itself broken.
--include-personal is now probed, not assumed (#264)
Unity 2020.3.49f1 bundles Unity.Licensing.Client 1.12.1, which has --activate-all, --username and --password but not --include-personal. The fallback passed it unconditionally and died:
Unity.Licensing.Client 1.12.1+9338cad
ERROR(S): Option 'include-personal' is unknown.
... CommandLine.UnknownOptionError ... Exit code was: 33
So the fallback failed on exactly the older editors it existed to rescue. Flags are now read from the client's own --help output rather than inferred from the editor version — the licensing client is versioned independently of the editor that bundles it, so any version comparison would break the moment Unity backports or skips a client release.
Machine-binding mismatches no longer burn the retry budget
That failure is permanent by construction: the .ulf is bound to the machine that generated it. It was being retried because the same activation also emits Access token is unavailable and License activation has failed, both genuinely transient signatures — so the real error was masked and roughly 2.5 minutes of backoff elapsed before reaching the fallback that was going to handle it anyway. It now short-circuits straight there.
Both fixes apply to all four activation scripts (Ubuntu, macOS, and both Windows paths).
If you are hitting this
UNITY_LICENSE (a .ulf) is only appropriate for Enterprise/Industry seats, or a self-hosted runner holding a genuinely matching file. Unity removed manual activation for Personal seats, so for most projects a serial or account activation is the right choice:
env:
UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
UNITY_SERIAL: ${{ secrets.UNITY_SERIAL }}Thanks to @MrGadget1024 and the Mirror project, whose six-version CI matrix surfaced this.
Full changelog: v0.1.60...v0.1.61