Search Issue Tracker
Third Party Issue
Votes
0
Found in [Package]
1.8.0-pre.2
Issue ID
BUR-2070
Regression
Yes
"Failed to resolve assembly" error in the Console when reloading Scripts
How to reproduce:
1. Open the attached user project
2. Press “Reload Scripts“ (Tools > Reload Scripts)
Expected result: Scripts are reloaded with no errors in the Console
Actual result: Scripts are reloaded with the “Mono.Cecil.AssemblyResolutionException: Failed to resolve assembly: ‘0Harmony, Version=2.1.1.0, Culture=neutral, PublicKeyToken=null'“ error in the Console
Reproducible with: 1.8.0-pre.2 (2021.3.11f1, 2022.1.18f1, 2022.2.0b9, 2023.1.0a13)
Not reproducible with: 1.7.4, 1.8.0-pre.1 (2021.3.11f1, 2022.1.18f1, 2022.2.0b9, 2023.1.0a13)
Can’t test with: 1.7.4, 1.8.0-pre.1, 1.8.0-pre.2 (2020.3.40f1) (error CS0246: The type or namespace name 'NUnit' could not be found)
Reproduced on: macOS (12.5)
Note: Downgrading and upgrading the Burst package solves the issue, but after restarting Unity, the issue comes back
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Unity CIL Linker fails on Player build when persistent listeners have "<" and ">" in their XML attribute names
- ”Lighting data asset ‘LightingData’ is incompatible with the current Unity version…” warnings are thrown when saving Indoors (URP) and Outdoors (URP) Scenes as Scene Templates
- [iOS] The screen blinks when transitioning from custom to Unity splash screen
- [macOS] ”Ignoring depth surface load action as it is memoryless” warnings are thrown when taking Game View Snapshot
- UI Builder Inspector scrolls back up when changes on an expanded but not fully displayed Inspector tab are saved
Resolution Note:
This error happens because the a precompiled dll in the com.needle.editorpatching package has an assembly name that doesn't match the assembly's filename.
Specifically, the filename is "EditorPatching_0Harmony.dll", while the assembly name is "0Harmony".
For reference, here's the package repo where that dll is located: https://github.com/needle-tools/editorpatching/tree/main/package/Editor/Plugins
Burst doesn't support this scenario. Burst requires that the assembly name matches the filename.
I suggest contacting the authors of the com.needle.editorpatching package to see if they can recompile the EditorPatching_0Harmony.dll, making the assembly name "EditorPatching_0Harmony".