Skip to content

Latest commit

 

History

History
47 lines (25 loc) · 3.3 KB

File metadata and controls

47 lines (25 loc) · 3.3 KB

Overview

CompileScope is compilation pipeline intelligence for the Unity Editor. It measures per-assembly compile times, visualizes your Assembly Definition dependency graph, calculates recompile cascades, and generates ranked recommendations for reducing domain reload time.

CompileScope is Editor-only — there is no Runtime/ assembly, and it has zero effect on any player build.


The Six Tabs

Overview — project health summary, validation status, and recommendation counts in one screen.

Dependencies — a three-pane assembly browser: a grouped, searchable list, detail for the selected assembly, and a Depends On / Referenced By relationship viewer with transitive impact.

Hot Paths — every assembly ranked by cascade score and compile time, the fastest way to find where a compile-time budget is actually going.

Recommendations — five built-in rules evaluated against the live dependency graph, returning a ranked, actionable list.

History — compilation and domain reload history, accumulated automatically with no action required.

About — version, documentation and support links, and diagnostic info for bug reports.

Getting started: Getting Started, then Installation.


Limitations

Dependency graph reflects declared references, not code-level usage. The graph is built from each assembly's .asmdef reference declarations, not from analyzing which types a script actually imports. An assembly that declares a reference it doesn't use still shows that edge — this is exactly what the editor-in-runtime-assembly and general reference-cleanliness checks are for, but the graph shows what's declared, not what's load-bearing.

Editor-reference detection is textual, not a full parse. The "editor code in a runtime assembly" rule scans the first 50 lines of each script for a using UnityEditor line outside an #if UNITY_EDITOR block — it does not parse the C# syntax tree. A fully-qualified UnityEditor.SomeType reference used without a using statement, or a using UnityEditor line appearing after line 50, isn't detected by this check.

Compile time requires at least one real compile. An assembly's Last Compile Time is only populated once it has gone through a real compile while CompileScope was tracking. CompileScope measures Editor domain-reload compile time only — not player build compilation (IL2CPP, scripting backend steps), which is a separate pipeline entirely.

History is local to the machine. Library/ToolsStudio/compilescope/history.json lives under Library/, which most teams exclude from version control — history doesn't sync across team members by default, and older entries are trimmed as new ones accumulate rather than retained indefinitely.

Auto-rebuild is optional, not guaranteed. If Auto-rebuild on compile is disabled in Configuration, the displayed graph can go stale relative to the actual project until Analyse Now is pressed. Only one analysis runs at a time — triggering a new one while one is in progress cancels the in-flight run and starts fresh, rather than queuing.

Report export is Markdown only. There is no PDF, HTML, or JSON export format in this release.


Related