[deps][bug 401285] use package-import to depend on guava

Xtext and Xtend should use Package-Import declarations to depend on
Guava rather than Require-Bundle declarations. The reason for this is
that the user may want to use a different bundle than the standard
com.google.guava bundle; e.g. com.google.guava.jdk5.

Also Xtext and Xtend should when possible omit the version qualifier
from the dependencies on Guava. The reason being that if Xtext depends
upon a specific Guava version, e.g. version="10.0.1", then users would
not really be able to use any other Guava version, since the major
version is incremented with every release. So if a specific minimum
version of Guava is required it is be best to test against all current
Guava versions and then specify a version range as in e.g.
version="[10.0.1,14.0.0)". These dependencies should
then be updated when new versions of Guava become available.

This change corrects all Xtext and Xtend Guava dependencies and adds
API filters where necessary. Bundle re-exports remain, but are optional.

Change-Id: Iae2140ce606f697d9f5300f39b2e161dd5e02047
This commit is contained in:
Knut Wannheden 2013-02-21 20:24:18 +01:00 committed by Gerrit Code Review @ Eclipse.org
parent 3e6a154bf5
commit bf5fc00e09
2 changed files with 12 additions and 4 deletions

View file

@ -7,5 +7,11 @@
<message_argument value="2.2.1"/>
</message_arguments>
</filter>
<filter id="927989779">
<message_arguments>
<message_argument value="2.4.0"/>
<message_argument value="com.google.guava"/>
</message_arguments>
</filter>
</resource>
</component>

View file

@ -11,8 +11,10 @@ Export-Package: org.eclipse.xtext.util,
org.eclipse.xtext.util.formallang;x-internal:=true,
org.eclipse.xtext.util.internal;x-internal:=true
Require-Bundle: org.eclipse.emf.ecore;bundle-version="2.3.2",
com.google.guava;bundle-version="10.0.1";resolution:=optional;x-installation:=greedy;visibility:=reexport,
com.google.inject;bundle-version="2.0.0";resolution:=optional;x-installation:=greedy;visibility:=reexport,
javax.inject;bundle-version="1.0.0";resolution:=optional;x-installation:=greedy;visibility:=reexport,
com.google.guava;resolution:=optional;visibility:=reexport;x-installation:=greedy,
com.google.inject;bundle-version="2.0.0";resolution:=optional;visibility:=reexport;x-installation:=greedy,
javax.inject;bundle-version="1.0.0";resolution:=optional;visibility:=reexport;x-installation:=greedy,
org.eclipse.jdt.annotation;bundle-version="1.0.0";resolution:=optional;x-installation:=greedy
Import-Package: org.apache.log4j;version="1.2.15"
Import-Package: com.google.common.base,
com.google.common.collect,
org.apache.log4j;version="1.2.15"