Skip to main content

Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » Papyrus » Attention: Major API refactorings in Papyrus Neon M5
Attention: Major API refactorings in Papyrus Neon M5 [message #1721040] Fri, 22 January 2016 22:35
Christian Damus is currently offline Christian DamusFriend
Messages: 1237
Registered: July 2009
Location: Canada
Senior Member


As discussed already on the mailing list and the Papyrus wiki [1], an
effort is underway to refactor the Papyrus APIs to clean up problems in
bundle dependencies. The goal is to complete as much of this as
possible in the Neon release, starting with the M5 milestone.

The first wave of these refactorings is now pushed to the master branch
and available in a nightly build.

I call your attention to some highlights, below, that I think are of
particular importance
for developers to ensure your uninterrupted productivity (or so I
hope). Full details of
changes required in clients to adapt to these API changes are provided by the
Migration Guide [2]. Further background information is available on
the wiki [1] and in bug 485220 [3].



Migration highlights

Bundles renamed

Most significant is the renaming of some bundles:[.edit,.editor]

are renamed as[.edit,.editor]

because this EMF model is used extensively by Infra Layer bundles, and
it makes sense in
that layer anyways. The packages in this bundle are similarly renamed
(substitute "infra"
for "views").

*NOTE* that because these bundles are actually renamed, "p2.inf" files
are added to them
to teach the Equinox p2 updater about their previous names. This
*should* ensure that an
upgrade of your PDE Target using Oomph or of your Papyrus workbench
installation will
proceed normally and actually *replace* the old bundles instead of just
adding the new
ones (having both sets of bundles causes all kinds of trouble owing to
EMF registration
clashes). If you have any trouble with this, for example if you end up
with an installation
that has both the old and new bundles provisioned, please let me know.

New bundles

There are several new bundles added, usually to separate UI-dependent
APIs from headless
APIs that previously were packaged together. If you work by importing
all of the source
projects into a workspace, instead of installing nightlies of Papyrus
in your PDE target,
then you will need all of these new bundles in order to ensure (a)
correct compile and
(b) correct run-time behaviour:

* org.eclipse.papyrus.infra.constraints.ui
* org.eclipse.papyrus.infra.elementtypesconfigurations.ui
* org.eclipse.papyrus.infra.extendedtypes.ui
* org.eclipse.papyrus.infra.gmfdiag.gef -- GEF 3 integration for the editor
* org.eclipse.papyrus.infra.onefile.ui
* org.eclipse.papyrus.infra.sashwindows.di -- the DI/Sash model
* org.eclipse.papyrus.infra.ui.emf
* org.eclipse.papyrus.infra.ui
* org.eclipse.papyrus.uml.ui

The org.eclipse.papyrus.infra.ui bundle is not strictly new, but
previously it didn't
have any APIs for other Papyrus UI components to use, so you might have
entirely missed
it. Now it has lots.

Corresponding new test bundles:

* org.eclipse.papyrus.infra.elementypesconfigurations.ui.tests
* org.eclipse.papyrus.infra.extendedtypes.ui.tests
* org.eclipse.papyrus.infra.ui.emf.tests
* org.eclipse.papyrus.infra.ui.tests

New features:

* org.eclipse.papyrus.infra.ui.feature
* org.eclipse.papyrus.uml.ui.feature



Previous Topic:Unsetting stereotype optional properties
Next Topic:Problem Installing Papyrus with Eclipse Juno
Goto Forum:

Current Time: Wed Jan 27 17:52:58 GMT 2021

Powered by FUDForum. Page generated in 0.01912 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top