Skip to content

Commit

Permalink
Use gwt-user and gwt-dev dependencies in client and compiler
Browse files Browse the repository at this point in the history
This removes GWT dependency from the server and shared parts of the
framework

Change-Id: Iafbb752c0184611a18d4a9d61c9e03229d42836e
  • Loading branch information
Teemu Suo-Anttila committed Jun 1, 2016
1 parent 6878436 commit fb63a60
Show file tree
Hide file tree
Showing 7 changed files with 48 additions and 212 deletions.
9 changes: 1 addition & 8 deletions all/pom.xml
Expand Up @@ -126,18 +126,11 @@
<expandproperties />
<replacetokens begintoken="@" endtoken="@">
<token key="version" value="${project.version}" />
</replacetokens>
<replacetokens begintoken="@" endtoken="@">
<token key="version-minor"
value="${parsedVersion.majorVersion}.${parsedVersion.minorVersion}" />
</replacetokens>
<replacetokens begintoken="@" endtoken="@">
<token key="gwt-version" value="${vaadin.gwt.version}" />
<token key="builddate" value="${maven.build.timestamp}" />
</replacetokens>
<replacetokens begintoken="@" endtoken="@">
<token key="release-notes-tickets" value="${release-notes-tickets}" />
</replacetokens>
<replacetokens begintoken="@" endtoken="@">
<token key="release-notes-authors" value="${release-notes-authors}" />
</replacetokens>
</filterchain>
Expand Down
28 changes: 28 additions & 0 deletions all/src/main/templates/release-notes.html
Expand Up @@ -48,6 +48,7 @@ <h2 id="tableofcontents">Release Notes for Vaadin Framework
<li><a href="#incompatible">Incompatible or Behavior-altering Changes in
@version-minor@</a></li>
<li><a href="#knownissues">Known Issues and Limitations</a></li>
<li><a href="#gwtdep">GWT Dependency Changes</a></li>
<li><a href="#vaadin">Vaadin Installation</a></li>
<li><a href="#package">Package Contents</a></li>
<li><a href="#migrating">Migrating from Vaadin 6</a></li>
Expand Down Expand Up @@ -115,6 +116,7 @@ <h3 id="incompatible">Incompatible or Behavior-altering Changes in @version-mino
<li>The return type of BootstrapHandler.getWidgetsetForUI() has changed.</li>
<li>Vaadin shared no longer depends on a custom build of Guava. Any project that depends on Guava as a transitive dependency should use standard Guava.</li>
<li>Valo theme field error styles now apply to NativeSelect, ListSelect and TwinColSelect as well.</li>
<li>The way we handle GWT dependencies has been completely changed. See <a href="#gwtdep">this section</a> for more details</li>
</ul>
<h3 id="knownissues">Known Issues and Limitations</h3>
<ul>
Expand Down Expand Up @@ -157,6 +159,32 @@ <h3 id="knownissues">Known Issues and Limitations</h3>
<li>Grid does not support adding components to cells. Instead light-weight Renderers can be
used to present and edit data.</li>
</ul>

<h3 id="gwtdep">GWT Dependency Changes</h3>

<p>
The GWT dependencies for Vaadin are now provided as actual dependencies
and not bundled with Vaadin packages. This means that you can override
the GWT version in your own project if you want to. Note that the GWT Elemental
is still partially bundled with shared package to avoid having the gwt-user as a
dependency everywhere.
</p>

<ul>
<li>Basic Vaadin server-side only use does not need any changes to your project.</li>
<li>Custom widgets and Add-ons should work just like before.</li>
<li>Projects that use GWT RPC or other utils from the com.google package should add gwt-servlet dependency
<pre>
&lt;dependency>
&lt;groupId>com.vaadin.external.gwt&lt;/groupId>
&lt;artifactId>gwt-servlet&lt;/artifactId>
&lt;version>@gwt-version@&lt;/version>
&lt;/dependency>
</pre>
</li>
<li>OSGi currently does not work with client and client-compiler packages. Those should not be used with OSGi.</li>
</ul>


<h2 id="vaadin">Vaadin Installation</h2>

Expand Down
63 changes: 1 addition & 62 deletions client-compiler/pom.xml
Expand Up @@ -68,21 +68,6 @@
<artifactId>ant-launcher</artifactId>
<version>1.6.5</version>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm</artifactId>
<version>5.0.3</version>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm-util</artifactId>
<version>5.0.3</version>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm-commons</artifactId>
<version>5.0.3</version>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-annotations</artifactId>
Expand Down Expand Up @@ -185,7 +170,6 @@
<groupId>com.vaadin.external.gwt</groupId>
<artifactId>gwt-dev</artifactId>
<version>${vaadin.gwt.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
Expand All @@ -204,51 +188,6 @@
</resources>

<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack-dependencies</id>
<phase>generate-resources</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>com.vaadin.external.gwt</groupId>
<artifactId>gwt-dev</artifactId>
<includes>
about_files/**,
com/google/gwt/core/**,
com/google/gwt/dev/**,
com/google/gwt/lang/**,
com/google/gwt/soyc/**,
com/google/gwt/thirdparty/json/**,
com/google/gwt/thirdparty/guava/**,
com/google/gwt/util/**,
license/LICENSE.sax.txt,
netscape/**,
org/apache/COPYING,
org/apache/jasper/**,
org/apache/commons/el/**,
org/apache/commons/lang3/**,
templates/*,
about.html,
jetty-dir.css,
plugin.properties
</includes>
<excludes>
com/google/gwt/dev/protobuf/**,
com/google/gwt/dev/About.properties
</excludes>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
Expand Down Expand Up @@ -291,7 +230,7 @@
<configuration>
<instructions>
<Bundle-RequiredExecutionEnvironment>JavaSE-1.6</Bundle-RequiredExecutionEnvironment>
<Export-Package>com.vaadin.*;version="${project.version}",com.google.gwt.*;version="${project.version}"</Export-Package>
<Export-Package>com.vaadin.*;version="${project.version}"</Export-Package>
<!--TODO decide gwt packages version number<Export-Package>com.vaadin.*;version="${project.version}",com.google.gwt.*;version="${vaadin.gwt.version}"</Export-Package> -->
<Import-Package></Import-Package> <!--todo find out what should be in Import-Package -->
</instructions>
Expand Down
73 changes: 1 addition & 72 deletions client/pom.xml
Expand Up @@ -36,28 +36,6 @@
</exclusions>
</dependency>

<!-- gwt-user dependencies -->
<dependency>
<groupId>org.w3c.css</groupId>
<artifactId>sac</artifactId>
<version>1.3</version>
</dependency>

<!-- Bean Validation API -->
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>${javax.validation.version}</version>
<scope>provided</scope>
</dependency>

<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>${javax.validation.version}</version>
<classifier>sources</classifier>
</dependency>

<!-- Testing dependencies -->
<dependency>
<groupId>junit</groupId>
Expand All @@ -74,64 +52,15 @@
</dependency>

<!-- Needed GWT dependencies. Required parts are packaged to jar -->
<dependency>
<groupId>com.vaadin.external.gwt</groupId>
<artifactId>gwt-user</artifactId>
<version>${vaadin.gwt.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.vaadin.external.gwt</groupId>
<artifactId>gwt-elemental</artifactId>
<version>${vaadin.gwt.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>

<build>
<plugins>

<!-- Copy needed GWT dependencies to package -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack-dependencies</id>
<phase>generate-resources</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>com.vaadin.external.gwt</groupId>
<artifactId>gwt-user</artifactId>
<excludes>
META-INF/**,
**/*.gwtar,
com/google/gwt/*/server/**,
com/google/gwt/*/shared/**,
com/google/gwt/*/*/shared/**,
com/google/web/bindery/*/shared/**,
com/google/gwt/user/client/rpc/IsSerializable.*,
com/google/gwt/thirdparty/streamhtmlparser/**,
org/w3c/**,
javax/servlet/**
</excludes>
</artifactItem>
<artifactItem>
<groupId>com.vaadin.external.gwt</groupId>
<artifactId>gwt-elemental</artifactId>
<excludes>META-INF/**</excludes>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>


<plugin>
<artifactId>maven-resources-plugin</artifactId>
<executions>
Expand Down Expand Up @@ -167,7 +96,7 @@
<configuration>
<instructions>
<Bundle-RequiredExecutionEnvironment>JavaSE-1.6</Bundle-RequiredExecutionEnvironment>
<Export-Package>com.vaadin.*;version="${project.version}",com.google.*;version="${project.version}"</Export-Package>
<Export-Package>com.vaadin.*;version="${project.version}"</Export-Package>
<Import-Package></Import-Package>
</instructions>
</configuration>
Expand Down
41 changes: 1 addition & 40 deletions server/pom.xml
Expand Up @@ -147,49 +147,10 @@

<!-- For manual testing with PostgreSQL (see SQLTestConstants) -->
<!-- <dependency><groupId>postgresql</groupId><artifactId>postgresql</artifactId><version>9.1-901.jdbc3</version></dependency> -->

<!-- Needed GWT dependencies. Required parts are packaged to jar -->
<dependency>
<groupId>com.vaadin.external.gwt</groupId>
<artifactId>gwt-user</artifactId>
<version>${vaadin.gwt.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.vaadin.external.gwt</groupId>
<artifactId>gwt-elemental</artifactId>
<version>${vaadin.gwt.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>

<build>
<plugins>
<!-- Copy needed GWT dependencies to package -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack-dependencies</id>
<phase>generate-resources</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>com.vaadin.external.gwt</groupId>
<artifactId>gwt-user</artifactId>
</artifactItem>
</artifactItems>
<includes>com/google/gwt/*/server/**</includes>
</configuration>
</execution>
</executions>
</plugin>


<plugin>
<artifactId>maven-resources-plugin</artifactId>
<executions>
Expand Down Expand Up @@ -260,7 +221,7 @@
<configuration>
<instructions>
<Bundle-RequiredExecutionEnvironment>JavaSE-1.6</Bundle-RequiredExecutionEnvironment>
<Export-Package>com.vaadin.*;version="${project.version}",com.google.*;version="${project.version}"</Export-Package>
<Export-Package>com.vaadin.*;version="${project.version}"</Export-Package>
<Import-Package>javax.servlet;version="${javax.servlet.version}",
javax.servlet.http;version="${javax.servlet.version}",
javax.validation;version="${javax.validation.version}";resolution:=optional,
Expand Down
32 changes: 2 additions & 30 deletions shared/pom.xml
Expand Up @@ -20,32 +20,13 @@
<description>Vaadin shared</description>

<dependencies>
<!-- Actual dependencies -->
<dependency>
<groupId>com.vaadin.external.flute</groupId>
<artifactId>flute</artifactId>
<version>${flute.version}</version>
</dependency>
<dependency>
<groupId>com.vaadin.external.streamhtmlparser</groupId>
<artifactId>streamhtmlparser-jsilver</artifactId>
<version>${streamhtmlparser.version}</version>
</dependency>


<!-- Needed GWT dependencies. Required parts are packaged to jar -->
<dependency>
<groupId>com.vaadin.external.gwt</groupId>
<artifactId>gwt-elemental</artifactId>
<version>${vaadin.gwt.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.vaadin.external.gwt</groupId>
<artifactId>gwt-user</artifactId>
<version>${vaadin.gwt.version}</version>
<scope>provided</scope>
</dependency>

<dependency>
<groupId>junit</groupId>
Expand Down Expand Up @@ -94,21 +75,12 @@
elemental/util/Map*
</includes>
</artifactItem>
<artifactItem>
<groupId>com.vaadin.external.gwt</groupId>
<artifactId>gwt-user</artifactId>
<includes>
com/google/gwt/*/shared/**,
com/google/gwt/*/*/shared/**,
com/google/web/bindery/*/shared/**,
com/google/gwt/user/client/rpc/IsSerializable.*
</includes>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>


<plugin>
<artifactId>maven-resources-plugin</artifactId>
Expand Down Expand Up @@ -145,7 +117,7 @@
<configuration>
<instructions>
<Bundle-RequiredExecutionEnvironment>JavaSE-1.6</Bundle-RequiredExecutionEnvironment>
<Export-Package>com.vaadin.*;version="${project.version}",com.google.*;version="${project.version}",elemental.*;version="${project.version}"</Export-Package>
<Export-Package>com.vaadin.*;version="${project.version}",elemental.*;version="${project.version}"</Export-Package>
<Import-Package>com.google.gwt.thirdparty.streamhtmlparser;version="${streamhtmlparser.version}",
com.google.gwt.thirdparty.streamhtmlparser.impl;version="${streamhtmlparser.version}",
com.google.gwt.thirdparty.streamhtmlparser.util;version="${streamhtmlparser.version}",
Expand Down

0 comments on commit fb63a60

Please sign in to comment.