Unlike the old implementation, the new one may call JpsComponentLoader.loadComponent multiple times for the same file, so it's better to cache content to speed up loading.
GitOrigin-RevId: 4c3630f24bdcb8740ef5cd3ba6d414febb0f9d77
The workspace model uses configurationStore API to load data, and there attributes of the root tag are represented as options in an artificial DeprecatedModuleOptionManager component.
GitOrigin-RevId: 2a0a197e8f41c491d5b9ffd9f707a9e2315f1301
Production code sorts modules before saving. Also, this is needed to simplify testing loading in the new implementation of JPS model (IJPL-409).
GitOrigin-RevId: 9ebf7519a32dfea2d048181ae5f6db323622d55f
Data which is present in the workspace model is taken from it, other components are loaded from xml files as before.
GitOrigin-RevId: 368e2b15aa055bc3489fb944c334379f10f2725e
The new implementation based on the workspace model behaves slightly differently for some projects with invalid configurations, tests should tolerate this.
GitOrigin-RevId: fa5a7c888aa60ff27507bff3b9a05fc3d68ececc
And fix cases where null was actually passed. Before, it was easy to forget to check it for null in the implementations.
GitOrigin-RevId: 72b7bf041e873f40ef95db97e897e628a714f756
Modules are sorted in the modules.xml file, but entities may be added in arbitrary order due to concurrent loading. So they should be sorted during conversion to JPS model for consistency with the old implementation and have stable behavior in the build process.
GitOrigin-RevId: 1e12f2930f702b80b089985d8e91cee03da10292
Production code sorts modules before saving. Also, this is needed to simplify testing loading in the new implementation of JPS model (IJPL-409).
GitOrigin-RevId: f540342b831bf73cb0e717d51b92da323201edaf
This is needed to test loading external configuration in the new implementation of JPS model (IJPL-409) and to avoid conversions between Path and String.
JpsCompilerConfigurationTest changed to load the project configuration using JpsSerializationManager API and migrated to JUnit5.
GitOrigin-RevId: a9d85b2b8797cdecbc43c07339ad89511823d758
JpsModelFromTestData utility is added which uses JpsSerializationManager instead of creating JpsModel and calling JpsProjectLoader directly. Tests are migrated to use it instead of extending JpsSerializationTestCase. This is needed to use these tests to verify the new implementation of JPS model serialization (IJPL-409). Also, the tests are migrated to JUnit 5.
GitOrigin-RevId: 874f0b01ea6ae5d31666b2dafb843052cc017024
This is needed to refactor simplify JpsProjectLoader to allow reusing its code in the new implementation of the JPS model (IJPL-409).
GitOrigin-RevId: b88fb246454601489e7133df4b078e5e52f6da58
JpsProjectExtensionWithExternalDataSerializer is introduced to support project components which may have data in the external storage. Code related to loading the compiler configuration is moved from JpsProjectLoader to JpsJavaCompilerConfigurationSerializer. This is needed to refactor JpsProjectLoader to allow reusing its code in the new implementation of the JPS model (IJPL-409).
GitOrigin-RevId: c0e64c02c49e4a451da9b9743c240227bd6465a4
It was not checked in the same RA that the state is correct
Fixes EA-1003038 - T: LambdaCanBeReplacedWithAnonymousInspection.doFix
GitOrigin-RevId: e53a448587e698a9984bf3bc25a7ac177d86be08
no space check, checkbox only for jb logins
bundle to nightly
Merge-request: IJ-MR-136370
Merged-by: Iurii Akatov <Iurii.Akatov@jetbrains.com>
GitOrigin-RevId: 8d4e8876fa8ceb42e24286d7dd39fef86725fff8
Enum is more suitable here since we plan to add the 3rd option - single line prompt.
Also, it is worth extracting this setting to the separate PersistentStateComponent just to not mix the New Terminal settings with the classic ones.
Migration of the existing `useShellPrompt` setting is provided. So, if the user enabled the Shell prompt before this change, it will be still enabled after this change. In a release, we will be able to remove the old setting.
GitOrigin-RevId: 66cc0ae31f9932166ef4b43bf1b02c70f4b1954e