Search Issue Tracker
By Design
Votes
0
Found in
2018.3.0a1
2018.3.0b1
Issue ID
1080341
Regression
Yes
API updater replaces NavMeshBuilder with UnityEditor.AI.NavMeshBuilder without checking if the namespace is correct
Repro steps:
1. Open attached project
2. Modify the manifest.json file in the Project Folder -> Packages to have no dependencies
3. Agree to update the API
4. Notice various errors in the Console
5. Open UpdateNavMeshAsyncTests.cs and observe line 48
Expected: Unity checks that the namespace is correct and doesn't update were unnecessary
Actual: NavMeshBuilder is changed to UnityEditor.AI.NavMeshBuilder
Reproducible with: 2018.3.0b2, 2019.1.0a1
Not reproducible with: 2018.2.8f1
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
- Build fails when building a project containing an 18+ dimension array with IL2CPP
- [Android][Sentis] Human poses are not detected when using the BlazePose model
- Sprite Editor Outline Tool Overlay is not displayed when no Sprite is selected
- “No method with RuntimeInitializeOnLoadMethod attribute” warning from ReadmeEditor.cs is thrown after installing Project Auditor Rules
- Projection matrix is altered when using RasterCommandBuffer.ClearRenderTarget on DX12 and Metal
Resolution Note:
The problem only happens because UnityEngine.AIModule.dll isn't included in the compilation of the project.
This causes the following sequence of steps to take place:
1. Compiler emits type not found errors
2. Updater code detects those errors and try to check whether it is something related to it.
3. Since those types exists in both *UnityEngine.AIModule.dll* and in *UnityEditor.dll* and the former is missing from the list of referenced assemblies and the later does have a configuration to move *UnityEditor.Type -> UnityEditor.AI.Type* the updater runs
The real problem is the missing reference during compilation.