Upgrading Vaadin 7 to Vaadin 8 - addons

Hello,
I am a little confused about how to handle add-ons when I move from Vaadin 7 to Vaadin 8. The easiest path is when the add-on has a compatibility mode, so no confusion there at all. The confusion comes with add-ons that have both Vaadin 7 and Vaadin 8 versions, but do not seem to have a compatibility mode. Is the only option to wait until the add-on developer adds a compatibility mode, or have people found a better word around?
Obviously, some add-ons probably won’t have a problem because they don’t use Vaadin features that change between Vaadin 7 and Vaadin 8. So I am definitely not saying all add-ons need a compatibility mode, just seeing what people have done in this case. The add-ons are the biggest reason I have taken the first step in the conversion process.

This varies a bit case by case. But here are some steps to go forward.

If you have e.g. Grid add-ons or extensions, and use compatibility Grid in your app, you should naturally use the Vaadin 7 version of the add-on in those.

If your views can be easily migrated to real Vaadin 8, the best way is to do that and use Vaadin 8 version of the add-ons.

It is not a bad idea to raise an issue in add-on’s GitHub issue tracker if you feel that compatibility classes in the specific add-ons are really something that would be needed.

Hi,

If you have access to the Vaadin 7 source code of the add-on, making a version that works with Vaadin 8 compatibility mode is often trivial - usually you just need to make sure you’re using the compatibility versions of Framework classes where needed. If you’re maintaining an add-on, it’s of course extra work to support compatibility mode as well, but as far as versioning goes, it might make sense to provide the compatibility version in the same releases as the non-compatibility Vaadin 8 release; just keep the compatibility classes in a new package (see for example Viritin of an example of this)

-Olli

So, keeping with the Grid example, if I use, say,
GridFastNavigation
addon, which, as of this post, does not have a compatibility mode ( at least I don’t see one when I go to the github for Vaadin 8 code ), I either report it to the developer and see if maybe they are going to do such a mode, or use Olli’s idea and download the source code to make my own version?

I have a few add-ons that fit in this situation. I have to admit, I am half tempted to remove every add-on I can possibly remove, and do the work of those add-ons by hand ( most could be done, just would take a lot of code ). Not ideal, but may be the only option.

So, keeping with the Grid example, if I use, say, GridFastNavigation addon

You are talking to right guy :slight_smile: Add issue about that to GitHub.

GridFastNavigation with compatibility classes is here:


https://vaadin.com/directory/component/gridfastnavigation-compatibility-add-on