diff --git a/.gitignore b/.gitignore index 20e8203..15d79a7 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,5 @@ /sisu-2.3.0.tar.gz /org.eclipse.sisu.inject-0.0.0.M4.tar.bz2 /org.eclipse.sisu.plexus-0.0.0.M4.tar.bz2 +/org.eclipse.sisu.inject-0.0.0.M5.tar.bz2 +/org.eclipse.sisu.plexus-0.0.0.M5.tar.bz2 diff --git a/0001-Fix-OSGi-compatibility.patch b/0001-Fix-OSGi-compatibility.patch new file mode 100644 index 0000000..7291a70 --- /dev/null +++ b/0001-Fix-OSGi-compatibility.patch @@ -0,0 +1,25 @@ +From d22b82bb351469b46726d329a1736aaa92241bad Mon Sep 17 00:00:00 2001 +From: Michal Srb +Date: Wed, 25 Sep 2013 14:16:44 +0200 +Subject: [PATCH 1/2] Fix OSGi compatibility + +--- + .../src/org/eclipse/sisu/launch/internal/SisuActivator.java | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/sisu-inject/org.eclipse.sisu.inject.extender/src/org/eclipse/sisu/launch/internal/SisuActivator.java b/sisu-inject/org.eclipse.sisu.inject.extender/src/org/eclipse/sisu/launch/internal/SisuActivator.java +index 23b43eb..ebbd923 100644 +--- a/sisu-inject/org.eclipse.sisu.inject.extender/src/org/eclipse/sisu/launch/internal/SisuActivator.java ++++ b/sisu-inject/org.eclipse.sisu.inject.extender/src/org/eclipse/sisu/launch/internal/SisuActivator.java +@@ -257,7 +257,7 @@ public final class SisuActivator + } + }, new SpaceModule( space, scanning ).with( extensions ) ).with( extensions ) ); + +- final Dictionary metadata = new Hashtable(); ++ final Dictionary metadata = new Hashtable(); + metadata.put( Constants.SERVICE_PID, CONTAINER_SYMBOLIC_NAME ); + extendedBundleContext.registerService( API, this, metadata ); + } +-- +1.8.3.1 + diff --git a/0002-Fix-compatibility-with-Plexus-Classworlds-2.5.patch b/0002-Fix-compatibility-with-Plexus-Classworlds-2.5.patch new file mode 100644 index 0000000..d5ea1aa --- /dev/null +++ b/0002-Fix-compatibility-with-Plexus-Classworlds-2.5.patch @@ -0,0 +1,25 @@ +From 16622679b8cf7bd98c80ffd8acfeb20b17666d83 Mon Sep 17 00:00:00 2001 +From: Michal Srb +Date: Wed, 25 Sep 2013 14:17:24 +0200 +Subject: [PATCH 2/2] Fix compatibility with Plexus Classworlds 2.5 + +--- + .../org/codehaus/plexus/component/repository/ComponentDescriptor.java | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/sisu-plexus/org.eclipse.sisu.plexus/src/org/codehaus/plexus/component/repository/ComponentDescriptor.java b/sisu-plexus/org.eclipse.sisu.plexus/src/org/codehaus/plexus/component/repository/ComponentDescriptor.java +index 5c63170..9c42ec6 100644 +--- a/sisu-plexus/org.eclipse.sisu.plexus/src/org/codehaus/plexus/component/repository/ComponentDescriptor.java ++++ b/sisu-plexus/org.eclipse.sisu.plexus/src/org/codehaus/plexus/component/repository/ComponentDescriptor.java +@@ -195,7 +195,7 @@ public class ComponentDescriptor + { + try + { +- return classRealm.loadClass( getRole() ); ++ return (Class) classRealm.loadClass( getRole() ); + } + catch ( final Exception e ) + { +-- +1.8.3.1 + diff --git a/sisu.spec b/sisu.spec index 6a5e690..82612d7 100644 --- a/sisu.spec +++ b/sisu.spec @@ -1,39 +1,43 @@ -%global vertag M4 +%global vertag M5 Name: sisu Epoch: 1 Version: 0.0.0 -Release: 0.4.%{vertag}%{?dist} +Release: 0.5.%{vertag}%{?dist} Summary: Eclipse dependency injection framework -Group: Development/Libraries # bundled asm is under BSD +# See also: https://fedorahosted.org/fpc/ticket/346 License: EPL and BSD URL: http://eclipse.org/sisu # TODO: unbundle asm -# TODO: install EPL license file -# TODO: inject pom.properties -# TODO: regenerate build-requires -# TODO: generate proper requires -# convert lazy sed patches to real patches and upstream Source0: http://git.eclipse.org/c/%{name}/org.eclipse.%{name}.inject.git/snapshot/milestones/%{version}.%{vertag}.tar.bz2#/org.eclipse.%{name}.inject-%{version}.%{vertag}.tar.bz2 Source1: http://git.eclipse.org/c/%{name}/org.eclipse.%{name}.plexus.git/snapshot/milestones/%{version}.%{vertag}.tar.bz2#/org.eclipse.%{name}.plexus-%{version}.%{vertag}.tar.bz2 +Patch0: 0001-Fix-OSGi-compatibility.patch +# Incompatible version of Plexus Classworlds (upstreamable) +Patch1: 0002-Fix-compatibility-with-Plexus-Classworlds-2.5.patch BuildArch: noarch BuildRequires: maven-local -BuildRequires: mvn(ch.qos.logback:logback-classic) -BuildRequires: mvn(com.google.inject.extensions:guice-assistedinject) +BuildRequires: mvn(com.google.guava:guava) BuildRequires: mvn(com.google.inject:guice) BuildRequires: mvn(javax.enterprise:cdi-api) BuildRequires: mvn(junit:junit) -BuildRequires: mvn(org.apache.felix:org.apache.felix.framework) -BuildRequires: mvn(org.eclipse.tycho:tycho-maven-plugin) -BuildRequires: mvn(org.osgi:org.osgi.core) -BuildRequires: mvn(org.sonatype.oss:oss-parent) BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin) -BuildRequires: mvn(org.jacoco:jacoco-maven-plugin) +BuildRequires: mvn(org.codehaus.plexus:plexus-classworlds) +BuildRequires: mvn(org.codehaus.plexus:plexus-component-annotations) +BuildRequires: mvn(org.codehaus.plexus:plexus-utils) +BuildRequires: mvn(org.eclipse.sisu:org.eclipse.sisu.inject) +BuildRequires: mvn(org.eclipse.sisu:sisu-inject) +BuildRequires: mvn(org.eclipse.sisu:sisu-plexus) +BuildRequires: mvn(org.eclipse.tycho:target-platform-configuration) +BuildRequires: mvn(org.eclipse.tycho:tycho-maven-plugin) +BuildRequires: mvn(org.eclipse.tycho:tycho-source-plugin) +BuildRequires: mvn(org.slf4j:slf4j-api) +BuildRequires: mvn(org.sonatype.oss:oss-parent) +BuildRequires: mvn(org.sonatype.sisu:sisu-guice::no_aop:) BuildRequires: osgi(aopalliance) BuildRequires: osgi(com.google.guava) @@ -52,15 +56,17 @@ BuildRequires: osgi(org.eclipse.osgi) BuildRequires: osgi(org.hamcrest.core) BuildRequires: osgi(org.junit) BuildRequires: osgi(org.sonatype.sisu.guice) -BuildRequires: osgi(org.testng) BuildRequires: osgi(slf4j.api) + %description Java dependency injection framework with backward support for plexus and bean style dependency injection. %package inject Summary: Sisu inject POM +Requires: mvn(javax.enterprise:cdi-api) +Requires: mvn(com.google.inject:guice) Obsoletes: %{name} < %{epoch}:%{version}-%{release} Obsoletes: %{name}-bean < %{epoch}:%{version}-%{release} @@ -91,6 +97,13 @@ This package contains %{summary}. %package plexus Summary: Sisu Plexus POM +Requires: mvn(javax.enterprise:cdi-api) +Requires: mvn(com.google.guava:guava) +Requires: mvn(org.sonatype.sisu:sisu-guice::no_aop:) +Requires: mvn(org.eclipse.sisu:org.eclipse.sisu.inject) +Requires: mvn(org.codehaus.plexus:plexus-component-annotations) +Requires: mvn(org.codehaus.plexus:plexus-classworlds) +Requires: mvn(org.codehaus.plexus:plexus-utils) %description plexus This package contains %{summary}. @@ -106,6 +119,9 @@ This package contains %{summary}. tar xf %{SOURCE0} && mv milestones/* sisu-inject && rmdir milestones tar xf %{SOURCE1} && mv milestones/* sisu-plexus && rmdir milestones +%patch0 -p1 +%patch1 -p1 + %mvn_file ":{*}" @1 %mvn_package ":*{inject,plexus}" @1 %mvn_package : __noinstall @@ -136,9 +152,12 @@ do %pom_remove_plugin :animal-sniffer-maven-plugin $pom done -sed -i '260s/pom.xml @@ -161,6 +180,16 @@ EOF for mod in inject plexus; do %mvn_artifact sisu-${mod}/pom.xml %mvn_artifact sisu-${mod}/org.eclipse.sisu.${mod}/pom.xml sisu-${mod}/org.eclipse.sisu.${mod}/target/org.eclipse.sisu.${mod}-%{version}.%{vertag}.jar + + # inject pom.properties file + mkdir -p META-INF/maven/org.eclipse.sisu/org/eclipse/sisu/${mod}/ + cat > META-INF/maven/org.eclipse.sisu/org/eclipse/sisu/${mod}/pom.properties << EOF +version=%{version} +groupId=org.eclipse.sisu +artifactId=org.eclipse.sisu.${mod} +EOF + zip -u sisu-${mod}/org.eclipse.sisu.${mod}/target/org.eclipse.sisu.${mod}-%{version}.%{vertag}.jar \ + META-INF/maven/org.eclipse.sisu/org/eclipse/sisu/${mod}/pom.properties done %install @@ -168,13 +197,23 @@ done %files inject -f .mfiles-inject +%doc sisu-inject/LICENSE.txt %files plexus -f .mfiles-plexus +%doc sisu-inject/LICENSE.txt %files javadoc -f .mfiles-javadoc +%doc sisu-inject/LICENSE.txt %changelog +* Wed Sep 25 2013 Michal Srb - 1:0.0.0-0.5.M5 +- Update to upstream version 0.0.0.M5 +- Install EPL license file +- Inject pom.properties +- Regenerate BR +- Add R + * Fri Sep 20 2013 Mikolaj Izdebski - 1:0.0.0-0.4.M4 - Update to XMvn 1.0.0 diff --git a/sources b/sources index 2e37f19..9303ab6 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -8a839e01a00dc0d265e2145aa181c489 org.eclipse.sisu.inject-0.0.0.M4.tar.bz2 -7527a431a595fa509ec7e4845f83aa0c org.eclipse.sisu.plexus-0.0.0.M4.tar.bz2 +46dc5ebfdae53249ac4653766e629752 org.eclipse.sisu.inject-0.0.0.M5.tar.bz2 +47b1727f03586e301b95293a59b2c422 org.eclipse.sisu.plexus-0.0.0.M5.tar.bz2