Skip to content

Commit

Permalink
FIX: Avoid problems with CI and reimports (#2091)
Browse files Browse the repository at this point in the history
  • Loading branch information
ekcoh authored Dec 20, 2024
1 parent 2d824e1 commit db232e3
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 5 deletions.
1 change: 1 addition & 0 deletions Packages/com.unity.inputsystem/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ however, it has to be formatted properly to pass verification tests.
- Fixed an issue with default device selection when adding new Control Scheme.
- Fixed an issue where action map delegates were not updated when the asset already assigned to the PlayerInput component were changed [ISXB-711](https://issuetracker.unity3d.com/product/unity/issues/guid/ISXB-711).
- Fixed Action properties edition in the UI Toolkit version of the Input Actions Asset editor. [ISXB-1277](https://issuetracker.unity3d.com/product/unity/issues/guid/ISXB-1277)
- Fixed an issue where batch jobs would fail with "Error: Error building Player because scripts are compiling" if a source generated .inputactions asset is out of sync with its generated source code (ISXB-1300).

### Changed
- Added back the InputManager to InputSystem project-wide asset migration code with performance improvement (ISX-2086).
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -256,11 +256,11 @@ private static void GenerateWrapperCode(AssetImportContext ctx, InputActionAsset

if (InputActionCodeGenerator.GenerateWrapperCode(wrapperFilePath, asset, options))
{
// When we generate the wrapper code cs file during asset import, we cannot call ImportAsset on that directly because
// script assets have to be imported before all other assets, and are not allowed to be added to the import queue during
// asset import. So instead we register a callback to trigger a delayed asset refresh which should then pick up the
// changed/added script, and trigger a new import.
EditorApplication.delayCall += AssetDatabase.Refresh;
// This isn't ideal and may have side effects, but we cannot avoid compiling again.
// Previously we attempted to run a EditorApplication.delayCall += AssetDatabase.Refresh
// but this would lead to "error: Error building Player because scripts are compiling" in CI.
// Previous comment here warned against not being able to reimport here directly, but it seems it's ok.
AssetDatabase.ImportAsset(wrapperFilePath);
}
}

Expand Down

0 comments on commit db232e3

Please sign in to comment.