Vaadin 7.2 Guava

The Guava version in Vaadin 7.2 is “16.0.1.vaadin1”. I assume this means it has edits made by the Vaadin team? Could you explain what these are? We use a standard Guava build in our application (version 17, so we’re a bit ahead). Will using that instead of your jar cause issues (and if not, why the forked version)?

Also, is the source for the forked version available somewhere?

The only difference between standard Guava and Vaadin’s version is that the Guava jar has been repackaged to support OSGI by adding a OSGI manifest to the jar and the jar renamed. This is done so Vaadin is fully compatible with OSGI.

The sources and build script which does this can be found at
https://github.com/vaadin/vaadin-deps/tree/master/shared/guava
if you wan to have a look.

AFAIK guava dependency is there only to support GWT server side stuff that is packaged insided vaadin-server.jar. If you are using guava, I’d exclude it from Vaadin. I have occasionally excluded it anyways to remove stuff from my classpath/war.

    <dependency>
        <groupId>com.vaadin</groupId>
        <artifactId>vaadin-server</artifactId>
        <version>${vaadin.version}</version>
        <exclusions>
            <exclusion>
                <artifactId>guava</artifactId>
                <groupId>com.vaadin.external.google</groupId>
            </exclusion>
        </exclusions>
    </dependency>

Also, in case you are not compiling your themes in server, you can exclude sass compiler to further reduce (most likely) obsolete stuff.

cheers,
matti