Community
Participate
Working Groups
Adopt Batik 1.14 via GMF Runtime 1.14 (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=572885). For now we will do this on a specific branch based on v6.4.0 as this is the immediate need that triggered this effort, but once this is stabilized it will be merged on master for the next version of Sirius.
New Gerrit change created: https://git.eclipse.org/r/c/sirius/org.eclipse.sirius/+/182541
New Gerrit change created: https://git.eclipse.org/r/c/sirius/org.eclipse.sirius/+/182542
Created attachment 286696 [details] Sample project with images of different types (incl. SVG) on a diagram
Steps to validate: * Checkout the Sirius patch at https://git.eclipse.org/r/c/sirius/org.eclipse.sirius/+/182542 * Switch to 2020-06 target platform. * Launch a runtime on a fresh/empty workspace, *with Java 8* as JRE (2020-06 is still compatible with Java 8). * In the runtime's workspace, import the attached project. * Open the project and the diagram inside. * **Check** that all images (GIF, PNG, JPG and SVG) are "correctly" rendered, both on the diagram and in the outline. * In the outline there are some rendering artifacts, but this is not new. * Change the zoom level and check the rendering: * Bitmap formats (GIF, PNG, JPG) should scale with artifacts. * The SVG image should still be crisp even when zooming. * Note that with a large enough zoom (e.g. 400%), the SVG image is not rendered at all. This is a known issue and not a regression; the cache used to stored the rendered version of the SVG is tool small in this case. * Export the diagram in all supported formats: GIF, PNG, JPG, BMP and SVG. * Check outside of Eclipse that all formats are "correctly" exported. Some have known rendering issues and do not match exactly what is displayed in Eclipse, but again that is not a regression. * Check that the exported SVG matches the rendering in Eclipse. Note that the SVG image embedded in the diagram is exported as a bitmap, so it is expected that it is not crisp when zooming in the exported SVG file. * In the Eclipse runtime, check which versions of org.apache.batik.* are present (using Help > About > Installation details) * With Eclipse 2020-06, you should see a mix of Batik 1.11 (used by the platform/e4) and Batik 1.14. * With Eclipse 2021-06, you should only see Batik 1.14. * On all platforms, you should never see any Batik components with versions 1.6, 1.9.x or 1.13. * Repeat with 2021-06 target platform and Java 11.
Created attachment 286702 [details] Results of the rendering and export as different formts under Linux, for 2020-06 (Java 8) and 2021-06 (Java 11)
Created attachment 286704 [details] Results of the rendering and export as different formats under Windows, for 2020-06 (Java 8) and 2021-06 (Java 11) Results of the rendering and export as different formats under Windows, for 2020-06 (Java 8) and 2021-06 (Java 11). I noticed a problem on labels (not displayed on JPG and GIF). This label's problem occurs when the size is "max". It didn't occur when the image size is "nominal". I tested before the gerrit of this bugzilla and the problem was already here before: * 2020-06/images-test.gif: size max, 528Ko, 11864x4209: problem with label * 2021-06/images-test.gif: size nominal, 19,6Ko, 1426x506, no problem with label
Created attachment 286705 [details] Results of the rendering and export as different formats under macOS, for 2020-06 (Java 8) and 2021-06 (Java 11)
Thanks Laurent and Maxime. All the issues mentioned seem unrelated to the SVG/Batik part, and more like problems that already existed before.
(In reply to Laurent Redor from comment #6) > > I noticed a problem on labels (not displayed on JPG and GIF). The cause of this problem is that diagram uses a Font (Linux Font) not available on my computer (Windows). If I replace the Font with an existing one, the problem disappears. This confirms that there is no link with Batik.
New Gerrit change created: https://git.eclipse.org/r/c/sirius/org.eclipse.sirius/+/182939
New Gerrit change created: https://git.eclipse.org/r/c/sirius/org.eclipse.sirius/+/182940
Gerrit change https://git.eclipse.org/r/c/sirius/org.eclipse.sirius/+/182541 was merged to [master]. Commit: http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=e221ed72134e3b84b4cb82100c14c13d8770b5da
Gerrit change https://git.eclipse.org/r/c/sirius/org.eclipse.sirius/+/182939 was merged to [master]. Commit: http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=81628ec3fe2e9e0dd025927c2883a5468a0c7847
Gerrit change https://git.eclipse.org/r/c/sirius/org.eclipse.sirius/+/182940 was merged to [master]. Commit: http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=8712e7840605f845a91596217307a617efa5f00c
Gerrit change https://git.eclipse.org/r/c/sirius/org.eclipse.sirius/+/182542 was merged to [master]. Commit: http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=b401a396f67194e95131b49fb4c01884231fa607
New Gerrit change created: https://git.eclipse.org/r/c/sirius/org.eclipse.sirius/+/183201
Gerrit change https://git.eclipse.org/r/c/sirius/org.eclipse.sirius/+/183201 was merged to [master]. Commit: http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=1081ac6536cc5e4eb1fa5df985ebb30e0b12c6fc
New Gerrit change created: https://git.eclipse.org/r/c/sirius/org.eclipse.sirius/+/183260
(In reply to Eclipse Genie from comment #18) > New Gerrit change created: > https://git.eclipse.org/r/c/sirius/org.eclipse.sirius/+/183260 These changes relates to a security-related problem on some diagrams. Security policy `NoLoadExternalResourceSecurity` do not allow for the use of svg images embedding images through the "<image>" tag. `EmbededExternalResourceSecurity` only allows for locally embedded resources which seems not to link to security leaks. In addition, embedded images in svg's may be encoded using the `data` protocol for which we should add support.
Gerrit change https://git.eclipse.org/r/c/sirius/org.eclipse.sirius/+/183260 was merged to [master]. Commit: http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=78a12a8e3a17a57870480a0660b359b40c5f9fc7
I only validated with Sirius 2021-06 target platform and Java 11, as Sirius 7.0.0.202201120736 or OD 12.0.0 dev is based on this platform version and java 11.
Available in Sirius 7.0.0, see https://projects.eclipse.org/projects/modeling.sirius/releases/7.0.0