Bring in trunk's CoreCLR compatibility changes (shadow-package sync) - #698
Bring in trunk's CoreCLR compatibility changes (shadow-package sync)#698lopezt-unity wants to merge 2 commits into
Conversation
UnityCoreClrExplicitDisabledAttribute (UnityEngine.TestTools) shipped in Test Framework 1.7.0 / Unity 6000.7 and does not exist on 6000.0-6000.6, which this package still supports (package.json "unity": "6000.0"). The raw trunk shadow-sync commit applied it unconditionally, which would fail to compile the Unity.ProBuilder.Tests assembly on any older supported Editor. CoreCLR isn't an option on those older Editors either, so the tests can just run normally there - no fallback attribute needed. Left ExtrudeTests.cs's using UnityEngine.TestTools unguarded since it already used LogAssert unconditionally before this change.
|
|
There was a problem hiding this comment.
💡 Harness Review
The change consistently gates the new CoreCLR-only test attribute at the supported editor version, preserves the existing test-framework imports where needed, and updates each changed legacy shader fragment output to the established SV_Target semantic. I found no actionable defects in the reviewed changes.
Reviewed commit a2c1b73
🤖 Helpful? 👍/👎
Codecov ReportAll modified and coverable lines are covered by tests ✅ @@ Coverage Diff @@
## master #698 +/- ##
==========================================
+ Coverage 38.43% 38.55% +0.12%
==========================================
Files 279 279
Lines 39164 39195 +31
==========================================
+ Hits 15052 15112 +60
+ Misses 24112 24083 -29
Flags with carried forward coverage won't be shown. Click here to find out more. |
What this does
Trunk made some changes to keep ProBuilder working with Unity's new CoreCLR editor, and those changes got mirrored into this repo automatically by the shadow-package bot (see PR #695). This PR brings those changes into
master, since that bot PR landed onrelease/6.1instead, which isn't where we actually do ongoing development anymore.Two kinds of changes came from trunk:
COLORsemantic to the modernSV_Targetsemantic. Purely a naming/compatibility fix, no visual or behavioral change.UnityCoreClrExplicitDisabled) added to tests that currently fail when Unity runs on CoreCLR instead of Mono. This doesn't fix the underlying issues, it just stops those specific tests from running in CoreCLR test passes until someone fixes the real problem (tracked in UUM-148933 and UUM-148935).What I changed on top of the raw trunk changes
The attribute used to disable those tests (
UnityCoreClrExplicitDisabled) is brand new and only exists starting in Unity 6000.7. This package still supports Unity all the way back to 6000.0, so using that attribute unconditionally would have broken compilation of our whole test suite on any older, currently-supported Unity version.I wrapped every use of that attribute in a
#if UNITY_6000_7_OR_NEWERcheck, so:Why master and not release/6.1
The shadow-package bot's PR (#695) targets
release/6.1, but that branch diverged frommastera while back and isn't where new package work lands. Posted a question in #devs-pets about whether the bot's sync target should change, or if this manual "catch it and move it to master" step is expected going forward.Testing
No functional behavior changes for supported use cases — this only affects shader semantics (cosmetic naming fix) and test execution under CoreCLR specifically. Recommend a normal CI run to confirm the test assembly still compiles cleanly on the oldest supported Editor version as well as on 6000.7+.