Community
Participate
Working Groups
Hi, During the migration of aird, migration contributions are called (see org.eclipse.sirius.business.internal.migration.AbstractSiriusMigrationService.postLoad(XMLResource, String)). I've just been aware that there must be a dependence between the contribution NoteShapeDefaultLabelAlignmentMigrationParticipant and the contribution DRepInDViewToRootObjectsAndWithDRepDescRepPathMigrationParticipant. If the latter is not called before the former, the migration of note alignment is not performed. While running a test with Tycho, the order of plugin loading is org.eclipse.sirius.diagram.ui then org.eclipse.sirius which makes the contribution NoteShapeDefaultLabelAlignmentMigrationParticipant precede the the contribution DRepInDViewToRootObjectsAndWithDRepDescRepPathMigrationParticipant in the list. Is it a must to assure the dependency between migration contributions somehow ?
I'll try to test later, but it looks like we should indeed guarantee the particpants are executed in a deterministic and chronological order. https://git.eclipse.org/r/#/c/94974/ may be enough, but further investigation is needed. Is the problem systematic in you case when you run your tests under Tycho?
Yes, it's systematic. Our current workaround is to ensure the dependency order of sirius plugins in the test plugin.
There are several other related issues regarding migration participants and their coordination (#519596, #506226, #518644). We'll try to have a more global look on these for 6.0.