Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaurent Fasani2016-05-09 16:02:45 +0000
committerLaurent Fasani2016-06-28 14:49:10 +0000
commitf6b6e2a9ba90f681639b027966545e7172ab7acd (patch)
tree76ba451ad624d6462476576decc97aa21d1cf423 /plugins/org.eclipse.sirius.doc/doc/Release_Notes.html
parent72403dc3e4e12b73d5ae12043128fb9ba07ea6f1 (diff)
downloadorg.eclipse.sirius-f6b6e2a9ba90f681639b027966545e7172ab7acd.tar.gz
org.eclipse.sirius-f6b6e2a9ba90f681639b027966545e7172ab7acd.tar.xz
org.eclipse.sirius-f6b6e2a9ba90f681639b027966545e7172ab7acd.zip
[481846] Prevent newer Sirius model loading to avoid potential issues
- We detect only the cases where a VSM or Representations resource has version higher that the newest migration participant. - For Representations and VSM resources version mismatch, we close the session when trying to open it. We provide a mechanism to overload this behavior by providing you own implementation of UICallBack.askSessionReopeningWithResourceVersionMismatch in which you can have an UI feedback letting you choose if you want to open the session anyway. - For VSM resource version mismatch, we prevent the viewpoint to be register in the ViewpointRegistry (A message is added in the log) - When opening the VSM in its editor, natively, the odesign editor displays the errors in the problems tab. - As the code getting and opening the session is mutualized for export and aird open, the monitor work dividing up is defined once (30% for getting session and 70% for opening session) - Tests are added to check VSM and aird version mismatch. - An exception thrown in the resource loading has been a considered but was rejected. Consider the case when the resource is loaded because of proxy resolution. In that cases, the exception is silently caught by ECoreUtil.resolve. It is the case for referenced analysis and for the viewpoint referenced by the View. Bug: 481846 Change-Id: I9e9209ba9b3a3d0ebdaf4661b969d56efa00cb45 Signed-off-by: Laurent Fasani <laurent.fasani@obeo.fr>
Diffstat (limited to 'plugins/org.eclipse.sirius.doc/doc/Release_Notes.html')
-rw-r--r--plugins/org.eclipse.sirius.doc/doc/Release_Notes.html53
1 files changed, 39 insertions, 14 deletions
diff --git a/plugins/org.eclipse.sirius.doc/doc/Release_Notes.html b/plugins/org.eclipse.sirius.doc/doc/Release_Notes.html
index dd9c1d4551..ccb1043b0f 100644
--- a/plugins/org.eclipse.sirius.doc/doc/Release_Notes.html
+++ b/plugins/org.eclipse.sirius.doc/doc/Release_Notes.html
@@ -90,11 +90,36 @@
</p>
<h2 id="sirius4.1.0">Changes in Sirius 4.1.0</h2>
<h3 id="UserVisibleChanges">User-Visible Changes</h3>
- <p><span class="label label-success">Added</span> The
- <a href="./user/diagrams/Diagrams.html#snap_to_shapes">snap to shape</a> feature is now available on border nodes.
+ <ul>
+ <li><span class="label label-success">Added</span> The
+ <a href="./user/diagrams/Diagrams.html#snap_to_shapes">snap to shape</a> feature is now available on border nodes.
+ </li>
+ <li><span class="label label-info">Modified</span> When trying to open a session which holds a representation resource or a VSP which was saved using a more recent version of Sirius than the one you are using, the session will be automatically closed displaying an error message. You can overload this behavior by providing you own implementation of
+ <code>UICallBack</code> 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.
+ </li>
+ </ul>
+ <p>If a viewpoint has been defined with a more recent version of Sirius than the one you are using, the
+ <code>ViewpointRegistry</code> will not register it and a warning is logged in the error log view to inform the user.
</p>
<h3 id="SpecifierVisibleChanges">Specifier-Visible Changes</h3>
<h3 id="DeveloperVisibleChanges">Developer-Visible Changes</h3>
+ <h4 id="Changesinorg.eclipse.sirius">Changes in
+ <code>org.eclipse.sirius</code>
+ </h4>
+ <ul>
+ <li><span class="label label-success">Added</span>
+ <code>org.eclipse.sirius.business.api.migration.AirdResourceVersionMismatchException</code> 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.
+ </li>
+ </ul>
+ <h4 id="Changesinorg.eclipse.sirius.ui">Changes in
+ <code>org.eclipse.sirius.ui</code>
+ </h4>
+ <ul>
+ <li><span class="label label-info">Modified</span>
+ <code>AbstractSWTCallback</code> provides a default implementation of
+ <code>UICallBack.askSessionReopeningWithResourceVersionMismatch()</code> method to give feedback about version mismatch and give the choice to reopen session despite a potential corruption.
+ </li>
+ </ul>
<h4 id="Changesinorg.eclipse.sirius.diagram.ui">Changes in
<code>org.eclipse.sirius.diagram.ui</code>
</h4>
@@ -102,6 +127,9 @@
<li><span class="label label-success">Added</span>
<code>org.eclipse.sirius.diagram.ui.business.api.query.NodeQuery.isDescendantOf(View)</code> has been added to know if a view is a descendant of another view.
</li>
+ <li><span class="label label-success">Added</span>
+ <code>org.eclipse.sirius.diagram.ui.business.api.query.ViewQuery.getAncestor(int...)</code> has been added to retrieve the first ancestor of the view, or itself, that has at least one of the visualID passed as parameter.
+ </li>
</ul>
<h4 id="Changesinorg.eclipse.sirius.ext.gmf.runtime">Changes in
<code>org.eclipse.sirius.ext.gmf.runtime</code>
@@ -113,9 +141,6 @@
<code>org.eclipse.sirius.ext.gmf.runtime.editpolicies</code>. The old class in plug-in
<code>org.eclipse.sirius.ext.gef</code> is deprecated and will be removed in the next version.
</li>
- <li><span class="label label-success">Added</span>
- <code>org.eclipse.sirius.diagram.ui.business.api.query.ViewQuery.getAncestor(int...)</code> has been added to retrieve the first ancestor of the view, or itself, that has at least one of the visualID passed as parameter.
- </li>
</ul>
<h2 id="sirius4.0.0">Changes in Sirius 4.0.0</h2>
<h3 id="UserVisibleChanges2">User-Visible Changes</h3>
@@ -216,7 +241,7 @@
<a href="developer/extensions-provide_custom_bundled_image_shape.html">developer documentation</a> for more details.
</li>
</ul>
- <h4 id="Changesinorg.eclipse.sirius">Changes in
+ <h4 id="Changesinorg.eclipse.sirius2">Changes in
<code>org.eclipse.sirius</code>
</h4>
<ul>
@@ -375,7 +400,7 @@
<code>org.eclipse.sirius.diagram.description.filter.impl.VariableFilterImpl.resetVariables()</code>.
</li>
</ul>
- <h4 id="Changesinorg.eclipse.sirius.ui">Changes in
+ <h4 id="Changesinorg.eclipse.sirius.ui2">Changes in
<code>org.eclipse.sirius.ui</code>
</h4>
<ul>
@@ -522,7 +547,7 @@
<code>org.eclipse.sirius.ext.gmf.runtime.diagram.ui.tools.MoveInDiagramDragTracker</code> has been added to declare states used by all DragTrackers which manage move in diagram using mouse middle click.
</li>
</ul>
- <h4 id="Changesinorg.eclipse.sirius.ui2">Changes in
+ <h4 id="Changesinorg.eclipse.sirius.ui3">Changes in
<code>org.eclipse.sirius.ui</code>
</h4>
<ul>
@@ -926,7 +951,7 @@
<code>org.eclipse.sirius.common.tools.api.contentassist.ContentProposalBuilder</code> used to build the content proposals with their various parameters more easily.
</li>
</ul>
- <h4 id="Changesinorg.eclipse.sirius2">Changes in
+ <h4 id="Changesinorg.eclipse.sirius3">Changes in
<code>org.eclipse.sirius</code>
</h4>
<ul>
@@ -965,7 +990,7 @@
<code>org.eclipse.sirius.tools.api.command.IUndoableCommand</code> interface removed because it is useless since undo/redo is managed by EMF Transaction.
</li>
</ul>
- <h4 id="Changesinorg.eclipse.sirius.ui3">Changes in
+ <h4 id="Changesinorg.eclipse.sirius.ui4">Changes in
<code>org.eclipse.sirius.ui</code>
</h4>
<ul>
@@ -1438,7 +1463,7 @@
<code>org.eclipse.sirius.common.ui.ext</code>.
</li>
</ul>
- <h4 id="Changesinorg.eclipse.sirius3">Changes in
+ <h4 id="Changesinorg.eclipse.sirius4">Changes in
<code>org.eclipse.sirius</code>
</h4>
<ul>
@@ -1574,7 +1599,7 @@
<code>org.eclipse.sirius.viewpoint.DContainer</code> has been removed.
</li>
</ul>
- <h4 id="Changesinorg.eclipse.sirius.ui4">Changes in
+ <h4 id="Changesinorg.eclipse.sirius.ui5">Changes in
<code>org.eclipse.sirius.ui</code>
</h4>
<ul>
@@ -2149,7 +2174,7 @@
<li>&#8220;Lozenge&#8221; is replaced by &#8220;Diamond&#8221; in diagram style.</li>
</ul>
<h3 id="APIChanges">API Changes</h3>
- <h4 id="Changesinorg.eclipse.sirius4">Changes in
+ <h4 id="Changesinorg.eclipse.sirius5">Changes in
<code>org.eclipse.sirius</code>
</h4>
<ul>
@@ -2224,7 +2249,7 @@
<code>org.eclipse.gmf.runtime.emf.core.util.CrossReferenceAdapter</code>. However considering the way Sirius uses GMF, this adapter is not needed.
</li>
</ul>
- <h4 id="Changesinorg.eclipse.sirius.ui5">Changes in
+ <h4 id="Changesinorg.eclipse.sirius.ui6">Changes in
<code>org.eclipse.sirius.ui</code>
</h4>
<ul>

Back to the top