[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[cross-project-issues-dev] Zest 2.0 for 2024-12
|
Hello again,
we've just created a dedicated Zest 2.0 milestone [1] and
contributed it to SimRel. If your project depends on Zest, please
give it a try and report any issues you might run into. You can
reach us either via GitHub [2] or the mailing list [3]. A brief
list of all new features have been added to our wiki [4].
In case you only use the default layout algorithms (e.g.
GridLayoutAlgorithm), the initial migration should be almost
seamless. Otherwise the algorithms can be adapted to run in legacy
mode by extending AbstractLayoutAlgorithm.Zest1 or have to
be re-implemented using the new API by extending AbstractLayoutAlgorithm.
Note that this legacy mode will be removed in a future release.
Below a list of the most significant, deprecated features:
- ContinuousLayoutAlgorithm and Stoppable, with
no replacement.
- ProgressListener and ProgressEvent, with no
replacement.
- LayoutConstraints, ConstrainAdapter, with no
replacement.
- BendPoint, replaced by Draw2D BendPoint and ConnectionRouter
API.
- Filter, replaced by LayoutFilter
Many regards,
Patrick
-----
[1] https://download.eclipse.org/tools/gef/classic/milestone/S202409190406
[2] https://github.com/eclipse/gef-classic
[3] gef-dev@xxxxxxxxxxx
[4] https://github.com/eclipse/gef-classic/wiki/Zest#zest-2x
On 20.07.24 12:48, Patrick Ziegler
wrote:
Hello everyone,
over the past few months, we've been busy integrating the Zest
2.0 project back into GEF-Classic. As a result, the bundle
version will be increased from 1.6.0 (as of now) to 2.0.0 and
also define a new way custom layouts have to be implemented.
Zest Core will remain at version 1.x. However, several
classes/methods have been marked as deprecated due to the
changes in Zest Layouts. With a future release, we also plan to
update Zest Core to 2.0.0, mainly to split it up into two
separate bundles, removing the dependency to the Eclipse
platform. But this isn't something that won't happen before
2025-03.
If you are using the default layouts (e.g.
Grid-/SpringLayoutAlgorithm), then the required code changes
should keep themselves to a minimum. To simplify migrating your
own layouts, we will also introduce a "legacy" mode, in which
you can use your own Zest 1.x layouts with the Zest 2.x engine.
Meaning that for the initial transition, you can re-use your
existing code and make sure that your product is still running
correctly, before you adapt to the new API.
Given that everyone is already quite ahead in their release
cycles, we plan on merging everything back into the main branch
is not the current release (2024-09), but rather
the next release (2024-12). So there will be a separate
email once the changes went live. Once we are closer to the
final release, we also plan on drafting a quick guide containing
a rough overview on what has changed between the versions and
how to migrate from one version to the next.
You can find the current state of Zest 2.0 here [1], if you
want to give it a try already. Just note that while close to
being finished, there are still some minor things that will be
cleaned within the next months. The umbrella issue can be found
here [2]. If you have any concerns or rely on now-deprecated
functionality, feel free to reach out to us.
Finally, I also want to thank Fabian Steeg, for preserving and
maintaining the final version of the SWT-based Zest
implementation and making it available to us!
Many Regards,
Patrick
---------------
[1] https://github.com/eclipse/gef-classic/issues/416
[2] https://github.com/eclipse/gef-classic/pull/476