Commit Graph

2 Commits

Author SHA1 Message Date
Mikhail Mazurkevich
68df252efd [workspace model] CPP-24452 Fix module serialization at external system folder
There were a couple of problems which were fixed within the ticket:
1. `CustomImlData` was not saved for modules stored at external system folder
2. `DummyParentEntitySource` was applied not only for module entity but for an other e.g `ModuleGroupPathEntity`,
`ModuleCustomImlDataEntity`... This entities without PersistentId which leads to incorrect behaviour at
replaceBySource and leaking DummyParentEntitySource` to the main store
3. There was a problem  that the system don't load `ExternalSystemOptions` if customRootsSerializer is exist
4. For Clion we should created `ExternalSystemModuleOptionsEntity` if we know the externalSystemId but project import
not started yet(for some reasons it may not start e.g due to the problems at Makefile)  and we should properly handle
serialization of such cases

GitOrigin-RevId: f045ceda298d61cf779091e2350827c7e0fb1ab2
2021-03-25 22:21:02 +00:00
Nikolay Chashnikov
1c41d54c94 [workspace model] fix saving facets in modules with custom storage (CPP-22464)
If a module configuration isn't stored in iml and its ModuleEntity uses custom entitySource, and a facet configuration is stored in iml and its FacetEntity uses the standard JpsFileEntitySource, we need to collect all relevant entities with different sources during save, otherwise FacetEntity may be missed and its configuration won't be saved.

GitOrigin-RevId: 44de0eaafb2ab87d9e10fc11e7174d8261529d32
2021-02-12 23:55:53 +00:00