CoreCLR Migration Scanner View on Asset Store (opens in new tab)

Package details

Latest version
1.0
Last updated
First released
Unity version
6000.5.7 or later
Package size
92 KB
Files
23
Views in the past week
7

Price tracking

Last checked
Tracked since
Lowest recorded
$14.99 on

Keywords

CoreCLR Migration Scanner

by CSAF - Core Systems Asset Factory (opens in new tab)

No ratings yet

Find every Mono-dependent construct before Unity 6.8 removes Mono - including inside compiled DLLs you have no source for.

Price $14.99

Buy on Asset Store (opens in new tab)

Affiliate link · Purchases support this site

Price history

Last 6 months

USD
Price history for CoreCLR Migration Scanner, 6 months Current $14.99; lowest $14.99; highest $14.99 in this period. $0 $10 $20 19 Oct 26 Oct 2 Nov

Asset preview

1 / 7

CoreCLR Migration Scanner screenshot 1

CoreCLR Migration Scanner screenshot 1

About this asset

Unity is removing Mono in 6.8.

Unity calls the move to CoreCLR the most significant change to its C# layer in over a decade. Every commercial project has to audit for it, there is a hard deadline, and the official migration guidance is a forum thread. This is that audit, as a tool you run in the editor and in CI.

WHAT IT DOES

Scans every C# file and reflects over every compiled assembly in your project against a 22-rule corpus covering the five categories that break: serialization, threading, assembly loading, reflection and P/Invoke. Each finding tells you why CoreCLR breaks it and what to do about it - the part you cannot get from a grep.

THE COMPILED-ASSEMBLY HALF IS THE REASON TO BUY IT

A text search finds what you wrote. Your real exposure is usually in the plugins you bought, shipped as DLLs, whose vendors may be long gone. There is no source to search, so a source-only audit reports a clean project and you find out at runtime.

This detects platform-invoke methods in compiled assemblies using the CLR's own MethodAttributes.PinvokeImpl metadata flag. That is certainty rather than pattern matching, and it works whether or not the source exists anywhere on earth. Those findings are tagged [compiled assembly].

TRACK THE BURNDOWN

Save a baseline, and every later scan shows the delta against it. "-3 since baseline" is the number a producer reports upward. A cancelled scan is marked cancelled everywhere, because a partial scan finds fewer problems than a complete one and would otherwise read as progress.

CONTINUOUS INTEGRATION

Run it headless with -executeMethod CSAF.CoreCLRScanner.BatchMode.Run. It writes JSON and Markdown, fails the build on a breaking-count budget, and refuses to report a pass on an incomplete scan. Commit the JSON - the diff between two reports is the burndown.

WHAT IT DELIBERATELY DOES NOT DO

Unity ships Project Auditor free and bundled from 6.4 onward, covering domain-reload static state and, since 2.0.0, obsolete API. This does not reimplement either. Run both; they do not overlap. The included readme states the scope limits in full, including the known false negatives - a line-oriented rule carries no type information, and the assembly half reads metadata rather than method bodies.

VERIFIED

Unity 6000.5.7f1. Batch-mode compile with -warnaserror: 0 errors, 0 warnings. 52/52 EditMode tests green, run against a fresh install of the shipped package.

THIRD-PARTY NOTICES

This package contains no third-party assets: no fonts, images, audio, libraries or copied code. Each rule links to the vendor's own documentation (Microsoft Learn, Unity Discussions) for reference only, and those pages are not included. See Third-Party Notices.txt in the package for the full list.

From the publisher's Asset Store listing.

Technical details

Scans C# source AND compiled assemblies. Finds P/Invoke inside third-party DLLs you have no source for, using the CLR's own MethodAttributes.PinvokeImpl metadata flag.

22-rule corpus across the five categories CoreCLR breaks: serialization, threading, assembly loading, reflection and P/Invoke.

Every finding explains why CoreCLR breaks it and what to change, not just a file and a line number.

Baseline and burndown. Save a baseline and every later scan shows the delta a producer can report upward.

CI entry point with a breaking-count budget that fails the build, and refuses to report a pass on an incomplete scan.

The rule corpus ships as plain JSON. Edit it, extend it, or supply your own.

Raw readable C# under an Editor-platform assembly definition. No Resources folder, no dependencies, nothing added to your runtime build.

Demo scene with deliberately non-compliant samples, so you get real findings on the first run.

Complements Unity's free Project Auditor rather than duplicating it. Domain reload and obsolete API are deliberately left to Unity.

Compatibility

Render pipelines supported in each Unity version
Unity version Built-in URP HDRP Custom
6000.5.7f1 Compatible Compatible Compatible Compatible

As listed on the Asset Store.