Skip to content

feat: Launch Unity with compiler errors or a chosen Editor version#1423

Merged
hatayama merged 3 commits into
v3-betafrom
feat/launch-ignore-compiler-errors
Jun 28, 2026
Merged

feat: Launch Unity with compiler errors or a chosen Editor version#1423
hatayama merged 3 commits into
v3-betafrom
feat/launch-ignore-compiler-errors

Conversation

@hatayama

@hatayama hatayama commented Jun 28, 2026

Copy link
Copy Markdown
Owner

Summary

  • uloop launch can now start Unity even when compiler errors are present when callers opt in with -i or --ignore-compiler-errors.
  • uloop launch can now select a specific installed Unity Editor version with --editor-version without changing the project version file.

User Impact

  • Users and agents can open projects that currently have compiler errors when they need to inspect or repair them in the Editor.
  • Users can launch a project with a chosen installed Editor version for validation or troubleshooting without editing project metadata.

Changes

  • Parse and document the new launch options in help, shell completion, and the launch skill.
  • Pass the Unity Editor -ignorecompilererrors argument only when requested.
  • Resolve the Unity executable from --editor-version before falling back to the project version.
  • Bump dispatcher release metadata for the dispatcher-owned launch command.

Verification

  • go test ./internal/cli
  • scripts/check-go-cli.sh
  • go run ./cmd/check-dispatcher-minimum-version
  • go run ./cmd/check-dispatcher-version-bump --base origin/v3-beta --head HEAD
  • /Users/a12115/dotfiles/.claude/skills/autoreview/scripts/autoreview --mode branch --base origin/v3-beta

hatayama added 2 commits June 28, 2026 20:58
Allow uloop launch to pass Unity Editor's -ignorecompilererrors argument so projects can open even when compiler errors would otherwise block startup.

- Add -i/--ignore-compiler-errors parsing and launch argument construction.
- Document the flag in help, completion, and the launch skill.
Allow uloop launch to select an installed Unity Editor version without changing ProjectVersion.txt, and advance the dispatcher release metadata because launch is handled by the dispatcher.

- Parse and document --editor-version for launch.
- Use the override when resolving the Unity executable path.
- Cover dispatcher-owned launch options before project pin resolution.
@coderabbitai

coderabbitai Bot commented Jun 28, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: ef26692c-09e1-4b91-b3c2-e574de381d16

📥 Commits

Reviewing files that changed from the base of the PR and between 7b82ab3 and 998b759.

📒 Files selected for processing (2)
  • cli/internal/cli/launch.go
  • cli/internal/cli/launch_test.go
🚧 Files skipped from review as they are similar to previous changes (2)
  • cli/internal/cli/launch_test.go
  • cli/internal/cli/launch.go

📝 Walkthrough

Walkthrough

Two new uloop launch CLI flags are added: -i/--ignore-compiler-errors and --editor-version <version>. Launch parsing, Unity execution, completion, help output, docs, and tests are updated, and the dispatcher contract version is bumped to 3.0.1-beta.4.

Changes

New launch flags and launch flow

Layer / File(s) Summary
Launch option parsing and contract
cli/internal/cli/launch.go, cli/internal/cli/launch_options.go
launchOptions gains ignoreCompilerErrors and editorVersion, applyLaunchOption recognizes the new flags, applyLaunchEditorVersionOption parses --editor-version, and printLaunchHelp documents both options.
Launch execution and editor resolution
cli/internal/cli/launch.go
Launch handling rejects --editor-version with an already running Unity process unless --restart is present, resolves the editor version from options or ProjectVersion.txt, builds Unity launch args with -ignorecompilererrors, and resolves the Unity executable from the chosen version.
Completion and dispatcher updates
cli/internal/cli/completion_options.go, cli/dispatcher-contract.json, cli/internal/cli/dispatcher_test.go
nativeCommandOptions includes the new launch flags, dispatcherVersion is bumped to 3.0.1-beta.4, and a dispatcher test verifies the launch flags are handled before project-pin resolution.
Tests and skill documentation
cli/internal/cli/launch_test.go, cli/internal/cli/completion_test.go, cli/internal/cli/help_test.go, Packages/src/Editor/CliOnlyTools~/Launch/Skill/SKILL.md
Launch parsing, argument construction, completion, help, and runtime behavior tests cover the new flags and restart path, and the launch skill documentation adds the new parameters, examples, and notes.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 2.86% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the main change: launching Unity with compiler errors or a selected Editor version.
Description check ✅ Passed The description accurately covers the new launch options, documentation updates, version metadata bump, and verification steps.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/launch-ignore-compiler-errors

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 9 files

Reply with feedback, questions, or to request a fix.

Re-trigger cubic

Comment thread cli/internal/cli/launch.go
Prevent uloop launch from reporting an existing Unity process as ready when --editor-version requests a potentially different Editor version. Users must opt into --restart so the requested version can be applied to a new Editor process.

- Fail fast when --editor-version is used against an already running project without --restart.
- Add a regression test for the existing-process path.
@hatayama hatayama merged commit 5ce43fa into v3-beta Jun 28, 2026
10 checks passed
@hatayama hatayama deleted the feat/launch-ignore-compiler-errors branch June 28, 2026 12:48
This was referenced Jun 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant