This document contains the release notes for older versions of of Sirius.
This is service release to fix two issues which were not detected in time for 6.4.0. The issues only impact a new API which was introduced in 6.4.0 (Bug 563117 - Copy format to existing/new diagram based on source to target semantic elements mapping).
Users who want to use this specific feature are encouraged to move to 6.4.1. The bugs have zero impact on the rest of Sirius so there is no need to update if you do not use this specific API.
Important In order to reduce the maintenance burden of Sirius, we have decided to deprecate some older mechanisms for which there exist better alternatives. In Sirius 6.4.x all of these are still available, but they may be removed in future versions
			
(6.5 or 7.0) without further notice. If any of these planned removals are an issue for you, please 
			open a ticket so we can discuss options.
		
The features which are deprecated starting from 6.4.0 are:
odesign files)
				, as supported by the 
				org.eclipse.sirius.common.ocl plug-in. Use AQL expressions instead.
			org.eclipse.sirius.workflow.* and 
				org.eclipse.sirius.editor.workflow plug-ins.
			org.eclipse.sirius.server.* plug-ins.
			Also note that Sirius 6.4 is still compatible with Java 8, but we may move to Java 11 (LTS) in 2021. Eclipse 2020-09 already requires Java 11 to start, and Java 8 is quite old at this point. When we move to Java 11 we will drop support for Eclipse versions older than 2020-09. Again, if that is an issue for you, please open a ticket so we can discuss it.
Sirius 6.4 is officially supported on Eclipse 2020-03 to 2020-12, with Eclipse 2020-06 being the reference platform (where the tests are run and verified). It most likely works fine with any Eclipse from 2019-06 onward, but this is not guaranteed.
Several improvements have been done concerning ELK integration. This feature is always considered as experimental (because several bugs remain). Additional documentation is available here .
org.eclipse.sirius.ui.tools.api.dialogs.AnalysisSelectorFilteredItemsSelectionDialog has been created in order to have custom analysis selector provider able to modify the analysis selector dialog.
			org.eclipse.sirius.tools.api.command.ui.UICallBack.askUserToRefreshTheDiagram() has been added. It is used to ask the user to refresh the representation when something wrong happens when opening the editor. This method allows to skip the UI part.
			org.eclipse.sirius.ui.business.api.dialect.DialectEditor.isLastRepresentationRefreshSucceeded() to know if the last refresh done in the editor has succeeded.
			org.eclipse.sirius
		org.eclipse.sirius.business.api.session.danalysis.DAnalysisSelectorProvider.getPriority() has been added. It is used in 
				org.eclipse.sirius.business.api.session.danalysis.DAnalysisSelectorService.getSelector(DAnalysisSession) to ensure that the right DAnalysisSelector is used. The DAnalysisSelector is searched first with the DAnalysisSelectorProvider with higher priority.
			org.eclipse.sirius.common
		org.eclipse.sirius.common.tools.api.util.CommandStackUtil.flushOperations(CommandStack) has been added to flush the command stack. By default the 
				CommandStack.flush() “disposes all the commands in the stack”. Concretely, it removes the default context from the list of contexts of all operations. And operations without context, after this, are removed from history. In several cases, it is not enough. The 
				ResourceUndoContext must also be removed. This is what this method done to really removed operations from IOperationHistory. This method was already used in 
				org.eclipse.sirius.business.internal.session.danalysis.DAnalysisSessionImpl, it has been extracted from here.
			org.eclipse.sirius.common.tools.api.query.IllegalStateExceptionQuery.isAConnectionLostException(), has been added to detect a specific kind of 
				IllegalStateException. In a collaborative environment, Obeo Designer Team Edition or Team For Capella for example, when the data is hosted on a server, the connection with the server can be lost. Sirius is not ready to handle this context. If Sirius tries to access to data, for example with an async refresh of the UI that needs information from data to be refreshed, a 
				org.eclipse.net4j.util.lifecycle.LifecycleException is thrown with the message 
				"Not active: CDOTransactionImpl". This kind of errors is showed to the end-user instead of silently be caught. Indeed, in this situation, the UI should be refreshed with “blank data” instead of displaying an “incomprehensible” popup to the end-user. This new query allows to detect this specific case. The template to use it is:
			try {
    //code to protect
} catch (IllegalStateException e) {
    if (new IllegalStateExceptionQuery(e).isAConnectionLostException()) {
        // Generally catch silently the exception
    } else {
        throw e;
    }
}
org.eclipse.sirius.diagram.ui
		getDefaultDimension() has been added in 
				org.eclipse.sirius.diagram.ui.edit.api.part.AbstractDiagramElementContainerEditPart(). This method was already used previously in Sirius but was private. It is now public and is used for example for having information during ELK layout.
			layoutEditParts(List, IAdaptable, boolean) has been added in 
				org.eclipse.sirius.diagram.ui.tools.api.layout.provider.AbstractLayoutProvider. It allows for implementations to do specific code according to the arrangeAll or arrangeSelection aspect when layoutEditParts is called. By default, the code called is the same than the 
				org.eclipse.gmf.runtime.diagram.ui.services.layout.AbstractLayoutEditPartProvider.layoutEditParts(List, IAdaptable) implementation.
			useStandardArrangeSelectionMechanism() has been added in 
				org.eclipse.sirius.diagram.ui.api.layout.CustomLayoutAlgorithm to know if a specific layout algorithm relies on the behavior of 
				org.eclipse.sirius.diagram.ui.tools.internal.layout.provider.ArrangeSelectionLayoutProvider. Previously, this was the case for all layout algorithm but it can be useful to disable it (for ELK layout for example). This method is associated with 
				org.eclipse.sirius.diagram.ui.api.layout.CustomLayoutAlgorithm.CustomLayoutAlgorithmBuilder.setStandardArrangeSelectionMechanism(boolean)
			org.eclipse.sirius.diagram.ui.tools.api.format.MappingBasedSiriusFormatManagerFactory has been added to make it possible to apply a copy-paste format to an existing or a new diagram with different semantic targets. This API receives a mapping between the source and target semantic elements to retrieve which graphical element in the target diagram corresponds to the one in source diagram. See the 
				developer documentation for more details. 
				NOTE: The initial version of this new API available in Sirius 6.4.0 has a few issues that have been fixed in 6.4.1. If you wan to leverage this new API you are encouraged to use Sirius 6.4.1.
			org.eclipse.sirius.ui
		preClose() has been added in 
				org.eclipse.sirius.ui.business.api.dialect.DialectEditor. This method is called in sync when the editor is asking to be closed (the real closure is done in async). This allows to dispose actions, for example, as soon as the closure is requested. There is a default implementation, that does nothing, for all dialect editors.
			org.eclipse.sirius.tests.junit.support
		org.eclipse.sirius.tests.support.api.TestsUtil to check the current Java runtime version. The parameter is the expected version of Java, i.e: ...7, 8, 9, ..., 13, 14, ...
				isJavaVersion(int)
					isJavaVersionOrOlder(int)
					isJavaVersionOrNewer(int)
					org.eclipse.sirius.tests.support.api.SiriusTestCase.waitSaveSessionJob() has been added to ensure that the SaveSessionJob, potentially triggered by 
				org.eclipse.sirius.ui.business.internal.session.SaveSessionWhenNoDialectEditorsListener.statusChangedInternal(Collection<ResourceStatusChange>) is finished before continue. It can be call, for example, after changing the list of selected viewpoints, without any editor opened.
			A consequence is that the display of existing compartments in diagrams may be changed. When refreshing the existing diagram, the project may become dirty.
 With Sirius 6.3.2, the label is now on the top of execution:
 With Sirius 6.3.2, the label is now on the top of execution: 
		 
		org.eclipse.sirius.common
		org.eclipse.sirius.common.package_meta_data extension point, it is now possible for a given metamodel (nsURI) to declare some EClasses as potential DocumentRoots. This is needed with some XSD-derived metamodels which normally declare some of their containment references as transient to make sure Sirius will properly consider these classes (and their contents) as needing to be serialized. 
			org.eclipse.sirius.diagram.ui
		org.eclipse.sirius.diagram.ui.graphical.figures.OverlayLabelsDrawerFigure is a “virtual” figure that should be added to the 
				DDiagramRootEditPart#OVERLAY_LAYER and which paints all the overlay labels (instance of 
				OverlayLabel) on top of the rest of the diagram to make sure they are always readable. This figure is currently only used by sequence diagrams for operand labels(
				org.eclipse.sirius.diagram.sequence.ui.tool.internal.edit.part.OperandEditPart) and combined fragment labels (
				org.eclipse.sirius.diagram.sequence.ui.tool.internal.edit.part.CombinedFragmentEditPart). 
			org.eclipse.sirius.diagram.ui.graphical.figures.OverlayLabel is a special label that can be painted or not, on the OVERLAY layer, depending on the current context/layer.
			useOverlayLabel, has been added in 
				org.eclipse.sirius.diagram.ui.edit.api.part.AbstractDiagramElementContainerEditPart. Its value can be changed with 
				setUseOverlayLabel(boolean) and accessed through 
				useOverlayLabel(). This new field allows to use an 
				OverlayLabel for the figure of this edit part.
			org.eclipse.sirius.diagram.ui.tools.api.figure.GradientRoundedRectangle to allow the use of 
				OverlayLabel for this kind of figure (
				GradientRoundedRectangle(Dimension, int, View, boolean)).
			
			IMPORTANT NOTE: Sirius 6.3.1 includes a change in internal data structures used to store diagrams which is not backward-compatible with previous versions, including Sirius 6.3.0. In practice this means that once opened and saved with Sirius 6.3.1, 
			aird files can no longer be opened with Sirius 6.3.0 or earlier.
		
 They are now drawn on top of the rest of the diagram elements so that they are always completely visible:
 They are now drawn on top of the rest of the diagram elements so that they are always completely visible: 
		 
		org.eclipse.sirius.diagram.ui.tools.api.graphical.edit.styles.SimpleStyleConfiguration.isShowIcon(DDiagramElement, IGraphicalEditPart) is now protected instead of private.
			org.eclipse.sirius.diagram
		org.eclipse.sirius.diagram.tools.api.preferences.SiriusDiagramCorePreferences:
				PREF_JUMP_LINK_ENABLE_OVERRIDE: Id of the preference that says if the override of jump links preferences is enabled or not.
					PREF_JUMP_LINK_ENABLE_OVERRIDE_DEFAULT_VALUE: Default value for override of jump link preference, equals to 
						false.
					PREF_JUMP_LINK_STATUS: Id of the preference used to know the default jump link status if the override of connection jump links preferences is enabled.
					PREF_JUMP_LINK_STATUS_DEFAULT_VALUE: Default value of above preference, equals to 
						JumpLinkStatus#NONE.
					PREF_JUMP_LINK_TYPE:  Id of the preference used to know the default jump link type if the override of connection jump links preferences is enabled.
					PREF_JUMP_LINK_TYPE_DEFAULT_VALUE: Default value of above preference, equals to 
						JumpLinkType#SEMICIRCLE.
					PREF_REVERSE_JUMP_LINK: Id of the preference used to know if reverse of the jump link is enabled or not,  if the override of connection jump links preferences is enabled.
					PREF_REVERSE_JUMP_LINK_DEFAULT_VALUE: Default value for reverse jump link preference, equals to 
						false.
					LabelOnBorderMigrationParticipant has been updated to revert the effect of itself. This migration participant has been added in Sirius 6.3.0 according to buzgilla 
				550382. The new feature added in this bugzilla was imperfect so it is decided to revert it. The new corresponding version, stored in attribute version of viewpoint:DAnalysis of the aird file, is 
				14.3.1.202003261200.
			See this document for the complete list of message keys added or removed in Sirius 6.3.1.
Target has been added in the dialog allowing to choose layout options to override for ELK layout algorithms. It describes the element to which the option applies. The filter textfield in that dialog also applies on columns& 
				Name, 
				Targets and 
				Type.
			org.eclipse.sirius
		changeId has been added in 
				DRepresentationDescriptor. It allows to know if two 
				DRepresentation(each associated to one DRepresentationDescriptor) are the same and have the exact same content. It can be useful to not load the representation if not needed. The methods 
				updateChangeId(DRepresentationDescriptor) and 
				areRepresentationIdentical(DRepresentationDescriptor, DRepresentationDescriptor) have been added in 
				org.eclipse.sirius.business.api.helper.RepresentationHelper to get change id information and to update it if needed in DRepresentationDescriptor.
			In case of migration the method 
			org.eclipse.sirius.business.api.migration.AbstractRepresentationsFileMigrationParticipant.updateChangeId(DAnalysis, DRepresentation) is available to update change id. New migration participants created after this Sirius version must update the change id of the DRepresentationDescriptor of the DRepresentation they change. The API to do that is described in MigrationParticpant 
			documentation: .
		
org.eclipse.sirius.business.api.query.DViewQuery.getLoadedRepresentationsDescriptors() has been added and allows to retrieve all loaded 
				DRepresentationDescriptor in a 
				DView.
			org.eclipse.sirius.business.api.session.AbstractSavingPolicy.hasDifferentSerialization(Resource, Map) has been extracted from internal subclasses. It is able to tell whether a save operation on a resource can succeed or not, and if the resulting file will change. It should be used with care as it basically saves the resource in a temporary resource to know whether it will change the file or not.
			org.eclipse.sirius.business.api.query.DRepresentationQuery.findDescriptorFromAnalysis(DAnalysis) has been added to provide a way to look up for a 
				DRepresentationDescriptor in a given 
				DAnalysis.
			org.eclipse.sirius.business.api.dialect.DialectServices.copyRepresentation(DRepresentation, String, Session, IProgressMonitor) is now deprecated. It is recommended to use the  new alternative, 
				org.eclipse.sirius.business.api.dialect.DialectServices.copyRepresentation(DRepresentationDescriptor, String, Session, IProgressMonitor) which is identical except that it take a 
				DRepresentationDescriptor instead of a 
				DRepresentation. Also the constructor of 
				org.eclipse.sirius.business.api.dialect.command.CopyRepresentationCommand has been modified. Its parameter 
				Collection<DRepresentation> representations has been replaced by 
				Collection<DRepresentationDescriptor> representationDescriptors. Theses changes were made  to be able to copy the name that is now only in 
				DRepresentationDescriptor.
			DocumentedElement interface providing a description for the representation implemented by 
				DRepresentation is now implemented by 
				DRepresentationDescriptor. Also the 
				name EAttribute in 
				DRepresentation has been added to 
				DRepresentationDescriptor. These changes allows to use these information without loading associated representation. The 
				name and 
				description attributes on 
				DREpresentation are now transient and volatile and computed from 
				DRepresentationDescriptor
			org.eclipse.sirius.business.api.helper.SiriusHelper has been renamed into 
				org.eclipse.sirius.business.api.helper.RepresentationHelper.
			org.eclipse.sirius.business.api.session.CustomDataConstants, the constants 
				DREPRESENTATION and 
				DREPRESENTATION_DESCRIPTOR has been removed because they are not available anymore in custom data.
			org.eclipse.sirius.common
		org.eclipse.sirius.common.tools.api.util.EqualityHelper, it is managed with the 
				setUriFragmentCacheEnabled(boolean) method. The cache is currently used in three locations: 
				org.eclipse.sirius.diagram.business.internal.sync.DDiagramSynchronizer.refreshOperation(IProgressMonitor), 
				org.eclipse.sirius.diagram.business.internal.helper.display.DisplayServiceImpl.refreshAllElementsVisibility(DDiagram) and in the hidden elements lookup phase of 
				org.eclipse.sirius.diagram.ui.edit.api.part.AbstractDDiagramEditPart.activate(). This optimization is enabled by default, it can be disabled by setting the system property 
				org.eclipse.sirius.common.enableUriFragmentOptimization to 
				false.
			org.eclipse.sirius.common.tools.api.util.LazyCrossReferencer, 
				org.eclipse.sirius.common.tools.api.util.ECrossReferenceAdapterWithUnproxyCapability have been merged in 
				org.eclipse.sirius.business.internal.session.danalysis.SessionLazyCrossReferencer to reduce complexity.
			org.eclipse.sirius.common.tools.api.util.SiriusCrossReferenceAdapterImpl has been merged in 
				org.eclipse.sirius.common.tools.api.util.SiriusCrossReferenceAdapter.
			org.eclipse.sirius.business.internal.session.danalysis.LocalResourceCollector has been merged in 
				SiriusCrossReferenceAdapter to have only one instance of a cross referencer for a Sirius session. This implies that resource collector is no more installed on all resourceSet resources by default but only on those managed by the Sirius session semantic cross reference. But if the getRefencing/ed services are used, it will install itself on a non managed resource and then return the references for all resources on which it is installed.
			org.eclipse.sirius.diagram
		org.eclipse.sirius.diagram.business.internal.sync.DDiagramSynchronizer.refreshOperation(IProgressMonitor), 
				org.eclipse.sirius.diagram.business.internal.helper.display.DisplayServiceImpl.refreshAllElementsVisibility(DDiagram) and in the hidden elements lookup phase of 
				org.eclipse.sirius.diagram.ui.edit.api.part.AbstractDDiagramEditPart.activate(). This optimization is enabled by default, it can be disabled by setting the system property 
				org.eclipse.sirius.diagram.enableActiveParentLayerOptimization to 
				false.
			org.eclipse.sirius.diagram.elk
		org.eclipse.sirius.diagram.elk.layout.extension experimental extension-point has been added to make it possible to extend the ELK layout with pre end post operations. See the extension-point associated documentation and 
				org.eclipse.sirius.diagram.elk.IELKLayoutExtension interface for more details.
			There are no user-visible changes in Sirius 6.2.2 compared to 6.2.1. The only changes are internal and related either to the build process or to the automated tests.
org.eclipse.sirius
		org.eclipse.sirius.business.api.query.DRepresentationQuery.DRepresentationQuery(DRepresentation, Session) to compute queries directly from the given session instead of computing it.
			viewpoint.ecore, the 
				UIState class has a new 
				subDiagramDecorationDescriptors attribute. It is used as a cache to speed up sub diagram decorations computing.
			RefreshHelper.registerImpactingNotification(Predicate<Notification>) to consider a specific graphical changes. An example is the possibility to launch a refresh when the region container is collapsed or expanded. See 
				Trigger a Sirius refresh on specific graphical changes in the developer documentation for more details.
			org.eclipse.sirius.tools.api.ui.RefreshHelper.isAutoRefresh() has been added to know if Sirius is in automatic refresh mode or in manual mode.
			org.eclipse.sirius.tools.api.ui.RefreshHelper.registerImpactingNotification(Predicate<Notification>) and 
				org.eclipse.sirius.tools.api.ui.RefreshHelper.unregisterImpactingNotification(Predicate<Notification>) have been added to allow to consider some graphical modifications as requiring a refresh. By default, only semantic changes are considered as requiring a refresh.  
			org.eclipse.sirius.business.api.helper.task.NotificationTask class has been removed. It was not used anywhere.
			org.eclipse.sirius.diagram.ui
		org.eclipse.sirius.diagram.ui.business.api.image.ImageSelector.IMAGES_RESOURCE_NAME constant has been deprecated. It was present in the initial commit of Sirius but has never been used in its open source components.
			org.eclipse.sirius.tests.swtbot.support
		org.eclipse.sirius.tests.swtbot.support.api.widget.SWTBotSiriusFigureCanvas.mouseMoveLeftClick(int, int, boolean, int[]), 
				org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusGefViewer.click(int, int, boolean, int[]), 
				org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor.clickWithKeys(String, int...), have been added to make a mouse click with key modifiers for a multi selection for example.
			org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusHelper.selectPropertyTabItem(String, SWTBot) has been added. It allows to look for property tab from a given bot. The bot corresponding to the property view should be given otherwise the search could fail starting from Eclipse 2019-06.
			org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusHelper.getShellBot(String) has been added and allows to retrieve a bot related to a shell with the given label.
			org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusHelper.menu(SWTBot, String) has been added and allows to retrieve a menu even when the active shell is null. Should be used over 
				SWTBot.menu(String) method.
			org.eclipse.sirius.common
		org.eclipse.sirius.common.tools.api.interpreter.IConverter has been added: it encapsulates the coercion rules used to convert raw results returned by interpreted expressions into the types expected by Sirius (depending on the context of use of the expression).
			org.eclipse.sirius.common.tools.api.interpreter.IInterpreter, a new method 
				getConverter() has been added to obtain the 
				IConverter for a given interpreter.
			org.eclipse.sirius.common.tools.api.interpreter.EvaluationResult has been added. It serves as a default implementation of 
				IEvaluationResult. It provides static factory methods for common cases (successful evaluation or failure).
			org.eclipse.sirius.common.tools.api.interpreter.TypeName, the methods 
				getJavaClass() and 
				getPackagePrefix() which used to return a 
				org.eclipse.sirius.ext.base.Option<T> now return standard 
				java.util.Optional<T> instead.
			org.eclipse.sirius.common.tools.api.profiler.ProfilerTaskRegistry, the method 
				get(String) which used to return a 
				org.eclipse.sirius.ext.base.Option<T> now return standard 
				java.util.Optional<T> instead.
			org.eclipse.sirius.common.tools.api.query.NotifierQuery, the method 
				getAdapter(Class<?>) which used to return a 
				org.eclipse.sirius.ext.base.Option<T> now return standard 
				java.util.Optional<T> instead.
			org.eclipse.sirius.common.tools.api.resource.ResourceSetSync, the method 
				getResourceSetSync(TransactionalEditingDomain) which used to return a 
				org.eclipse.sirius.ext.base.Option<T> now return standard 
				java.util.Optional<T> instead.
			org.eclipse.sirius.common.tools.api.util.MarkerUtil, the method 
				addMarkerFor(IResource, String, int, String) which used to return a 
				org.eclipse.sirius.ext.base.Option<T> now return standard 
				java.util.Optional<T> instead.
			org.eclipse.sirius.common.tools.api.util.ReflectionHelper, all the following methods which used to return a 
				org.eclipse.sirius.ext.base.Option<T> now return standard 
				java.util.Optional<T> instead: 
				setConstructorVisibleWithoutException(Class<? extends Object>, Class<?>...)
			
			setFieldVisibleWithoutException(Class<? extends Object>, String), 
			getClassForNameWithoutException(String), 
			instantiateWithoutException(String, Class<?>[], Object[]), 
			getFieldValueWithoutException(Object, String), 
			getFieldValueWithoutException(Class<? extends Object>, String), and 
			getFieldValueWithoutException(Object, String, Class<? extends Object>).
		
org.eclipse.sirius.common.tools.api.interpreter.IInterpreterWithDiagnostic.IEvaluationResult has been promoted as a top-level type as 
				org.eclipse.sirius.common.tools.api.interpreter.IEvaluationResult. In the process it has gained several methods to check for success and coerce the raw evaluation result into any of the types that are used by Sirius (depending on the usage context).
			org.eclipse.sirius.common.tools.api.interpreter.IInterpreter (and all its implementations shipped with Sirius), the methods 
				addVariableStatusListener() and 
				removeVariableStatusListener() have been removed, along with the corresponding type 
				org.eclipse.sirius.common.tools.api.interpreter.IVariableStatusListener. These correspond to obsolete and unused mechanisms.
			interface org.eclipse.sirius.common.tools.api.interpreter.IInterpreterWithDiagnostic has been removed. The single method it defined, 
				evaluateExpression(), is now implemented directly by the main 
				IInterpreter interface. In effect, all 
				IInterpreter are now “with diagnostic”. 
			org.eclipse.sirius.tools.api.interpreter.context.SiriusInterpreterContextFactory has been removed from the API (it has been moved into an internal package): it should only be needed by Sirius itself and has no reason to be exposed as public API.
			org.eclipse.sirius.common.ui
		org.eclipse.sirius.common.ui.tools.api.dialog.quickoutline.QuickOutlineDescriptor, the methods 
				getFirstPage() and 
				getNextPage(QuickOutlinePageDescriptor) which used to return a 
				org.eclipse.sirius.ext.base.Option<T> now return standard 
				java.util.Optional<T> instead.
			org.eclipse.sirius.diagram.layoutdata
		org.eclipse.sirius.diagram.formatdata
			org.eclipse.sirius.diagram
		org.eclipse.sirius.diagram.Messages.SynchronizeGMFModelCommand_label has been added. It replaces 
				org.eclipse.sirius.diagram.ui.provider.Messages.SynchronizeGMFModelCommand_label.
			org.eclipse.sirius.diagram.business.api.query.DragAndDropTargetQuery, a new method 
				getLogicalChildren() has been added. It makes it easy to iterate over the logical structure of diagram elements. A static factory method 
				on() was also added to provide a more fluent API, e.g. 
				DragAndDropTargetQuery.on(container).getLogicalChildren().
			org.eclipse.sirius.diagram.tools.api.command.IDiagramCommandFactory.buildInsertVerticalBlankSpaceCommand(DDiagram, int, int) has been renamed to 
				org.eclipse.sirius.diagram.tools.api.command.IDiagramCommandFactory.buildInsertOrRemoveVerticalBlankSpaceCommand(DDiagram, int, int) because it handles now both addition and removal.
			org.eclipse.sirius.diagram.business.internal.metamodel.helper.ContentHelper has been moved in a new class called 
				org.eclipse.sirius.diagram.business.internal.metamodel.helper.ContentLayerHelper to ensure method to be independent from pure Sirius code. 
			diagram.ecore. This is the ones that are computed outside of EMF environment with dependencies to IInterpreter or that are deprecated. The following EOperations have been removed/replaced: 
				DEdge.isRootFolding has been removed
					DDiagram.getNodesFromMapping has been replaced by 
						DDiagramSpecOperations.getNodesFromMapping
					DDiagram.getEdgesFromMapping has been replaced by 
						DDiagramSpecOperations.getEdgesFromMapping
					DDiagram.getContainersFromMapping has been replaced by 
						DDiagramSpecOperations.getEdgesFromMapping
					DiagramElementMapping.checkPrecondition has been replaced by 
						SiriusElementMappingSpecOperations.checkPrecondition
					DiagramElementMapping.getAllMappings has been replaced by 
						MappingHelper.getAllMappings
					DiagramElementMapping.isFrom has been replaced by 
						SiriusElementMappingSpecOperations.isFrom
					AbstractNodeMapping.clearDNodesDone has been replaced by 
						NodeMappingHelper.clearDNodesDone
					AbstractNodeMapping.addDoneNode has been replaced by 
						NodeMappingHelper.addDoneNode
					AbstractNodeMapping.getAllBorderedNodeMappings has been replaced by 
						MappingHelper.getAllBorderedNodeMappings
					NodeMapping.createNode has been replaced by 
						NodeMappingHelper.createNode. You must verify that 
						NodeMapping is an 
						INodeMappingExt before calling this method. Previously, in other cases, when a 
						NodeMapping is not 
						INodeMappingExt, an 
						UnsupportedOperationException was thrown.
					NodeMapping.updateNode has been replaced by 
						NodeMappingHelper.updateNode
					NodeMapping.updateListElement has been replaced by 
						NodeMappingHelper.updateListElement
					NodeMapping.getNodesCandidates(semanticOrigin,container) has been replaced by 
						NodeMappingHelper.getNodesCandidates(semanticOrigin,container)
					NodeMapping.getNodesCandidates(semanticOrigin,container,containerView) has been replaced by 
						NodeMappingHelper.getNodesCandidates(semanticOrigin,container,containerView)
					ContainerMapping.getBestStyle has been replaced by 
						ContainerMappingWithInterpreterHelper.getBestStyle
					EdgeMapping.createEdge(source,target,semanticTarget) has been replaced by 
						EdgeMappingHelper.createEdge(EdgeMapping, EdgeTarget, EdgeTarget, EObject, EObject)
					EdgeMapping.createEdge(source,target,container,semanticTarget) has been replaced by 
						EdgeMappingHelper.createEdge(EdgeMapping, EdgeTarget, EdgeTarget, EObject, EObject)
					EdgeMapping.getBestStyle has been replaced by 
						MappingWithInterpreterHelper.getBestStyle
					EdgeMapping.updateEdge has been replaced by 
						EdgeMappingHelper.updateEdge
					EdgeMapping.getEdgeTargetCandidates(semanticOrigin,viewPoint) has been replaced by 
						EdgeMappingHelper.getEdgeTargetCandidates
					EdgeMapping.getEdgeSourceCandidates has been replaced by 
						EdgeMappingHelper.getEdgeSourceCandidates
					EdgeMapping.getEdgeTargetCandidates(semanticOrigin,container,containerView) has been replaced by 
						EdgeMappingHelper.getEdgeTargetCandidates
					EdgeCreationDescription.getBestMapping has been removed because it is never used.
					ContainerDropDescription.getBestMapping has been replaced by 
						ContainerMappingWithInterpreterHelper.getBestMapping
					Filter.isVisible has been replaced by 
						FilterService.isVisible(Filter, DDiagramElement)
					VariableFilter.resetVariables has been replaced by 
						VariableFilterWrapper.resetVariables
					DiagramDescription.allNodeMappings has been replaced by 
						ContentHelper.getAllNodeMappings (with 
						false value for parameter 
						withoutOptionalLayers)
					DiagramDescription.allContainerMappings has been replaced by 
						ContentHelper.getAllContainerMappings (with 
						false value for parameter 
						withoutOptionalLayers)
					DiagramDescription.allLayers has been replaced by 
						LayerHelper.getAllLayers
					ContainerMapping.allNodeMappings has been replaced by 
						ContainerMappingHelper.getAllNodeMappings
					ContainerMapping.allContainerMappings has been replaced by 
						ContainerMappingHelper.getAllContainerMappings
					Layer.allEdgeMappings has been replaced by 
						ContentLayerHelper.getAllEdgeMappings
					org.eclipse.sirius.diagram.ui
		org.eclipse.sirius.diagram.ui.business.api.query.EditPartQuery.getDDiagram() has been added to retrieve the  
				DDiagram associated to the edit part or to one of its ancestor.
			org.eclipse.sirius.diagram.ui.provider.Messages.SynchronizeGMFModelCommand_label has been removed. It has been replaced in 
				org.eclipse.sirius.diagram.Messages.
			layoutDataManager, deprecated since Sirius 4.1.0, has been removed. The corresponding plug-in 
				org.eclipse.sirius.diagram.layoutdata has also been removed.
			org.eclipse.sirius.diagram.ui.business.api.query.ConnectionEditPartQuery.getCenteredAnchorsAbsoluteLocation(Rectangle) has been added in order to compute the location of the anchor of a connection centered on its target or source.
			org.eclipse.sirius.diagram.ui.business.api.query.ConnectionQuery.getAbsolutePointList(RelativeBendpoints, PrecisionPoint, PrecisionPoint) has been added to compute the absolute coordinates of the bendpoints of a connection.
			org.eclipse.sirius.ui.editor
		org.eclipse.sirius.ui.editor.api.pages.PageProvider.provides() now takes the 
				SessionEditor as an additional parameter to allow implementation to decide if it should provide an additional page or not.
			org.eclipse.sirius.diagram.sequence
		org.eclipse.sirius.diagram.sequence.Messages.VerticalSpaceReduction_operationName has been added. It’s key is 
				VerticalSpaceReduction_operationName and its default value is 
				Auto-reduction of {0}. It is used when reducing spaces in sequence diagram.
			org.eclipse.sirius.diagram.ui.provider.Messages.RemoveBlankSpace_cmdName has been added. It’s key is 
				RemoveBlankSpace_cmdName and its default value is 
				Remove blank space. It is used when removing spaces in sequence diagram.
			org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor.dragWithKeys(int, int, int, int, AtomicBoolean, int...), 
				org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusGefViewer.dragWithKeys(int, int, int, int, AtomicBoolean, int...), 
				org.eclipse.sirius.tests.swtbot.support.api.widget.SWTBotSiriusFigureCanvas.mouseDragWithKeys(int, int, int, int, AtomicBoolean, int...), have been added to make a drag an drop with more than one key modifier.
			org.eclipse.sirius.ecore.extender
		org.eclipse.sirius.ecore.extender.business.internal.accessor.ModelAccessorAdapter, the methods 
				getAdapter(ResourceSet resourceSet) and 
				removeAdapter(ResourceSet resourceSet) now return 
				java.util.Optional<T> instead of instance of Sirius’s custom 
				org.eclipse.sirius.ext.base.Option<T>.
			org.eclipse.sirius.ext.gmf.runtime
		org.eclipse.sirius.ext.gmf.runtime.editparts.GraphicalHelper, all the methods which used to take or return an 
				org.eclipse.sirius.ext.base.Option<T> not take or return a standard 
				java.util.Optional<T> instead.
			org.eclipse.sirius.tests.swtbot.support
		org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor.dragWithKeys(int, int, int, int, AtomicBoolean, int...), 
				org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusGefViewer.dragWithKeys(int, int, int, int, AtomicBoolean, int...) and 
				org.eclipse.sirius.tests.swtbot.support.api.widget.SWTBotSiriusFigureCanvas.mouseDragWithKeys(int, int, int, int, AtomicBoolean, int...) have been added and allows to do a drag and drop with any key modifier you want.
			org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor.dragWithKey(int, int, int, int, int, AtomicBoolean), 
				org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusGefViewer.dragWithKey(int, int, int, int, int, AtomicBoolean) and 
				org.eclipse.sirius.tests.swtbot.support.api.widget.SWTBotSiriusFigureCanvas.mouseDragWithKey(int, int, int, int, int, AtomicBoolean) have been marked as deprecated. The method 
				org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor.dragWithKeys(int, int, int, int, AtomicBoolean, int...), 
				org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusGefViewer.dragWithKeys(int, int, int, int, AtomicBoolean, int...) and 
				org.eclipse.sirius.tests.swtbot.support.api.widget.SWTBotSiriusFigureCanvas.mouseDragWithKeys(int, int, int, int, AtomicBoolean, int...) should be used instead.C
			org.eclipse.sirius.diagam.ui.hidePrintingOfPermissionAuthorityDecoration system property is set to true and if there is no other printable decoration provided at the same location (South-West), the permission authority decorations displayed on diagrams are not printed nor exported in images (export as image actions).
			org.eclipse.sirius
		org.eclipse.sirius.business.api.query.DRepresentationDescriptorQuery.isRepresentationReachable() and 
				org.eclipse.sirius.business.api.query.DRepresentationDescriptorQuery.isRepresentationValid() have been added. The former allows to know if the 
				DRepresentation can be retrieved from the 
				DRepresentationDescriptor.repPath: the repPath is correctly set and the representation effectively exists. The latter returns true if the 
				DRepresentationDescriptor is either dangling (
				DRepresentationDescriptor.repPath can not be found) or can not by retrieved.
			org.eclipse.sirius.diagram.ui
		CustomLayoutConfiguration layoutConfiguration has been added to 
				org.eclipse.sirius.diagram.ui.tools.api.layout.provider.DefaultLayoutProvider and its setter method 
			
			setLayoutConfiguration(CustomLayoutConfiguration). It allows any layout provider to be aware of any VSM layout configuration that should be used.
		
getDiagramLayoutProvider(DiagramEditPart, IAdaptable) in package  
				org.eclipse.sirius.diagram.ui.tools.api.layout.provider.AbstractLayoutProvider has been made protected to allow to provide layout provider from other mechanism than LayoutService.
			org.eclipse.sirius.diagram
		org.eclipse.sirius.diagram.ui.tools.api.decoration.DecorationDescriptor.isPrintable. This attribute is used to know if the decoration should be hidden when printing or exporting the diagram. The behavior is applied only if there is no printable decoration in its diagram element location (South, West, South-West etc).
			org.eclipse.sirius.common
		org.eclipse.sirius.common.tools.api.util.SiriusCopier has been replaced by the internal class 
				org.eclipse.sirius.tools.internal.SiriusCopierHelper. 
				SiriusCopier.Helper.copy(T) and 
				SiriusCopier.Helper.copyAll(Collection<? extends T>) have been replaced by 
				SiriusCopierHelper.copyWithNoUidDuplication(T), 
				SiriusCopierHelper.copyAllWithNoUidDuplication(Collection<? extends T>) and 
				SiriusCopierHelper.copyAllWithNoUidDuplication(Collection<? extends EObject>, boolean, boolean, boolean). It provides the ability to copy an object without copying the EAttribute 
				IDENTIFIED_ELEMENT__UID. For all these methods, this id is not set by the factory or during object creation, it is set during the copy using 
				org.eclipse.emf.ecore.util.EcoreUtil.generateUUID().
			org.eclipse.sirius.diagram
		allowsVisibilityModeActivation() in 
				org.eclipse.sirius.diagram.business.api.diagramtype.IDiagramDescriptionProvider This method is used to know if the visibility mode is supported by a specific diagram description.
			org.eclipse.sirius.ui.business.api.preferences.SiriusUIPreferencesKeys.PREF_DISPLAY_VSM_USER_FIXED_COLOR_IN_PALETTE has been added and can be managed in Preferences/Sirius/Sirius Diagram/Appearance/Display viewpoint colors. It allows to display, in the color palette, the user fixed color(defined in the activated viewpoints) in addition to standard colors. The color palette is available in Appearance tab of the Properties view.
			
			 
		
			 
		
PopupMenu in diagram has been improved. It is now possible to define 
				Group in 
				PopupMenu. A group allows to group several actions. It appears like a separator between groups of actions. It is also possible to reuse existing menu or group.
			Previously, it was possible to add new menus and actions at the end of the contextual menu:
			
			 
			
Now, it is possible to:
		
			 
		
org.eclipse.sirius.diagram.ui.tools.api.interpreter.StandardDiagramServices: see 
				org.eclipse.sirius.diagram.ui developer visible changes for the list of services or chapter 
				Selection after tool execution of documentation to see how to use them.
			Refer to the specifier documentation for details.
IMPORTANT Note that all plug-ins in the 
			Sirius Server feature (
			org.eclipse.sirius.server.* and 
			org.eclipse.sirius.services.*) are still considered experimental in this version. In particular, all APIs (Java, HTTP, WebSocket) they provide should be treated as provisional even if they are exposed publicly in 
			*.api.* packages. We reserve the right to modify them in incompatible ways even in future maintenance versions.
		
org.eclipse.sirius.tools.api.command.ui.UICallBack.askUserAndSaveMigratedSession(session)) used to ask user if he wants to save the resources after migration and save them if necessary.
					org.eclipse.sirius.business.api.session.SessionManager.openSession(sessionResourceURI, monitor, uiCallback, isDirectUserActionLoading)). Previous version calls this new version with the value false for 
						isDirectUserActionLoading parameter
					org.eclipse.sirius.common.tools.api.constant.CommonPreferencesConstants.PREF_ASK_TO_SAVE_RESOURCE_AFTER_MIGRATION
					org.eclipse.sirius.migrationHandler extension point has been added. It allows to contribute migration process, mainly handle migration options.
			SiriusFormatDataManagerForSemanticElements has been moved from package 
				org.eclipse.sirius.diagram.ui.tools.internal.format.semantic to 
				org.eclipse.sirius.diagram.ui.tools.api.format.semantic.
			checkRule and 
				getMessage of 
				ValidationRule 
				EClass have been removed from 
				viewpoint metamodel. These operations were deprecated and useless since we used method of 
				org.eclipse.sirius.business.internal.metamodel.description.validation.operations.ValidationRuleOperations class.
			org.eclipse.sirius.ui
		org.eclipse.sirius.ui.business.api.preferences.SiriusUIPreferencesKeys.PREF_DISPLAY_VSM_USER_FIXED_COLOR_IN_PALETTE has been added. Its default value is true. It allows to display, in the color palette, the user fixed color(defined in the activated viewpoints) in addition to standard colors. The color palette is available in Appearance tab of the Properties view.
			org.eclipse.sirius.diagram.ui
		org.eclipse.sirius.diagram.ui.tools.api.interpreter.StandardDiagramServices:
				stdGetViewsRepresentingSameEType(DSemanticDiagram, List<DSemanticDecorator>): Return the list of 
						DSemanticDecorator representing semantic element with same EType as the current selected diagram elements.
					stdGetViewsWithSameMapping(DSemanticDiagram, List<DSemanticDecorator>): Return the list of 
						DSemanticDecorator having the same mappings as the current selected diagram elements.
					stdGetViewsRepresentingSelectedType(DSemanticDiagram): Return the list of 
						DSemanticDecorator in the current diagram representing semantic element having the EType provided by the end-user through a dialog box. This dialog box can be improved. There is currently no completion, neither validation.
					stdGetViewsOfExpression(DSemanticDiagram): Return the list of 
						DSemanticDecorator corresponding to the evaluation of an expression written by the end-user in a dialog box. This dialog box can be improved. There is currently no completion, neither validation.
					isRepresentationLink() has been added in 
				org.eclipse.sirius.diagram.ui.business.api.query.ViewQuery to know if the view is a representation link or a normal note.
			isRepresentationLinkBroken() has been added in 
				org.eclipse.sirius.diagram.ui.business.api.query.ViewQuery to know, for a representation link, if it refers to a deleted representation descriptor. Invocations should be guarded by 
				isRepresentationLink().
			org.eclipse.sirius.diagram.ui.tools.api.figure.ViewNodeContainerFigureDesc has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.StyledFigure has been moved to 
				org.eclipse.sirius.ext.draw2d.figure package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.ITransparentFigure has been moved to 
				org.eclipse.sirius.ext.draw2d.figure package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.IRoundedCorner has been moved to 
				org.eclipse.sirius.ext.draw2d.figure package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.ImageFigureWithAlpha has been moved to 
				org.eclipse.sirius.ext.draw2d.figure package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.anchor.ZoomDependantAnchor has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures.util package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.anchor.AnchorProvider has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures.util package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.ViewGradientFigureDesc has been moved to 
				org.eclipse.sirius.ext.draw2d.figure package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.TransparentFigureGraphicsModifier has been moved to 
				org.eclipse.sirius.ext.draw2d.figure package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.SiriusWrapLabel has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.PolygoneAndPolylineDecoraction has been moved to 
				org.eclipse.sirius.ext.draw2d.figure package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.ParallelogramFigure has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.OneLineMarginBorder has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.ODesignEllipseFigure has been moved to 
				org.eclipse.sirius.ext.draw2d.figure package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.GaugeSectionFigure has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.GaugeCompositeFigure has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.DBorderedNodeFigure has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.anchor.AirSlidableImageAnchor has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures.util package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.AlphaDropShadowBorder has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.AirStyleDefaultSizeNodeFigure has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.AirNoteFigure has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.AirDefaultSizeNodeFigure has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.AbstractTransparentRectangle has been moved to 
				org.eclipse.sirius.ext.draw2d.figure package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.AbstractTransparentRectangle has been moved to 
				org.eclipse.sirius.ext.draw2d.figure package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.AbstractTransparentNode has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.AbstractTransparentImage has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.AbstractTransparentEllipse has been moved to 
				org.eclipse.sirius.ext.draw2d.figure package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.AbstractGeoShapePolygonFigure has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.diagram.ui.tools.api.figure.GradientRoundedRectangle. This parameter represents still the backgroundStyle in int format.
			org.eclipse.sirius.diagram.sequence.ui
		org.eclipse.sirius.diagram.sequence.ui.tool.internal.figure.HorizontalGuide has been moved to 
				org.eclipse.sirius.ext.draw2d.figure package.
			org.eclipse.sirius.diagram.sequence.ui.tool.internal.figure.CombinedFragmentInvisibleResizableCompartmentFigure has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.diagram.sequence.ui.tool.internal.figure.SequenceSlidableAnchor has been moved to 
				org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures package.
			org.eclipse.sirius.common
		PREF_ASK_TO_SAVE_RESOURCE_AFTER_MIGRATION has been added in 
				CommonPreferencesConstants. If true users will be asked to save the VSM or aird if it has been automatically migrated after a user action.
			org.eclipse.sirius.common.tools.api.util.SiriusCopier has been added to provide the ability to copy an object without copying the attribute seen as id by EMF. If this id is not set by the factory or during object creation and if its concrete expected type is 
				String, it is set during the copy using 
				org.eclipse.emf.ecore.util.EcoreUtil.generateUUID().
			org.eclipse.sirius.tests.swtbot.support
		AbstractSiriusSwtBotGefTestCase.changeSiriusCommonPreference(String, Boolean) has been added. It allows to change a preference defined in 
				oes.common plugin.
			See this document for the complete list of message keys added or removed in Sirius 6.1.0.
			 
		
			 
		
OperationCanceledException with a message containing the specific key word "
				-RT-" has now a specific behavior. In this case, the 
				OperationCanceledException is rethrown to rollback the command if this Java service is called from an AQL expression or through the service interpreter. You can refer to 
				bugzilla 531487 for more details.
			bot.viewByTitle (like “Problems” or “Error Log”) may not work anymore. Use 
						bot.viewByPartName instead.
					org.eclipse.swtbot.swt.finder.widgets.AbstractSWTBot.contextMenu(String) raise a 
						WidgetNotFoundException instead of a 
						TimeoutException.
					org.eclipse.sirius.tests.swtbot.support.utils.dnd.DndUtil has been updated to be compatible with Oxygen and Photon platforms. Some methods may not work anymore on Neon platform.
					org.eclipse.sirius.ui.tools.api.actions.export.ExportAction.execute and 
						org.eclipse.sirius.ui.tools.api.actions.export.ExportAction.createImageFiles, do not open UI Dialogs anymore. It throws an 
						java.lang.reflect.InvocationTargetException that wraps the real cause of the error (
						org.eclipse.sirius.ui.tools.api.actions.export.SizeTooLargeException or 
						java.lang.OutOfMemoryError). Callers have to handle properly the exception.
					org.eclipse.sirius.diagram.ui.tools.api.part.DiagramEditPartService.isTooBig, can now handle very large images that previously leads to incorrect exports.
					org.eclipse.sirius.ext.jface.viewers.IToolTipProvider is not used anymore to provide a tooltip on diagram element decorations defined in the VSM. The tooltip is defined directly with an interpreted expression on 
				GenericDecorationDescription, 
				MappingBasedDecoration and 
				SemanticBasedDecoration.
			org.eclipse.sirius.common
		org.eclipse.sirius.common.tools.api.interpreter.IExpressionProposal and its only implementation 
				DefaultExpressionProposal (in the same package) have been removed. They were not used anywhere, expression completion API is actually defined in package 
				org.eclipse.sirius.common.tools.api.contentassist which has its own types.
			org.eclipse.sirius
		org.eclipse.sirius.business.api.componentization.ViewpointRegistry.reloadAllFromPlugins() has been added to reload, from the runtime, all the VSMs of installed plug-ins and have the effect dynamically in the runtime.
			org.eclipse.sirius.business.api.componentization.ViewpointRegistryImpl() has been moved to 
				org.eclipse.sirius.business.internal.componentization package.
			contribution metamodel, which lived in package 
				org.eclipse.sirius.description.contribution, has been removed. It corresponded to an experimental feature which has been abandonned long ago.
			DRefreshable.refresh() EOperation has been removed from the metamodel, along with all its implementations. Client code that needs the functionality can use either 
				DialectManager.refresh() for 
				DRepesentations or the new 
				org.eclipse.sirius.diagram.tools.api.command.view.RefreshSiriusElement.refresh(DRefreshable) static method for diagram elements (
				DRefreshable.refresh() was a no-op for elements of other dialects). 
			org.eclipse.sirius.viewpointSpecificationModel extension point has been removed. It was part of the same experimental feauture and not actually used in practice.
			org.eclipse.sirius.business.api.session.danalysis.DAnalysisSessionHelper, the method 
				getViewpointSelection() has been removed. It used an internal type as argument which has also been removed.
			org.eclipse.sirius.business.api.helper.SiriusResourceHelper, the method 
				getCorrespondingViewpoint(Session session, URI, boolean) has been removed. It was not used anywhere, the real one is 
				getCorrespondingViewpoint(Session, Viewpoint) in the same class.
			org.eclipse.sirius.business.api.dialect.DialectServices (and all its implementations), the method 
				refreshEffectiveRepresentationDescription(DRepresentation, IProgressMonitor) has been removed. It corresponded to an experimental feature which has been abandonned long ago. 
			ToolSection, 
				ToolGroup  and 
				ToolInstance model element have been added in 
				viewpoint metamodel. These elements are used to represent tools available for a 
				DDiagram with their visibility, enabling and filtering status. 
				ToolSectionInstance are available in the 
				UIState of a 
				DDiagram by using the 
				toolSections reference. 
			ToolFilterDescriptionListener has been removed because of the new 
				ToolMangament mechanism used to handle tools and layer changes.
			org.eclipse.sirius.diagram
		org.eclipse.sirius.diagram.tools.api.preferences.SiriusDiagramPreferencesKeys.PREF_DISPLAY_GENERIC_EDGE_CREATION_TOOL has been added to make to possible to hide the new generic edge creation tool. See the 
				User-Visible Changes or the user documentation for more details.
			ToolManagement has been created to manage tool availability and status for a given 
				DDiagram. It comes with the listener interface 
				ToolChangeListener that can be used to be warned about tool changes.
			ToolConstants has been created to gather constants relative to tool management.
			SiriusDiagramPaletteFactory#GENERIC_CONNECTION_CREATION_TOOL and 
				SiriusDiagramPaletteFactory#TOOL_NOTEATTACHMENT have been moved in 
				ToolConstants
			ToolFilter and 
				ToolFilterFromDescription have been moved from the plugin 
				oes.diagram.ui to 
				oes.diagram in package 
				org.eclipse.sirius.diagram.tools.api.managment
			org.eclipse.sirius.diagram.ui
		org.eclipse.sirius.diagram.ui.tools.api.editor.tabbar.AbstractTabbarContributor.createStraightenContribution() has been added to make accessible the creation of the Straighten To tabbar contribution item.
			org.eclipse.sirius.diagram.ui.customLayoutAlgorithmProvider extension point has been added. It allows to contribute layout algorithms that can be configured directly in the VSM. This extension point comes with the following classes as API: 
				org.eclipse.sirius.diagram.ui.api.layout.CustomLayoutAlgorithmProvider, 
				org.eclipse.sirius.diagram.ui.api.layout.CustomLayoutAlgorithm, 
				org.eclipse.sirius.diagram.ui.api.layout.EnumChoice and 
				org.eclipse.sirius.diagram.ui.api.layout.LayoutOptionFactory.
			hideLayer(Layer), 
				showLayer(Layer), 
				addToolFilter(ToolFilter) and 
				removeToolFilter(ToolFilter) of 
				org.eclipse.sirius.diagram.ui.tools.api.graphical.edit.palette.PaletteManager have been made deprecated. They are not used anymore. The API 
				ToolManagement is now the entry point to make palette update regarding tools and layer changes.
			Diagram parameter of the methods 
				oes.update(Diagram) and 
				oes.update(Diagram,boolean) has been changed to 
				DDiagram.
			org.eclipse.sirius.ui
		org.eclipse.sirius.ui.business.api.viewpoint.ViewpointSelectionDialog has been removed.
			org.eclipse.sirius.tests.junit.support
		org.eclipse.sirius.tests.support.api.TestsUtil.isBeforeOxygenPlatform() has been added to detect if the current platform corresponds to a version before Oxygen.
			String parameter has been added to the method 
				org.eclipse.sirius.tests.support.api.TestsUtil.setTargetPlatform(). This new parameter corresponds to the plug-in name from where the tests are currently launched (for example 
				org.eclipse.sirius.tests.swtbot.Activator.PLUGIN_ID). It avoids to build a wrong target platform containing each Sirius plug-ins twice. 
			org.eclipse.sirius.tests.swtbot.support
		org.eclipse.sirius.tests.swtbot.support.utils.dnd.DndUtil#dragAndDrop(AbstractSWTBot<? extends Widget>, AbstractSWTBot<? extends Widget>) has been removed. When explicit drop coordinates are not needed, use the standard SWTbot 
				org.eclipse.swtbot.swt.finder.widgets.AbstractSWTBot.dragAndDrop(AbstractSWTBot<? extends Widget>) method instead. 
			See this document for the complete list of message keys added or removed in Sirius 6.0.
org.eclipse.sirius
		org.eclipse.sirius.business.api.query.SiriusReferenceFinder.of(EObject) has been added to provide an easy way to get the 
				SiriusReferenceFinder from an 
				EObject in the Sirius 
				Session. 
			org.eclipse.sirius.business.api.query.SiriusReferenceFinder.getReferencingSiriusElements(Collection<EObject>, SearchScope). The SearchScope.LOADED_REPRESENTATIONS_SCOPE scope covers the search and result scope. Then, no additional resource will be loaded using this scope.
			org.eclipse.sirius.diagram.ui
		PREF_SCALE_DIAGRAMS_ON_EXPORT from 
				org.eclipse.sirius.diagram.ui.tools.api.preferences.SiriusDiagramUiPreferencesKeys is now deprecated. User should use new preference 
				org.eclipse.sirius.ui.business.api.preferences.SiriusUIPreferencesKeys: 
				PREF_SCALE_LEVEL_DIAGRAMS_ON_EXPORT.
			margin has been added in 
				org.eclipse.sirius.diagram.ui.business.api.DiagramExportResult. This attribute indicates what margin has been used to produce a white frame during diagram export. This attribute is available from the getter 
				getMargin(). A new constructor is also available to pass on the margin 
				org.eclipse.sirius.diagram.ui.business.api.DiagramExportResult.DiagramExportResult(DDiagram, double, int, Collection<IPath>). 
			SiriusDiagramUiPreferencesKeys.PREF_SCALE_DIAGRAMS_ON_EXPORT, you must replace this override by an override of the new preference 
				SiriusUIPreferencesKeys.PREF_SCALE_LEVEL_DIAGRAMS_ON_EXPORT. Example: 
			SiriusEditPlugin.getPlugin().getPreferenceStore().setDefault(SiriusUIPreferencesKeys.PREF_SCALE_LEVEL_DIAGRAMS_ON_EXPORT.name(),0);
org.eclipse.sirius.ui
		org.eclipse.sirius.ui.business.api.preferences.SiriusUIPreferencesKeys: 
				PREF_SCALE_LEVEL_DIAGRAMS_ON_EXPORT. It is used to control the scaling level behavior when exporting diagrams. Refer to the JavaDoc for the details. 
			org.eclipse.sirius.ui.business.api.dialect.ExportFormat has a new attribute representing the scaling level to use for diagram export. It is defined by an integer type. Refer to the JavaDoc for details on its meaning.
			org.eclipse.sirius.tests.junit.support
		SiriusTestCase.loadModeler(URI, EditingDomain) allows to load the VSM at the specified URI and register all its Viewpoints in the current testcase. There is a new method, 
				org.eclipse.sirius.tests.support.api.SiriusTestCase.loadModeler(URI, EditingDomain, boolean), to allow to load the VSM at the specified URI without registering its viewpoints. It can be useful to load a VSM for an editing domain of another session than the current session of the
			testcase.
			 
 
		
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures.SiriusDefaultSizeNodeFigure has been added in plugin 
				org.eclipse.sirius.ext.gmf.runtime. The goal of the class is to workaround a 
				GMF bug. So if you have created class which inherits from 
				org.eclipse.gmf.runtime.gef.ui.figures.DefaultSizeNodeFigure, you must now use the new 
				SiriusDefaultSizeNodeFigure instead.
			uid to all instances of type DRepresentation. This 
				uid is used to reference the DRepresentation from the DRepresentationDescriptor. 
				DRepresentationDescriptor.repPath has been changed to have 
				uid as fragment. The corresponding version, stored in attribute version of viewpoint:DAnalysis of the aird file, is 
				12.1.0.201707281200.
			See this document for the complete list of message keys added or removed in Sirius 5.0.
A new mode (currently experimental) is available to load representations on demand and not during session opening. This feature implies to serialize Sirius representations in separate resources. This mode can be activated by setting the system property 
			createLocalRepresentationInSeparateResource at true. For more detail, see the developer documentation: 
			Representations lazy loading (experimental).
		
org.eclipse.sirius
		org.eclipse.sirius.business.api.session.Session interface to retrieve the session an arbitrary 
				EObject is part of: 
				Optional<Session> s = Session.of(myObject);. It returns a 
				java.util.Optional<Session> so all the usual patterns apply, e.g. 
				Session.of(obj).ifPresent(s -> doSomething(s));.
			org.eclipse.sirius.viewpoint.DRepresentationDescriptor.isLoadedRepresentation() has been added to know if the representation linked with this {@link DRepresentationDescriptor} is loaded. By default, all representations are held in the same resource than the DRepresentationDescriptor, in that case the method will always return true.
			org.eclipse.sirius.business.api.session.danalysis.DAnalysisSession.allAnalyses() has been added in the interface to reflect the already existing 
				org.eclipse.sirius.business.internal.session.danalysis.DAnalysisSessionImpl.allAnalyses() implementation.
			org.eclipse.sirius.business.api.dialect.DialectManager.getLoadedRepresentations(EObject, Session) has been added to get all loaded representations in the given session with the given EObject as target.
			org.eclipse.sirius.business.api.dialect.DialectServices.getAllLoadedRepresentations(Session) has been added to get all loaded representations in the given session.
			org.eclipse.sirius.business.api.helper.SiriusUtil.REPRESENTATIONS_FOLDER_NAME constant has been added. This is the default folder where representations file (*.srm) are located if the system property “createLocalRepresentationInSeparateResource” is set at true.
			org.eclipse.sirius.tools.api.command.ui.UICallBack.shouldDeleteRepresentation(Set<DRepresentationDescriptor>) has been added to be called when the user interface should prompt for a choice about the representation deletion.
			org.eclipse.sirius.business.api.query.SiriusReferenceFinder and 
				org.eclipse.sirius.business.api.query.EObjectQuery.getSiriusReferenceFinder() method to get it have been added. This API allows getting the DRepresentations or DRepresentationElements that reference the provided semantic object. It also allows getting the DRepresentationDescriptor which associated DRepresentation is or contains elements that reference the provided semantic object. This API will be useful for 
				representation lazy loading as it may, in the future, not need to load all not yet loaded representations. For now, the use of this API will load all not loaded representations.
			org.eclipse.sirius.business.api.dialect.DialectServices.getRepresentationDescriptors(EObject, Session) has been moved to 
				org.eclipse.sirius.business.api.dialect.DialectManager.
			org.eclipse.sirius.business.api.dialect.DialectServices.getAllRepresentationDescriptors(Session) has been moved to 
				org.eclipse.sirius.business.api.dialect.DialectManager.
			org.eclipse.sirius.business.api.dialect.DialectServices.getRepresentationDescriptors(RepresentationDescription, Session) has been moved to 
				org.eclipse.sirius.business.api.dialect.DialectManager.
			getRepresentationDescriptors(EObject, Session), 
				getAllRepresentationDescriptors(Session) and 
				getRepresentationDescriptors(RepresentationDescription, Session) have been removed from 
				AbstractRepresentationDialectServices. They are implemented in 
				DialectManagerImpl.
			org.eclipse.sirius.business.api.dialect.DialectServices.getRepresentations(EObject, Session) has been moved to 
				org.eclipse.sirius.business.api.dialect.DialectManager
			org.eclipse.sirius.business.api.dialect.DialectServices.getAllRepresentations(Session) has been moved to 
				org.eclipse.sirius.business.api.dialect.DialectManager
			org.eclipse.sirius.business.api.dialect.DialectServices.getRepresentations(RepresentationDescription, Session) has been moved to 
				org.eclipse.sirius.business.api.dialect.DialectManager
			getRepresentations(EObject, Session), 
				getAllRepresentations(Session) and 
				getRepresentations(RepresentationDescription, Session) have been removed from 
				AbstractRepresentationDialectServices. They are implemented in 
				DialectManagerImpl.
			org.eclipse.sirius.common
		org.eclipse.sirius.common.tools.api.util.LazyCrossReferencer.setEObjectToBeIgnored(Predicate<EObject>) has  been added to filter inverse references to prevent some references resolution.
			org.eclipse.sirius.common.tools.api.util.WorkspaceUtil.getFilesFromWorkspace(Collection<IProject>, String) signature has been modified in 
				getFilesFromWorkspace(Collection<IContainer>, String) to be more generic.
			org.eclipse.sirius.diagram
		org.eclipse.sirius.diagram.business.api.query.DDiagramQuery. This query, 
				getAllActivatedLayers, returns all the activated layers (transient or not) of the given diagram. It should replace 
				DDiagram.getActivatedLayers in several cases if you directly use it.
			org.eclipse.sirius.diagram.ui
		org.eclipse.sirius.diagram.ui.tools.api.preferences.SiriusDiagramUiPreferencesKeys: 
				PREF_SCALE_DIAGRAMS_ON_EXPORT, 
				PREF_MAXIMUM_EXPORT_BUFFER_SIZE, 
				PREF_MAXIMUM_EXPORT_BUFFER_SIZE_WINDOWS. They are used to control the auto-scaling behavior when exporting diagrams. Refer to the JavaDoc for the details.
			org.eclipse.sirius.diagram.ui.tools.api.part.DiagramEditPartService, two new methods have been added:
				setAllowDownScaling(boolean): when auto-scaling is enabled (which is controlled by the already existing 
						setAutoScalingEnabled()), this is used to control if down-scaling is allowed or not. 
					getScalingFactor(): after the export has been performed, this can be used to obtain the scaling factor that was effectively used.
					org.eclipse.sirius.diagram.ui.business.api.DiagramExportResult has been added, which inherits from 
				ExportResult. It is returned by the 
				DialectManager.exportWithResult() methods when the representation exported is a diagram, and in addition to the information provided by 
				ExportResult gives access to the scaling factor that was used when exporting the diagram.
			org.eclipse.sirius.diagram.ui.tools.api.preferences.SiriusDiagramUiPreferencesKeys.PREF_SHOW_SYNCHRONIZE_STATUS_DECORATOR has been added to say if the 
				synchronize status decorator must be shown or not.
			checkShapesIntersect() has been added in 
				org.eclipse.sirius.diagram.ui.business.api.query.ConnectionEditPartQuery to check if source and target of the connection intersect (only intersect – not one contained in another).
			org.eclipse.sirius.ext.emf.edit
		org.eclipse.sirius.ext.emf.edit.EditingDomainServices does not use 
				Collection anymore as return type or parameter type in its services. 
				java.util.Collection has been replaced by 
				java.util.List. As mentioned in the 
				specifier documentation, it is recommended to use List or Set instead of Collection in java services signature.
			org.eclipse.sirius.ui
		org.eclipse.sirius.ui.tools.api.dialogs.AbstractExportRepresentationsAsImagesDialog a new method 
				isAutoScaleDiagram() has been added to indicate (once the dialog has been closed) if the user has requested to enable auto-scaling on diagram export. 
			org.eclipse.sirius.ui.tools.api.actions.export.ExportAction, a new method 
				setAutoScaleDiagram(boolean) to ask for automatic scaling of diagrams on export.
			org.eclipse.sirius.ui.business.api.dialect.DialectUIServices, two new methods 
				exportWithResult() have been added. They are equivalent to the existing 
				export() methods (which return 
				void) except that they return an instance of the new type 
				org.eclipse.sirius.ui.business.api.dialect.ExportResult. This gives access to the list of all the actual files produced by the export operation. Note that in the case of the diagram dialect, 
				exportWithResult() actually returns a more specific 
				DiagramExportResult with additional diagram-specific information.
			org.eclipse.sirius.ui.business.api.dialect.ExportFormat has a new attribute representing the scaling policy to use for diagram. It is defined by a new enumerated type 
				ExportFormat.ScalingPolicy which can have four different values: 
				WORKSPACE_DEFAULT, 
				AUTO_SCALING, 
				NO_SCALING, 
				AUTO_SCALING_IF_LARGER. Refer to the JavaDoc for details on their meanings.
			org.eclipse.sirius.ui.tools.api.wizards.CreateEMFModelWizard is a new wizard that can be invoked to create instances of any metamodel. It will ask the end-user for a metamodel (
				EPackage), a concrete type to instanciate as root element, and finally the local path of the file to create. See the class Javadoc for sample usage. Note that the first two pages of the wizard (EPackage and root type selection) can be customized through the 
				org.eclipse.sirius.common.package_meta_data extension point to provide user-oriented name and documentation for an EPackage, and to suggest specific EClasses as good root candidates.
			org.eclipse.sirius.ui.tools.api.command.AbstractSWTCallback.shouldDeleteRepresentation(Set<DRepresentationDescriptor>) default implementation has been added to prompt the confirm dialog.
			org.eclipse.sirius.ui.business.api.session.SessionEditorInput.SessionEditorInput(URI, URI, String, Session) has been added to provide the 
				DRepresentationDescriptor URI to retrieve the 
				DRepresentation from the 
				DRepresentationDescriptor.getRepresentation() method instead of performing a direct load.
			org.eclipse.sirius.ui.editor
		org.eclipse.sirius.ui.editor.api.pages. They are the following: 
				AbstractSessionEditorPage, 
				PageProvider, 
				PageUpdateCOmmand, 
				PositioningKind, 
				PageUpdateCommandFactory. These classes allow to provide custom pages to session editor instances.
			org.eclipse.sirius.ui.editor.sessionEditorPageProvider has been added to allow custom page providing for session editor instances.
			Sirius 5.0.1 is a maintenance release with only bugfixes and small tweaks to the UI of the aird editor.
package::Class syntax for domain classes and type names in the VSM is now fully supported and the new default. It means this syntax is interpreted by Sirius and completion is provided for it when the first 
				: character is entered. The legacy syntax 
				package.Class is still supported for compatibility.
			See this document for the complete list of message keys added or removed in Sirius 5.0.
org.eclipse.sirius.common 
		org.eclipse.sirius.common.tools.api.util.SiriusCrossReferenceAdapterImpl.setFeatureToBeCrossReferencedWhiteList(Collection<EReference>) to set a white list of references that must be referenced even if the reference is derived.
			org.eclipse.sirius.common.tools.api.util.SiriusCrossReferenceAdapterImpl.isIncluded(EReference) has been overridden to consider features in the white list.
			org.eclipse.sirius.common.package_meta_data has been added. It can be used to associate user-oriented meta-data to Ecore metamodels, identified by their 
				nsURI: a user-oriented name/label (as opposed to the technical nsURI), a (short) description/documentation, and a list of suggested EClasses defined in the EPackage that are good candidates as root model elements. These meta-data are currently used only in the generic model creation wizard integrated in the aird editor.
			org.eclipse.sirius.common.ui 
		org.eclipse.sirius.common.ui.tools.api.dialog.FeatureEditorDialog class has been removed; use the 
				org.eclipse.emf.edit.ui.celleditor.FeatureEditorDialog equivalent provided by EMF directly instead.
			org.eclipse.sirius 
		createRepresentationInSeparateResource=true. That means all new representations will be saved, when this property is enabled, in a separate file with 
				*.srm extension.
			org.eclipse.sirius.business.api.dialect.DialectServices.canCreate(EObject, RepresentationDescription, boolean) has been added to better control the checks done by already existing 
				org.eclipse.sirius.business.api.dialect.DialectServices.canCreate(EObject, RepresentationDescription) method. The new boolean allow to deactivate the check verifying that the viewpoint of the given description must be activated so the method can return true.
			org.eclipse.sirius.viewpoint.description.DAnnotation.references feature has been added. It allows to have some information without having to search them into the entire model of the Sirius session. Ideally only elements from semantic resources of the session should be referenced or else it may broke the session behavior either because resolving too soon EObject in the session or because adding a resource that is not known by Sirius session.
			org.eclipse.sirius.business.api.query.EObjectQuery.getImpactedRepDescriptorFromDAnnotationData() method has been added to help retrieve the 
				DRepresentationDescriptors which owned 
				DAnnotation are referencing a given 
				EObject with 
				DAnnotation.references.
			org.eclipse.sirius.viewpoint.DRepresentationDescriptor#repPath attribute has been added to hold the representation path since the 
				org.eclipse.sirius.viewpoint.DRepresentationDescriptor#representation feature is derived. This attribute is not intended to be modified by client. You should use 
				org.eclipse.sirius.viewpoint.DRepresentationDescriptor.setRepresentation(DRepresentation) or 
				org.eclipse.sirius.viewpoint.DRepresentationDescriptor.updateRepresentation(DRepresentation) instead.
			org.eclipse.sirius.viewpoint.DRepresentationDescriptor.updateRepresentation(DRepresentation) has been added to update the repPath attribute according to the given representation. This method is intended to be called if the representation instance is still the same but requires to recompute the repPath.
			org.eclipse.sirius.business.api.query.FileQuery.isSrmFile() has been added to indicate if the file extension is dedicated to a file containing representations.
			org.eclipse.sirius.dRepresentationLocationRule extension point has been added to customize the resource location of new representations. See 
				Provide representation location rule (experimental) for more details.
			org.eclipse.sirius.business.api.session.danalysis.DRepresentationLocationRule interface has been added to provide a customized rule to the 
				org.eclipse.sirius.dRepresentationLocationRule extension point.
			org.eclipse.sirius.business.api.helper.SiriusUtil.REPRESENTATION_FILE_EXTENSION constant has been added to reference the new *.srm extension.
			org.eclipse.sirius.business.api.session.Session.getSrmResources() has been added to provide the list of representation resources (serialized as *.srm files by default).
			org.eclipse.sirius.business.api.query.ResourceQuery.isAirdOrSrmResource() has been added to know whether the resource is a srm resource (
				org.eclipse.sirius.business.api.query.ResourceQuery.isSrmResource()) or an aird resource.
			org.eclipse.sirius.business.api.query.ResourceQuery.isSrmResource() has been added to know whether the resource contains a 
				DRepresentation as root element.
			org.eclipse.sirius.diagram.ui.tools.api.migration.DiagramCrossReferencer.DiagramCrossReferencer(Collection<Resource>) constructor has been added to compute the cross references on a list of resources.
			org.eclipse.sirius.modelOperationManager extension point has been addded. It allows the contribution of new types of 
				Model Operations which are then usable in modeler definitions (
				*.odesign).
			org.eclipse.sirius.viewpoint.DRepresentationDescriptor#representation feature is now derived, transient and volatile. The representation is compute by using the 
				org.eclipse.sirius.viewpoint.DRepresentationDescriptor#repPath attribute.
			org.eclipse.sirius.business.api.query.DViewQuery.getAllContentInRepresentations(Predicate<? super EObject>) now takes a 
				java.util.Predicate (from Java 8) as argument instead of a 
				com.google.common.base.Predicate.
			org.eclipse.sirius.ui.modelingprojectresourcelistener is no longer expected to be used. It is an internal extension point. Clients using this extension point to ignore some files as potential semantic models must now use the extension point 
				org.eclipse.sirius.resourceStrategy. This extension point existed before Sirius 5.0.0 but was not API. It becomes API with Sirius 5.0.0, see the 
				developer documentation for more details.
				boolean isPotentialSemanticResource(IFile) and 
						boolean isLoadableModel(IFile, Session) of class 
						org.eclipse.sirius.ui.tools.api.views.modelexplorerview.resourcelistener.DefaultModelingProjectResourceListener, you can now create a 
						resourceStrategy of type 
						org.eclipse.sirius.business.api.resource.strategy.ResourceStrategy.ResourceStrategyType.SEMANTIC_RESOURCE and respectively override 
						boolean isPotentialSemanticResource(URI) and 
						boolean isLoadableModel(URI,Session). As a reminder, to get an URI from an IFile, you can use: 
						URI.createPlatformResourceURI(iFile.getFullPath().toString(), true). And to get an IFile from an URI, you can use: 
						ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(uri.toPlatformString(true))).
					boolean isRepresentationsModel(IFile) and 
						boolean isVsmModel(IFile) of class 
						org.eclipse.sirius.ui.tools.api.views.modelexplorerview.resourcelistener.DefaultModelingProjectResourceListener, they no longer exist. They correspond to core API and is not supposed to be overridden. They are accessible through API 
						org.eclipse.sirius.business.api.query.FileQuery.FileQuery(IFile).
					org.eclipse.sirius.resourceStrategy are now APIs:
						org.eclipse.sirius.business.api.resource.strategy.ResourceStrategyRegistry: Registry to have access to all overridable services through a 
								ResourceStrategy
							org.eclipse.sirius.business.api.resource.strategy.ResourceStrategy: Interface implemented by all resource strategies
							org.eclipse.sirius.business.api.resource.strategy.AbstractResourceStrategyImpl: Default implementation of above interface. All resource strategies contributed with the extension need to extend it.
							org.eclipse.sirius.business.api.resource.strategy.LegacyReleaseResourceStrategyImpl (previously named 
								DefaultResourceStrategyImpl): A resource strategy with the code used before the optimization concerning the 
								org.eclipse.sirius.business.api.resource.strategy.ResourceStrategy.ResourceStrategyType.RELEASE_RESOURCE_AT_RESOURCESET_DISPOSE. It is not used but can be quickly contributed by someone that want the previous behavior (before Sirius 4.0.0 M6).
							org.eclipse.sirius.business.api.control.SiriusUncontrolCommand with signature 
				SiriusUncontrolCommand(EObject, boolean, IProgressMonitor) has been removed; instead, use the alternate constructor with an additional explicit 
				boolean shouldEndBySaving parameter (set it to 
				true to obtain the same behavior as the removed constructor).
			org.eclipse.sirius.business.api.dialect.DialectServices, methods 
				canCreateIdentifier and 
				createIdentifier have been removed.
			org.eclipse.sirius.business.api.dialect.identifier package and all its content (
				AbstractRepresentationElementIdentifier and 
				RepresentationElementIdentifier) have been removed.
			org.eclipse.sirius.ui
		org.eclipse.sirius.ui.business.api.viewpoint.ViewpointSelection.Callback: 
				selectViewpoint(Viewpoint, Session, boolean, Set<Viewpoint>, IProgressMonitor) and 
				deselectViewpoint(Viewpoint, Session, Set<Viewpoint>, IProgressMonitor). These methods add a new parameter that is a set of viewpoints compared to the same methods without these parameters. These set contains all viewpoints that will be deactivated/activated in addition of the one that is asked to be deactivated/activated. It allows the callback implementation to better handle viewpoint dependencies interaction by being able to know if missing dependencies will be activated or deactivated.
			org.eclipse.sirius.ui.business.api.editor.ISiriusEditor has been added to gather 
				org.eclipse.sirius.ui.editor.SessionEditor and 
				org.eclipse.sirius.ui.business.api.dialect.DialectEditor under the same abstraction. It allows to provide 
				org.eclipse.sirius.ui.business.api.session.IEditingSession saving functionalities for session editor or any new editor that is not a dialect editor. 
			getSiriusEditors()  has been added to interface 
				org.eclipse.sirius.ui.business.api.session.IEditingSession. It allows to retrieve all 
				org.eclipse.sirius.ui.business.api.editor.ISiriusEditor that are registered in the session.
			org.eclipse.sirius.ui.business.api.dialect.DialectUIServices.refreshEditor(DialectEditor, IProgressMonitor) has been added to allow specifiers to do a full refresh of its dialect editor easily.
			org.eclipse.sirius.ui.tools.api.color.VisualBindingManager.getDefaultFontWithRuntimeSizeAndFromLabelFormat(List<FontFormat>) has been added to allow to retrieve a font using the given format and the default Sirius font (arial) and the runtime height.
			org.eclipse.sirius.ui.tools.api.color.VisualBindingManager.getFontFromNameAndLabelFormatAndWithDefaultSize(List<FontFormat>, String) has been added to allow to retrieve a font using the given format and the given font name and the runtime height.
			org.eclipse.sirius.ui.tools.api.wizards.page.ViewpointsSelectionWizardPage.setBrowserMinWidth(int) has been added to allow modification of the minimum width (with default value “0”) of the browser part of the viewpoint selection wizard.
			org.eclipse.sirius.ui.tools.api.wizards.page.ViewpointsSelectionWizardPage.setColumnWidthEquality(boolean) has been added to allow modification of column width equality (with default value “false”) of the root composite of the viewpoint selection wizard.
			org.eclipse.sirius.ui.tools.api.color.VisualBindingManager.getDefaultFontWithRuntimeSizeAndFromLabelFormat(List<FontFormat>) has been added to allow to retrieve a font using the given format and the default Sirius font (arial) and the runtime height.
			org.eclipse.sirius.ui.tools.api.color.VisualBindingManager.getFontFromNameAndLabelFormatAndWithDefaultSize(List<FontFormat>, String) has been added to allow to retrieve a font using the given format and the given font name and the runtime height.
			org.eclipse.sirius.ui.tools.api.dialogs.AbstractExportRepresentationsAsImagesDialog.isExportDecorations() has been added to know if decorations are displayed in the exported image.
			org.eclipse.sirius.ui.business.api.dialect.DialectUIServices.export(DRepresentation, Session, IPath, ExportFormat, IProgressMonitor, boolean) method has been added. Compared to the previous method signature, the boolean parameter 
				exportDecorations has been added to allow to choose if the diagram element decorations will be exported or not.
			exportDecorations has been added to 
				org.eclipse.sirius.ui.tools.api.actions.export.ExportAction.ExportAction(Session, Collection<DRepresentation>, IPath, ImageFileFormat, boolean, boolean) constructor. It allows to choose if the diagram element decorations will be exported or not.
			attachEditor(DialectEditor) from the interface 
				org.eclipse.sirius.ui.business.api.session.IEditingSession has its parameter type modified from 
				DialectEditor to the new abstraction 
				ISiriusEditor to provide saving capabilities with other editors than the dialect ones.
			detachEditor(DialectEditor) from the interface 
				org.eclipse.sirius.ui.business.api.session.IEditingSession has its parameter type modified from 
				DialectEditor to the new abstraction 
				ISiriusEditor to provide saving capabilities with other editors than the dialect ones.
			detachEditor(DialectEditor, boolean) from the interface 
				org.eclipse.sirius.ui.business.api.session.IEditingSession has its first parameter type modified from 
				DialectEditor to the new abstraction 
				ISiriusEditor to provide saving capabilities with other editors than the dialect ones.
			org.eclipse.sirius.ui.tools.api.assist.TextContentProposalProvider.getContentContext(String, int) has been made protected instead of private to allow to use it for sub types.
			org.eclipse.sirius.ui.tools.api.assist.TextContentProposalProvider.removeDuplicatedProposals(List<ContentProposal>) has been made protected instead of private to allow to use it in sub types.
			org.eclipse.sirius.ui.tools.api.project.ModelingProjectManager.createLocalRepresentationsFile(IProject, IProgressMonitor) has its return type changed from 
				void to 
				Session to allow callers to have access to the newly created session directly.
			org.eclipse.sirius.ui.tools.api.views.ViewHelper.getContentProvider() has been renamed into 
				createContentProvider() and now returns a new instance on each invocation.
			org.eclipse.acceleo.ui.interpreter, which is available directly from the Sirius update-sites). The corresponding interface 
				org.eclipse.sirius.ui.tools.api.views.interpreterview.InterpreterView has been removed. Technically, the implementation code for the old 
				Model Request Interpreter view is still present if needed during the transition, but not exposed or used anywhere. It will be removed in a future version. 
			org.eclipse.sirius.diagram
		org.eclipse.sirius.diagram.business.api.helper.decoration.DecorationHelper has been added. It provides 
				updateDecorations(List<Layer>) and 
				updateAllDecorations methods that allow to update only decorations in a diagram.
			org.eclipse.sirius.diagram.business.api.refresh.IRefreshOverride.aroundRefresh(DDiagram) has been moved to 
				org.eclipse.sirius.diagram.business.api.refresh.IRefreshExtension to unify methods handling refresh extension under one interface. 
			org.eclipse.sirius.diagram.business.api.refresh.IRefreshExtension.aroundRefresh(DDiagram) has been modified with a default behavior that is the one before introduction of the method to avoid breaking compatibility.
			org.eclipse.sirius.diagram.business.api.refresh.IRefreshOverride has been removed because its only method has been moved into 
				org.eclipse.sirius.diagram.business.api.refresh.IRefreshExtension interface
			org.eclipse.sirius.diagram.business.internal.dialect.identifier package and all its content (
				DiagramIdenttifier, 
				NodeIdentifier, 
				EdgeIdentifier, 
				NodeContainerIdentifier, and 
				NodeStyleIdentifier) have been removed.
			org.eclipse.sirius.diagram.ui
		org.eclipse.sirius.diagram.ui.business.api.query.ViewQuery.SPECIFIC_STYLES & 
				org.eclipse.sirius.diagram.ui.business.api.query.ViewQuery.VERTICAL_ALIGNMENT have been added to retrieve the initial label alignment of Notes from the Palette (see 
				user-visible changes ). Currently the vertical alignment can not be changed (potential new feature later).
			org.eclipse.sirius.diagram.ui.graphical.edit.policies.SiriusDecoratorEditPolicy has been added to improve the behavior of decorator selection.
			IDecorator to decorate EditPart in diagram. That allows Sirius to manage the relative positioning between decorations.
				org.eclipse.sirius.diagram.ui.tools.api.decoration.SiriusDecorationDescriptorProvider represents a provider able to give the decoration descriptors. 
						org.eclipse.sirius.diagram.ui.tools.api.decoration.AbstractSiriusDecorationDescriptorProvider is an abstract class that can be inherited to implement 
						SiriusDecorationDescriptorProvider.
					org.eclipse.sirius.diagram.ui.tools.api.decoration.DecorationDescriptor is a simple POJO that contains information needed to display decoration.
					org.eclipse.sirius.diagram.ui.tools.api.decoration.SiriusDecorationProviderRegistry allows to register and get 
						SiriusDecorationDescriptorProvider.
					SiriusDiagramUiPreferencesKeys.PREF_AUTHORIZE_DECORATION_OVERLAP has been added in 
				org.eclipse.sirius.diagram.ui.tools.api.preferences.SiriusDiagramUiPreferencesKeys. If true, the overlap is authorized between decoration group on diagram element.
				org.eclipse.sirius.diagram.ui.provider.DiagramUIPlugin.Implementation.DynamicDiagramUIPreferences and the method 
						org.eclipse.sirius.diagram.ui.provider.DiagramUIPlugin.Implementation.getDynamicPreferences() have been added to have good performances in getting the preference value.
					SiriusDiagramUiPreferencesKeys.PREF_PRINT_DECORATION has been added in 
				org.eclipse.sirius.diagram.ui.tools.api.preferences.SiriusDiagramUiPreferencesKeys. If true, the decorations of the diagram elements of a diagram will be printed, when printing a diagram.
			org.eclipse.sirius.diagram.ui.tools.api.part.DiagramEditPartService.DiagramEditPartService class which can be used to export diagrams as images is now automatically adapting the output resolution for raster image based on maximum buffer size specified through the 
				plugin.propeties file of the 
				org.eclipse.sirius.diagram.ui plugin. This leads to a noticeable increase of the export image size (you can expect a 10 factor on small diagrams) and the method will no longer fail with OutOfMemory errors as bigger diagrams will lead to a lower output resolution. Implementers using this class can override the 
				DiagramEditPartService.getMaximumTotalSize() method to return their own limit or 
				DiagramEditPartService.getExportResolutionFactor(DiagramEditPart, SiriusDiagramImageGenerator) and return 
				1.0 to get back to the previous behavior.
			org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManagerWithMapping that are 
				getFormatData(FormatDataKey, RepresentationElementMapping) and 
				addFormatData(FormatDataKey, RepresentationElementMapping, AbstractFormatData) have been moved into the interface 
				org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManager to reduce interface numbers for less complexity.
			org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManagerWithMapping that are 
				getFormatData(FormatDataKey, RepresentationElementMapping) and 
				addFormatData(FormatDataKey, RepresentationElementMapping, AbstractFormatData) have been moved into the interface 
				org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManager to reduce interface numbers for less complexity.
			getFormatData(FormatDataKey key) and 
				addFormatData(FormatDataKey key, AbstractFormatData formatData) have been removed from interface 
				org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManager because they were deprecated.
			org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManagerWithMapping has been removed because all its methods have been moved into interface 
				org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManager
				org.eclipse.sirius.diagram.ui.tools.api.decoration.AbstractSiriusDecorator is removed because now useless.
					getFormatData(FormatDataKey key) and 
				addFormatData(FormatDataKey key, AbstractFormatData formatData) have been removed from interface 
				org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManager because they were deprecated.
			org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManagerWithMapping has been removed because all its methods have been moved into interface 
				org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManager
			org.eclipse.sirius.table
		DTableElementSynchronizer 
				EClass has been removed from the table meta-model. It only defined 
				EOperations and has been replaced with an equivalent (internal) plain Java class.
			org.eclipse.sirius.tree.ui
		org.eclipse.sirius.tree.ui.tools.api.preferences.SiriusTreeUiPreferencesKeys has been added with the enum value 
				SiriusTreeUiPreferencesKeys.PREF_ALWAYS_USE_STANDARD_FONT_SIZE. This enum value is the preference when true allowing to use runtime font height when displaying Sirius tree editor’s items instead of the one specified in the VSM.
			org.eclipse.sirius.ui.editor
		This plugin is new in Sirius 5.0. It provides a session editor showing loaded models, representations and viewpoint activation status of the session. It has functionalities allowing to change the viewpoint activation status, to create/remove representations or to load unload external models. The graphical block showing loaded models is integrated with CNF. You can provide content extension to its viewer by using an id matching the pattern 
			org.eclipse.sirius.ui.editor.graphicalcomponents.semanticModelsViewer.contentExtension.*. You also can provide action extension by using an id matching the pattern 
			org.eclipse.sirius.ui.editor.graphicalcomponents.semanticModelsViewer.actionExtension.*. The extension will be selectable/unselectable by using a 
			Customize View button on the models block header.
		
org.eclipse.sirius.properties.core
		org.eclipse.sirius.properties.core.internal.converter.ViewDescriptionConverter has been moved as an API to 
				org.eclipse.sirius.properties.core.api.ViewDescriptionConverter.
			org.eclipse.sirius.properties.core.api.
			org.eclipse.sirius.properties.core.internal.SiriusInterpreter has been moved as an API to 
				org.eclipse.sirius.properties.core.api.SiriusInterpreter. This class could be used by those who want to create custom model operations using the Properties framework.
			org.eclipse.sirius.properties.core.api.SiriusDomainClassTester has been added as an API for those who want to create custom model operations using the Properties framework.
			org.eclipse.sirius.ext.emf.edit.EditingDomainServices.createInstance(EClass) has been added to allow the creation of a new instance from an EClass in the interpreters.
			org.eclipse.sirius.properties.defaultrules.
			org.eclipse.sirius.ui.properties
		org.eclipse.sirius.ui.properties to the newly created plugin 
				org.eclipse.sirius.properties.core. It includes all the APIs and both extension points.
			org.eclipse.sirius.editor.properties
		org.eclipse.sirius.editor.properties.sections.description.representationdescription the class 
				RepresentationDescriptionMetamodelsUpdater has been replaced by 
				DescriptionMetamodelsUpdater which can now be used with any EObject with a many-valued EReference to EPackages. The behavior of the class 
				RepresentationDescriptionMetamodelPropertySectionSpec has been transfered to an abstract class independent of 
				RepresentationDescription named 
				AbstractMetamodelPropertySectionSpec. Those classes are now used for the edition of the metamodels of both the Properties view description and the various representations.
			org.eclipse.sirius.tests.junit.support
		org.eclipse.sirius.tests.support.api.TestsUtil.setTargetPlatform() has been added to allow to load a PDE target platform according to all known OSGi bundles. It is useful to compile a plug-in in the execution runtime of the tests.
			org.eclipse.sirius.tests.support.api.OpenedSessionsCondition has been extracted from a junit test to be used by multiple junit tests. It allows to wait until a session is in opened state.
			org.eclipse.sirius.tests.swtbot.support
		getTreeItem(SWTBotTreeItem[], String, boolean, boolean) has been added in 
				org.eclipse.sirius.tests.swtbot.support.utils to retrieve recursively a 
				SWTBotTreeItem in a 
				SWTBotTreeItem array. Compared to 
				getTreeItem(SWTBotTreeItem[], String), it adds the capability to control if the search must be done on enabled items or enabled and disabled items and if the tree must be expanded during the search to check non displayed items.
			org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor.dragCentered(String, Class<? extends EditPart>, int, int) improving the dragCentered method by adding the aimed Class in parameter.
			mouseDragWithKey(int, int, int, int, int) in classes 
				org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor, 
				org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusGefViewer and 
				org.eclipse.sirius.tests.swtbot.support.api.widget.SWTBotSiriusFigureCanvas. This allows to correctly wait the end of the drag’n’drop.
				final AtomicBoolean dragFinished = new AtomicBoolean(false);
editor.dragWithKey(start.x, start.y, endpoint.x, endpoint.y, SWT.F3, dragFinished);
// Wait that the drag is done (the async Runnable simulating the
// drag)
bot.waitUntil(new ICondition() {
    @Override
    public boolean test() throws Exception {
        return dragFinished.get();
    }
    @Override
    public void init(SWTBot bot) {
    }
    @Override
    public String getFailureMessage() {
        return "The drag'n'drop operation has not finished.";
    }
});
// Wait that the figures are redrawn. In a fast environment, figures
// are not really redrawn and the rest of the test is not reliable.
SWTBotUtils.waitAllUiEvents();
		
			 
 
		
org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManagerWithMapping class has been added to handle copy/paste format with mapping information when an element target of a format pasting has many source diagram format corresponding to its key. In this case, we use the mapping information to get the more precise data format. And if no result matched, then we return the first found by using the key.
			org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManagerWithMapping.getFormatData(FormatDataKey, RepresentationElementMapping) method has been added to retrieve during format pasting the data format corresponding to the given key and mapping when more than one result correspond to the key. If no result matches the mapping, then the first result found by using the key is returned.
			org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManagerWithMapping.addFormatData(FormatDataKey, RepresentationElementMapping, AbstractFormatData) method has been added to allow data format manager to register data format with mapping information when copying format.
			
			org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManager.getFormatData(FormatDataKey) It is replaced by 
			org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManagerWithMapping.getFormatData(FormatDataKey, RepresentationElementMapping) to better handle copy/paste format cases.
		
			org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManager.addFormatData(FormatDataKey, AbstractFormatData) It is replaced by 
			org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManagerWithMapping.addFormatData(FormatDataKey, RepresentationElementMapping, AbstractFormatData) to better handle copy/paste format cases.
		
org.eclipse.sirius.table.business.api.helper.TableHelper.getEStructuralFeature(DLine, DColumn) method has been added to retrieve the EStructuralFeature associated to a table column.
			UICallBack in which you can have an UI feedback letting you choose if you want to open the session anyway. Warning: if you choose to proceed, there is no guarantee that the resulting session will be usable. It may even lead to data loss or corruption; use at your own risk.
			If a viewpoint has been defined with a more recent version of Sirius than the one you are using, the 
			ViewpointRegistry will not register it and a warning is logged in the error log view to inform the user.
		
displayExpression, if blank the result of the value expression will be used after a call to the method 
				java.lang.Object#toString().
			preconditionExpression, which behaves in the same way as preconditions for mappings on representation descriptions.
			fontSize and 
				labelFontSize have been renamed into 
				fontSizeExpression and 
				labelFontSizeExpression since both of them were already treated as expression.
			Domain Class Expression in 
				DynamicMappingFor elements (in properties views definitions) has been renamed into 
				Iterable Expression.
			org.eclipse.sirius.diagram.ui.layoutDataManager is deprecated. It is replaced by the new extension point 
				org.eclipse.sirius.diagram.ui.formatDataManager. The deprecated extension point will be removed in the next 5.0 Sirius major release. Several classes associated with this deprecated extension point are also deprecated (see Developer-Visible Changes for details).
			org.eclipse.sirius.viewpoint.DView.getOwnedRepresentationDescriptors() has been added as a wrapper of the 
				DRepresentation. The 
				DRepresentationDescriptor is contained by the 
				DView and the 
				DRepresentationDescriptor have a reference to the 
				DRepresentation. In this step, the main impact is that the Sirius common navigator does not display the 
				DRepresentation anymore but the 
				DRepresentationDescriptor instead. All the actions and commands are then based on 
				DRepresentationDescriptor.
			org.eclipse.sirius.viewpoint.DView.getOwnedRepresentations() has been removed. The 
				DRepresentation is now created as root element of the representations resource. The main impact is on the core of Sirius but also potentially on client Sirius customization. Each peace of code that makes the supposition that the 
				DView is the container of the 
				DRepresentation must be reworked. The code using methods in the following list may be concerned by the rework:
				EObject.eContainer(). If the object is a 
						DRepresentation, its container is now null.
					EcoreUtil.getRootContainer(xxx). The root container of a DDiagramElement is the 
						DRepresentation and not the 
						DAnalysis any more.
					EcoreUtil.isAncestor(xxx). the 
						DView is not an ancestor of a 
						DRepresentation (or its content) anymore.
					org.eclipse.sirius.business.api.query.DViewQuery.getLoadedRepresentations() replaces the removed 
						DView.getOwnedRepresentations() method. It provides all the loaded representations holds by a 
						DView. In this step, all that representations are always loaded as they are into the .aird resource.
					org.eclipse.sirius.business.api.query.DViewQuery.getAllContentInRepresentations(final Predicate<? super EObject>) provides the content of a 
						DView according to a predicate.
					org.eclipse.sirius.business.api.query.DRepresentationQuery.getRepresentationDescriptor() provides the 
						DRepresentationDescriptor which references the 
						DRepresentation.
					org.eclipse.sirius.business.api.query.EObjectQuery.getDAnalysis() allows to retrieve a DAnalysis from a 
						DRepresentationElement
					org.eclipse.sirius
		org.eclipse.sirius.interpretedExpressionQueryProvider (with the associated new interface 
				org.eclipse.sirius.business.api.dialect.description.IInterpretedExpressionQueryProvider) allows external contribution of 
				IInterpretedExpressionQuery specific to some particular expression occurrences in the VSM. This is used in particular for VSM extensions which do not fit well into the hard-coded assumptions about 
				IInterpretedExpressionQuery. In Sirius 4.1, this is used to add completion and validation support for expressions used in properties views descriptions.
			org.eclipse.sirius.business.api.migration.AirdResourceVersionMismatchException exception has been added to cancel Sirius session opening due to an .aird version mismatch, i.e. when one the of the loaded Representation resources is coming from a newer Sirius release.
			org.eclipse.sirius.viewpoint.DView.getOwnedRepresentationDescriptors() has been added as the first step to save the DRepresentation in its own resource. In this step, the DRepresentationDescriptor life cycle is the same as the associated DRepresentation.
				org.eclipse.sirius.business.api.dialect.command.RenameRepresentationCommand
					org.eclipse.sirius.business.api.dialect.command.DeleteRepresentationCommand
					org.eclipse.sirius.business.api.dialect.command.MoveRepresentationCommand
					org.eclipse.sirius.business.api.dialect.command.CopyRepresentationCommand
					getAvailableRepresentationDescriptions(Collection<Viewpoint>, EObject), 
				getAllRepresentationDescriptors(Session ), 
				getRepresentationDescriptors(EObject, Session) and 
				getRepresentationDescriptors(RepresentationDescription, Session ) have been added in 
				org.eclipse.sirius.business.api.dialect.DialectServices and implemented in 
				org.eclipse.sirius.business.api.dialect.AbstractRepresentationDialectServices. These methods are used, instead of their equivalent with DRepresentation, for every functionality which relies on 
				DRepresentationDescriptor instead of 
				DRepresentation such as actions, wizards or views.
			org.eclipse.sirius.business.api.dialect.AbstractRepresentationDialectServices.isSupported(DRepresentationDescriptor) has been added because actions, wizards or views that were related to 
				DRepresentation are now related to 
				DRepresentationDescriptor.
			org.eclipse.sirius.ui.business.api.dialect.DialectUIServices.canHandle(DRepresentationDescriptor) has been added because actions, wizards or views that were related to 
				DRepresentation are now related to 
				DRepresentationDescriptor.
			org.eclipse.sirius.ui.business.api.dialect.DialectUIManager.canExport(DRepresentationDescriptor, ExportFormat) has been added because actions, wizards or views that were related to 
				DRepresentation are now related to 
				DRepresentationDescriptor.
			org.eclipse.sirius.business.api.query.DRepresentationQuery.getRepresentationDescriptor() has been added to retrieve the 
				DRepresentationDescriptor that references the 
				DRepresentation.
			org.eclipse.sirius.business.api.session.CustomDataConstants.DREPRESENTATION_DESCRIPTOR_FROM_DESCRIPTION and 
				org.eclipse.sirius.business.api.session.CustomDataConstants.DREPRESENTATION_DESCRIPTOR have been added. They are used to get or put 
				DRepresentationDescriptor in the model managed by the 
				Session through the 
				org.eclipse.sirius.business.api.session.SessionService.putCustomData(String, EObject, EObject) and 
				SessionService.getCustomData(String, EObject) methods.
			org.eclipse.sirius.business.api.query.EObjectQuery.getDAnalysis() has been added to retrieve a DAnalysis from a 
				DRepresentationElement
			org.eclipse.sirius.business.api.session.danalysis.DAnalysisSessionHelper.findContainerForAddedRepresentation(DAnalysis, DRepresentation) has been changed to 
				findDViewForRepresentationDescription(DAnalysis , final RepresentationDescription) because that API was previously badly defined.
			org.eclipse.sirius.business.api.dialect.DialectServices.deleteRepresentation(DRepresentation, Session) has been changed to 
				deleteRepresentation(DRepresentationDescriptor, Session) because now the 
				DRepresentationDescriptor is the entry point to delete the 
				DRepresentation and itself.
			DRepresentationDescriptor is now the entry point to move, control or uncontrol a 
				DRepresentation instead of the 
				DRepresentation itself. Accordingly, the return type or parameter of the followings have changed to switch from 
				DRepresentation to 
				DRepresentationDescriptor
				org.eclipse.sirius.business.api.control.SiriusControlCommand
					org.eclipse.sirius.business.api.dialect.command.MoveRepresentationCommand.MoveRepresentationCommand(Session, DAnalysis, Collection<DRepresentationDescriptor>)
					org.eclipse.sirius.business.api.session.danalysis.DAnalysisSession.moveRepresentation(DAnalysis, DRepresentationDescriptor)
					org.eclipse.sirius.business.api.session.danalysis.DAnalysisSessionHelper.updateModelsReferences(DView) has replaced 
				updateModelsReferences(DAnalysis, Iterator<DSemanticDecorator>) because it is more suited to the client needs.
			org.eclipse.sirius.ui
		org.eclipse.sirius.ui.business.api.dialect.HierarchyLabelProvider has been added to provide a generic label provider for VSM model element giving hierarchical label. This label provider replaces the one returned by deprecated method 
				DialectUIServices.getHierarchyLabelProvider(). 
			AbstractSWTCallback provides a default implementation of 
				UICallBack.askSessionReopeningWithResourceVersionMismatch() method to give feedback about version mismatch and give the choice to reopen session despite a potential corruption.
			org.eclipse.sirius.ui.tools.api.control.SiriusControlHandler.getRepresentationsToMove(Shell, Session, EObject) and 
				SiriusControlHandler.collectExistingRepresentations have been renamed to 
				getRepresentationDescriptorsToMove(Shell, Session, EObject) and 
				SiriusControlHandler.collectExistingRepresentationDescriptors. The return type of both that methods and 
				SiriusControlHandler.askUserWhichRepresentationToSplit has been changed to 
				DRepresentationDescriptor as 
				DRepresentationDescriptor is the entry point to work with a 
				DRepresentation instead of DRepresentation itself.
			org.eclipse.sirius.ui.business.api.dialect.DialectUIServices.getHierarchyLabelProvider() has been deprecated in favor of generic label provider 
				HierarchyLabelProvider.
			org.eclipse.sirius.diagram
		org.eclipse.sirius.diagram.business.api.diagramtype.IDiagramDescriptionProvider.allowsCopyPasteFormat(DSemanticDecorator) has been added in replacement of 
				allowsCopyPasteLayout(DSemanticDecorator) that is now deprecated. This 2 methods must return the same result. 
				allowsCopyPasteLayout(DSemanticDecorator) will be removed in the new major version.
			org.eclipse.sirius.diagram.ui
		EDGE_SNAP_BACK has been added in class 
				org.eclipse.sirius.diagram.ui.tools.api.ui.actions.ActionIds. It corresponds to the new snap back label action id that is present on edges.
			org.eclipse.sirius.diagram.ui.tools.api.layout.SiriusLayoutDataManager (and also in 
				org.eclipse.sirius.diagram.ui.tools.api.layout.AbstractSiriusLayoutDataManager):
				applyFormat(IGraphicalEditPart): Apply the current format data (layout data and style data) to the given edit part.
					applyStyle(IGraphicalEditPart): Apply the current style data to the give edit part.
					org.eclipse.sirius.diagram.ui.tools.api.editor.tabbar.AbstractTabbarContributor:
				createCopyFormatContribution(IDiagramWorkbenchPart): In replacement of 
						createCopyLayoutContribution(IDiagramWorkbenchPart) that is now deprecated.
					createPasteFormatContribution(IDiagramWorkbenchPart): In replacement of 
						createPasteLayoutContribution(IDiagramWorkbenchPart) that is now deprecated.
					org.eclipse.sirius.diagram.ui.tools.api.ui.actions.ActionIds:
				COPY_FORMAT: Action contribution id for the copy format. It replaces the old 
						COPY_LAYOUT.
					PASTE_FORMAT: Action contribution id for the paste format. It does not replace the old 
						PASTE_LAYOUT. The paste format paste the layout and the style. The paste layout only paste layout.
					PASTE_STYLE: Action contribution id for the paste style.
					org.eclipse.sirius.diagram.ui.business.api.query.NodeQuery.isDescendantOf(View) has been added to know if a view is a descendant of another view.
			org.eclipse.sirius.diagram.ui.business.api.query.ViewQuery.getAncestor(int...) has been added to retrieve the first ancestor of the view, or itself, that has at least one of the visualID passed as parameter.
			PREF_SHOW_LINK_EDGE_LABEL_ON_SELECTION has been added in 
				org.eclipse.sirius.diagram.ui.tools.api.preferences.SiriusDiagramUiPreferencesKeys. It corresponds to the preference shown in 
				Sirius/Sirius Diagram/Connections Eclipse preferences.
			org.eclipse.sirius.diagram.ui.tools.api.figure.SiriusWrapLabelWithAttachment is a specific 
				SiriusWrapLabel that allows to show an attachment between the label and its edge.
			org.eclipse.sirius.diagram.ui.tools.api.requests.StraightenToRequest, has been added to handle the new 
				Straighten to actions. The corresponding id has also been added: 
				org.eclipse.sirius.diagram.ui.tools.api.requests.RequestConstants.REQ_STRAIGHTEN.
			org.eclipse.sirius.diagram.ui.tools.api.ui.actions.ActionIds:
				STRAIGHTEN_TO_TOP: For 
						Straighten to top action,
					STRAIGHTEN_TO_BOTTOM: For 
						Straighten to bottom action,
					STRAIGHTEN_TO_LEFT: For 
						Straighten to left action,
					STRAIGHTEN_TO_RIGHT: For 
						Straighten to right action.
					org.eclipse.sirius.diagram.ui.tools.api.image.DiagramImagesPath for the icon path of the four new straighten actions.
			org.eclipse.sirius.diagram.ui.tools.api.layout.AbstractSiriusLayoutDataManager is deprecated, use 
				org.eclipse.sirius.diagram.ui.tools.api.format.AbstractSiriusFormatDataManager instead.
			org.eclipse.sirius.diagram.ui.tools.api.layout.ILayoutDataManagerProvider is deprecated, use 
				org.eclipse.sirius.diagram.ui.tools.api.format.IFormatDataManagerProvider instead.
			org.eclipse.sirius.diagram.ui.tools.api.layout.LayoutDataHelper is deprecated, use 
				org.eclipse.sirius.diagram.ui.tools.api.format.FormatDataHelper instead.
			org.eclipse.sirius.diagram.ui.tools.api.layout.LayoutDataKey is deprecated, use 
				org.eclipse.sirius.diagram.ui.tools.api.format.FormatDataKey instead.
			org.eclipse.sirius.diagram.ui.tools.api.layout.SiriusLayoutDataManager is deprecated, use 
				org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManager instead.
			org.eclipse.sirius.diagram.ui.tools.api.layout.SiriusLayoutDataManagerForSemanticElementsFactory is deprecated, use 
				org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManagerForSemanticElementsFactory instead.
			HierarchyLabelProvider_elementWihtoutNameLabel has been removed from the 
				org.eclipse.sirius.diagram.ui plug-in’s 
				Messages class, and moved into the 
				org.eclipse.sirius.ui's 
				Messages class.
			org.eclipse.sirius.ext.gmf.runtime
		SiriusSnapFeedbackPolicy has been copied from 
				org.eclipse.sirius.ext.gef.editpolicies to 
				org.eclipse.sirius.ext.gmf.runtime.editpolicies. The old class in plug-in 
				org.eclipse.sirius.ext.gef is deprecated and will be removed in the next version.
			org.eclipse.sirius.tests.junit.support
		getRepresentationDescriptors(final String), 
				getRepresentationDescriptors(final String , final Session ) and 
				getRepresentationDescriptorFromRepresentation(DRepresentation) have been added in class 
				org.eclipse.sirius.tests.support.api.SiriusTestCase to adapt tests considering the 
				DView.ownedRepresentationDescriptors addition.
			org.eclipse.sirius.tests.swtbot.support
		mouseScrollWithKey(int, int, int, int), has been added in classes 
				org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor, 
				org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusGefViewer and 
				org.eclipse.sirius.tests.swtbot.support.api.widget.SWTBotSiriusFigureCanvas to allow testing events occurring after a mouse scroll combined to a keyboard key pressed at a given absolute position.
			org.eclipse.sirius.properties
		domainClassExpression has been renamed into 
				iterableExpression.
			fontSize and 
				labelFontSize have been renamed into 
				fontSizeExpression and 
				labelFontSizeExpression since both of them were already treated as expression.
			org.eclipse.sirius.ui.properties
		org.eclipse.sirius.ui.properties.api in order to help with the transformation of the description of custom widgets. The class 
				AbstractDescriptionConverter can now be used as superclass for all the converters. The classes 
				DefautDescriptionConverter, 
				DefautStyleDescriptionConverter and 
				DefautDescriptionWithInitialOperationConverter, now accessible, should handle most of the use cases. 
			org.eclipse.sirius.ecore.extender
		org.eclipse.sirius.ecore.extender.business.api.permission.exception.LockedInstanceException.PERMISSION_ISSUE_MESSAGE has been modified. You should now use the 
				MessageFormat. Example: 
				LockedInstanceException.PERMISSION_ISSUE_MESSAGE + getText(lockedElements) must be replaced by 
				MessageFormat.format(LockedInstanceException.PERMISSION_ISSUE_MESSAGE, getText(lockedElements)).
			org.eclipse.sirius.ecore.extender.business.api.accessor.ModelAccessorsRegistry has been refactored to avoid problem with 
				ModelAccessor lifecycle. The constructor has no longer a parameter.
			IPermissionAuthority, the properties view will not be editable if this locked object is selected from the Model Explorer view.
			
			 
		
 
 
				Apply Appearance Properties action has been modified to use the last selected element as base style instead of the first one.
			org.eclipse.sirius.properties.feature.feature.group): needed at runtime for deployed modelers which have properties views defined in their specification.
					org.eclipse.sirius.specifier.properties.feature.feature.group): provides support for editing the configuration model directly inside the VSM editor and the specifier documentation.
					Once this is done, you can find the actual documentation in the Sirius Specifier Manual, under the Properties View section.
%myUniqueKey in the VSM, and define the value in the 
				Viewpoint Specification Project's 
				plugin.properties (for the default value), or 
				plugin_XX.properties for locale 
				XX. The underlying mechanism is the same as for Eclipse/OSGi plug-ins, so translations can even be contributed by physically separate plug-in fragments. See 
				the corresponding section in the documentation for more details.
			org.eclipse.sirius.ext.emf.edit.EditingDomainServices (from plug-in 
				org.eclipse.sirius.ext.emf.edit) has been added with a complete set of service methods to leverage most of the features of the “EMF Edit” framework, for example the various 
				Item Providers associated to semantic elements. See 
				the documentation for details.
			filter() or 
				oclIsKindOf() requires to explicitly add the domain meta-models plug-ins to the dependencies of the 
				Viewpoint Specification Project. The documentation has been modified to recommend this.
			EEnum attribute, like 
				labelFormat, worked with a value expression using a Java service returning a 
				EEnumLiteral. It is now forbidden. You must return an 
				Enumerator. The documentation about 
				Styles Customization now details this case.
			BorderSizeComputationExpression migration has been corrected to recursively handle the sub container mappings. VSM created or migrated with Sirius 3.1.0, 3.1.1 or 3.1.2 might require a manual modification for the style descriptions of sub container mappings with border size computation equals to 0 as we cannot determine if they were added (or updated) after or before the migration: starting with Sirius 3.1.0, no border will be displayed for a 0 pixel value whereas with older version container always had at least a 1 pixel border.
			ITabbarContributor through the 
				org.eclipse.sirius.diagram.ui.tabbarContributor extension-point. See the 
				developer documentation for more details.
			org.eclipse.sirius.diagram.bundledImageShape extension-point. See the 
				developer documentation for more details.
			org.eclipse.sirius
		org.eclipse.sirius.ui.business.api.session.SessionEditorInput.getStatus() has been added to have the status about session opening, i.e. if it has been correctly opened, cancelled or an exception has occurred. 
			org.eclipse.sirius.business.api.helper.task.TaskHelper.buildTaskFromModelOperation(EObject, ModelOperation) has been added, which does not require to specify a 
				DRepresentation in the context. It allows the creation of a task which executes a behavior specified by 
				ModelOperations outside of the context of a specific representation, provided the 
				ModelOperations work in that context.
			org.eclipse.sirius.viewpoint.description.TypedVariable has been created.
			org.eclipse.sirius.viewpoint.description.InteractiveVariableDescription has been created as tag interface for variables that require user interaction to be valued.
			org.eclipse.sirius.tools.api.command.ui.UICallBack.askForTypedVariable(List<TypedVariable>, List<String>) has been created.
			org.eclipse.sirius.tools.api.command.ui.NoUICallback.askForTypedVariable(List<TypedVariable>, List<String>) has been created.
			org.eclipse.sirius.business.api.dialect.DialectServices.getRequiredViewpoints(DRepresentation) has been added to have mean to get required viewpoints to use a representation.
			org.eclipse.sirius.business.api.dialect.AbstractRepresentationDialectServices.getRequiredViewpoints(DRepresentation) has been added to have a default implementation of 
				DialectServices.getRequiredViewpoints(DRepresentation) method.
			org.eclipse.sirius.business.api.dialect.AbstractRepresentationDialectServices.isRelatedViewpointSelected(Session, RepresentationDescription) protected method has been added to check if a 
				RepresentationDescription is usable in the context of the specified session.
			org.eclipse.sirius.tools.api.command.ui.UICallBack.askForDetailName(String, String, String) method has been added to replace the deprecated 
				org.eclipse.sirius.tools.api.command.ui.UICallBack.askForDetailName(String, String). This method now uses the description name as title for the wizard. This new method has been implemented by 
				org.eclipse.sirius.ui.tools.api.command.AbstractSWTCallback and 
				org.eclipse.sirius.tools.api.command.ui.NoUICallback.
			org.eclipse.sirius.ui.tools.api.project.ModelingProjectManager.loadAndOpenRepresentationsFile(URI, boolean) has been added to specify if job used to open a session must be considered as launched by the user or not, because by default with 
				ModelingProjectManager.loadAndOpenRepresentationsFile(URI) the job was not considered as launched by the user.
			org.eclipse.sirius.viewpoint.description.tool.SelectModelElementVariable now implements 
				org.eclipse.sirius.viewpoint.description.InteractiveVariableDescription.
			org.eclipse.sirius.viewpoint.description.tool.AbstractVariable has been moved to 
				org.eclipse.sirius.viewpoint.description.AbstractVariable.
			org.eclipse.sirius.viewpoint.description.tool.SubVariable has been moved to 
				org.eclipse.sirius.viewpoint.description.SubVariable.
			org.eclipse.sirius.business.api.modelingproject.ModelingProject.getMainRepresentationsFileURI() methods no more update workspace resource about markers, now this must be done in caller on IllegalArgumentException catch in a workspace aware operation.
			org.eclipse.sirius.business.api.dialect.command.RefreshRepresentationsCommand.canExecute() now returns false if a 
				DRepresentation cannot be refreshed, by calling 
				DialectManager.canRefresh(DRepresentation).
			org.eclipse.sirius.business.api.session.danalysis.DAnalysisSessionHelper now return a 
				fr.obeo.dsl.viewpoint.DView instead of a 
				fr.obeo.dsl.viewpoint.DRepresentationContainer: * 
				findContainer(EObject, Viewpoint, Collection<DAnalysis>, DAnalysisSelector),
				findContainerForAddedRepresentation(EObject, Viewpoint, Collection<DAnalysis>, DAnalysisSelector, DRepresentation),
					findContainerForAddedRepresentation(DAnalysis, DRepresentation), 
						findFreeContainer(Viewpoint, Collection<DAnalysis>, DAnalysisSelector)
					findFreeContainer(Viewpoint, Collection<DAnalysis>, DAnalysisSelector).
					org.eclipse.sirius.viewpoint.DRepresentationContainer EClass have been removed. It used to be the only implementation of 
				org.eclipse.sirius.viewpoint.DView, the 
				models derived transient reference has been moved to 
				DView. An automatic migration has been added during the loading of the representation to handle this change.
			org.eclipse.sirius.business.api.extender.MetamodelDescriptorProvider2 has been deleted and is now 
				MetamodelDescriptorProvider. 
			org.eclipse.sirius.common
		getInferredVariableTypes(Boolean value) in 
				org.eclipse.sirius.common.tools.api.interpreter.ValidationResult so that 
				IInterpreter implementations able to infer more specific types based on predicates result provides this information to Sirius which will then use it for validating other expressions. You might want to look at 
				org.eclipse.sirius.common.acceleo.aql.business.internal.AQLSiriusInterpreter which is an implementation providing this type inference.
			org.eclipse.sirius.common.tools.api.util.MessageTranslator providing 
				getMessage(EObject, String) and 
				getMessage(Bundle, String) service dedicated into processing a translatable message to return the translation in the active language when available. This service returns the String without modification if not translatable or no translation is available.
			org.eclipse.sirius.common.tools.api.interpreter.IInterpreterStatus to reflect all kind of language validation severity (of AQL for example).
			org.eclipse.sirius.diagram
		org.eclipse.sirius.diagram.VariableValue, 
				org.eclipse.sirius.diagram.TypedVariableValue and 
				org.eclipse.sirius.diagram.EObjectVariableValue has been created.
			org.eclipse.sirius.diagram.description.filter.impl.VariableFilterImpl.resetVariables() has been created to indicate that variables have to be computed again.
			org.eclipse.sirius.diagram.description.style.Side EEnum has been added to define a border node side on the parent.
			org.eclipse.sirius.diagram.description.style.NodeStyleDescription#forbiddenSides attribute has been added to set the border node forbidden sides on the parent.
			org.eclipse.sirius.diagram.business.api.query.DNodeQuery.getForbiddenSide() has been added to retrieve the forbidden sides of a DNode (make sense only for Border Nodes).
			org.eclipse.sirius.diagram.description.filter.VariableFilter.ownedVariable has been changed to 
				org.eclipse.sirius.viewpoint.description.InteractiveVariableDescription.
			org.eclipse.sirius.diagram.FilterVariableHistory.ownedValues has been changed to 
				org.eclipse.sirius.diagram.VariableValue.
			org.eclipse.sirius.diagram.business.api.helper.SiriusDiagramUtil.findRepresentationContainer(DDiagram) has been changed from 
				org.eclipse.sirius.viewpoint.DRepresentationContainer to 
				org.eclipse.sirius.viewpoint.DView.
			org.eclipse.sirius.diagram.description.filter.FilterVariable has been removed. It is replaced by 
				org.eclipse.sirius.viewpoint.description.tool.SelectModelElementVariable.
			org.eclipse.sirius.diagram.description.filter.impl.VariableFilterImpl.setFilterContext() has been removed. This method was, in part, useless and is replaced by 
				org.eclipse.sirius.diagram.description.filter.impl.VariableFilterImpl.resetVariables().
			org.eclipse.sirius.ui
		org.eclipse.sirius.ui.tools.api.command.AbstractSWTCallback.askForTypedVariable(List<TypedVariable>, List<String>) has been created.
			Messages_createRepresentationInputDialog_DefaultRepresentationDescName has been added (available through 
				org.eclipse.sirius.ui.tools.api.Messages.createRepresentationInputDialog_DefaultRepresentationDescName. Its value is “Representation”.
			Messages_createRepresentationInputDialog_NewRepresentationNameLabel has been replaced by “Name:” (previous value was “Representation name:”). 
			Messages_createRepresentationInputDialog_RepresentationDescriptionLabel has been replaced by “Representation description: {0}” (previous value was “Representation description: ”). 
			Messages_createRepresentationInputDialog_Title has been replaced by “New {0}” (previous value was “New Representation”).
			org.eclipse.sirius.viewpoint.provider.Messages.OpenRepresentationsFileJob_initModelingProjectsTask has been removed as this message is no more used.
			org.eclipse.sirius.ui.business.api.editor.SpecificSessionManager has been removed. 
			org.eclipse.sirius.diagram.ui
		org.eclipse.sirius.diagram.ui.svg.maxCacheSizeMB has been added. It can be used to tweak the maximum size (in megabytes) of pre-rendered SVG images to keep in cache. The default is 50, corresponding to 50MB of bitmaps of 4 8-bit channels. Increasing the limit can improve performance when using diagrams with a lot of SVG images, at the cost of increased memory usage.
			org.eclipse.sirius.diagram.ui.tools.api.editor.tabbar.ITabbarContributor interface has been added to provide a customized tab-bar for a specific selection.
			org.eclipse.sirius.diagram.ui.tools.api.editor.tabbar.AbstractTabbarContributor is an abstract implementation of 
				ITabbarContributor that allows reusing one or several of the default Sirius contribution items.
			org.eclipse.sirius.diagram.editor.properties.sections.style.bundledimagedescription.BundledImageDescriptionShapePropertySectionSpec has been added to have a custom display in the VSM for provided basic shape.
			org.eclipse.sirius.diagram.ui.edit.api.part.AbstractDiagramBorderNodeEditPart.createNodeFigure() has been created to factorize the 
				DNode2EditPart and 
				DNode4EditPart constructors.
			org.eclipse.sirius.diagram.ui.tools.api.figure.DBorderedNodeFigure.setForbiddenSides(int...) has been added to set the figure forbidden sides on its parent.
			org.eclipse.sirius.diagram.ui.tools.api.figure.DBorderedNodeFigure.getAuthorizedSides() has been added to retrieve the figure authorized side (by default all sides).
			org.eclipse.sirius.diagram.ui.tools.api.figure.SVGFigure : 
				String getKey(Graphics), 
				Image getImage(Rectangle, Graphics), 
				static boolean doRemoveFromCache(String).
			org.eclipse.sirius.diagram.ui.tools.api.part.DiagramEditPartService to manage gradient color in export to PNG or SVG formats: 
				DiagramEditPartService.saveSVGToFile(IPath, SiriusDiagramSVGGenerator, IProgressMonitor) and 
				org.eclipse.sirius.diagram.ui.tools.api.part.DiagramEditPartService.saveToFile(IPath, SiriusDiagramSVGGenerator, ImageFileFormat, IProgressMonitor). These 2 methods are copy of parent methods with 
				SiriusDiagramSVGGenerator as parameter instead of a 
				DiagramSVGGenerator.
			org.eclipse.sirius.ui.tools.api.color.VisualBindingManager.getGradientPaintFromValue(int, int, int, int, Color, Color) has been added to handle a cache for 
				java.awt.GradientPaint as it is the case for 
				org.eclipse.swt.graphics.Pattern with 
				getPatternFromValue().
			org.eclipse.sirius.diagram.ui.tools.api.figure.GradientHelper to handle 
				java.awt.GradientPaint as 
				org.eclipse.swt.graphics.Pattern: 
				getGradientPaintDiag(Rectangle, Color, Color), 
				getGradientPaintLeftToRight(Rectangle, Color, Color), 
				getGradientPaintTopToBottom(Rectangle, Color, Color) and 
				getGradientPaint(int, Rectangle, Color, Color).
			org.eclipse.sirius.diagram.ui.tools.api.ui.actions.ActionIds.ACTION_SIRIUS_COPY_APPEARANCE_PROPERTIES has been added to identify the new 
				Sirius Copy Appearence Properties action.
			org.eclipse.sirius.diagram.ui.tools.api.figure.BundleImageFigure now overrides the method 
				setBorder(Border border). It also provides the accessors for the new field 
				mainBorderSize.
			org.eclipse.sirius.diagram.ui.tools.api.figure.BundledImageFigure now inherits directly from 
				SVGFigure instead of 
				AbstractCachedSVGFigure.
			org.eclipse.sirius.diagram.ui.tools.api.figure.SVGWorkspaceImageFigure now inherits directly from 
				SVGFigure instead of 
				AbstractCachedSVGFigure.
			org.eclipse.sirius.diagram.ui.tools.api.figure.SVGFigure now implements interfaces 
				StyledFigure, 
				ITransparentFigure and 
				ImageFigureWithAlpha.
			org.eclipse.sirius.diagram.ui.tools.api.figure.SVGFigure: 
				NodeList getNodes(String), 
				Color getColor(Element, String), 
				void updateRenderingHints(Graphics), 
				staticImage toSWT(Device, BufferedImage), 
				boolean checkContentAvailable(), 
				Rectangle2D getAreaOfInterest(), 
				void setAreaOfInterest(Rectangle2D), 
				boolean isSpecifyCanvasWidth(), 
				void setSpecifyCanvasWidth(boolean), 
				boolean isSpecifyCanvasHeight(), 
				void setSpecifyCanvasHeight(boolean), 
				boolean getSpecifyCanvasWidth(), 
				boolean getSpecifyCanvasHeight().
			org.eclipse.sirius.diagram.ui.tools.api.figure.AbstractCachedSVGFigure has been removed. Its functionality was merged directly into 
				SVGFigure.
			org.eclipse.sirius.diagram.ui.tools.api.figure.SVGWorkspaceImageFigure.createImageFigure(ContainerStyle) method has been removed; it was broken and not called anywhere.
			org.eclipse.sirius.ext.emf.ui
		org.eclipse.sirius.ext.emf.ui.properties.ExtensiblePropertySource.collector field is now in protected visibility to be modifiable and accessible by subclass.
			org.eclipse.sirius.ext.gmf.runtime
		org.eclipse.sirius.ext.gmf.runtime.diagram.ui.tools.MoveInDiagramDragTracker has been added to declare states used by all DragTrackers which manage move in diagram using mouse middle click.
			org.eclipse.sirius.ui
		org.eclipse.sirius.ui.tools.api.properties.SiriusExtensiblePropertyDescriptor has been added to provide a specific 
				ExtensiblePropertyDescriptor which test 
				IPermissionAuthority to make properties view editable or not.
			org.eclipse.sirius.ui.tools.api.properties.SiriusExtensiblePropertySource has been modified to use 
				SiriusExtensiblePropertyDescriptor to provide not editable properties view when the object, selected from the Model Explorer view, cannot be modified.
			org.eclipse.sirius.ui, and thus the whole 
				org.eclipse.sirius.runtime feature no longer depends on the JDT (technically the dependency towards 
				org.eclipse.jdt.core has been removed). If you need the JDT Core in your environment, you will need to add the dependency explicitly. The Sirius specification environment (
				org.eclipse.sirius.editor) still depends on PDE (and thus indirectly the JDT too).
			org.eclipse.sirius.tests.junit.support
		org.eclipse.sirius.tests.support.api.DefaultTestMemento has been created. It help to simulate a real 
				IMemento for editor restoration.
			SiriusTestCase.initViewpoint(String, Session, boolean) has been added to allow viewpoint activation without creating representations.
			initLoggers() and 
				disposeLoggers() of class 
				org.eclipse.sirius.tests.support.api.SiriusTestCase have now a protected visibility (instead of private) to allow subclasses to use this logger without all the 
				genericSetUp behavior.
			SiriusTestCase.initViewpoint(String, Session, EObject) has been deprecated because the last parameter is useless to activate a viewpoint.
			org.eclipse.sirius.tests.swtbot.support
		getTreeItem(final SWTBotTreeItem[], final String) has been added in 
				org.eclipse.sirius.tests.swtbot.support.utils to retrieve recursively a 
				SWTBotTreeItem in a 
				SWTBotTreeItem array.
			org.eclipse.sirius.tests.swtbot.support.api.condition.ShellChangedCondition has been added to wait until the current active shell has changed.
			org.eclipse.sirius.tests.swtbot.support.api.condition.TreeItemWithImageCondition has been added to wait until the given treeItem has the expected image.
			String parameter has been added to the method 
				org.eclipse.sirius.tests.swtbot.support.api.business.UILocalSession.newDiagramRepresentation(String, String). This parameter is the label of the representation description. It is necessary since the change of the wizard to ask the new representation name (see User-Visible Changes for detail).
			String parameter has been added to the constructor of 
				org.eclipse.sirius.tests.swtbot.support.api.business.UINewRepresentationBuilder for the same above reasons.
			org.eclipse.sirius.common.xtext
		org.eclipse.sirius.common.xtext to the JDT plug-in 
				org.eclipse.jdt.core is now optional. If you need the JDT Core in your environment, you will need to add the dependency explicitly. The Sirius specification environment (
				org.eclipse.sirius.editor) still depends on PDE (and thus indirectly the JDT too).
			org.eclipse.sirius.editor
		bindCompletionProcessor(AbstractPropertySection, IAssistContentProvider, Text) has been added to the class 
				org.eclipse.sirius.editor.tools.api.assist.TypeContentProposalProvider to allow to bind a specific IAssistContentProvider to the text.
			Sample before Sirius 3.1:
			
			 
 
			
Same sample since Sirius 3.1:
			
			 
		
			 
 
			
			 
		
ePackageName::eClassName). The improvements realized can be viewed by clicking on the image below (click to zoom).
			org.eclipse.sirius.common.acceleo.aql instead of 
				org.eclipse.sirius.common.acceleo.mtl, and do not have the Acceleo nature anymore (it is not needed by AQL). If you want to use another language in your queries, make sure you set the appropriate dependencies so that the Sirius support for that language will be present at runtime to interpret the queries.
			BorderSizeComputationExpression as 0 for style of 
				ContainerMapping. Before Sirius 3.1.0, a size of 0 was interpreted as 1 at runtime. For compatibility reason, all existing 
				BorderSizeComputationExpression equals to 0 for style of 
				ContainerMapping are automatically set to 1 (ditto for results of this expression in representations file for container elements). For 
				ContainerMapping, the default value of 
				BorderSizeComputationExpression for new style is now 1, except for 
				Worskpace Image where the value is 0.
			IPermissionAuthority) of the potential to delete objects. This is the reverse order of what was done before, and can have performance impacts if the precondition is slow. The specifier will to take care to ensure a good performance for the precondition expression of the delete tool.
			Sirius 3.1 introduces partial support for internationalization: all literal strings from the runtime part of Sirius are now externalized and can be localized by third parties by providing the appropriate “language packs” as OSGi fragments. Note that this does not concern the VSM editor’s UI, the VSMs themselves, or the parts of the UI inherited from Eclipse/EMF/GEF/GMF and other libraries and frameworks used by Sirius.
Some API changes were required to enable this. While technically breaking changes if interpreting strictly the OSGi versioning rules, the major version number of the impacted bundles was not incremented as the changes only concern classes that should not impact the vast majority of users. Most breaking changes concern the plug-in/activator classes from each bundle. They are:
org.eclipse.sirius.diagram.layoutdata.LayoutDataPlugin, a subclass of 
				org.eclipse.emf.common.EMFPlugin has been added. The corresponding OSGi bundle activator is the internal class 
				LayoutDataPlugin.Implementation.
			org.eclipse.sirius.diagram.sequence.SequenceDiagramPlugin, a subclass of 
				org.eclipse.emf.common.EMFPlugin has been added. The corresponding OSGi bundle activator is the internal class 
				SequenceDiagramPlugin.Implementation.
			org.eclipse.sirius.common.xtext.internal.XtextIntegrationPlugin, a subclass of 
				org.eclipse.emf.common.EMFPlugin has been added. The corresponding OSGi bundle activator is the internal class 
				XtextIntegrationPlugin.Implementation.
			org.eclipse.sirius.ext.base.BasePlugin, a subclass of 
				org.eclipse.emf.common.EMFPlugin has been added. The corresponding OSGi bundle activator is the internal class 
				BasePlugin.Implementation.
			org.eclipse.sirius.ext.draw2d.Draw2DExtPlugin, a subclass of 
				org.eclipse.emf.common.EMFPlugin has been added. The corresponding OSGi bundle activator is the internal class 
				Draw2DExtPlugin.Implementation.
			org.eclipse.sirius.ext.e3.ui.Eclipse3UIExtPlugin, a subclass of 
				org.eclipse.emf.common.EMFPlugin has been added. The corresponding OSGi bundle activator is the internal class 
				Eclipse3UIExtPlugin.Implementation.
			org.eclipse.sirius.ext.emf.EMFExtPlugin, a subclass of 
				org.eclipse.emf.common.EMFPlugin has been added. The corresponding OSGi bundle activator is the internal class 
				EMFExtPlugin.Implementation.
			org.eclipse.sirius.synchronizer.internal.SynchronizerPlugin, a subclass of 
				org.eclipse.emf.common.EMFPlugin has been added. The corresponding OSGi bundle activator is the internal class 
				SynchronizerPlugin.Implementation.
			org.eclipse.sirius.tree.tools.internal.TreePlugin, a subclass of 
				org.eclipse.emf.common.EMFPlugin has been added. The corresponding OSGi bundle activator is the internal class 
				TreePlugin.Implementation.
			org.eclipse.sirius.common.acceleo.mtl.ide.AcceleoMTLInterpreterIDEPlugin is no longer an OSGi 
				BundleActivator, and instead extends 
				org.eclipse.emf.common.EMFPlugin. The actual bundle activator is the new internal class 
				AcceleoMTLInterpreterIDEPlugin.Implementation.
			org.eclipse.sirius.common.acceleo.mtl.ide.AcceleoMTLInterpreterPlugin is no longer an OSGi 
				BundleActivator, and instead extends 
				org.eclipse.emf.common.EMFPlugin. The actual bundle activator is the new internal class 
				AcceleoMTLInterpreterPlugin.Implementation.
			org.eclipse.sirius.common.ocl.DslOclPlugin is no longer a 
				org.eclipse.core.runtime.Plugin (nor an OSGi 
				BundleActivator), and instead extends 
				org.eclipse.emf.common.EMFPlugin. The actual bundle activator is the new internal class 
				DslOclPlugin.Implementation.
			org.eclipse.sirius.common.tools.DslCommonPlugin is no longer a 
				org.eclipse.core.runtime.Plugin (nor an OSGi 
				BundleActivator), and instead extends 
				org.eclipse.emf.common.EMFPlugin. The actual bundle activator is the new internal class 
				DslCommonPlugin.Implementation.
			org.eclipse.sirius.diagram.DiagramPlugin is no longer a 
				org.eclipse.core.runtime.Plugin (nor an OSGi 
				BundleActivator), and instead extends 
				org.eclipse.emf.common.EMFPlugin. The actual bundle activator is the new internal class 
				DiagramPlugin.Implementation.
			org.eclipse.sirius.ecore.extender.business.internal.ExtenderPlugin is no longer a 
				org.eclipse.core.runtime.Plugin (nor an OSGi 
				BundleActivator), and instead extends 
				org.eclipse.emf.common.EMFPlugin. The actual bundle activator is the new internal class 
				ExtenderPlugin.Implementation.
			org.eclipse.sirius.table.tools.internal.TablePlugin is no longer a 
				org.eclipse.core.runtime.Plugin (nor an OSGi 
				BundleActivator), and instead extends 
				org.eclipse.emf.common.EMFPlugin. The actual bundle activator is the new internal class 
				TablePlugin.Implementation.
			org.eclipse.sirius.eef.adapters.Activator has been renamed into 
				org.eclipse.sirius.eef.adapters.EEFAdapterPlugin and is no longer an OSGi bundle activator (hence the name change, to avoid confusion). Instead it extends 
				org.eclipse.emf.common.EMFPlugin. The actual bundle activator is the new internal class 
				EEFAdapterPlugin.Implementation.
			org.eclipse.sirius.common.acceleo.interpreter.Activator has been renamed into 
				org.eclipse.sirius.common.acceleo.interpreter.InterpreterViewPlugin and is no longer an OSGi bundle activator (hence the name change, to avoid confusion). Instead it extends 
				org.eclipse.emf.common.EMFPlugin. The actual bundle activator is the new internal class 
				InterpreterViewPlugin.Implementation.
			org.eclipse.sirius.table.ui.ext.Activator has been renamed into 
				org.eclipse.sirius.table.ui.ext.TableUIExtPlugin and is no longer an OSGi bundle activator (hence the name change, to avoid confusion). Instead it extends 
				org.eclipse.emf.common.EMFPlugin. The actual bundle activator is the new internal class 
				TableUIExtPlugin.Implementation.
			org.eclipse.sirius.ui.ext.Activator has been renamed into 
				org.eclipse.sirius.ui.ext.SiriusUIExtPlugin and is no longer an OSGi bundle activator (hence the name change, to avoid confusion). Instead it extends 
				org.eclipse.emf.common.EMFPlugin. The actual bundle activator is the new internal class 
				SiriusUIExtPlugin.Implementation.
			org.eclipse.sirius.tree.ui.ext.Activator has been renamed into 
				org.eclipse.sirius.tree.ui.ext.TreeUIExtPlugin and is no longer an OSGi bundle activator (hence the name change, to avoid confusion). Instead it extends 
				org.eclipse.emf.common.EMFPlugin. The actual bundle activator is the new internal class 
				TreeUIExtPlugin.Implementation.
			org.eclipse.sirius.diagram.sequence.ui.SequenceDiagramPlugin has been renamed into 
				org.eclipse.sirius.diagram.sequence.ui.SequenceDiagramUIPlugin for consistency and to avoid potential name clashes with the new 
				org.eclipse.sirius.diagram.sequence.SequenceDiagramPlugin.
			Additional non-breaking changes:
org.eclipse.sirius.ext.base.I18N has been added. It provides common utility code to support internationalization. 
			plugin.properties file. These (translated) messages are available at runtime as static fields of new 
				Messages classes, added to all concerned bundles (always in the same package as their plug-in/activator class). The concerned bundles are:
				org.eclipse.sirius
					org.eclipse.sirius.ext.base
					org.eclipse.sirius.ecore.extender
					org.eclipse.sirius.synchronizer
					org.eclipse.sirius.common
					org.eclipse.sirius.common.acceleo.aql
					org.eclipse.sirius.common.acceleo.aql.ide
					org.eclipse.sirius.common.acceleo.mtl
					org.eclipse.sirius.common.acceleo.mtl.ide
					org.eclipse.sirius.common.ui
					org.eclipse.sirius.diagram.layoutdata
					org.eclipse.sirius.diagram.sequence
					org.eclipse.sirius.diagram.sequence.ui
					org.eclipse.sirius.diagram
					org.eclipse.sirius.diagram.ui
					org.eclipse.sirius.eef.adapters
					org.eclipse.sirius.interpreter
					org.eclipse.sirius.table
					org.eclipse.sirius.table.ui
					org.eclipse.sirius.tree
					org.eclipse.sirius.tree.ui
					org.eclipse.sirius.ui
					org.eclipse.sirius.common
		invokeMethod has been added in class 
				org.eclipse.sirius.common.tools.api.util.ReflectionHelper to call a private method. Warning: This method must be used carefully.
			invokeMethodWithoutException has been added in class 
				org.eclipse.sirius.common.tools.api.util.ReflectionHelper to call a private method. This method returns true (and not the result of the method) if it is called without exception. It returns false otherwise. Warning: This method must be used carefully.
			org.eclipse.sirius.common.tools.api.interpreter.IInterpreterWithDiagnostic has been added. It allows an interpreter to evaluate an expression and return not only the result of the evaluation but also a diagnostic.
			org.eclipse.sirius.common.tools.api.contentassist.ContentProposalWithReplacement has been added. It allows interpreters to provide proposals for the code completion which can replace an existing part of the expression used. This behavior can be used if the user has started to type a value that would be returned by the code completion. For example, if the user types 
				aql:self.na and if he selects the content proposal 
				name, it can replace the existing part of the expression 
				na to write 
				aql:self.name instead of just appending 
				name to create 
				aql:self.naname.
			org.eclipse.sirius.common.tools.api.contentassist.ContentProposalBuilder used to build the content proposals with their various parameters more easily.
			org.eclipse.sirius
		addEvaluateSelectionExpressionTask has been added in class 
				org.eclipse.sirius.tools.api.command.AbstractCommandFactory to allow selection after tool execution.
			org.eclipse.sirius.common.tools.api.interpreter.StandardServices has been added. This class owns methods used for 
				service: interpreter.
			org.eclipse.sirius.business.api.extender.MetamodelDescriptorProvider2 has been added and should be preferred instead of implementing 
				MetamodelDescriptorProvider.
			org.eclipse.sirius.business.api.componentization.ViewpointRegistryImpl.addViewpointFileCollector() method has been added to replace deprecated 
				ViewpointRegistryImpl.addSiriusFileCollector().
			org.eclipse.sirius.ecore.extender.business.api.permission.IPermissionAuthority.canDeleteInstance(EObject) when called for an object will not be called for children of this object as we know it will return true because if we can delete a parent object we can delete its children. 
			org.eclipse.sirius.tools.api.command.DCommand no longer inherits from 
				IUndoableCommand since undo/redo is managed by EMF Transaction.
			org.eclipse.sirius.business.api.componentization.ViewpointRegistryImpl.addSiriusFileCollector() method has been deprecated as it is about 
				ViewpointFileCollector and not 
				SiriusFileCollector.
			org.eclipse.sirius.business.api.helper.task.ICommandTask.undo()/redo() methods removed because they are useless since undo/redo is managed by EMF Transaction.
			org.eclipse.sirius.tools.api.command.IUndoableCommand interface removed because it is useless since undo/redo is managed by EMF Transaction.
			org.eclipse.sirius.ui
		org.eclipse.sirius.ui.business.api.session.SessionEditorInput.getInput() method has been added to get the real input for a 
				DRepresentation.
			org.eclipse.sirius.ui.business.api.session.SessionEditorInput.getSession(boolean) method has been added to let the caller choose to create and open a new 
				Session or not when the known session is closed or does not exist. The 
				getSession method calls getSession(true).
			org.eclipse.sirius.ui.business.api.dialect.DialectUIServices.selectAndReveal(DialectEditor, List<DRepresentationElement>) method has been added to explicitly indicate to reveal elements out of the screen (hidden because of the scrollbars location) when selecting them.
			org.eclipse.sirius.ui.business.api.session.SessionEditorInput.dispose() method has been deprecated as an 
				IEditorInput can be reused by several instances of 
				IEditorPart through the navigation history view.
			org.eclipse.sirius.diagram.ui
		org.eclipse.sirius.diagram.ui.graphical.edit.policies.RegionRegionContainerResizableEditPolicy has been added to handle 
				DNodeContainer which are both 
				Region and 
				RegionContainer: during resize they might have to propagate the resize to their children and/or parents.
			org.eclipse.sirius.diagram.ui.tools.api.layout.LayoutUtils.COLLAPSED_VERTICAL_REGION_HEIGHT has been added to centralize the minimum height of a collapsed Region from a Region Container with a vertical stack children presentation.
			org.eclipse.sirius.diagram.ui.edit.api.part.IDiagramNodeEditPart/IDiagramBorderNodeEditPart.getNodeLabel() methods has been moved up to 
				org.eclipse.sirius.diagram.ui.edit.api.part.IAbstractDiagramNodeEditPart.getNodeLabel() as both 
				IDiagramNodeEditPart and 
				IDiagramBorderNodeEditPart inherits of 
				IAbstractDiagramNodeEditPart.
			org.eclipse.sirius.diagram.ui.tools.api.ui.actions.ActionIds.ARRANGE_BORDER_NODES added to replace 
				org.eclipse.sirius.diagram.ui.tools.api.ui.actions.ActionIds.ARRANGE_BORDERED_NODES_TOOLBAR which is deprecated.
			org.eclipse.sirius.diagram.ui.tools.api.ui.actions.ActionIds.ARRANGE_BORDER_NODES_TOOLBAR added to replace 
				org.eclipse.sirius.diagram.ui.tools.api.ui.actions.ActionIds.ARRANGE_BORDERED_NODES which is deprecated 
			org.eclipse.sirius.diagram.ui.graphical.edit.policies.SetConnectionBendpointsAndLabelCommmand is a new class that allows to update edge label when updating bendpoints. Several existing Sirius commands now extends this new class.
			org.eclipse.sirius.diagram.ui.tools.api.decorators.AbstractSiriusDecorator.shouldBeVisibleAtPrint() method added to leave 
				AbstractSiriusDecorator extenders indicate if decoration should be visible at diagram export/print.
			org.eclipse.sirius.diagram.ui.tools.api.ui.actions.ActionIds.ARRANGE_BORDERED_NODES deprecated in favor 
				org.eclipse.sirius.diagram.ui.tools.api.ui.actions.ActionIds.ARRANGE_BORDER_NODES as it is an action id about border nodes layout.
			org.eclipse.sirius.diagram.ui.tools.api.ui.actions.ActionIds.ARRANGE_BORDERED_NODES_TOOLBAR deprecated in favor 
				org.eclipse.sirius.diagram.ui.tools.api.ui.actions.ActionIds.ARRANGE_BORDER_NODES_TOOLBAR as it is an action id about border nodes layout.
			org.eclipse.sirius.diagram.ui.graphical.edit.policies.EdgeCreationEditPolicy has been removed as it should not be in API and has been replaced by internal 
				org.eclipse.sirius.diagram.ui.internal.edit.policies.SiriusConnectionEditPolicy.
			setUseLocalCoordinates(boolean) has been removed from 
				org.eclipse.sirius.diagram.ui.tools.api.figure.GradientRoundedRectangle, 
				org.eclipse.sirius.diagram.ui.tools.api.figure.ViewNodeContainerParallelogram, 
				org.eclipse.sirius.diagram.ui.tools.api.figure.ViewNodeContainerRectangleFigureDesc as it was generated by GMF tooling and never used in Sirius whose edit parts and edit policies expect 
				org.eclipse.draw2d.IFigure.useLocalCoordinates() to always return false for its figures. 
			org.eclipse.sirius.synchronizer
		org.eclipse.sirius.synchronizer.CreatedOutput.synchronizeChildren() method takes now a 
				RefreshPlan in parameter to have more informations to say if children must be synchronized.
			org.eclipse.sirius.tests.junit.support
		org.eclipse.sirius.tests.support.api.AbstractToolDescriptionTestCase has been created. It contains utility methods about tools.
			org.eclipse.sirius.tests.support.api.SiriusDiagramTestCase has been modified 
				AbstractToolDescriptionTestCase 
					applyContainerCreationTool(String,DDiagram,EObject) has been added.
					applyGenericTool(String,DDiagram,EObject) has been added.
					org.eclipse.sirius.tests.swtbot.support
		closePerspective(String), 
				closeSiriusPerspective() and 
				closeModelingPerspective() have been added in class 
				org.eclipse.sirius.tests.swtbot.support.api.perspective.DesignerPerspectives to allow the closing of perspectives.
			org.eclipse.sirius.tests.swtbot.support.api.condition.PerspectiveActivatedCondition new offers the capability to inverse the test. This condition becomes a DeactivatedCondition instead of an ActivatedCondition by using the new constructor with inverse parameter.
			isSnapToShape and 
				isSnapToGrid() have been added in class 
				org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor. They allow to know the state of the corresponding properties.
			org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor.dragWithKey(int, int, int, int, int) (and also 
				SWTBotSiriusGefViewer.dragWithKey and 
				SWTBotSiriusFigureCanvas.mouseDragWithKey), has an additional fifth parameter compared to 
				drag(int, int, int, int) method, to indicate the key code to press during the drag’n’drop. It is possible to call this method with 
				SWT.None to obtain the standard behavior of 
				drag method. This method also has a correct behavior for the move of bendpoints of edges.
			org.eclipse.sirius.tests.swtbot.support.api.condition.TopCondition: New condition to wait that top of the edit part is on the expected location.
			org.eclipse.sirius.tests.swtbot.support.api.condition.BendpointLocationCondition: New condition to wait that a bendpoint is on the expected x or y location.
			org.eclipse.sirius.tests.swtbot.support.api.condition.TreeChildrenNumberCondition: New condition to wait that a tree has the expected number of children.
			org.eclipse.sirius.tests.swtbot.support.utils.SWTBotCommonHelper.saveCurrentEditor(Session): This new method is preferable to 
				saveCurrentEditor() because there is a wait condition to ensure that the save is finished.
			org.eclipse.sirius.tests.swtbot.support.api.condition.CheckBoundsCondition: This condition now also checks the bounds location if the checkWidth or checkHeight (or both) is false.
			org.eclipse.sirius.ext.gef
		org.eclipse.sirius.ext.gef.query.EditPartQuery has been added. It allows to retrieve all children of the current part.
			org.eclipse.sirius.ext.jface
		org.eclipse.sirius.ext.jface.viewers.IToolTipProvider has been copied from JFace 3.10 from Luna, so that we can use it with Juno and Kepler too.
			org.eclipse.sirius.ext.gmf.runtime
		getIntersection methods have been added in 
				org.eclipse.sirius.ext.gmf.runtime.editparts.GraphicalHelper. They are similar to the existing 
				getIntersection methods, but they consider the nearest point on the figure if there is no intersection.
			org.eclipse.sirius.common.acceleo.aql (required for evaluating the expressions) and 
				org.eclipse.sirius.common.acceleo.aql.ide  (optional, only needed to provide specification-time features like expression completion) plug-ins. AQL is similar to Acceleo 3/MTL, but simpler and provides much better performance in the Sirius context. If you make use of this feature, be aware that some details may still change in future releases, including 3.0.x maintenance releases. See the AQL documentation for more details on the language itself.
			*.svgz) are now supported everywhere normal SVG images were supported.
			service: or 
				aql: can now invoke Java services which are defined in the workspace (with no need to launch a separate runtime).
			var: and 
						feature: interpreters, which are always present.
					[eContents()->size()/]) in the VSM, that was implicit before. Customers who want to completely remove this dependency must remove the Acceleo 3 expressions from there VSM after the migration.
			*" can now be used as feature name of a table’s 
				Feature Column to skip the feature name validation during the cell creation. This allow to compute the label of cells for lines whose semantic element types have no common 
				EStructuralFeature (inherited or with same name).
			The most important and impacting changes in this release are (details below in plug-in specific sections):
org.eclipse.sirius.ui.siriuspropertiescelleditor, defined in 
				org.eclipse.sirius.ui, can be used to provide customized cell editors for semantic element’s properties as shown in the properties view on a Sirius representation.
			org.eclipse.sirius.eef.components.SiriusAwarePropertiesEditingComponent can be used as root class of the generated EEF components to greatly improve performances when using both EEF properties views with Sirius representations. 
			org.eclipse.sirius.eef.adapters is now 1.5.0 (from 1.2 before). EEF 1.5 is source and binary-compatible with EEF 1.2 to 1.4, and no re-generation of the EEF views should be needed to switch to 1.5.
			org.eclipse.sirius.business.internal.session.IsModifiedSavingPolicy saving policy, introduced in Sirius 2.0.0 but not enabled at that time is now the default. The previous implementation, 
				org.eclipse.sirius.business.api.session.SavingPolicyImpl is still available if needed.
			MinimalEObjectImpl.Container as base class, which reduces memory consumption compared to previous versions.
			RGBValues type used in Sirius to represent colors has been converted into an immutable EMF EDataType, which also reduces memory consumption compared to previous versions.
			AirdResourceImpl type, use for the 
				*.aird resources, no longer inherits from GMF’s 
				GMFResource or depend on GMF in any way. This makes the 
				org.eclipse.sirius now completely independent on GMF.
			DAnalsysis.models reference has been replaced by the 
				DAnalsysis.semanticModels attribute, in conjunction with the new 
				ResourceDescriptor data-type. The 
				DAnalysis.getModels() Java method is still present for compatibility and returns the same values, but the returned list can not be modified. All changes must be made directly on 
				DAnalsysis.semanticModels and will be reflected in the value returned by 
				DAnalysis.getModels(). While not technically deprecated yet, 
				DAnalysis.getModels() should be avoided and may be removed in a future release.
			plugin.xml that provide UI functionalities have been moved to new 
				org.eclipse.sirius.*.ext plug-ins, to make the contributions to the UI optional. If your product consumed directly the Sirius plug-ins instead of the high-level features, you may need to add the new plug-ins if you want the Sirius UI contributions to stay available.
			AirDCrossReferenceAdapterImpl, which was a subclass of GMF’s 
				CrossReferenceAdapter on session resources (
				*.aird). If your code relied on GMF’s implementation to find inverse references, it can use the Sirius session’s 
				Session.getSemanticCrossReferencer() instead, which provides the same service (and more) and avoids the redundant installation of GMF’s version.
			Packaging changes:
org.eclipse.sirius.runtime.aql includes the minimum required to execute AQL queries at runtime. It must be present on end-users' systems for modelers which use AQL expressions to work.
					org.eclipse.sirius.aql includes both the runtime requirements and the development-time features like support for auto-completion of AQL expressions in the VSM editor.
					org.eclipse.sirius.specifier includes everything needed to have a complete Sirius specification environment, with support for all dialects. It includes support for Acceleo 3/MTL queries, but not for AQL (provided by 
				org.eclipse.sirius.aql) or OCL (provided by 
				org.eclipse.sirius.runtime.ocl). Future Sirius releases will probably swap AQL and Acceleo 3, making AQL the defaut and part of the main feature, and Acceleo 3/MTL optional in a separate feature.
			http://download.eclipse.org/sirius/updates/releases/2.0.5/. This is retro-active on all previously released versions of Sirius, but not on milestones before 3.0.0.
			Other changes:
org.eclipse.sirius.common
		org.eclipse.sirius.common.tools.api.util.SiriusCrossReferenceAdapter interface and the 
				org.eclipse.sirius.common.tools.api.util.SiriusCrossReferenceAdapterImpl have been added to have the capability to disable the proxy resolution. This feature is typically used to prevent loading a resource during its unloading. 
				Warning : 
				Every additional custom CrossReferenceAdapter  should extend 
				SiriusCrossReferenceAdapterImpl or at least implement 
				SiriusCrossReferenceAdapter with the same implementation as 
				SiriusCrossReferenceAdapterImpl.
			org.eclipse.sirius.common.tools.api.util.ECrossReferenceAdapterWithUnproxyCapability is a specific kind of 
				SiriusCrossReferenceAdapter. It provides the capability to resolve all proxy cross references to a given resource. It is now used by the Session as semantic cross referencer. This type is exposed as API but it is not intended to be used/referenced/extended by user code (as the below 
				LazyCrossReferencer type).
			org.eclipse.sirius.common.tools.api.util.ReflectionHelper.getFieldValueWithoutException(Class<?>, String) has been added to return an internal static value of a class.   
			org.eclipse.sirius.common.tools.api.resource.ResourceSetSync has a new state 
				CHANGES_CANCELED used to define the state where the user canceled its changes.
			org.eclipse.sirius.common.tools.api.resource.ImageFileFormat class has been added (it was in 
				org.eclipse.sirius.ext.swt before).
			org.eclipse.sirius.common.tools.api.util.EclipseUtil.getConfigurationElementsFor() has been added: it calls 
				org.eclipse.core.runtime.Platform.getExtensionRegistry().getConfigurationElementsFor() only if 
				Platform.isRunning().
			org.eclipse.sirius.business.api.migration.IMigrationParticipant exposes a new method 
				postXMLEndElement([..]) which is called during a migration operation. This method should be overridden by participants which have to hook the loading process after each end of XML tag. The  corresponding abstract class 
				org.eclipse.sirius.business.api.migration.AbstractMigrationParticipant provides a default empty  implementation.
			org.eclipse.sirius.common.tools.api.interpreter.JavaExtensionsManager can now be used by langages interpreters to benefit from a consistent handling of Java extensions and support for loading Java services from the workspace.
			org.eclipse.sirius.common.tools.api.interpreter.TypeName has been introduced to represent in the codebase any type which was previously represented as a plain String.
			org.eclipse.sirius.common.tools.api.interpreter.TypedValidation has been introduced for 
				IInterpreter implementations able to provide richer information when validating an expression. This information is captured through a 
				org.eclipse.sirius.common.tools.api.interpreter.ValidationResult instance.
			org.eclipse.sirius.common.tools.api.interpreter.VariableType has been introduced to represent the possible types a variable can have in a Viewpoint specification model.
			org.eclipse.sirius.common.tools.api.interpreter.IInterpreterContextUtils has been introduced to factorize code related to managing 
				IInterpreterContext instances.
			org.eclipse.sirius.business.api.dialect.description.MultiLanguagesValidator has been introduced to provide a safe and more efficient way to switch to the proper 
				IInterpreter instance when validating expressions.
			org.eclipse.sirius.common.tools.api.util.RefreshIdFactory has been replaced with 
				org.eclipse.sirius.common.tools.api.util.RefreshIdsHolder which no longer rely on a global singleton but attach information to an EObject representing the current scope. This impacts 
				org.eclipse.sirius.diagram.business.api.query.AbstractDNodeQuery , 
				org.eclipse.sirius.common.tools.api.util.CartesianProduct and 
				org.eclipse.sirius.common.tools.api.util.EObjectCouple which are now requiring now a 
				RefreshIdsHolder instance.
			org.eclipse.sirius.common.tools.api.util.LazyCrossReferencer now extends 
				ECrossReferenceAdapterWithUnproxyCapability and implements 
				resolveProxyCrossReferences(Resource).
			org.eclipse.sirius.common.tools.api.util.LazyCrossReferencer.enableResolve()  and 
				disableResolve()  methods has been moved to 
				SiriusCrossReferenceAdapter.enableResolveProxy()  and 
				disableResolveProxy().
			org.eclipse.sirius.common.tools.api.interpreter.DefaultInterpreterContextFactory.createInterpreterContext(...) now requires a 
				Map<String, VariableType> for the accessible variables instead of a 
				Map<String, String>.
			org.eclipse.sirius.common.tools.api.interpreter.IInterpreterContext.getVariables()  and 
				org.eclipse.sirius.business.api.dialect.description.IInterpretedExpressionQuery.getAvailableVariables() are now returning a map containing 
				VariableType instances instead of encoded Strings.
			org.eclipse.sirius.common.tools.api.interpreter.IInterpreterStatus.getTargetTypes() no longer returns a list of encoded Strings but a 
				VariableType instance instead.
			org.eclipse.sirius.common.tools.api.interpreter.IInterpreterContext.getTargetTypes() has been deprecated in favor of 
				org.eclipse.sirius.common.tools.api.interpreter.IInterpreterContext.getTargetType() which returns a 
				VariableType instance instead of encoded Strings.
			org.eclipse.sirius.common.ui
		org.eclipse.sirius.common.ui.tools.api.dialog.quickoutline packages are available in API to allow editor to provide quick outline feature easily.
			displaySyncExec(Runnable) , 
				displayAsyncExec(Runnable) and 
				synchronizeWithUIThread() have been added in class 
				org.eclipse.sirius.common.ui.tools.api.util.EclipseUIUtil to encapsulate accesses to the current 
				Display instance.
			plugin.xml that provide UI functionalities have been moved to 
				org.eclipse.sirius.common.ui.ext.
			org.eclipse.sirius
		org.eclipse.sirius.business.api.session.danalysis.DAnalysisSessionHelper.findContainerForAddedRepresentation(DAnalysis, DRepresentation) has been added to return a 
				DRepresentationContainer from the 
				DAnalysis parameter and the added 
				DRepresentation.
			org.eclipse.sirius.business.api.migration.IMigrationParticipant.updateCreatedObject(EObject newObject, String loadedVersion) has been added to update object values in VSM before loading this objects from XML file.
			org.eclipse.sirius.tools.api.ui.RefreshEditorsPrecommitListener.disable() has been added to disable the next refresh attempt in the current precommit loop iteration.
			org.eclipse.sirius.business.api.helper.SiriusUtil.ENVIRONMENT_URI_SCHEME declares environment URI scheme.
			org.eclipse.sirius.business.api.helper.SiriusUtil.VIEWPOINT_ENVIRONMENT_RESOURCE_URI declares 
				environment:/viewpoint resource URI.
			org.eclipse.sirius.viewpoint.description.util.DescriptionResourceImpl.OPTION_SIRIUS_USE_URI_FRAGMENT_AS_ID added to define a option to enable the use of a id map for odesign resource, id being uri’s fragment. 
			org.eclipse.sirius.business.api.query.EObjectQuery has now a new constructor with an additional parameter, ECrossReferenceAdapter. This can be usefull if there is many calls to inverse references methods for the same Session. This avoids to get the semantic cross referencer from the EObject each time. This query also proposes a new method 
				getInverseReferences(Set<EReference>).
			org.eclipse.sirius.business.api.dialect.DialectServices.refreshImpactedElements(DRepresentation, Collection<Notification>, IProgressMonitor). A default implementation that does nothing is done in 
				org.eclipse.sirius.business.api.dialect.AbstractRepresentationDialectServices.
			org.eclipse.sirius.business.api.query.DAnalysisQuery named 
				getMainModels(). This method returns a Set of the main model and the other non controlled models.
			org.eclipse.sirius.viewpoint.DAnalysis named 
				getSemanticResources(). This method returns a list of 
				org.eclipse.sirius.business.api.resource.ResourceDescriptor which is a descriptor of the semantic resource.
			org.eclipse.sirius.viewpoint.RGBValues has been changed from an 
				EClass to an 
				EDataType, it is not an 
				EObject anymore.
			org.eclipse.sirius.business.api.metamodel.helper.FontFormatHelper has been added. It helps to update label format multi valued features.
			org.eclipse.sirius.business.api.session.SessionListener.SEMANTIC_CHANGE is no more send to 
				SessionListener and 
				SessionManagerListener listeners on save when a semantic resource is saved. Use a 
				ResourceSyncClient listener on 
				ResourceSetSync to have know if a semantic resource is saved.
			org.eclipse.sirius.tools.api.command.semantic.RemoveSemanticResourceCommand.
				removeReferencingResources has been added to indicate if the referencing resources are also to remove.
					removeFromControlledResources has been removed because controlled resources are managed internally.
					removeReferencingResources has been added in 
				org.eclipse.sirius.business.api.session.Session.removeSemanticResource method to indicate if the referencing resources are also to remove.
			getModels() method in 
				org.eclipse.sirius.viewpoint.DAnalysis returns a non-modifiable list. Use 
				getSemanticResources() instead.
			isBbocked() and 
				setBlocked() methods on the 
				org.eclipse.sirius.viewpoint.DAnalysisSessionEObject EClass have been removed, as they were not actually used in the internal code.
			org.eclipse.sirius.business.api.helper.task.ICommandTask.undo()/redo() methods are deprecated because they are useless since undo/redo is managed by EMF Transaction.
			org.eclipse.sirius.tools.api.command.IUndoableCommand interface are deprecated because it is useless since undo/redo is managed by EMF Transaction.
			org.eclipse.sirius.business.api.helper.task.TaskExecutor.undo()/redo() methods are deprecated because they are useless since undo/redo is managed by EMF Transaction.
			org.eclipse.sirius.business.api.session.Session.createSemanticResource() method has been removed. Use 
				Session.addSemanticResource() instead.
			ExtendedPackage 
				EDataType which was defined in the 
				http://www.eclipse.org/sirius/1.1.0 package was not actually used anywhere and has been removed.
			DView methods 
				getAllRepresentations(), 
				getReferencedRepresentations() and 
				getHiddenRepresentations() have been removed: 
				getReferencedRepresentations() and 
				getHiddenRepresentations()  were never actually used, making 
				getAllRepresentations() strictly equivalent to 
				getOwnedRepresentations(). Code that used 
				getAllRepresentations() can simply use 
				getOwnedRepresentations() instead. 
			org.eclipse.sirius.viewpoint.DSourceFileLink has been removed.
			org.eclipse.sirius.viewpoint.DNavigable has been removed.
			org.eclipse.sirius.viewpoint.DNavigationLink has been removed.
			org.eclipse.sirius.viewpoint.DValidable has been removed.
			org.eclipse.sirius.viewpoint.NavigationTargetType has been removed.
			org.eclipse.sirius.viewpoint.DLabelled has been removed.
			org.eclipse.sirius.viewpoint.DContainer has been removed.
			org.eclipse.sirius.ui
		org.eclipse.sirius.ui.business.api.dialect.DialectUIServices.completeToolTipText(String, EObject, EStructuralFeature) has been added to customize the tooltip displayed in the VSM editor by using the feature of the current object. The old method 
				org.eclipse.sirius.ui.business.api.dialect.DialectUIServices.completeToolTipText(String, EObject) has been deprecated.
			org.eclipse.sirius.ui.tools.api.properties.SiriusExtensiblePropertySource has been added. It allows developers to make their properties views CellEditor customizable by using the new extension point 
				org.eclipse.sirius.ui.siriuspropertiescelleditor
			org.eclipse.sirius.ext.emf.ui.ICellEditorProvider has been added to allow clients to provide their own 
				CellEditor - in the Sirius semantic properties views – through the new extension point 
				org.eclipse.sirius.ui.siriuspropertiescelleditor.
			org.eclipse.sirius.ui.business.api.session.IEditingSession.detachEditor(DialectEditor, boolean) has been added to choose whether we should revert the user changes when detaching the editor.
			org.eclipse.sirius.ui.tools.api.views.LockDecorationUpdater is now available to add it on a 
				org.eclipse.ui.navigator.CommonNavigator to be refreshed when notifications are send to 
				org.eclipse.sirius.ecore.extender.business.api.permission.IAuthorityListener. 
			org.eclipse.sirius.ui.tools.api.views.RefreshLabelImageJob has been added to refresh the icon of specified elements on a 
				org.eclipse.ui.navigator.CommonNavigator.
			plugin.xml that provide UI functionalities have been moved to 
				org.eclipse.sirius.ui.ext.
			org.eclipse.sirius.ecore.extender
		org.eclipse.sirius.ecore.extender.business.api.accessor.ModelAccessor.eRemoveInverseCrossReferences() has been changed to return the list of changed objects by the inverse cross references removal.
			org.eclipse.sirius.ecore.extender.business.api.accessor.IMetamodelExtender.eRemoveInverseCrossReferences() has been changed to return the list of changed objects by the inverse cross references removal.
			org.eclipse.sirius.ecore.extender.business.api.accessor.CompositeMetamodelExtender.eRemoveInverseCrossReferences() has been changed to return the list of changed objects by the inverse cross references removal.
			org.eclipse.sirius.ecore.extender.IllegalURIException has been removed. It was not actually thrown anywhere in the code.
			org.eclipse.sirius.editor
		org.eclipse.sirius.editor.tools.api.assist.TypeContentProposalProvider.bindPluginsCompletionProcessors(AbstractPropertySection, Text) has been added. This method is very similar to 
				org.eclipse.sirius.editor.tools.api.assist.TypeContentProposalProvider.bindCompletionProcessor(AbstractPropertySection, Text), the difference is that it binds the completion processors available in plugins to the text.
			org.eclipse.sirius.diagram
		org.eclipse.sirius.diagram.tools.api.command.ChangeLayerActivationCommand has been added. This command was previously internal.
			org.eclipse.sirius.diagram.business.api.helper.SiriusDiagramUtil.DIAGRAM_ENVIRONMENT_RESOURCE_URI declares the 
				environment:/diagram resource URI.
			org.eclipse.sirius.diagram.business.api.diagramtype.IDiagramDescriptionProvider.completeToolTipText(String, EObject, EStructuralFeature) has been added to customize the tooltip displayed in the VSM editor by using the feature of the current object. The old method 
				org.eclipse.sirius.diagram.business.api.diagramtype.IDiagramDescriptionProvider.completeToolTipText(String, EObject) has been deprecated.
			org.eclipse.sirius.diagram.business.api.query.ContainerMappingQuery to test the children presentation mode of the current 
				ContainerMapping: 
				isVerticalStackContainer(), 
				isHorizontalStackContainer(), 
				isRegionContainer() and 
				isRegion().
			org.eclipse.sirius.diagram.business.api.query.AbstractDNodeQuery now requires a 
				org.eclipse.sirius.common.tools.api.util.RefreshIdsHolder to check for equality in the context of a refresh operation.
			DNodeList.lineWidth attribute has been removed from the metamodel, the corresponding generated elements do not exist anymore:  
				org.eclipse.sirius.diagram.DNodeList.getLineWidth(),  
				org.eclipse.sirius.diagram.DNodeList.setLineWidth(),  
				org.eclipse.sirius.diagram.DiagramPackage.DNODE_LIST__LINE_WIDTH, 
				org.eclipse.sirius.diagram.DiagramPackage.getDNodeList_LineWidth(), 
				org.eclipse.sirius.diagram.DiagramPackage.Literals.DNODE_LIST__LINE_WIDTH().
			org.eclipse.sirius.diagram.ComputedStyleDescriptionRegistry.cache reference has been removed from the metamodel as it is no more useful, to limit memory consumed by computed 
				StyleDescription we directly look for them in the 
				ComputedStyleDescriptionRegistry.computedStyleDescriptions list.
			org.eclipse.sirius.diagram.ui
		org.eclipse.sirius.diagram.ui.tools.api.figure.ImageFigureWithAlpha interface has been added to identify Figures having the capability to return an alpha value from a coordinate. 
				org.eclipse.sirius.diagram.ui.tools.api.figure.AbstractCachedSVGFigure and 
				org.eclipse.sirius.diagram.ui.tools.api.figure.AbstractTransparentImage  now implement this new interface.
			org.eclipse.sirius.diagram.ui.tools.api.figure.locator.DBorderItemLocator.resetBorderItemMovedState() has been added to allow to reset the state of 
				borderItemHasMoved. This method must be used carefully only in case where 
				setConstraint(Rectangle) is called to compute temporary a 
				getValidLocation(Rectangle, IFigure, Collection, List), one time with a new value and just after with the old value.
			org.eclipse.sirius.diagram.ui.tools.api.image.DiagramImagesPath.HIDDEN_LABEL_DECORATOR has been added to represent the path of hidden label decorator used in the outline.
			org.eclipse.sirius.diagram.ui.business.api.provider.DDiagramElementContainerLabelItemProvider has been added to represent container and list labels as virtual nodes in the Show/Hide wizards.
			org.eclipse.sirius.diagram.ui.tools.api.figure.locator.DBorderItemLocator did not take into account the rectangle size passed to 
				getValidLocation. To resolve that limitation, several protected methods that took a Point as location now take a Rectangle:
				locateOnBorder(Point, int, int, IFigure, Collection<IFigure>, List<IFigure>) now takes a 
						Rectangle instead a 
						Point: 
						locateOnBorder(Rectangle, int, int, IFigure, Collection<IFigure>, List<IFigure>);
					locateOnSouthBorder, 
						locateOnNorthBorder, 
						locateOnWestBorder and 
						locateOnEastBorder signatures is now 
						(Rectangle, int, IFigure, Collection<IFigure>, List<IFigure>);
					locateOnParent signature is now 
						locateOnParent(Rectangle, int, IFigure);
					conflicts signature is now 
						conflicts(Rectangle, IFigure, Collection<IFigure>, List<IFigure>).
					DiagramImagesPath.LINK_TO_VIEWPOINT_IMG has been moved to 
				org.eclipse.sirius.ui.tools.api.image.ImagesPath.LINK_TO_VIEWPOINT_IMG. This is more coherent because the corresponding image is in core 
				org.eclipse.sirius.common.ui plugin.
			org.eclipse.sirius.diagram.ui.tools.api.layout.PinHelper moved from 
				org.eclipse.sirius.diagram.ui plugin to 
				org.eclipse.sirius.diagram plugin, i.e. 
				org.eclipse.sirius.diagram.tools.api.layout.PinHelper with 
				PinHelper.IsPinned(IDiagramElementEditPart) removed in favor of 
				PinHelper.IsPinned(DDiagramElement).
			org.eclipse.sirius.diagram.ui.tools.internal.actions.pinning.pinElementsActionId and 
				org.eclipse.sirius.diagram.ui.tools.internal.actions.pinning.unpinElementsActionId are now declared as 
				org.eclipse.sirius.diagram.tools.internal.actions.pinning.pinElementsActionId and 
				org.eclipse.sirius.diagram.tools.internal.actions.pinning.unpinElementsActionId in 
				org.eclipse.sirius.diagram plugin.
			plugin.xml that provides UI functionalities have been moved to 
				org.eclipse.sirius.diagram.ui.ext.
			org.eclipse.sirius.diagram.ui.tools.api.util.GMFNotationHelper.findGMFDiagram() became deprecated in favor of 
				DiagramCreationUtil.findAssociatedGMFDiagram()/getAssociatedGMFDiagram()
			org.eclipse.sirius.diagram.ui.edit.api.part.IDiagramEdgeEditPart.getEAdapterStrokeColor method has been removed as the corresponding adapter was uneffective and is no more used and installed on the edge edit parts.
			org.eclipse.sirius.diagram.ui.tools.api.figure.InvisibleResizableCompartmentFigure class has been removed, use a 
				org.eclipse.gmf.runtime.diagram.ui.figures.ShapeCompartmentFigure with a 
				org.eclipse.draw2d.MarginBorder or a null border instead.
			org.eclipse.sirius.diagram.ui.edit.api.part.IDiagramElementEditPart.getEAdapterSemanticElements() has been removed (and all its implementations). For manual refresh, this adapter has been replaced with the 
				RefreshEditorsPrecommitListener.
			org.eclipse.sirius.diagram.ui.part.SiriusDiagramEditorUtil.findView() has been deleted in flavor of 
				SiriusGMFHelper.getGmfView(). If you was using 
				SiriusDiagramEditorUtil.findView() with a semantic element in parameter, retrieve before the corresponding 
				DDiagram or 
				DDiagramElement and use 
				SiriusGMFHelper.getGmfView(DSemanticDecorator) from this last to get the corresponding GMF View. To get a 
				DDiagram or 
				DDiagramElement from a semantic element, you can use 
				EObjectQuery.getInverseReferences(EReference) API, see 
				org.eclipse.sirius.diagram.ui.business.api.view.ValidateAction.getDSemanticDecorator() for an example. 
			org.eclipse.sirius.table
		org.eclipse.sirius.table.business.api.helper.TableHelper.getColumn() have been removed because they are not useful, 
				TableHelper.getColumn(DLine, int) can be replaced by 
				DTable.getColumns().get(int) and 
				TableHelper.getColumn(DTable, String) should not be used as we can have several columns with a same featureName.
			org.eclipse.sirius.table.business.api.helper.TableHelper.getEClassifier(DLine, int) has been removed because it is not useful, use 
				TableHelper.getEClassifier(line, column) instead.
			org.eclipse.sirius.table.business.api.helper.TableHelper.getTableElement(DTableElementStyle) has been removed because it is not useful, 
				DTableElementStyle.eContainer() can be used instead.
			org.eclipse.sirius.table.business.api.helper.TableHelper.getCell(DCellStyle) has been removed because they are not useful, use 
				DCellStyle.eContainer instead.
			org.eclipse.sirius.table.business.api.helper.TableHelper.getCell(RGBValues) has been removed, 
				RGBValues is not an 
				EObject anymore. The method was looking in the eContainer hierarchy of a an instance of 
				RGBValues to find the parent 
				DCell.
			org.eclipse.sirius.table.business.api.helper.TableHelper.getCreateCellTool(DCell) has been removed because it is not useful, use 
				TableHelper.getCreateCellTool(line, column) instead.
			org.eclipse.sirius.table.business.api.helper.TableHelper.getCellDefaultForegroundColor() has been removed because it is not useful, use 
				EnvironmentSystemColorFactory.getDefault().getSystemColorDescription("gray") instead.
			DTableElementUpdater has been removed from metamodel. It is now unnecessary. This interface was here to provide operations to activate and deactivate the listeners, that have been replaced by the 
				RefreshImpactedElementsCommand launched from 
				RefreshEditorsPrecommitListener.
			org.eclipse.sirius.table.ui
		plugin.xml that provide UI functionalities have been moved to 
				org.eclipse.sirius.table.ui.ext.
			org.eclipse.sirius.tree
		org.eclipse.sirius.tree.business.api.interaction.DTreeItemUserInteraction.refreshContent(boolean fullRefresh) has been added to allow full refresh from a specified 
				DTreeItem.
			org.eclipse.sirius.tree.business.api.command.DTreeItemLocalRefreshCommand has been added to call 
				DTreeItemUserInteraction.refreshContent(boolean fullRefresh) in an EMF Command. 
			org.eclipse.sirius.tree.business.api.interaction.DTreeItemUserInteraction.expand(IProgressMonitor) has been added similar to 
				DTreeItemUserInteraction.expand() but taking a 
				IProgressMonitor in parameter to have progression on 
				DTreeItem expanding.
			org.eclipse.sirius.tree.business.api.interaction.DTreeItemUserInteraction.collapse(IProgressMonitor) has been added similar to 
				DTreeItemUserInteraction.collapse() but taking a 
				IProgressMonitor in parameter to have progression on 
				DTreeItem collapsing.
			org.eclipse.sirius.tree.business.api.interaction.DTreeItemUserInteraction.expandAll(IProgressMonitor) has been added similar to 
				DTreeItemUserInteraction.expandAll() but taking a 
				IProgressMonitor in parameter to have progression on 
				DTreeItem expanding.
			org.eclipse.sirius.tree.business.api.interaction.DTreeItemUserInteraction.refreshContent(boolean, IProgressMonitor) has been added similar to 
				DTreeItemUserInteraction.refreshContent(boolean) but taking a 
				IProgressMonitor in parameter to have progression on 
				DTreeItem expanding.
			DTreeUserInteraction.expand(IProgressMonitor) has been added similar to 
				org.eclipse.sirius.tree.business.api.interaction.DTreeUserInteraction.expand() but taking a 
				IProgressMonitor in parameter to have progression on 
				DTreeItem expanding.
			DTreeUserInteraction.expandAll(IProgressMonitor) has been added similar to 
				org.eclipse.sirius.tree.business.api.interaction.DTreeUserInteraction.expandAll() but taking a 
				IProgressMonitor in parameter to have progression on 
				DTreeItem expanding.
			org.eclipse.sirius.tree.business.api.command.DTreeItemExpansionChangeCommand.DTreeItemExpansionChangeCommand(GlobalContext, TransactionalEditingDomain, DTreeItem, IProgressMonitor, boolean) has an additional 
				IProgressMonitor parameter.
			DTreeElementUpdater has been removed from metamodel. It is now unnecessary. This interface was here to provide operations to activate and deactivate the listeners, that have been replaced by the 
				RefreshImpactedElementsCommand launched from 
				RefreshEditorsPrecommitListener.
			org.eclipse.sirius.tree.ui
		org.eclipse.sirius.tree.ui.properties.section.common.AbstractDTreePropertySection.update(final TransactionalEditingDomain domain, final Notification notification) has been replaced by 
				org.eclipse.sirius.tree.ui.properties.section.common.AbstractDTreePropertySection.update(ResourceSetChangeEvent) to allow to update only once per ResourceSetChangeEvent and let subclasses make additional filtering on the notifications.
			org.eclipse.sirius.tree.ui.properties.section.common.AbstractDTreePropertySection.getEventListener() has been changed from 
				DemultiplexingListener to 
				ResourceSetListener.
			org.eclipse.sirius.tree.ui.properties.section.common.AbstractDTreePropertySection.eventListener has been changed from 
				DemultiplexingListener to 
				ResourceSetListener.
			plugin.xml that provide UI functionalities have been moved to 
				org.eclipse.sirius.tree.ui.ext.
			org.eclipse.sirius.synchronizer
		org.eclipse.sirius.synchronizer.ModelToModelSynchronizer.update(CreatedOutput, boolean, IProgressMonitor) has been added similar to 
				org.eclipse.sirius.synchronizer.ModelToModelSynchronizer.update(CreatedOutput, boolean) but taking a 
				IProgressMonitor in parameter to have progression on synchronization.
			org.eclipse.sirius.synchronizer.SemanticPartitionInvalidator.hasFastResult(EObject, SemanticPartition, CreatedOutput) now takes a 
				CreatedOutput as additional parameter element to allow to have the parent output element.
			org.eclipse.sirius.synchronizer.SemanticPartition.evaluate(EObject, CreatedOutput) now takes a 
				CreatedOutput as additional parameter. This 
				CreatedOutput represents the output model element which will become the parent of the elements created from the evaluation result.
			org.eclipse.sirius.ext.swt
		org.eclipse.sirius.ext.swt.ImageFileFormat class has been moved in 
				org.eclipse.sirius.common.tools.api.resource (in the 
				org.eclipse.sirius.common plugin).
			org.eclipse.sirius.ext.e3.ui
		org.eclipse.sirius.ext.e3.ui.dialogs.FilteredTree and 
				org.eclipse.sirius.ext.e3.ui.dialogs.PatternFilter have been added in order to have the latest functionalites of 
				org.eclipse.ui.dialogs.FilteredTree with Eclipse Juno.
			org.eclipse.sirius.ext.emf.tx
		org.eclipse.sirius.ext.emf.tx.DelegatingValidateEditSupport has been added to be able to have a 
				ValidateEditSupport which delegate to an existing 
				ValidateEditSupport.
			org.eclipse.sirius.eef.adapters
		This plug-in now requires the version 1.5.0 of 
			org.eclipse.emf.eef.runtime bundle.
		
org.eclipse.sirius.eef.components.SiriusAwarePropertiesEditingComponent can be used as root class of the generated EEF components to greatly improve performances when using both EEF properties views with Sirius representations. Refer to 
				Using the Extended Editing Framework with Sirius documentation for details.
			x-internal:=true
				org.eclipse.sirius.eef.actions
					org.eclipse.sirius.eef.adapters
					org.eclipse.sirius.tests.junit.support
		org.eclipse.sirius.tests.support.api.EclipseTestsSupportHelper.setReadOnlyStatus(boolean, IResource...) has been added to change the read only status of the given resources.
			warnings member variable has been added to 
				org.eclipse.sirius.tests.support.api.SiriusTestCase to allow the recording of warning logs. Methods 
				doesAWarningOccurs(), 
				clearWarnings(), 
				setWarningCatchActive(boolean), 
				isWarningCatchActive() and 
				getWarningLoggersMessage() have also been added to manage the 
				warnings member variable in the same way as the existing 
				errors member variable.
			org.eclipse.sirius.tests.support.api.SiriusTestCase.loadModeler(URI, EditingDomain) has been added to load a VSM resource and make the 
				Viewpoints it defines accessible via the 
				SiriusTestsCase.viewpoints field.
			org.eclipse.sirius.tests.support.api.ImageComposer has been added to the test API to do assertions on image decorators.
			SiriusTestCase.ResourceURIType and the method 
				SiriusTestCase.toURI(final String, ResourceURIType) have been added to allow choosing the type of URI created (
				platform: or 
				plugin:).
			SiriusTestCase.genericSetUp(List<URI>, List<URI>, boolean, URI) method has been set to protected so that it can be called from concrete test cases. This method allows initializing session.
			TreeItemLabelFontFormatQuery was moved into 
				org.eclipse.sirius.tests.support.api (from 
				org.eclipse.sirius.tests.swtbot.support.api.widget), as it can be used in non-SWTBot tests..
			org.eclipse.sirius.tests.support.api.SiriusDiagramTestCase.setReadOnly(IFile) has been deprecated, 
				org.eclipse.sirius.tests.support.api.EclipseTestsSupportHelper.setReadOnlyStatus(boolean, IResource...) can be used instead.
			org.eclipse.sirius.tests.swtbot.support
		warnings member variable has been added to 
				org.eclipse.sirius.tests.swtbot.support.api.AbstractSiriusSwtBotGefTestCase to allow the recording of warning logs. Methods 
				doesAWarningOccurs(), 
				setWarningCatchActive(boolean), 
				isWarningCatchActive() and 
				getWarningLoggersMessage() have also been added to manage the 
				warnings member variable in the same way as the existing 
				errors member variable.
			org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor.getDRepresentation() has been added to return the 
				org.eclipse.sirius.viewpoint.DRepresentation instance available in the diagram editor.
			org.eclipse.sirius.tests.swtbot.support.api.AbstractSiriusSwtBotGefTestCase.getSectionButton()  now only takes the button’s tooltip instead of a numerical position index and the tooltip.
			org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusHelper.selectPropertyTabItem(String) now returns a 
				boolean that is true when the property tab item is found, false otherwise.
			TreeItemLabelFontFormatQuery was moved into 
				org.eclipse.sirius.tests.support.api (from 
				org.eclipse.sirius.tests.swtbot.support.api.widget), as it can be used in non-SWTBot tests..
			org.eclipse.sirius.tests.swtbot.support.api.business.UIPerspective.deleteProject(UIProject) and 
				org.eclipse.sirius.tests.swtbot.support.api.business.UIPerspective.deleteProject(String) have been deprecated, 
				org.eclipse.sirius.tests.support.api.EclipseTestsSupportHelper.setReadOnlyStatus(boolean, IResource...) can be used instead.
			The following UI plug-ins has been added:
org.eclipse.sirius.ui.ext
			org.eclipse.sirius.common.ui.ext
			org.eclipse.sirius.diagram.ui.ext
			org.eclipse.sirius.table.ui.ext
			org.eclipse.sirius.tree.ui.ext
			These plug-ins own the extension definitions related to perspective, views, newWizard, menus, contextual menus, editors and preference pages that were previously in 
			org.eclipse.sirius.xxx.ui plug-ins.
			
Now, downstream projects can define features that do not contain 
			org.eclipse.sirius.xxx.ui.ext, allowing them not have all that functionalities they may not want.
		
			 
		
			 
		
Example with this initial state before resizing:
			
			 
			
Result after resizing without this feature (the edges have moved):
			
			 
			
Result after resizing with this feature (the edges keep the same location):
			
			 
		
org.eclipse.sirius
		org.eclipse.sirius.business.api.session.ViewpointSelector class has been added, with easy-to-use methods to select/deselect viewpoint in a given session.
			VIEWPOINT_REGISTRY_INITIAL_SIZE preference and 
				VIEWPOINT_REGISTRY_INITIAL_SIZE_DEFAULT_VALUE default value has been removed from 
				org.eclipse.sirius.tools.api.preferences.DCorePreferences.
			org.eclipse.sirius.business.api.query.DRepresentationQuery.isDanglingRepresentation() has been added to introduce the possibility to check if a representation is a dangling representation, ie. if its a DSemanticDecorator, its target is null or does not belong to a session.
			org.eclipse.sirius.ecore.extender.business.api.permission.exception.LockedInstanceException now can take several EObjects in constructor and a method 
				LockedInstanceException.getLockedElements() has been added to get all EObjects put in constructor.
			
			org.eclipse.sirius.tools.api.command.InvalidPermissionCommand now can take several EObjects in constructor to throw a 
			LockedInstanceException with several EObjects.
		
org.eclipse.sirius.business.api.helper.task.AbstractDeleteDRepresentationElementTask class has been renamed into 
				DeleteEObjectTask.
			org.eclipse.sirius.tools.api.command.listener.IChangeListener and all classes related to this mechanism (
				ChangeListenerFactory, 
				TriggerOperation) have been removed as this mechanism proves to be inefficient. It can be replaced by a pre/post commit listener or a 
				org.eclipse.sirius.business.api.session.ModelChangeTrigger
			org.eclipse.sirius.tools.api.ui.IExternalAction2 interface has been removed. It was created to disable some 
				IChangeListener when the action indicates it will not delete elements.
			org.eclipse.sirius.business.api.dialect.DialectServices.refresh(DRepresentation, boolean, IProgressMonitor has been added to specify if we want partial refresh or not. By default partial refresh is done. full refresh is only implements for tree dialect.
			org.eclipse.sirius.business.api.dialect.AbstractRepresentationDialectServices.refresh(DRepresentation, IProgressMonitor) has been added to call by default 
				DialectServices.refresh(DRepresentation, false, IProgressMonitor) to do a partial refresh.
			org.eclipse.sirius.business.api.dialect.command.RefreshRepresentationsCommand.RefreshRepresentationsCommand(TransactionalEditingDomain, boolean, IProgressMonitor, DRepresentation...) and 
				RefreshRepresentationsCommand(TransactionalEditingDomain, boolean, IProgressMonitor, Collection<DRepresentation>) constructors has been added to specify a partial refresh or a full refresh.
			org.eclipse.sirius.business.api.dialect.DRepresentationNotificationFilter has been added to have
			org.eclipse.sirius.tools.api.profiler.SiriusTasksKey.CHANGE_SWT_LINE_COLAPSE_STATE_KEY constant has been deprecated in favor of 
				SiriusTasksKey.CHANGE_SWT_LINE_COLLAPSE_STATE_KEY to fix a typo.
			org.eclipse.sirius.business.api.color.AbstractColorUpdater.DEFAULT_RED_VALUE/DEFAULT_GREEN_VALUE/DEFAULT_BLUE_VALUE constants have been added to have access to default 
				RGBValues's values. This is used during refresh when there isn’t any 
				ColorDescription, for example in tree dialect where background color definition is optional.
			org.eclipse.sirius.business.api.tool.ToolFilterDescriptionListener.ToolFilterDescriptionListener() constructor now takes an 
				IInterpreter as additional parameter to capture the current interpreter and avoid calls to the 
				IInterpreterRegistry for each evaluation of the tool filter expressions.
			org.eclipse.sirius.business.api.query.AirdResourceQuery.getAirDCrossReferenceAdapter() and 
				org.eclipse.sirius.business.internal.resource.AirdCrossReferencerAdapter have been removed. The adapter was here to customize GMF’s own 
				org.eclipse.gmf.runtime.emf.core.util.CrossReferenceAdapter. However considering the way Sirius uses GMF, this adapter is not needed.
			org.eclipse.sirius.ui
		org.eclipse.sirius.ui.business.api.session.UserSession, the methods 
				selectSirius(), 
				selectOnlySirius() and 
				findSiriusByName() have been renamed into 
				selectViewpoint(), 
				selectOnlyViewpoint() and 
				findViewpointByName() to correct a wrong rebranding.
			org.eclipse.sirius.common
		org.eclipse.sirius.common.tools.api.resource.ResourceSetSync.getResourceSetSync(TransactionalEditingDomain) has been added to look for a 
				ResourceSetSync without creating a new one if no synchronizer currently exists.
			org.eclipse.sirius.common.tools.api.util.SmartAdapter has been removed as this mechanism proves to be inefficient. The only user of this mechanism was the 
				org.eclipse.sirius.tools.api.command.listener.IChangeListener which has also been removed.
			org.eclipse.sirius.common.tools.api.ecore.WorkspaceEPackageRegistry has been moved to the 
				org.eclipse.sirius.editor plugin. 
				org.eclipse.sirius.common.tools.DslCommonPlugin.getWorkspaceEPackageRegistry has been removed. The same method has been added in 
				org.eclipse.sirius.editor.editorPlugin.SiriusEditorPlugin.
			org.eclipse.sirius.common.tools.api.resource.ResourceMigrationMarker has been introduced for adopters. This marker can be attached to a Resource in order to indicate that some automatic migration 
				might have change the structure of the model during the loading (with no isModified flag). Sirius will then use this information to consider saving the file even if there is no logical change. 
			org.eclipse.sirius.common.ui
		org.eclipse.sirius.common.ui.tools.api.util.EclipseUIUtil.addSelectionListener(IWorkbenchPart, ISelectionListener) has been added to register a new selection listener to the site for the workbench part. This method looks for a 
				ISelectionService by calling 
				IServiceLocator.getService() on the site.
			org.eclipse.sirius.common.ui.tools.api.util.EclipseUIUtil.removeSelectionListener(IWorkbenchPart, ISelectionListener) has been added to unregister an existing selection listener from site for the workbench part. This method looks for a 
				ISelectionService by calling 
				IServiceLocator.getService() on the site.
			org.eclipse.sirius.diagram
		org.eclipse.sirius.diagram.ui.business.api.view.refresh package and all its content has been move into the 
				org.eclipse.sirius.diagram plug-in, under the name 
				org.eclipse.sirius.diagram.business.api.view.refresh.
			org.eclipse.sirius.diagram.canonicalSynchronizerFactoryOverride has been defined. Its only intended implementer is the 
				org.eclipse.sirius.diagram.ui plug-in. It is used by the diagram dialect’s core to delegate to the UI plug-in the canonical synchronizer logic, which depends on the UI.
			org.eclipse.sirius.diagram.business.api.refresh.CanonicalSynchronizer, a new method 
				postCreation() has been added. It is called exactly once, right after a diagram has been created and synchronized the first time.
			org.eclipse.sirius.diagram.description.style.EdgeStyleDescription metamodel class has three more features: 
				centeredSourceMappings, 
				centeredTargetMappings and 
				AlwaysCenter. Those features let the specifier determine for which mappings the edge source/target should be centered or whether the source/target should be systematically centered. The 
				endsCentering values are restricted by the new 
				org.eclipse.sirius.diagram.description.CenteringStyle enumeration.
			org.eclipse.sirius.diagram.EdgeStyle metamodel class has now an attribute 
				centered of type 
				org.eclipse.sirius.diagram.description.CenteringStyle, to determine whether the edge target or source ends should be centered.
			org.eclipse.sirius.diagram.ui
		org.eclipse.sirius.diagram.ui.business.api.view.refresh package and all its content has been move into the 
				org.eclipse.sirius.diagram plug-in, under the name 
				org.eclipse.sirius.diagram.business.api.view.refresh.  
			org.eclipse.sirius.diagram.ui.business.internal.query.DNodeContainerQuery.getDefaultDimension() has been added to compute the default size of a DNodeContainer.
			additionalFiguresForConflictDetection has been added to several methods of 
				org.eclipse.sirius.diagram.ui.tools.api.figure.locator.DBorderItemLocator. This parameter is used in case of simultaneous border nodes moves. This list corresponds to the already known border nodes feedbacks. They are used to detect conflicts with other moved nodes.
			org.eclipse.sirius.diagram.ui.business.api.query.ConnectionEditPartQuery now provides two new methods 
				isEdgeWithRectilinearRoutingStyle() and 
				isEdgeWithObliqueRoutingStyle() that respectively checks if an edge has a rectilinear routing style or an oblique routing style.
			org.eclipse.sirius.diagram.ui.business.api.query.ConnectionQuery now provides two new methods 
				getAbsoluteBendpointsConstraint() and 
				getRelativeBendpointsConstraint() that returns an option of list of 
				Bendpoint of a connection whether they are respectively 
				AbsoluteBendpoint or 
				RelatveBendpoint.
			org.eclipse.sirius.diagram.ui.business.api.query.EdgeQuery also provides two new methods 
				isEdgeWithRectilinearRoutingStyle() and 
				isEdgeWithObliqueRoutingStyle() that respectively checks if an edge has a rectilinear routing style or an oblique routing style.
			org.eclipse.sirius.diagram.ui.tools.api.requests.DistributeRequest: A new 
				ChangeBoundsRequest to manage distribution of shapes.
			REQ_DISTRIBUTE has been added in 
				org.eclipse.sirius.diagram.ui.tools.api.requests.RequestConstants to identify the new type of request, 
				DistributeRequest.
			org.eclipse.sirius.diagram.ui.tools.api.ui.actions.ActionIds for the new drop down menu in tabbar and for the four new distribute actions.
			org.eclipse.sirius.diagram.ui.tools.api.image.DiagramImagesPath for the icon path of the four new distribute actions.
			org.eclipse.sirius.diagram.ui.business.api.view.SiriusLayoutDataManager to retrieve the opposite edge layout data of another edge layout data. An edge layout data stored in the incomingEdgeLayoutDatas ref of its parent data can have an opposite edge layout data in the outgoingEdgeLayoutDatas of the other ends.
			org.eclipse.sirius.diagram.ui.tools.api.requests.RequestConstants.REQ_RESET_ORIGIN has been added to identify requests to get the ResetOrigin command.
			org.eclipse.sirius.diagram.ui.business.api.query.NodeQuery.isContainer() has been added to test whether the GMF node visualID corresponds to a ContainerEditPart.
			org.eclipse.sirius.tree.ui
		org.eclipse.sirius.tree.ui.business.api.helper.TreeUIHelper.toContentHTMl() has changed of behavior: refresh of 
				DTree is now partial, i.e. not done for children of collapsed 
				DTreeItemContainer. Consequently code calling 
				TreeUIHelper.toContentHTMl() must do a full refresh if children of collapsed 
				DTreeItemContainer must be displayed in returned HTML.
			org.eclipse.sirius.tree.ui.business.api.helper.TreeUIHelper.toTreeDescriptor() same as for 
				TreeUIHelper.toContentHTMl()
			org.eclipse.sirius.tree
		org.eclipse.sirius.tree.business.api.interaction.DTreeUserInteraction.refreshContent(boolean, IProgressMonitor) has been added to specify if we want partial refresh or not.
			org.eclipse.sirius.tree.business.api.command.DTreeItemExpansionChangeCommand has been added to execute an expansion/collapse of 
				DTreeItem. On expansion a refresh of children is done.
			org.eclipse.sirius.synchronizer
		org.eclipse.sirius.synchronizer.CreatedOutput.synchronizeChildren() has been added to allow doing a partial refresh of tree, i.e. to not refresh children of collapsed tree item.
			org.eclipse.sirius.synchronizer.ModelToModelSynchronizer.update(CreatedOutput, boolean) has been added to specify if we want partial refresh or not.
			org.eclipse.sirius.ecore.extender
		org.eclipse.sirius.ecore.extender.business.api.accessor.IMetamodelExtender.eRemoveInverseCrossReferences(EObject, ECrossReferenceAdapter, EReferencePredicate) has been added as a way to remove the inverse cross references without removing an 
				EObject from its container. For example it can be used to avoid the dangling references to an indirectly detached object without removing it from its already detached container and avoid additional REMOVE notifications. The method has been extracted from and is now used by 
				IMetamodelExtender.eDelete().
			org.eclipse.sirius.ecore.extender.business.api.accessor.ModelAccessor.eRemoveCrossReferences(EObject, ECrossReferenceAdapter, EReferencePredicate) has been added as a way to remove the inverse cross references without removing an 
				EObject from its container after a check by the permission authority that all changeable feature to modify can be edited.
			org.eclipse.sirius.ext.gmf.runtime
		org.eclipse.sirius.ext.gmf.runtime.editparts.GraphicalHelper:
				applyZoomOnPoint(IGraphicalEditPart, Point): Apply the current zoom (of 
						IGraphicalEditPart's diagram) on the 
						Point and return the 
						Point for convenience.
					applyInverseZoomOnPoint(IGraphicalEditPart, Point): Apply the inverse of the current zoom (of 
						IGraphicalEditPart's diagram) on the 
						Point and return the 
						Point for convenience.
					appliedZoomOnRelativePoint(IGraphicalEditPart, Point) is now deprecated. Use 
						applyZoomOnPoint(IGraphicalEditPart, Point) instead.
					getAnchorPoint(IGraphicalEditPart parent, Anchor anchor): Get the 
						Point (absolute draw2d coordinates) corresponding to this 
						Anchor.
					getAnchorPoint(IGraphicalEditPart parent, IdentityAnchor anchor): Get the 
						Point (absolute draw2d coordinates) corresponding to this 
						IdentityAnchor.
					getIntersection(Point, Point, IGraphicalEditPart, boolean): Get intersection between a line between lineOrigin and lineTerminus, and the rectangle bounds of the 
						IGraphicalEditPart. If there are several intersections, the shortest is returned.
					getAbsoluteBounds(IGraphicalEditPart): Get the absolute bounds of this 
						IGraphicalEditPart.
					getAbsoluteBoundsIn100Percent(IGraphicalEditPart): Get the absolute bounds of this 
						IGraphicalEditPart but adapted according to the current zoom level.
					isSnapToGridEnabled(EditPart): Return true if the snapToGrid is enabled for the diagram containing this edit part, false otherwise.
					org.eclipse.sirius.tests.swtbot.support
		SWTBotSiriusDiagramEditor.setSnapToGrid(boolean) has been added. It allows to disable or enable the snapToGrid option for this editor.
			SWTBotSiriusDiagramEditor.setSnapToGrid(boolean, double, int) has been added. It allows to disable or enable the snapToGrid option for this editor. In case of activation, you can also set the grid spacing and the ruler units.
			SWTBotSiriusDiagramEditor.disableSnapToGrid() has been deprecated, use 
				SWTBotSiriusDiagramEditor.setSnapToGrid(false) instead.
			SWTBotSiriusDiagramEditor.adaptLocationToSnap(Point) has been added. It allows to adapt location according to SnapToHelper of the current editor.
			SWTBotSiriusDiagramEditor.getDiagramEditPart() has been added. It allows to retrieve the diagram edit part of the current editor.
			ViewpointSelectionDialog, the methods 
				selectViewpoints(String...) and 
				deselectViewpoints(String...) have been added to allow viewpoints selection and deselection from an array of 
				String. These methods are shortcuts to the 
				selectViewpoints(Set<String>, Set<String>) method.
			changeLayerActivation(String) on 
				SWTBotSiriusDiagramEditor to offer the same service as similar method on 
				UIDiagramRepresentation.
			org.eclipse.sirius.tests.support
		org.eclipse.sirius.test.support.SiriusTestCase, the methods deactivateSirius(), initSirius() and findSirius() have been renamed into deactivateViewpoint(), initViewpoint() and findViewppoint() to correct a wrong rebranding.
			org.eclipse.sirius
		org.eclipse.sirius.business.api.control,  the constructors of 
				SiriusControlCommand and 
				SiriusUncontrolCommand which assume implicitly that the session should be saved as part of the command are now deprecated. Use the alternative constructors (a new one has been added to 
				SiriusUncontrolCommand) to say explicitly if the command should save the session. Most code should do the save themselves outside of the command, and thus pass 
				false  to the 
				shouldEndBySaving argument of these constructors.
			org.eclipse.sirius.business.api.session, class 
				SavingPolicyImpl (the default session saving policy) now inherits from the new 
				AbstractSavingPolicy class. The new abstract class can be used as a base to implement different policies by simply overriding the 
				computeResourcesToSave() method.
			org.eclipse.sirius.diagram.ui
		createLayoutEditPolicy and 
				getResizeBorderItemCommand methods have been extracted from  
				org.eclipse.sirius.diagram.ui.edit.api.part.AbstractDiagramContainerPart and placed into 
				org.eclipse.sirius.diagram.ui.edit.api.part.AbstractDiagramElementContainerEditPart. The 
				org.eclipse.sirius.diagram.ui.edit.api.part.AbstractDiagramListEditPart.createLayoutEditPolicy implementation has been removed.
			org.eclipse.sirius.diagram.ui
		org.eclipse.sirius.editor.tools.api.menu.AbstractMenuBuilder.getLabel() visibility has been changed from protected to public.
			org.eclipse.sirius.editor.tools.api.menu.CompositeMenuBuilder has been introduced to avoid duplicated menu. A 
				CompositeMenuBuilder is created to encapsulate 
				AbstractMenuBuilder with the same label.
			feature:eAllContents which only looks for compatible candidates inside the current element (recursively). The new behavior is more efficient on large models and consistent with what happens for diagrams. The change does not affect existing VSMs which continue to work as before whatever was the expression they used. Users who want the old behavior on specific mappings can simply remove the expression in the properties view.
			This milestone (Sirius 1.0M7) includes the third, and final, step towards a full separation of the diagram-specific stuff out of the core of Sirius (see Step1 and Step2 for more details).
All classes related to diagrams in 
			org.eclipse.sirius have been moved to 
			org.eclipse.sirius.diagram.
			
All classes related to diagrams in 
			org.eclipse.sirius.ui have been moved to 
			org.eclipse.sirius.diagram.ui.
			
All classes related to diagrams in 
			org.eclipse.sirius.editor have been moved to 
			org.eclipse.sirius.editor.diagram.
			
In the same way, all classes related to UI in 
			org.eclipse.diagram have been moved to 
			org.eclipse.sirius.diagram.ui. To simplify this step almost all classes of 
			org.eclipse.diagram have been moved in 
			org.eclipse.sirius.diagram.ui (and probably not only UI classes). These classes have been moved in 
			src-diag source folder to facilitate future work about moving some of these classes in 
			org.eclipse.diagram again.
		
Unlike, the 
			Step1, a simple “Organize Imports” operation is not enough. First, you will probably need to add dependencies to 
			org.eclipse.sirius.diagram, 
			org.eclipse.sirius.diagram.ui or 
			org.eclipse.sirius.editor.diagram in the MANIFEST.MF of your projects that depend on Sirius diagram classes. The dependencies to add depend on what you really use.
		
ViewpointRegistry.getDiagramDescriptionMappingsRegistry() has been removed. You can now directly call 
				org.eclipse.sirius.diagram.business.api.componentization.DiagramDescriptionMappingsRegistry.INSTANCE.DialectServices.
			IRepairParticipant to isolate specific diagram repair steps.
				removeElements(DView, TransactionalEditingDomain, IProgressMonitor): Removes elements from the 
						DView that will be recreated by the refresh (called later).
					cleanRepresentations(EList<DRepresentation>): Cleans representations (specific representation states like filters) and eventually returns some of them if they need to be removed.
					refreshRepresentations(DAnalysis, DView): This method is only implemented by the diagram participant. To simplify work for this step, this method manages core and diagram elements. It should be clean up once the split will be done.
					DialectServices, with default implementations in 
						AbstractRepresentationDialectServices:
						createTask(CommandContext, ModelAccessor, ModelOperation, Session, UICallBack): Creates a new task corresponding to the ModelOperation. Only needed for ModelOperation specific to one dialect.
							handles(RepresentationExtensionDescription): Tells if the current dialect handles the given 
								RepresentationExtensionDescription.
							invalidateMappingCache(): Allows each dialect to clean and compute again its proper mapping cache.
							allowsEStructuralFeatureCustomization(EObject): allows dialects to indicate if they allow EStrucuralFeaturesCustomization for the given VSM element. It is currently supported for style descriptions in diagrams only.
							DialectUIServices
						canHandle(RepresentationDescription) and 
								canHandle(RepresentationExtensionDescription): tell whether the dialect is able to handle the given representation description or extension description.
							completeToolTipText(String, EObject) allows the dialect to customize the tooltip displayed in a property section of a given VSM element.
							DialectUIManager
						canExport(DRepresentation, ExportFormat): New method returning true if at least one dialect is able to export this representation to this format, false otherwise.
							IDiagramDescriptionProvider
						completeToolTipText(String, EObject) allows the diagram type to customize the tooltip displayed in a property section of a given VSM element. 
								SequenceDiagramTypeProvider implements this method to mention some Sequence specific variable available in core and diagram tool preconditions in the context of a Sequence diagram.
							SiriusHelper concerning diagrams have been moved to 
				org.eclipse.sirius.diagram.business.api.helper.SiriusDiagramHelper.
			SiriusUtil concerning diagrams have been moved to 
				org.eclipse.sirius.diagram.business.api.helper.SiriusDiagramUtil.
			org.eclipse.sirius.business.api.query.EObjectQuery concerning diagrams have been moved to 
				org.eclipse.sirius.diagram.business.api.query.EObjectQuery.
			org.eclipse.sirius.diagram.ui.tools.api.draw2d.ui.figures.FigureUtilities have been moved in 
						org.eclipse.sirius.ext.draw2d.figure.FigureUtilities
					fr.obeo.dsl.viewpoint.diagram.ui.tools.api.layout.GraphicalHelper has been moved to 
						org.eclipse.sirius.ext.gmf.runtime.editparts.GraphicalHelper.
					org.eclipse.sirius.diagram.part.SiriusDiagramEditorPlugin has been renamed into 
						org.eclipse.sirius.diagram.DiagramPlugin. This plugin is not a UI plugin any more, 
						org.eclipse.sirius.diagram.ui.provider.DiagramUIPlugin.getPlugin() should be used instead for UI related aspects. For example 
						DiagramUIPlugin.getPlugin().getPreferenceStore() should be used instead of 
						DiagramPlugin.getDefault().getPreferenceStore() or 
						SiriusDiagramEditorPlugin.getInstance().getPreferenceStore().
					DeleteFromDiagramContributionItem and 
				SetStyleToWorkspaceImageContributionItem have been merged into 
				SiriusActionBarActionContributionItem
			org.eclipse.sirius.diagram have been moved to 
						org.eclipse.sirius.diagram.ui. In your code, you should replace 
						SiriusDiagramEditorPlugin.getInstance().getImage() and 
						DiagramPlugin.getInstance().getImage() by 
						DiagramUIPlugin.getPlugin().getImage(). That is the case for all methods concerning images in 
						DiagramPlugin (previously named 
						SiriusDiagramEditorPlugin).
					org.eclipse.sirius.ui have been moved to 
						org.eclipse.sirius.diagram.ui, the corresponding constants in 
						org.eclipse.sirius.ui.tools.api.image.ImagesPath have been moved in 
						org.eclipse.sirius.diagram.ui.tools.api.image.DiagramImagesPath.
					static void refreshSelection(DiagramElementMapping) from 
				org.eclipse.sirius.editor.tools.api.menu.AbstractEObjectRefactoringAction is not available anymore.
			org.eclipse.sirius.business.api.preferences.SiriusPreferencesKeys.PREF_AUTO_PIN_ON_CREATE has been moved to 
						org.eclipse.sirius.diagram.tools.api.preferences.SiriusDiagramPreferencesKeys.
					org.eclipse.sirius.diagram.ui.part.SiriusDiagramEditorID
					org.eclipse.sirius.diagram.ui. This id has to be changed in plugins providing additional property sections to the Sirius diagram editor (created with EEF for example).
					Several extension points have been moved:
org.eclipse.sirius to 
				org.eclipse.sirius.diagram. You should change the id of the following extension point in your plugin.xml (
				org.eclipse.sirius.xxxx replaced by 
				org.eclipse.sirius.diagram.xxxx):
				org.eclipse.sirius.diagram to 
				org.eclipse.sirius.diagram.ui. You should change the id of the following extension points in your plugin.xml (
				org.eclipse.sirius.diagram.xxxx replaced by 
				org.eclipse.sirius.diagram.ui.xxxx):
				org.eclipse.sirius.common
		org.eclipse.sirius.common.tools.api.util.EclipseUtil, the method 
				getExtensionPlugins(Class<T>, String, String, String, Predicate<String>) has been removed from API to avoid exposing a Guava-specific 
				Predicate. Instead, use the new method 
				getExtensionPluginsByKey() which returns all the extensions organized by the specified key, and filter the result according to whatever critera the 
				Predicate tested on the key.
			org.eclipse.sirius
		org.eclipse.sirius.business.api.query.URIQuery.isSiriusEnvironmentURI has been replaced by
				isSiriusCoreEnvironmentURI which checks that the given resource is the Sirius core Environment.xmi file.
					isEnvironmentURI which checks that the given resource has an 
						environment uri scheme.
					org.eclipse.sirius.business.api.dialect.DialectManager
				setRefreshActivatedOnRepresentationOpening(boolean) has been removed as the refresh on opening should be managed from the corresponding preference 
						org.eclipse.sirius.ui.business.api.preferences.SiriusUIPreferencesKeys.PREF_REFRESH_ON_REPRESENTATION_OPENING.
					isRefreshActivatedOnRepresentationOpening() has been moved into 
						org.eclipse.sirius.ui.business.api.dialect.DialectUIManager as it refers to an UI behavior.
					DRepresentation.createContents() (both variants) and 
				DRepresentation.updateContents() EOperations have been removed. They were not used anywhere.
			org.eclipse.sirius.business.api.modelingproject.ModelingProject.MODELING_PROJECT_PREDICATE constant has been removed to reduce Sirius’s exposure of Guava’specific types. Use the equivalent 
				ModelingProject.hasModelingProjectNature() method instead.
			org.eclipse.sirius.business.api.query.EObjectQuery.getInverseReferences(Predicate<Setting>) has been removed from API to avoid exposing a the Guava-specific 
				Predicate type.
			org.eclipse.sirius.business.api.dialect.description.AbstractInterpretedExpressionQuery, the protected methods 
				appendAllLocalVariableDefinitions() and 
				appendEditMaskVariables() now take a 
				Map<String, Collection<String>> instead of a Guava-specific 
				Multimap. The new protected method 
				addDefinition() can be used to make it easier to add entries to the map. Subclasses in Sirius have been updated to match the new signature.
			org.eclipse.sirius.business.api.modelingproject.ModelingProject.ZERO_REPRESENTATIONS_FILE_FOUND_IN has been removed without replacement. It was not really an API constant.
			org.eclipse.sirius.business.api.modelingproject.ModelingProject.getMainRepresentationsFileURI() has changed. It now marks this project as invalid and adds a marker on it, if it is considered as invalid (no or many representations files).
			org.eclipse.sirius.business.api.query.IFileQuery has been added with a method to check if file is handled by an opened session, ie:
				EObjectLink class has been removed from the metamodel. It was not used anywhere.
			org.eclipse.sirius.business.api.dialect.description.IInterpretedExpressionTargetSwitch, the 
				getFirstRelevantContainerFinder() method which returned a Guava 
				Function<EObject, EObject> has been replaced with the new method 
				getFirstRelevantContainer(EObject) which directly returns the result of applying the previously returned function. All implementers in Sirius itself have been updated.
			org.eclipse.sirius.business.api.dialect.description.DefaultInterpretedExpressionTargetSwitch(EStructuralFeature, IInterpretedExpressionTargetSwitch, Function<EObject, EObject>) has been removed to avoid exposing a the Guava-specific 
				Predicate type. Sub-classes which used it with a non-null 
				Function should override the 
				getFirstRelevantContainer(EObject) method to return the result of that function instead.
			org.eclipse.sirius.business.api.helper.task.AbstractDeleteDRepresentationElementTask constructor which took a Guava 
				Predicate<EReference> now takes an equivalent 
				EReferencePredicate (from 
				org.eclipse.sirius.ext.emf).
			DSEMANTICDECORATOR_REFERENCE_TO_IGNORE_PREDICATE and 
				NOTATION_VIEW_ELEMENT_REFERENCE_TO_IGNORE_PREDICATE from 
				org.eclipse.sirius.business.internal.session.danalysis.DanglingRefRemovalTrigger are now instances of 
				EReferencePredicate instead of Guava’s 
				Predicate<EReference>.
			org.eclipse.sirius.business.api.session.SessionEventBroker, the method 
				addlLocalTrigger() now takes a 
				org.eclipse.emf.transaction.NotificationFilter instead of a Guava-specific 
				Predicate<Notification> as first argument.
			org.eclipse.sirius.tools.api.ui.RefreshEditorsPrecommitListener.IS_IMPACTING is now a 
				NotificationFilter instead of a 
				Predicate, to match the API change in 
				SessionEventBroker.addLocalTrigger().
			org.eclipse.sirius.business.api.session.Session interface has a new 
				getSavingPolicy() method which gives access to the currently configured saving policy.
			org.eclipse.sirius.diagram
		DNode.ownedDetails and 
				DDiagramElementContainerImpl.ownedDetails have been removed from the metamodel, along with the corresponding implementation methods. They were not used in practice.
			DDiagramLink EClass has been removed from the meta-model, along with the corresponding generated Java code. It was not used in practice.
			DDiagram.clean() EOperation has been removed. It was deprecated and not used anymore. All the Java code which existed only to help in the implementation of that operation has also been removed. This includes:
				org.eclipse.sirius.diagram.tools.api.validation.constraint.AbstractDDiagramConstraint.activate() and 
						deactivate() methods.
					org.eclipse.sirius.business.api.helper.SiriusHelper.unSetHarmlessDanglingReferences() method.
					org.eclipse.sirius.tools.api.profiler.SiriusTasksKey.CLEANING_NODES_KEY constant.
					DSemanticDiagram.getRootContents() method (which was deprecated) has been removed.
			DDiagram.findDiagramElements() EOperation has been removed. It was deprecated and always returned an empty list if called.
			DDiagram.info attribute has been removed. It was not used anywhere.
			DDiagram.subDiagram reference has been removed. It was not used anywhere.
			DDiagramElement.isFold() EOperation has been removed. It was deprecated and edge folding has long been implemented using different mechanisms.
			ContainerMapping type, the following EOperations have been removed: 
				createContainer(), 
				updateContainer(), and 
				getNodesCandidate(). Although their usage is highly discouraged, if you really need to you can currently use the corresponding methods in the internal 
				ContainerMappingHelper instead (use 
				SiriusPlugin.getDefault().getInterpreterRegistry().getInterpreter(semanticElement) to obtain the 
				IInterpreter those methods need). As with all internal code, there is no guarantee these methods will still exist in future versions.
			AbstractNodeMapping.getDNodesDone() EOperation has been removed. It was not used anywhere.
			NodeMapping type, the 
				getBestStyle() and 
				createListElement() EOperations have been removed. Although their usage is highly discouraged, if you really need to you can currently use the corresponding methods in the internal 
				MappingHelper instead (use 
				SiriusPlugin.getDefault().getInterpreterRegistry().getInterpreter(semanticElement) to obtain the 
				IInterpreter these methods need). As with all internal code, there is no guarantee these methods will still exist in future versions.
			org.eclipse.sirius.diagram.business.api.diagramtype.IDiagramDescriptionProvider, the methods 
				allowsPinUnpin(), 
				allowsHideReveal, and 
				allowsCopyPasteLayout()  have been modified to take directly the 
				DDiagramElement to test (and return a 
				boolean) instead of returning a Guava-specific 
				Predicate which then had to be invoked.
			org.eclipse.sirius.diagram.ui.tools.api.layout.PinHelper, .the method 
				allowsPinUnpin() has been modified to take a 
				DDiagramElement directly and return a 
				boolean, instead of taking a 
				DDiagram and return a Guava-specific 
				Predicate which then had to be invoked on actual 
				DDiagramElements..
			org.eclipse.sirius.diagram.ui.edit.api.part.ISiriusEditPart has been added and is now part of all the type hierarchy of any EditPart provided by Sirius. This allows a simple 
				instanceof ISiriusEditPart to discriminate the edit part instances coming from Sirius.
			org.eclipse.sirius.diagram.sequence
		org.eclipse.sirius.diagram.sequence.util.SiriusFunctions class has been removed. It was not used anywhere.
			org.eclipse.sirius.diagram.sequence.util.NotificationQuery class has been removed. It had been exposed by mistake.
			org.eclipse.sirius.diagram.sequence.business.internal.util.NotationPredicate class has been removed from API, to reduce Sirius’s exposure of Guava’specific types.
			org.eclipse.sirius.diagram.sequence.util.Range which returned Guava-specific types (
				Function or 
				Ordering) have been removed from API.
			org.eclipse.sirius.diagram.sequence.template.AbstractRule no longer inherits from Guava’s 
				Function interface, but from the news ad-hoc 
				org.eclipse.sirius.diagram.sequence.template.Transformer interface instead, which is functionally equivalent.
			org.eclipse.sirius.ui
		org.eclipse.sirius.ui.business.api.preferences.DesignerUIPreferencesKeys has been renamed into 
				org.eclipse.sirius.ui.business.api.preferences.SiriusUIPreferencesKeys
			getMissingDependencies() and 
				getMissingDependenciesErrorMessage() from 
				org.eclipse.sirius.ui.business.api.viewpoint.ViewpointSelection now use 
				Map<String, Collection<String>> instead of Guava’s 
				Multimap.
			org.eclipse.sirius.ui.tools.api.project.ModelingProjectManager.initializeAfterLoad() method has been removed. There is no replacement for this method documented as “Not intended to be used by client”.
			org.eclipse.sirius.ecore.extender
		eDelete() methods which took a 
				Predicate<EReference> in types 
				ModelAccessore, 
				IMetamodelExtender and 
				CompositeMetamodelExtender now take an equivalent 
				EReferencePredicate (from 
				org.eclipse.sirius.ext.emf).
			ModelUtils.resolveAll(ResourceSet set, EReferencePredicate) now takes an 
				EReferencePredicate instead of a Guava-specific 
				Predicate<EReference>.
			org.eclipse.sirius.ext.base
		org.eclipse.sirius.ext.base.Options.isSome() method has been removed to reduce Sirius’s exposure of Guava’specific types. Use 
				Option.some() directly instead.
			org.eclipse.sirius.ext.base.relations.Relation no longer inherits from 
				com.google.common.base.Function, but keeps the same API otherwise.
			org.eclipse.sirius.synchronizer
		org.eclipse.sirius.synchronizer.Mapping.IS_CHECK_ONLY constant has been removed to reduce Sirius’s exposure of Guava’specific types. Use 
				!Mapping.getCreator().some() instead.
			Maybe and 
				MaybeFactory types have been removed, and all their uses in 
				org.eclipse.sirius.synchronizer converted to the equivalent 
				Option and 
				Options types from 
				org.eclipse.sirius.ext.base.
			MappingHiearchy.HiearchyIterator has been removed from API.
			org.eclipse.sirius.tests.support
		shouldReloadSession boolean parameter has been removed from 
				org.eclipse.sirius.tests.support.api.SiriusTestCase.disableUICallBackOnDialectEditor(DialectEditor), it was not used and could let the tester think he can change the reload behavior from the dialog factory.
			org.eclipse.sirius.tests.swtbot.support.api.AbstractSiriusSwtBotGefTestCase.refreshDiagram() has been removed. This method did not handle the non dynamic tabbar and was a duplicate of manualRefresh(). Callers must select the diagram before the call,the click(0,0) instruction was not sufficient in several cases (for example if there is a node/container in (0,0)).
			org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotDesignerEditor has been renamed into 
				SWTBotSiriusDiagramEditor.
			org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotDesignerGefViewer has been renamed into 
				SWTBotSiriusGefViewer.
			org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotDesignerHelper has been renamed into 
				SWTBotSiriusHelper.
			AbstractSiriusSwtBotGefTestCase.openRepresentation with 
				SWTBotDesignerEditor as returned type have been renamed into 
				openDiagram, marked as deprecated and replaced with methods returning a 
				SWTBotEditor. You can now use methods 
				openRepresentation for DTree or DTable. If the 
				expectedRepresentationClass is 
				DDiagram.class, the returned type will be a 
				SWTBotSiriusDiagramEditor.
			org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusHelper.getDesignerEditor(String) has been renamed into 
				getSiriusDiagramEditor.
			SWTBotSiriusHelper.getSiriusEditor(String) to return the 
				SWTBotEditor (diagram, tree or table editor) with the given name. The name is the name as displayed on the editor’s tab in Eclipse. In case of multiple editors with the same fileName, the same method with an additional parameter, the index, has been added 
				SWTBotSiriusHelper.getSiriusEditor(String, int).
			org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor.zoom(ZoomLevel) to directly change the zoom level of the current diagram editor without trying to change it from the zoom combo in the tabbar.
			org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor.zoomFromToolbar(ZoomLevel) to add possibility to explicitly change the zoom level from the tabbar.
			Starting from version 1.0.0M6, Sirius includes high-level APIs to help creating automated tests using JUnit and/or SWTBot. These can be used either to test Sirius itself or to test Sirius-based modelers. These APIs are provided by two plug-ins:
org.eclipse.sirius.tests.support: support code for JUnit (plug-in) tests using Sirius.
			org.eclipse.sirius.tests.swtbot.support: support code for SWTBot tests using Sirius.
			Both plug-ins are only available if you install the new 
			org.eclipse.sirius.tests feature.
		
This milestone (Sirius 1.0M6) includes the second step towards a full separation of the diagram-specific stuff out of the core of Sirius (see Step1 for more details).
This step is less impactful on your code than the first step. Nevertheless, some missed classes during first step have moved during this step:
DDiagramSet and its corresponding reference from 
				DRepresentationContainer: No longer needed
			DragAndDropTarget, 
				DragAndDropTargetDescription and 
				ContainerDropDescription have been moved to diagram EPackage.
			viewpoint/diagram/description/validation EPackage has been moved to 
				viewpoint/description/validation: revert what was done in step 1 by mistake.
			The existing VSM (
			*.odesign) and representations file (
			*.aird) are automatically migrated.
		
Warning: If you have some code based on the root EPackage of an EClass, it may be necessary to adapt it. Example:
EPackage rootPackage = (EPackage) EcoreUtil.getRootContainer(element.eClass());
if (rootPackage != null && rootPackage.getNsURI().equals(ViewpointPackage.eINSTANCE.getNsURI())) {
		should be adapted in
EPackage rootPackage = (EPackage) EcoreUtil.getRootContainer(element.eClass());
if (rootPackage != null && rootPackage.getNsURI().equals(DiagramPackage.eINSTANCE.getNsURI())) {
		if 
			element is a Diagram concept.
		
org.eclipse.sirius
		org.eclipse.sirius.tools.api.command.IDiagramCommandFactory.setAutoRefreshDView() method was removed. It had no effect, any code which called it can simply be removed.
			org.eclipse.sirius.business.api.componentization.ViewpointRegistryListener has been removed. Use 
				org.eclipse.sirius.business.api.componentization.ViewpointRegistryListener2 instead.
			org.eclipse.sirius.business.api.session.SessionManagerListener2 and 
				org.eclipse.sirius.business.api.session.SessionManagerListener have been merged into 
				org.eclipse.sirius.business.api.session.SessionManagerListener which is not deprecated any more.
			org.eclipse.sirius.business.api.session.SessionManagerListener.notifyUpdatedSession(Session) has been removed. Use 
				org.eclipse.sirius.business.api.session.SessionManagerListener.notify(Session, int) instead.
			org.eclipse.sirius.business.api.helper.task.RemoveDanglingReferencesTask and 
				org.eclipse.sirius.business.api.helper.task.RemoveSemanticDanglingReferenceTask and 
				org.eclipse.sirius.tools.api.command.AbstractCommandFactory.addRemoveDanglingReferencesTask() have been removed. These tasks were added to in several commands to remove dangling references at the end. They are now replaced by a specific 
				ModelChangeTrigger to detect the detachment of 
				EObject and remove the dangling references. It is added to the 
				SessionEventBroker during the session opening.
			org.eclipse.sirius.tools.api.ui.RefreshEditorsPrecommitListener was a precommit 
				ResourceSetListener, it became a 
				ModelChangeTrigger and is now added to the SessionEventBroker during the session opening. This modification allows to correctly manage the order of our different precommit commands. It is triggered after the dangling reference remover.
			org.eclipse.sirius.tools.api.command.semantic.RemoveDanglingReferences is no more used in Sirius commands. It can still be used to clean a resourceSet or a resource (repair tool, import/export, ..). It also has a new static method 
				removeDanglingReferences(Resource) to remove dangling references as an entry point.
			org.eclipse.sirius.business.api.helper.task.AbstractDeleteDRepresentationElementTask.DSEMANTICDECORATOR_REFERENCE_T0_IGNORE_PREDICATE has been removed, the internal predicate 
				DanglingRefRemovalTrigger.DSEMANTICDECORATOR_REFERENCE_T0_IGNORE_PREDICATE is used instead.
			org.eclipse.sirius.business.api.helper.SiriusUtil.findDiagram(EObject) method has been removed. Use the equivalent 
				new org.eclipse.sirius.business.api.query.EObjectQuery(element).getParentDiagram() instead.
			org.eclipse.sirius.ui
		org.eclipse.sirius.ui.tools.api.perspectives.DesignPerspective interface has been moved to 
				org.eclipse.sirius.editor.tools.api.perspectives package in 
				org.eclipse.sirius.editor plugin. This perspective is now provided through the 
				org.eclipse.sirius.editor plugin. The perspective ID is kept unchanged for a compatibility reason.
			org.eclipse.sirius.ui.tools.api.dialogs.ExportRepresentationsAsImagesDialog has been removed. Use 
				org.eclipse.sirius.ui.tools.api.dialogs.ExportSeveralRepresentationsAsImagesDialog instead.
			org.eclipse.sirius.diagram
		org.sirius.diagram.graphical.edit.policies.AirNoteAttachmentEditPolicy has been removed, with the new dangling reference management, it became identical to its superclass, use 
				org.eclipse.gmf.runtime.diagram.ui.internal.editpolicies.ConnectionEditPolicy instead. Its provider 
				org.sirius.diagram.graphicalou .edit.policies.AirNoteAttachmentEditPolicyProvider and declaration in plugin.xml have been removed too.
			org.eclipse.sirius.table
		org.eclipse.sirius.table.tools.api.command.ITableCommandFactory.setAutoRefreshDTable() method was removed. It had no effect, any code which called it can simply be removed.
			org.eclipse.sirius.tree
		org.eclipse.sirius.tree.business.api.command.ITreeCommandFactory.setAutoRefreshDTree() method was removed. It had no effect, any code which called it can simply be removed.
			This milestone (Sirius 1.0M5) introduces several new plug-ins, collectively called “library extensions”. They are all named 
			org.eclipse.sirius.ext.LIB, where 
			LIB is the name of a library or component Sirius depends on. These plug-ins are used to isolate generic code which extends existing libraries with features and helpers needed for Sirius, but which do not depend on Sirius themselves. A relatively large part of the code in Sirius is of this kind: things that could/should be in EMF, GMF, Eclipse itself, etc. and which are not Sirius-specific but which make it easier to build Sirius itself. Sirius 1.0M5 introduces several of these library extensions and starts to fill them with existing classes which were “hidden” inside Sirius and are now exposed in library extensions. Most of the time, existing code which used the Sirius API will only need to:
		
Import-Package (recommended) or 
				Require-Bundle to depend on the library extension(s) where the code they use now lives;
			For historical reasons, the core Sirius metamodels defined in viewpoint.ecore contain both generic (dialect-independant like Viewpoint, RepresentationDescription, DAnalysis...) concepts and diagram-specific ones (e.g. DNode, EdgeStyle, ContainerCreationDescription...). The table and tree metamodels are more cleanly separated.
			
This milestone (Sirius 1.0M5) includes the first step towards a full separation of the diagram-specific stuff out of the core of Sirius. So many EClasses have been moved.
		
Most of the time, existing code which used these Sirius EClasses will only need to perform a simple “Organize Imports” operation, which should find the classes and interfaces in their new locations.
			
The “Organize imports” is not sufficient in case of imported classes existing several time in different packages (
			EFactory classes for example with 
			DescriptionFactory, or 
			EPackage classes for example with 
			DescriptionPackage). And in some cases 
			ViewpointFactory (and 
			ViewpointPackage) will have to be replaced by 
			DiagramFactory (and 
			DiagramPackage).
		
The 
			Switch classes if overridden also require a particular attention.
		
The existing VSM (
			*.odesign) and representations file (
			*.aird) are automatically migrated.
			
Warning: Nevertheless, if you reference these Sirius concepts with the EPackage qualifier in your VSM (
			*.odesign), in interpreted expressions for example, you must change 
			viewpoint in 
			diagram. For example 
			viewpoint::DDiagramElement becomes 
			diagram::DDiagramElement.
		
The impacted EPackages are :
viewpoint : some of its EClasses have been moved to 
				viewpoint/diagram
			viewpoint/description : some of its EClasses have been moved to 
				viewpoint/diagram/description
			viewpoint/description/style : some of its EClasses have been moved to 
				viewpoint/diagram/description/style
			viewpoint/description/tool : some of its EClasses have been moved to 
				viewpoint/diagram/description/tool
			viewpoint/description/filter : this EPackage has been moved to 
				viewpoint/diagram/description/filter
			viewpoint/description/validation : this EPackage has been moved to 
				viewpoint/diagram/description/validation
			viewpoint/description/concern : this EPackage has been moved to 
				viewpoint/diagram/description/concern
			org.eclipse.sirius
		org.eclipse.sirius.business.api.migration.resource.StringCouple class has been removed.
			org.eclipse.sirius.business.api.dialect.description.IInterpretedExpressionTargetSwitch.getFirstRelevantContainerFinder method has been added to let each dialect use its own 
				Function to retrieve the first relevant container of a given 
				EObject, i.e. the first container from which a domain class can be determined.
			org.eclipse.sirius.common.ui
		org.eclipse.sirius.common.ui.business.api.interpreter.VariableContentProvider class has been removed.
			org.eclipse.sirius.common.ui.tools.api.util.ISimpleAction interface has been removed.
			org.eclipse.sirius.common.ui.tools.api.dialog.RenameDialog.setText() has been removed. You can now directly call  
				org.eclipse.sirius.common.ui.tools.api.dialog.RenameDialog.setDefaultNewName() which has been added to set the default new name to display. Note that this method must be called before Dialog.create().
			org.eclipse.sirius.common.ui.tools.api.dialog.RenameDialog.setTitle() has been removed. Note that the inherited 
				setTile() method is still available but must be called before Dialog.create().
			org.eclipse.sirius.table
		org.eclipse.sirius.table.business.api.query.DCellQuery.getExportableLabel() method has been added to compute the label to export when the label is cropped by the 
				org.eclipse.emf.edit.provider.ItemPropertyDescriptor.ItemDelegator.
			org.eclipse.sirius.table.ui
		org.eclipse.sirius.table.ui.business.api.helper.TableUIHelper now uses 
				DCellQuery.getExportableLabel() to compute the cell labels used in HTML export.
			org.eclipse.sirius.ui
		org.eclipse.sirius.ui.business.api.session.DeprecatedIEditingSession interface has been removed. Use the corresponding methods from 
				org.eclipse.sirius.ui.business.api.session.IEditingSession instead.
			Sirius 1.0.0M4 includes a lots of API-breaking changes, as part of a global effort to improve the quality of the Sirius internals. In this milestone in particular, most of the APIs which were marked as deprecated in previous versions of Sirius (and before that of Viewpoint) have been either removed (if a replacement exists) or marked as non-deprecated (if no replacement exists yet).
org.eclipse.sirius.common
		FeatureEditorDialog. Use the remaining constructor instead, which provides proper behavior for both unique and non-unique features.
			IEditingDomainFactory.createEditingDomain() has been removed. Use the (inherited) 
				createEditingDomain(ResourceSet) instead, which ensures correct behavior for all kinds of models (Xtext for example).
			org.eclipse.sirius.common.tools.api.listener.Notification.FOLD has been removed. It was never used by Sirius itself, so if your code tried to listen to this kind of notification it was never actually called and can be safely removed.
			getExtensionPlugins() and 
				getElementsProvidedByPlugin from 
				EcliseUtil have been removed. If you need this kind of functionality, use the Eclipse APIs directly instead.
			COLUMN_SEMANTIC and 
				LINE_SEMANTIC of 
				IInterpreterSiriusVariables have been removed. Use the constants of 
				org.eclipse.sirius.table.tools.api.interpreter.IInterpreterSiriusTableVariables instead.
			org.eclipse.sirius
		DialectServices.initRepresentations(Viewpoint, EObject) has been removed. Use the version which takes an additional 
				IProgressMonitor instead.
			CreateRepresentationCommand has been removed. Use the alternative constructor which takes an additional 
				IProgressMonitor instead.
			RefreshRepresentationCommand have been removed. Use the alternative constructors which take an additional 
				IProgressMonitor instead.
			DisplayService.computeVisibility(Session, DDiagram, DDiagramElement) has been removed. Use the variant 
				computeVisibility() which takes a 
				DiagramMappingsManager instead of a 
				Session.
			FilterService have been removed:
				activateCache(): use 
						DisplayService.activateCache() instead.
					deactivateCache(): use 
						DisplayService.deactivateCache() instead.
					activate(): use 
						DisplayService.activate() instead.
					deactivate(): use 
						DisplayService.deactivate() instead.
					isActivated(): use 
						DisplayServiceManager.INSTANCE.getMode() == DisplayMode.NORMAL instead.
					isCollapse(): use 
						isCollapsed() instead.
					isVisibleForFilters(): use 
						getAppliedFilters() instead.
					isVisible(): use 
						DisplayService.isDisplayed() instead.
					isFiltered(), 
						isNotFiltered(), 
						isVisibleForActivatedFilters(), @checkFilters(): use 
						getAppliedFilters() and 
						DDiagram.getActivatedFilters() instead.
					isDirectlyHidden() and 
				isIndirectlyHidden() in 
				HideFilterHelper have been removed. Use the corresponding methods in 
				DDiagramElementQuery instead.
			SavingPolicy.save(Iterable, Map) has been removed. Use the variant which takes an additional 
				IProgressMonitor instead.
			AbstractCommandFactory(TransactionalEditingDomain, ModelAccessor) has been removed. Use the variant without the 
				ModelAccessor argument instead.
			CommandContext(EObject) has been removed. Use the variant which takes an additional 
				DRepresentation instead.
			activate(TransactionalEditingDomain) and 
				deactivate(TransactionalEditingDomain) in 
				IChangeListener have been removed. Use the variants with no argument instead.
			AddSemanticResourceCommand(Session, URI) has been removed. Use the variant which takes an additional 
				IProgressMonitor instead.
			RemoveSemanticResourceCommand have been removed. Use the variants which takes an additional 
				IProgressMonitor instead.
			CreateDiagramWithInitialOperation has been removed. Use the variant which takes an additional 
				IProgressMonitor instead.
			SessionManager.addResource(Session, Resource) has been removed. Use the 
				Session.addSemanticResource(URI, IProgressMonitor) instead. In code, 
				mySessionManager.addResource(mySession, myResource) should be replaced by 
				mySession.addSemanticResource(myResource.getURI(), new NullProgressMonitor()). Notice that this replacement has not the exact same behavior. The notifications 
				SessionListener.ABOUT_TO_BE_REPLACED and 
				SessionListener.REPLACED are not thrown with 
				addSemanticResource contrary to 
				addResource. But this kind of notifications is more for reloading of resource.
			DefaultLocalSessionCreationOperation have been removed. Use the variant which takes an additional 
				IProgressMonitor instead.
			SessionManager.getSession(URI) has been removed. Use the variant which takes an additional 
				IProgressMonitor instead.
			SessionFactory.createSession(URI) has been removed. Use the variant which takes an additional 
				IProgressMonitor instead.
			RefreshRepresentationCommand has been removed. Use the class 
				RefreshRepresentationsCommand instead.
			RevealSiriusElement and 
				RevealDDiagramElement have been removed. Use the class 
				RevealDDiagramElements instead.
			DAnalysisSession.save(Map<?, ?>) has been removed. Use the variant which takes an additional 
				IProgressMonitor instead.
			MappingTableEntry.getImporter() has been updated. It now returns an optional (
				org.eclipse.sirius.common.tools.api.util.Option) of 
				MappingTableEntry.
			IEMFCommandFactory has been removed. It is not used in Sirius code anymore.
			IDiagramCommandFactory.buildCreateDiagramFromDescription(DiagramDescription, EObject) has been removed. Use the variant which takes an additional 
				IProgressMonitor instead.
			dispose() and 
				disposeInterpreterRegistry(EObject) have been removed from 
				InterpreterRegistry. They corresponded to dead code.
			InterpreterRegistry.prepareImportsFromModelElement(IInterpreter, EObject) has been removed. Use 
				InterpreterRegistry.prepareImportsFromSession(IInterpreter, Session) instead. To get 
				Session from 
				EObject, you can use 
				SessionManager.INSTANCE.getSession(EObject).
			SiriusHelper.createDAnalysis() has been removed. Use 
				ViewpointFactory.eINSTANCE.createDAnalysis() instead.
			SessionFactory.createSession(DAnalysis) has been removed. It is not intended to be used, but it can be replaced by 
				SessionFactory.INSTANCE.createSession(analysis.eResource().getURI(), new NullProgressMonitor()).
			buildDoExecuteDetailsOperation(DSemanticDecorator, RepresentationCreationDescription, String) has been pull up from @ITableCommandFactory, 
				ITreeCommandFactory and 
				IDiagramCommandFactory to 
				ICommandFactory.
			getUserInterfaceCallBack() has been pull up from 
				ITableCommandFactory and 
				ITreeCommandFactory to 
				ICommandFactory. And 
				AbstractCommandFactory now implements this method.
			allActivatedEdgeMappings from 
				Layer and 
				DiagramDescription has been removed from the viewpoint.ecore meta-model. This reference always returns empty list.
			org.eclipse.sirius.diagram
		IDiagramEdgeEditPart.refreshPath() and 
				AbstractDiagramEdgeEditPart.refreshPath() have been removed. It is not called in Sirius code anymore
			org.eclipse.sirius.ecore.extender
		IMetamodelExtender.eDelete(EObject), 
				CompositeMetamodelExtender.eDelete(EObject) and 
				ModelAccessor.eDelete(EObject) have been removed. Use the variants which takes an additional 
				ECrossReferenceAdapter instead. This 
				ECrossReferenceAdapter can be null.
			org.eclipse.sirius.ui
		ModelingProjectManager have been removed. Use the corresponding versions which take an additional 
				IProgressMonitor parameter instead.
			ViewpointSelection have been removed. Use the corresponding versions which take an additional 
				IProgressMonitor parameter instead.
			org.eclipse.sirius.ui.business.api.control.SiriusControlCommand has been removed. Use the class 
				org.eclipse.sirius.business.api.control.SiriusControlCommand instead (same constructor but with an additional 
				IProgressMonitor parameter).
				SiriusUnControlCommand
					DialectUIServices.openEditor(Session, DRepresentation) has been removed. Use the variant which takes an additional 
				IProgressMonitor instead.
			SessionHelper.openStartupRepresentations(Session) has been removed. Use the variant which takes an additional 
				IProgressMonitor instead.
			SiriusControlHandler.performControl(Shell, EObject) has been removed. Use the variant which takes an additional 
				IProgressMonitor instead.
			SiriusUncontrolHandler.performUncontrol(Shell, EObject) has been removed. Use the variant which takes an additional 
				IProgressMonitor instead.
			AbstractCreateRepresentationFromRepresentationCreationDescription: Generalization of all 
				CreateRepresentationFromRepresentationCreationDescription classes (iof plug-ins sirius.diagram, sirius.table.ui, sirius.tree.ui).
			org.eclipse.sirius.table
		TableHelper.getCell(DLine, String) has been removed. Use the variant which take a DLine and a DColumn as parameters.
			org.eclipse.sirius.tree
		DTreeUserInteraction.refreshContent() has been removed. Use the variant which take an additional 
				IProgressMonitor parameter instead.
			Version 0.9.0 is the first release under the Sirius name and under the Eclipse Foundation umbrella. Except for the few cases mentioned below (in the “Other API Changes”, “Specifier-Visible Changes” and “User-Visible Changes” sections), Sirius 0.9.0 is functionally equivalent to the latest version of Viewpoint (version 6.10), which was the name of the project before it was open sourced at Eclipse. See the rest of the documentation for the complete list of feature of the Sirius platform.
If you have existing projects which used this technology before it became Eclipse Sirius and want to migrate to Sirius, you must:
The latest version of Viewpoint which was available in an Obeo Designer release is Viewpoint 6.8, released in Obeo Designer 6.2. Sirius 0.9 is based on Viewpoint 6.10, which was not released publicly.
If you were using Obeo Designer, you must thus first migrate your projects and models to Obeo Designer 6.2, and then consult the release notes for Viewpoint 6.9 and 6.10, which lists the API changes from Viewpoint 6.8 to 6.10.
Once your projects are compatible with the latest Viewpoint available to you, you can migrate to Sirius, first by updating your Viewpoint Specification Projects and plug-ins which use the Viewpoint APIs, then by updating any Modeling Project and representation files (
			*.aird).
		
plugin.xml files to reference the correct extension points identifiers. In particular, all Viewpoint Specification Projects created using Viewpoint use the 
				fr.obeo.dsl.viewpoint.componentization in their 
				plugin.xml to register the VSMs they define. This should be changed to use the equivalent 
				org.eclipse.sirius.componentization extension point id. The identifier changes for the other extension points follow the same rules as the name changes of the plug-ins they are defined in.
			*.odesign files) is automatic: simply open your files once in the VSM editor, perform some no-op change to make the editor “dirty” and save it. The saved version will have been migrated to Sirius.
			ViewpointControlCommand is now 
				SiriusControlCommand).
			Note that if you used Obeo Designer, you may have used the legacy Acceleo 2.x language for the computed expressions inside the 
			*.odesign files (if your expressions are of the form 
			<%something%> then you used the legacy language). That language is not supported anymore in Sirius 0.9, so you must migrate your expressions to use Acceleo 3 and/or the specialized interpreters (
			var:, 
			feature: and 
			service:, see the documentation).
		
*.aird) is performed automatically when they are loaded in memory. It will become permanent the first time you save it (you can force this by opening a representation, making some arbitrary change and saving the session).
			As of Sirius 0.9, and probably at least until Sirius 1.0 when the APIs will be more stable, all the bundles share the same version, which is also the version for the feature. If you used versioned dependencies to the old Viewpoint code (e.g. dependencies towards Viewpoint 6.8), you need to adjust the versions in your 
			MANIFEST.MF files in addition to the namespaces.
		
In the context of the move as an official Eclipse project named Sirius, all the namespaces used in the code have changed.
All identifiers have changed to start with the 
			org.eclipse.sirius namespace prefix. The tables below give the mapping between the Viewpoint plug-in and features identifiers and their Sirius equivalent.
		
| Viewpoint 6.x plug-in | Sirius 0.9 plug-in | 
|---|---|
| fr.obeo.dsl.common | org.eclipse.sirius.common | 
| fr.obeo.dsl.common.acceleo.mtl | org.eclipse.sirius.common.acceleo.mtl | 
| fr.obeo.dsl.common.acceleo.mtl.ide | org.eclipse.sirius.common.acceleo.mtl.ide | 
| fr.obeo.dsl.common.ocl | org.eclipse.sirius.common.ocl | 
| fr.obeo.dsl.common.ui | org.eclipse.sirius.common.ui | 
| fr.obeo.dsl.common.xtext | org.eclipse.sirius.common.xtext | 
| fr.obeo.dsl.viewpoint | org.eclipse.sirius | 
| fr.obeo.dsl.viewpoint.diagram | org.eclipse.sirius.diagram | 
| fr.obeo.dsl.viewpoint.diagram.layoutdata | org.eclipse.sirius.layoutdata | 
| fr.obeo.dsl.viewpoint.diagram.sequence | org.eclipse.sirius.sequence | 
| fr.obeo.dsl.viewpoint.diagram.sequence.edit | org.eclipse.sirius.sequence.edit | 
| fr.obeo.dsl.viewpoint.diagram.sequence.ui | org.eclipse.sirius.sequence.edit.ui | 
| fr.obeo.dsl.viewpoint.doc | org.eclipse.sirius.doc | 
| fr.obeo.dsl.viewpoint.editor | org.eclipse.sirius.editor | 
| fr.obeo.dsl.viewpoint.editor.sequence | org.eclipse.sirius.editor.sequence | 
| fr.obeo.dsl.viewpoint.editor.table | org.eclipse.sirius.editor.table | 
| fr.obeo.dsl.viewpoint.editor.tree | org.eclipse.sirius.editor.tree | 
| fr.obeo.dsl.viewpoint.eef.adapters | org.eclipse.sirius.eef.adapters | 
| fr.obeo.dsl.viewpoint.interpreter | org.eclipse.sirius.interpreter | 
| fr.obeo.dsl.viewpoint.table | org.eclipse.sirius.table | 
| fr.obeo.dsl.viewpoint.table.ui | org.eclipse.sirius.table.ui | 
| fr.obeo.dsl.viewpoint.tree | org.eclipse.sirius.tree | 
| fr.obeo.dsl.viewpoint.tree.ui | org.eclipse.sirius.tree.ui | 
| fr.obeo.dsl.viewpoint.ui | org.eclipse.sirius.ui | 
| fr.obeo.mda.ecore.extender | org.eclipse.sirius.ecore.extender | 
| fr.obeo.mda.pim.ecore.design | org.eclipse.sirius.sample.ecore.design | 
| org.eclipselab.emf.synchronizer | org.eclipse.sirius.synchronizer | 
| Viewpoint 6.x feature | Sirius 0.9 feature | 
|---|---|
| fr.obeo.dsl.viewpoint.runtime | org.eclipse.sirius.runtime | 
| fr.obeo.dsl.viewpoint.runtime.acceleo | org.eclipse.sirius.runtime.acceleo | 
| fr.obeo.dsl.viewpoint.runtime.ide.eef | org.eclipse.sirius.runtime.ide.eef | 
| fr.obeo.dsl.viewpoint.runtime.ide.ui | org.eclipse.sirius.runtime.ide.ui | 
| fr.obeo.dsl.viewpoint.runtime.ide.ui.acceleo | org.eclipse.sirius.runtime.ide.ui.acceleo | 
| fr.obeo.dsl.viewpoint.runtime.ide.xtext | org.eclipse.sirius.runtime.ide.xtext | 
| fr.obeo.dsl.viewpoint.runtime.ocl | org.eclipse.sirius.runtime.ocl | 
| fr.obeo.dsl.viewpoint.specifier.ide.ui | org.eclipse.sirius.specifier.ide.ui | 
| fr.obeo.dsl.viewpoint.specifier.ide.ui.acceleo | org.eclipse.sirius.specifier.ide.ui.acceleo | 
| fr.obeo.dsl.viewpoint.doc.feature | org.eclipse.sirius.doc.feature | 
The Java package names have changed to start with the identifier of the plug-in they are defined in (which has changed). A simple “Source > Organize Imports” on your source folders should find most classes you used in their new namespace.
The Viewpoint code base and APIs used the term “Viewpoint” both for the name of the product and for the name of the concept. When it refered to the name of the product, the names where changed to use “Sirius” instead (for example, 
			ViewpointControlCommand is now 
			SiriusControlCommand).
		
All namespace URIs have also been changed from “http://www.obeo.fr/dsl/viewpoint*” to “http://www.eclipse.org/sirius/”.
If you have created VSM file (.odesign) or representations file (.aird) with Viewpoint, the changes of the namespace URIs will be automatically migrated during the loading of your VSM or your representations file. These new nsURIs will be stored physically in the file during the first save. If the file is not saved, the automatic migration will be replayed at the next opening.
The modeling project has a specific nature (
			org.eclipse.sirius.nature.modelingproject).
			
If you have modeling project created with Viewpoint, you must launch the action “Configure/Convert to Modeling Project” to replace old nature id (
			fr.obeo.dsl.viewpoint.nature.modelingproject) by the new one.
			
If you have many modeling projects to “migrate”, you can easily make a script to replace 
			fr.obeo.dsl.viewpoint.nature.modelingproject by 
			org.eclipse.sirius.nature.modelingproject in all 
			.project file of each modeling projects.
		
This section only lists API changes in Sirius 0.9.0 compared to the latest version of Viewpoint it is based on, i.e. Viewpoint 6.10.
IMigrationParticipant.getPackage() to return the EPackage to use for the given namespace. This change concerns our internal migration framework. This is useful to handle our namespace changes (from Viewpoint to Sirius).
			org.eclipse.sirius.common.tools.api.interpreter.IAcceleoInterpreterVariables: This interface only defined a single constant, which refered to the syntax of an obsolete version of the Acceleo language.
			org.eclipse.sirius.common.tools.api.resource.IFileContributorExtension: This interface only defined a few constants relative to an extension point which does not exist anymore.
			org.eclipse.sirius.reconciler extension point definition (which used to be defined in the 
				org.eclipse.sirius plug-in): This extension point is not supported anymore (and has not been for a long time).
			Session and replaced the internal calls with the equivalent versions with 
				IProgressMonitors. The removed methods are:
			void open(); void addSemanticResource(Resource newResource, boolean addCrossReferencedResources); void addSemanticResource(URI semanticModelURI, boolean addCrossReferencedResources); void addSemanticResource(URI semanticModelURI, boolean addCrossReferencedResources, IProgressMonitor monitor); void removeSemanticResource(Resource resource, boolean removeCrossReferencedResources); void removeSemanticResource(Resource semanticResource); void save(); void close(); Collection<Viewpoint> getSelectedViewpoints(); void createView(Viewpoint viewpoint, Collection<EObject> semantics); void createView(Viewpoint viewpoint, Collection<EObject> semantics, boolean createNewRepresentations); void addSelectedView(DView view) throws IllegalArgumentException; void removeSelectedView(DView view);
New variables are available for 
			sizeComputationExpression to compute the size of edges on 
			EdgeStyleDescription and 
			BracketEdgeStyleDescription:
		
DDiagram
			DEdge