Update to upstream version 4.0
This commit is contained in:
parent
4b93d82c75
commit
2dbb62e729
1
.gitignore
vendored
1
.gitignore
vendored
@ -9,3 +9,4 @@
|
||||
/google-guice-3.2.4.tar.xz
|
||||
/google-guice-3.2.5.tar.xz
|
||||
/google-guice-3.2.6.tar.xz
|
||||
/google-guice-4.0.tar.xz
|
||||
|
153
GUICE_492_slf4j_logger_injection.patch
Normal file
153
GUICE_492_slf4j_logger_injection.patch
Normal file
@ -0,0 +1,153 @@
|
||||
Description: Provide built-in injection of SLF4J loggers
|
||||
Author: Stuart McCulloch <mcculls@gmail.com>
|
||||
Bug-Google: http://code.google.com/p/google-guice/issues/detail?id=492
|
||||
Last-Update: 2014-11-07
|
||||
|
||||
diff --git a/common.xml b/common.xml
|
||||
index a23eb90..2d3d9b3 100644
|
||||
--- a/common.xml
|
||||
+++ b/common.xml
|
||||
@@ -44,6 +44,10 @@
|
||||
|
||||
<property name="Export-Package" value="!${module}.internal.*,${module}.*;version=${api.version}"/>
|
||||
|
||||
+ <condition property="DynamicImport-Package" value="org.slf4j">
|
||||
+ <equals arg1="${module}" arg2="com.google.inject"/>
|
||||
+ </condition>
|
||||
+
|
||||
<condition property="Eclipse-ExtensibleAPI" value="true">
|
||||
<equals arg1="${module}" arg2="com.google.inject"/>
|
||||
</condition>
|
||||
diff --git a/core/pom.xml b/core/pom.xml
|
||||
index 33e6dcc..edfa724 100644
|
||||
--- a/core/pom.xml
|
||||
+++ b/core/pom.xml
|
||||
@@ -15,6 +15,12 @@
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
+ <groupId>org.slf4j</groupId>
|
||||
+ <artifactId>slf4j-api</artifactId>
|
||||
+ <version>1.6.4</version>
|
||||
+ <optional>true</optional>
|
||||
+ </dependency>
|
||||
+ <dependency>
|
||||
<groupId>javax.inject</groupId>
|
||||
<artifactId>javax.inject</artifactId>
|
||||
</dependency>
|
||||
@@ -91,6 +97,12 @@
|
||||
<artifactId>maven-surefire-plugin</artifactId>
|
||||
<configuration>
|
||||
<!--
|
||||
+ | Run core tests without SLF4J on the classpath
|
||||
+ -->
|
||||
+ <classpathDependencyExcludes>
|
||||
+ <exclude>org.slf4j:slf4j-api</exclude>
|
||||
+ </classpathDependencyExcludes>
|
||||
+ <!--
|
||||
| Temporarily excluded tests
|
||||
-->
|
||||
<excludes>
|
||||
@@ -113,6 +125,7 @@
|
||||
<Bundle-Name>${project.artifactId}$(if;$(classes;NAMED;*.MethodAspect);; (no_aop))</Bundle-Name>
|
||||
<Import-Package>!net.sf.cglib.*,!org.objectweb.asm.*,!com.google.inject.*,*</Import-Package>
|
||||
<Eclipse-ExtensibleAPI>true</Eclipse-ExtensibleAPI>
|
||||
+ <DynamicImport-Package>org.slf4j</DynamicImport-Package>
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
diff --git a/core/src/com/google/inject/internal/InjectorShell.java b/core/src/com/google/inject/internal/InjectorShell.java
|
||||
index 6100879..56b13b3 100644
|
||||
--- a/core/src/com/google/inject/internal/InjectorShell.java
|
||||
+++ b/core/src/com/google/inject/internal/InjectorShell.java
|
||||
@@ -251,6 +251,15 @@ final class InjectorShell {
|
||||
new ProviderInstanceBindingImpl<Logger>(injector, key,
|
||||
SourceProvider.UNKNOWN_SOURCE, loggerFactory, Scoping.UNSCOPED,
|
||||
loggerFactory, ImmutableSet.<InjectionPoint>of()));
|
||||
+
|
||||
+ try {
|
||||
+ Key<org.slf4j.Logger> slf4jKey = Key.get(org.slf4j.Logger.class);
|
||||
+ SLF4JLoggerFactory slf4jLoggerFactory = new SLF4JLoggerFactory(injector);
|
||||
+ injector.state.putBinding(slf4jKey,
|
||||
+ new ProviderInstanceBindingImpl<org.slf4j.Logger>(injector, slf4jKey,
|
||||
+ SourceProvider.UNKNOWN_SOURCE, slf4jLoggerFactory, Scoping.UNSCOPED,
|
||||
+ slf4jLoggerFactory, ImmutableSet.<InjectionPoint>of()));
|
||||
+ } catch (Throwable e) {}
|
||||
}
|
||||
|
||||
private static class LoggerFactory implements InternalFactory<Logger>, Provider<Logger> {
|
||||
@@ -270,6 +279,44 @@ final class InjectorShell {
|
||||
}
|
||||
}
|
||||
|
||||
+ private static class SLF4JLoggerFactory implements InternalFactory<org.slf4j.Logger>, Provider<org.slf4j.Logger> {
|
||||
+ private final Injector injector;
|
||||
+
|
||||
+ private org.slf4j.ILoggerFactory loggerFactory;
|
||||
+
|
||||
+ SLF4JLoggerFactory(Injector injector) {
|
||||
+ this.injector = injector;
|
||||
+ }
|
||||
+
|
||||
+ org.slf4j.ILoggerFactory loggerFactory() {
|
||||
+ if (loggerFactory == null) {
|
||||
+ try {
|
||||
+ loggerFactory = injector.getInstance(org.slf4j.ILoggerFactory.class);
|
||||
+ } catch (Throwable e) {}
|
||||
+ if (loggerFactory == null) {
|
||||
+ loggerFactory = org.slf4j.LoggerFactory.getILoggerFactory();
|
||||
+ }
|
||||
+ }
|
||||
+ return loggerFactory;
|
||||
+ }
|
||||
+
|
||||
+ public org.slf4j.Logger get(Errors errors, InternalContext context, Dependency<?> dependency, boolean linked) {
|
||||
+ InjectionPoint injectionPoint = dependency.getInjectionPoint();
|
||||
+ if (injectionPoint != null) {
|
||||
+ return loggerFactory().getLogger(injectionPoint.getMember().getDeclaringClass().getName());
|
||||
+ }
|
||||
+ return loggerFactory().getLogger(org.slf4j.Logger.ROOT_LOGGER_NAME);
|
||||
+ }
|
||||
+
|
||||
+ public org.slf4j.Logger get() {
|
||||
+ return loggerFactory().getLogger(org.slf4j.Logger.ROOT_LOGGER_NAME);
|
||||
+ }
|
||||
+
|
||||
+ public String toString() {
|
||||
+ return "Provider<org.slf4j.Logger>";
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
private static void bindStage(InjectorImpl injector, Stage stage) {
|
||||
Key<Stage> key = Key.get(Stage.class);
|
||||
InstanceBindingImpl<Stage> stageBinding = new InstanceBindingImpl<Stage>(
|
||||
diff --git a/extensions/persist/pom.xml b/extensions/persist/pom.xml
|
||||
index a560f38..e909927 100644
|
||||
--- a/extensions/persist/pom.xml
|
||||
+++ b/extensions/persist/pom.xml
|
||||
@@ -29,7 +29,7 @@
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-simple</artifactId>
|
||||
- <version>1.6.1</version>
|
||||
+ <version>1.6.4</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
diff --git a/lib/build/slf4j-api-1.6.4.jar b/lib/build/slf4j-api-1.6.4.jar
|
||||
new file mode 100644
|
||||
index 0000000..76ef305
|
||||
Binary files /dev/null and b/lib/build/slf4j-api-1.6.4.jar differ
|
||||
diff --git a/pom.xml b/pom.xml
|
||||
index 37305d0..5834d49 100644
|
||||
--- a/pom.xml
|
||||
+++ b/pom.xml
|
||||
@@ -283,7 +283,7 @@ See the Apache License Version 2.0 for the specific language governing permissio
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-surefire-plugin</artifactId>
|
||||
- <version>2.5</version>
|
||||
+ <version>2.6</version>
|
||||
<configuration>
|
||||
<redirectTestOutputToFile>true</redirectTestOutputToFile>
|
||||
<!--<argLine>-Dguice_include_stack_traces=OFF</argLine>-->
|
1053
GUICE_618_extensible_filter_pipeline.patch
Normal file
1053
GUICE_618_extensible_filter_pipeline.patch
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,13 +1,13 @@
|
||||
#!/bin/sh
|
||||
set -e -x
|
||||
test $# -eq 1
|
||||
test ! -d sisu-guice
|
||||
git clone git://github.com/sonatype/sisu-guice.git
|
||||
cd ./sisu-guice
|
||||
git checkout sisu-guice-${1}
|
||||
git branch unbundled-guice-${1}
|
||||
git checkout unbundled-guice-${1}
|
||||
rm -rf $(ls . | grep -E -v 'core|extensions|pom|bom|jdk8-tests|COPYING')
|
||||
test ! -d guice
|
||||
git clone git://github.com/google/guice.git
|
||||
cd ./guice
|
||||
git checkout ${1}
|
||||
git branch unbundled-${1}
|
||||
git checkout unbundled-${1}
|
||||
rm -rf $(ls . | grep -E -v 'core|extensions|pom|bom|jdk8-tests|COPYING|common.xml')
|
||||
find . -name "*.jar" -delete
|
||||
find . -name "*.class" -delete
|
||||
git commit -a -m "Remove unneeded stuff"
|
||||
|
@ -5,19 +5,26 @@
|
||||
%global short_name guice
|
||||
|
||||
Name: google-%{short_name}
|
||||
Version: 3.2.6
|
||||
Version: 4.0
|
||||
Release: 1%{?dist}
|
||||
Summary: Lightweight dependency injection framework for Java 5 and above
|
||||
License: ASL 2.0
|
||||
URL: https://github.com/sonatype/sisu-%{short_name}
|
||||
URL: https://github.com/google/%{short_name}
|
||||
BuildArch: noarch
|
||||
|
||||
# ./create-tarball.sh %%{version}
|
||||
Source0: %{name}-%{version}.tar.xz
|
||||
Source1: create-tarball.sh
|
||||
BuildArch: noarch
|
||||
|
||||
# Rejected upstream: https://github.com/google/guice/issues/492
|
||||
Patch100: https://raw.githubusercontent.com/sonatype/sisu-guice/master/PATCHES/GUICE_492_slf4j_logger_injection.patch
|
||||
# Forwarded upstream: https://github.com/google/guice/issues/618
|
||||
Patch101: https://raw.githubusercontent.com/sonatype/sisu-guice/master/PATCHES/GUICE_618_extensible_filter_pipeline.patch
|
||||
|
||||
BuildRequires: maven-local >= 3.2.4-2
|
||||
BuildRequires: maven-remote-resources-plugin
|
||||
BuildRequires: munge-maven-plugin
|
||||
BuildRequires: maven-gpg-plugin
|
||||
BuildRequires: apache-resource-bundles
|
||||
BuildRequires: aopalliance
|
||||
BuildRequires: atinject
|
||||
@ -168,6 +175,8 @@ This package provides %{summary}.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{name}-%{version}
|
||||
%patch100 -p1
|
||||
%patch101 -p1
|
||||
|
||||
# We don't have struts2 in Fedora yet.
|
||||
%pom_disable_module struts2 extensions
|
||||
@ -191,7 +200,8 @@ This package provides %{summary}.
|
||||
%pom_remove_dep :guava-testlib extensions
|
||||
%pom_xpath_remove "pom:dependency[pom:classifier[text()='tests']]" extensions
|
||||
|
||||
%pom_set_parent org.sonatype.sisu.inject:guice-parent:%{version} jdk8-tests
|
||||
%pom_remove_parent
|
||||
%pom_set_parent com.google.inject:guice-parent:%{version} jdk8-tests
|
||||
|
||||
# Don't try to build extension modules unless they are needed
|
||||
%if %{without extensions}
|
||||
@ -202,22 +212,21 @@ This package provides %{summary}.
|
||||
|
||||
%build
|
||||
%if %{with extensions}
|
||||
%mvn_alias ":guice-{assistedinject,grapher,jmx,jndi,multibindings,persist,\
|
||||
servlet,spring,throwingproviders}" "com.google.inject.extensions:guice-@1"
|
||||
%mvn_alias "com.google.inject.extensions:" "org.sonatype.sisu.inject:"
|
||||
%endif # with extensions
|
||||
|
||||
%mvn_package :::no_aop: sisu-guice
|
||||
%mvn_package :::no_aop: guice
|
||||
|
||||
%mvn_file ":guice-{*}" %{short_name}/guice-@1
|
||||
%mvn_file ":sisu-guice" %{short_name}/%{name} %{name}
|
||||
%mvn_alias ":sisu-guice" "com.google.inject:guice"
|
||||
%mvn_file ":guice" %{short_name}/%{name} %{name}
|
||||
%mvn_alias ":guice" "org.sonatype.sisu:sisu-guice"
|
||||
# Skip tests because of missing dependency guice-testlib
|
||||
%mvn_build -f -s
|
||||
|
||||
%install
|
||||
%mvn_install
|
||||
|
||||
%files -f .mfiles-sisu-guice
|
||||
%files -f .mfiles-guice
|
||||
%dir %{_javadir}/%{short_name}
|
||||
|
||||
%files -n %{short_name}-parent -f .mfiles-guice-parent
|
||||
@ -243,6 +252,9 @@ servlet,spring,throwingproviders}" "com.google.inject.extensions:guice-@1"
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu May 14 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 4.0-1
|
||||
- Update to upstream version 4.0
|
||||
|
||||
* Mon Apr 27 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.2.6-1
|
||||
- Update to upstream version 3.2.6
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user