MoDisco moved from Modeling/GMT to Modeling/MDT (see this bug). As part of this migration, we should have renamed all Java packages from
Unfortunately, this means breaking every existing API, which is in contradiction with the API policy that was established for MoDisco. Among other things, this policy states that API cannot be broken without notifying adopters at least one year before that.
This means for MoDisco that we cannot just rename the Java packages, because we still have to support the API that existed in the
To reconcile these two contradicting requirements, we explored several solutions, which are presented below.
We could, before releasing a new version of MoDisco with the renamed packages, duplicate all the previously renamed plug-ins, and rename all packages (through an automated refactoring) from
org.eclipse.modisco.* back to
org.eclipse.gmt.modisco.*. And then distribute this as a "backward compatibility SDK".
The problem with this solution is for adopters that rely on plug-ins with the old namespace, but that want to start developing plug-ins for the latest version of MoDisco. This would be an all-or-nothing solution: either migrate everything to the latest version of MoDisco, or develop new projects with the old version.