Notification time stamped 2019-11-30 16:39:24 UTC
From c50693bfd908bedf855a8d7a9bf3975289f0cdab Mon Sep 17 00:00:00 2001
From: Fabio Valentini <decathorpe(a)gmail.com>
Date: Nov 12 2019 17:08:20 +0000
Subject: update to version 2.8.6
---
diff --git a/.gitignore b/.gitignore
index 9c043f8..bb94d61 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,3 +5,4 @@ google-gson-2.2.1.tar.xz
/gson-2.3.1.tar.gz
/gson-parent-2.8.1.tar.gz
/gson-parent-2.8.2.tar.gz
+/gson-parent-2.8.6.tar.gz
diff --git a/google-gson.spec b/google-gson.spec
index c833f96..61ac218 100644
--- a/google-gson.spec
+++ b/google-gson.spec
@@ -1,11 +1,17 @@
Name: google-gson
-Version: 2.8.2
-Release: 4%{?dist}
+Version: 2.8.6
+Release: 1%{?dist}
Summary: Java lib for conversion of Java objects into JSON representation
License: ASL 2.0
URL:
https://github.com/google/gson
Source0:
https://github.com/google/gson/archive/gson-parent-%{version}.tar.gz
Patch0: osgi-export-internal.patch
+Patch1: java-eight-build.patch
+
+# This commit added a dependency on templating-maven-plugin,
+# we don't want it nor need it, so we revert it
+#
https://github.com/google/gson/commit/d84e26d
+Patch2: no-templating-maven-plugin.patch
BuildArch: noarch
@@ -29,6 +35,11 @@ This package contains the API documentation for %{name}.
%prep
%setup -q -n gson-gson-parent-%{version}
%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+
+# presence of these files breaks builds with Java 8
+find -name "module-info.java" -print -delete
# Use felix maven-bundle-plugin only for OSGi metadata
%pom_remove_plugin :bnd-maven-plugin gson
@@ -59,6 +70,9 @@ This package contains the API documentation for %{name}.
%license LICENSE
%changelog
+* Fri Nov 01 2019 Fabio Valentini <decathorpe(a)gmail.com> - 2.8.6-1
+- Update to version 2.8.6.
+
* Thu Jul 25 2019 Fedora Release Engineering <releng(a)fedoraproject.org> - 2.8.2-4
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
diff --git a/java-eight-build.patch b/java-eight-build.patch
new file mode 100644
index 0000000..f2c701e
--- /dev/null
+++ b/java-eight-build.patch
@@ -0,0 +1,15 @@
+diff --git a/pom.xml b/pom.xml
+index 4774e70..c7941b2 100644
+--- a/pom.xml
++++ b/pom.xml
+@@ -69,9 +69,8 @@
+ <id>default-compile</id>
+ <configuration>
+ <jdkToolchain>
+- <version>9</version>
++ <version>8</version>
+ </jdkToolchain>
+- <release>9</release>
+ </configuration>
+ </execution>
+ <execution>
diff --git a/no-templating-maven-plugin.patch b/no-templating-maven-plugin.patch
new file mode 100644
index 0000000..f58e07f
--- /dev/null
+++ b/no-templating-maven-plugin.patch
@@ -0,0 +1,261 @@
+diff --git a/gson/pom.xml b/gson/pom.xml
+index ffe41ac..5ce5d96 100644
+--- a/gson/pom.xml
++++ b/gson/pom.xml
+@@ -56,23 +56,6 @@
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+- <plugin>
+- <groupId>org.codehaus.mojo</groupId>
+- <artifactId>templating-maven-plugin</artifactId>
+- <version>1.0.0</version>
+- <executions>
+- <execution>
+- <id>filtering-java-templates</id>
+- <goals>
+- <goal>filter-sources</goal>
+- </goals>
+- <configuration>
+-
<sourceDirectory>${basedir}/src/main/java-templates</sourceDirectory>
+-
<outputDirectory>${project.build.directory}/generated-sources/java-templates</outputDirectory>
+- </configuration>
+- </execution>
+- </executions>
+- </plugin>
+ </plugins>
+ </build>
+ </project>
+diff --git a/gson/src/main/java-templates/com/google/gson/internal/GsonBuildConfig.java
b/gson/src/main/java-templates/com/google/gson/internal/GsonBuildConfig.java
+deleted file mode 100644
+index a94c96b..0000000
+--- a/gson/src/main/java-templates/com/google/gson/internal/GsonBuildConfig.java
++++ /dev/null
+@@ -1,32 +0,0 @@
+-/*
+- * Copyright (C) 2018 The Gson authors
+- *
+- * Licensed under the Apache License, Version 2.0 (the "License");
+- * you may not use this file except in compliance with the License.
+- * You may obtain a copy of the License at
+- *
+- *
http://www.apache.org/licenses/LICENSE-2.0
+- *
+- * Unless required by applicable law or agreed to in writing, software
+- * distributed under the License is distributed on an "AS IS" BASIS,
+- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+- * See the License for the specific language governing permissions and
+- * limitations under the License.
+- */
+-
+-package com.google.gson.internal;
+-
+-/**
+- * Build configuration for Gson. This file is automatically populated by
+- * templating-maven-plugin and .java/.class files are generated for use in Gson.
+- *
+- * @author Inderjeet Singh
+- */
+-public final class GsonBuildConfig {
+- // Based on
https://stackoverflow.com/questions/2469922/generate-a-version-java-file-...
+-
+- /** This field is automatically populated by Maven when a build is triggered */
+- public static final String VERSION = "${project.version}";
+-
+- private GsonBuildConfig() { }
+-}
+diff --git a/gson/src/main/java/com/google/gson/Gson.java
b/gson/src/main/java/com/google/gson/Gson.java
+index 27f3ee9..d584ece 100644
+--- a/gson/src/main/java/com/google/gson/Gson.java
++++ b/gson/src/main/java/com/google/gson/Gson.java
+@@ -37,7 +37,6 @@ import java.util.concurrent.atomic.AtomicLongArray;
+
+ import com.google.gson.internal.ConstructorConstructor;
+ import com.google.gson.internal.Excluder;
+-import com.google.gson.internal.GsonBuildConfig;
+ import com.google.gson.internal.Primitives;
+ import com.google.gson.internal.Streams;
+ import com.google.gson.internal.bind.ArrayTypeAdapter;
+@@ -462,7 +461,7 @@ public final class Gson {
+ return candidate;
+ }
+ }
+- throw new IllegalArgumentException("GSON (" + GsonBuildConfig.VERSION +
") cannot handle " + type);
++ throw new IllegalArgumentException("GSON cannot handle " + type);
+ } finally {
+ threadCalls.remove(type);
+
+@@ -704,10 +703,6 @@ public final class Gson {
+ ((TypeAdapter<Object>) adapter).write(writer, src);
+ } catch (IOException e) {
+ throw new JsonIOException(e);
+- } catch (AssertionError e) {
+- AssertionError error = new AssertionError("AssertionError (GSON " +
GsonBuildConfig.VERSION + "): " + e.getMessage());
+- error.initCause(e);
+- throw error;
+ } finally {
+ writer.setLenient(oldLenient);
+ writer.setHtmlSafe(oldHtmlSafe);
+@@ -784,10 +779,6 @@ public final class Gson {
+ Streams.write(jsonElement, writer);
+ } catch (IOException e) {
+ throw new JsonIOException(e);
+- } catch (AssertionError e) {
+- AssertionError error = new AssertionError("AssertionError (GSON " +
GsonBuildConfig.VERSION + "): " + e.getMessage());
+- error.initCause(e);
+- throw error;
+ } finally {
+ writer.setLenient(oldLenient);
+ writer.setHtmlSafe(oldHtmlSafe);
+@@ -945,10 +936,6 @@ public final class Gson {
+ } catch (IOException e) {
+ // TODO(inder): Figure out whether it is indeed right to rethrow this as
JsonSyntaxException
+ throw new JsonSyntaxException(e);
+- } catch (AssertionError e) {
+- AssertionError error = new AssertionError("AssertionError (GSON " +
GsonBuildConfig.VERSION + "): " + e.getMessage());
+- error.initCause(e);
+- throw error;
+ } finally {
+ reader.setLenient(oldLenient);
+ }
+diff --git
a/gson/src/test/java/com/google/gson/functional/GsonVersionDiagnosticsTest.java
b/gson/src/test/java/com/google/gson/functional/GsonVersionDiagnosticsTest.java
+deleted file mode 100644
+index 36eff8e..0000000
+--- a/gson/src/test/java/com/google/gson/functional/GsonVersionDiagnosticsTest.java
++++ /dev/null
+@@ -1,96 +0,0 @@
+-/*
+- * Copyright (C) 2018 Gson Authors
+- *
+- * Licensed under the Apache License, Version 2.0 (the "License");
+- * you may not use this file except in compliance with the License.
+- * You may obtain a copy of the License at
+- *
+- *
http://www.apache.org/licenses/LICENSE-2.0
+- *
+- * Unless required by applicable law or agreed to in writing, software
+- * distributed under the License is distributed on an "AS IS" BASIS,
+- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+- * See the License for the specific language governing permissions and
+- * limitations under the License.
+- */
+-package com.google.gson.functional;
+-
+-import java.io.IOException;
+-import java.util.regex.Pattern;
+-
+-import org.junit.Before;
+-import org.junit.Test;
+-
+-import com.google.gson.Gson;
+-import com.google.gson.GsonBuilder;
+-import com.google.gson.TypeAdapter;
+-import com.google.gson.stream.JsonReader;
+-import com.google.gson.stream.JsonWriter;
+-
+-import junit.framework.TestCase;
+-
+-/**
+- * Functional tests to validate printing of Gson version on AssertionErrors
+- *
+- * @author Inderjeet Singh
+- */
+-public class GsonVersionDiagnosticsTest extends TestCase {
+- private static final Pattern GSON_VERSION_PATTERN = Pattern.compile("(\\(GSON
\\d\\.\\d\\.\\d)(?:[-.][A-Z]+)?\\)$");
+-
+- private Gson gson;
+-
+- @Before
+- public void setUp() {
+- gson = new GsonBuilder().registerTypeAdapter(TestType.class, new
TypeAdapter<TestType>() {
+- @Override public void write(JsonWriter out, TestType value) {
+- throw new AssertionError("Expected during serialization");
+- }
+- @Override public TestType read(JsonReader in) throws IOException {
+- throw new AssertionError("Expected during deserialization");
+- }
+- }).create();
+- }
+-
+- @Test
+- public void testVersionPattern() {
+- assertTrue(GSON_VERSION_PATTERN.matcher("(GSON 2.8.5)").matches());
+- assertTrue(GSON_VERSION_PATTERN.matcher("(GSON
2.8.5-SNAPSHOT)").matches());
+- }
+-
+- @Test
+- public void testAssertionErrorInSerializationPrintsVersion() {
+- try {
+- gson.toJson(new TestType());
+- fail();
+- } catch (AssertionError expected) {
+- ensureAssertionErrorPrintsGsonVersion(expected);
+- }
+- }
+-
+- @Test
+- public void testAssertionErrorInDeserializationPrintsVersion() {
+- try {
+- gson.fromJson("{'a':'abc'}", TestType.class);
+- fail();
+- } catch (AssertionError expected) {
+- ensureAssertionErrorPrintsGsonVersion(expected);
+- }
+- }
+-
+- private void ensureAssertionErrorPrintsGsonVersion(AssertionError expected) {
+- String msg = expected.getMessage();
+- // System.err.println(msg);
+- int start = msg.indexOf("(GSON");
+- assertTrue(start > 0);
+- int end = msg.indexOf("):") + 1;
+- assertTrue(end > 0 && end > start + 6);
+- String version = msg.substring(start, end);
+- // System.err.println(version);
+- assertTrue(GSON_VERSION_PATTERN.matcher(version).matches());
+- }
+-
+- private static final class TestType {
+- @SuppressWarnings("unused")
+- String a;
+- }
+-}
+diff --git a/gson/src/test/java/com/google/gson/internal/GsonBuildConfigTest.java
b/gson/src/test/java/com/google/gson/internal/GsonBuildConfigTest.java
+deleted file mode 100644
+index dc39bc0..0000000
+--- a/gson/src/test/java/com/google/gson/internal/GsonBuildConfigTest.java
++++ /dev/null
+@@ -1,33 +0,0 @@
+-/*
+- * Copyright (C) 2018 The Gson authors
+- *
+- * Licensed under the Apache License, Version 2.0 (the "License");
+- * you may not use this file except in compliance with the License.
+- * You may obtain a copy of the License at
+- *
+- *
http://www.apache.org/licenses/LICENSE-2.0
+- *
+- * Unless required by applicable law or agreed to in writing, software
+- * distributed under the License is distributed on an "AS IS" BASIS,
+- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+- * See the License for the specific language governing permissions and
+- * limitations under the License.
+- */
+-package com.google.gson.internal;
+-
+-import static org.junit.Assert.assertFalse;
+-
+-import org.junit.Test;
+-
+-/**
+- * Unit tests for {@code GsonBuildConfig}
+- *
+- * @author Inderjeet Singh
+- */
+-public class GsonBuildConfigTest {
+-
+- @Test
+- public void testEnsureGsonBuildConfigGetsUpdatedToMavenVersion() {
+- assertFalse("${project.version}".equals(GsonBuildConfig.VERSION));
+- }
+-}
diff --git a/sources b/sources
index 099e590..705273c 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (gson-parent-2.8.2.tar.gz) =
72ab46ebbbe3ef6388be7676e6cb1bf1eadc09469437e136adb81212eb7abe76786ec2362405690af29fd395f715e5ffeff0868312bbf120cd3e6b725f68073b
+SHA512 (gson-parent-2.8.6.tar.gz) =
2e9db9388017b5c08b992801d15c0e04a9402e5b729b4da78443af3003e60428f06c8ba14f8ac43d7aafca208e1ab401c56fa6079493d2bf1d4e40da48c044ab
https://src.fedoraproject.org/rpms/google-gson/c/c50693bfd908bedf855a8d7a...