Vaadin 8 OR Vaadin 7 ??

I am pro Vaadin 8 but here are some of the concerns raised:

How would you construct the repository in such a way that one repo uses Vaadin 7, and just one project uses Vaadin 8? How would we keep the dependencies separate from project to project? And could the project XXX done in Vaadin 8 still be able to reference things from Vaadin 8 w/o forced to be creating it’s copy of the class?

I am fully sure what you trying to achieve, but I guess that what you want is addressed in Vaadin 8 in its compatibility package. It means that there is Vaadin 7 classes inside Vaadin 8. For example Containers, etc. So that it is possible to quickly migrate your application to Vaadin 8 using the classes in compatibility package (by just renaming imports) and the start to refactor your application module by module.

Thanks to Tatu for your response. Appreciated.

What happens if for example, we have five different projects which we are building in Vaadin 7 and suddenly there will be one exceptional project that we will be building in Vaadin 8.

Do you have had some ideas how we will do the build for this kind of complex project structure? We are using gradle for the build now. Do you suggest using Maven instead? Could you guys give a project or build structure for such use-cases?

If all projects build into the same application you havea problem, because you would need Vaadin 7 und 8 on the classpath which isn’t possible. The compatibility dependencies are basically just Vaadin7 with renamed packages. So you would need to adapt the imports of all the Vaadin 7 projects to the new packages and than it should run fine. But if you have any Utility classes that for example expect a Grid, you would need a would need two Versions. One for the Vaadin7 Grid and one for the Vaadin8 Grid. On a side note: If you use the compatibility Dependencies you also need them in your Widgetset which makes it signitificantly larger.

I think the term “compatibility” doesn’t really fit. It suggests that you could use Vaadin 7 stuff that doesn’t exist in Vaadin 8 (Container, Converter (at least in their old form), Calendar, …) with the Vaadin 8 classes.

After 3 days of work I just paused my Vaadin 8 migration because of to many bugs and inconvenientes. I would suggest to stick to Vaadin 7 and migrate to Vaadin 8 in half a year or so when it is more matured.

Thanks Sebastian for your response.

I think Vaadin guys should come up with some simple example for the project structure. So that other developers and people who develop a bit “complex” project with Vaadin 8 can follow their footpath.

Example demonstration or build structure would be awesome.

I attempted to update our Eclipse plugins (Update Software), but it showed no update. When I try to create a new project, there’s no option for Vaadin 8 (still shows Vaadin 6 and Vaadin 7 only).

When I changed my ivy.xml to use 8.0.0, it seemed that perhaps other things were needed to have the Vaadin 7 compatibility classes. That is, when we changed our import to rerence com.vaadin.v7… it was shown as not being a known classes so we can’t even attempt yet using compatible classes.

Is there any likelihood that our Vaadin 7 addon (CKEditorForVaadin) which still uses legacy v6 connectors will work under Vaadin 8?

We have so much Vaadin code written now, first for Vaadin 6, partially updated for Vaadin 7, that with these latest changes for Vaadin 8, we are concerned we’d spend huge efforts just trying to get it to work again, nevermind taking advantage of any Vaadin 8 things.

How long do you think Vaadin 7 will be supported? We already have an issue from 7.7.6 to 7.7.7 breaking (NPE) on IE11/Edge browsers where there’s a mix of downloading files and push. As a small company, it’s unclear if we can continue to upgrade Vaadin with all that it implies to our existing code base.