Run of fresh-releases for libjxmpp-java

Merge these changes:

git pull https://janitor.debian.net/git/libjxmpp-java fresh-releases/main
git pull https://janitor.debian.net/git/libjxmpp-java fresh-releases/pristine-tar
git pull https://janitor.debian.net/git/libjxmpp-java fresh-releases/upstream

Summary

Merged new upstream version: 1.0.2 (was: 1.0.1).

Diff

Branch: main

Diff is too long (more than 200 lines). Download the raw diff.

Branch: pristine-tar

diff --git a/libjxmpp-java_1.0.2.orig.tar.xz.delta b/libjxmpp-java_1.0.2.orig.tar.xz.delta
new file mode 100644
index 0000000..2bc06a9
Binary files /dev/null and b/libjxmpp-java_1.0.2.orig.tar.xz.delta differ
diff --git a/libjxmpp-java_1.0.2.orig.tar.xz.id b/libjxmpp-java_1.0.2.orig.tar.xz.id
new file mode 100644
index 0000000..94b15df
--- /dev/null
+++ b/libjxmpp-java_1.0.2.orig.tar.xz.id
@@ -0,0 +1 @@
+bcc1542e18a85d4c945c8852a6ee307992c07018

Branch: upstream

Tag: upstream/1.0.2
diff --git a/build.gradle b/build.gradle
index 194c9df..d96776c 100644
--- a/build.gradle
+++ b/build.gradle
@@ -316,7 +316,7 @@ configure (errorProneProjects) {
 	}
 
 	dependencies {
-		errorprone 'com.google.errorprone:error_prone_core:2.3.3'
+		errorprone 'com.google.errorprone:error_prone_core:2.3.4'
 		errorproneJavac('com.google.errorprone:javac:9+181-r4173-1')
 	}
 }
diff --git a/jxmpp-core/src/main/java/org/jxmpp/stringprep/simple/SimpleXmppStringprep.java b/jxmpp-core/src/main/java/org/jxmpp/stringprep/simple/SimpleXmppStringprep.java
index 6999874..696acd2 100644
--- a/jxmpp-core/src/main/java/org/jxmpp/stringprep/simple/SimpleXmppStringprep.java
+++ b/jxmpp-core/src/main/java/org/jxmpp/stringprep/simple/SimpleXmppStringprep.java
@@ -105,7 +105,7 @@ public final class SimpleXmppStringprep implements XmppStringprep {
 			int forbiddenCharPos = Arrays.binarySearch(excludedChars, c);
 			if (forbiddenCharPos >= 0) {
 				throw new XmppStringprepException(input, parttype.getCapitalizedName() + " must not contain '"
-						+ LOCALPART_FURTHER_EXCLUDED_CHARACTERS[forbiddenCharPos] + "'");
+						+ excludedChars[forbiddenCharPos] + "'");
 			}
 		}
 	}
diff --git a/jxmpp-core/src/main/java/org/jxmpp/util/XmppDateTime.java b/jxmpp-core/src/main/java/org/jxmpp/util/XmppDateTime.java
index 76dcb29..31e6e61 100644
--- a/jxmpp-core/src/main/java/org/jxmpp/util/XmppDateTime.java
+++ b/jxmpp-core/src/main/java/org/jxmpp/util/XmppDateTime.java
@@ -1,6 +1,6 @@
 /**
  *
- * Copyright © 2014-2018 Florian Schmaus
+ * Copyright © 2014-2021 Florian Schmaus
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -25,6 +25,7 @@ import java.util.Collections;
 import java.util.Comparator;
 import java.util.Date;
 import java.util.List;
+import java.util.Locale;
 import java.util.TimeZone;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
@@ -58,27 +59,30 @@ public class XmppDateTime {
 
 	private static final TimeZone TIME_ZONE_UTC = TimeZone.getTimeZone("UTC");
 
+	private static DateFormat constructUtcDateFormat(String format) {
+		DateFormat dateFormat = new SimpleDateFormat(format, Locale.ENGLISH);
+		dateFormat.setTimeZone(TIME_ZONE_UTC);
+		return dateFormat;
+	}
+
 	private static final ThreadLocal<DateFormat> xep0091Formatter = new ThreadLocal<DateFormat>() {
 		@Override
 		protected DateFormat initialValue() {
-			DateFormat dateFormat = new SimpleDateFormat("yyyyMMdd'T'HH:mm:ss");
-			dateFormat.setTimeZone(TIME_ZONE_UTC);
+			DateFormat dateFormat = constructUtcDateFormat("yyyyMMdd'T'HH:mm:ss");
 			return dateFormat;
 		}
 	};
 	private static final ThreadLocal<DateFormat> xep0091Date6DigitFormatter = new ThreadLocal<DateFormat>() {
 		@Override
 		protected DateFormat initialValue() {
-			DateFormat dateFormat = new SimpleDateFormat("yyyyMd'T'HH:mm:ss");
-			dateFormat.setTimeZone(TIME_ZONE_UTC);
+			DateFormat dateFormat = constructUtcDateFormat("yyyyMd'T'HH:mm:ss");
 			return dateFormat;
 		}
 	};
 	private static final ThreadLocal<DateFormat> xep0091Date7Digit1MonthFormatter = new ThreadLocal<DateFormat>() {
 		@Override
 		protected DateFormat initialValue() {
-			DateFormat dateFormat = new SimpleDateFormat("yyyyMdd'T'HH:mm:ss");
-			dateFormat.setTimeZone(TIME_ZONE_UTC);
+			DateFormat dateFormat = constructUtcDateFormat("yyyyMdd'T'HH:mm:ss");
 			dateFormat.setLenient(false);
 			return dateFormat;
 		}
@@ -86,8 +90,7 @@ public class XmppDateTime {
 	private static final ThreadLocal<DateFormat> xep0091Date7Digit2MonthFormatter = new ThreadLocal<DateFormat>() {
 		@Override
 		protected DateFormat initialValue() {
-			DateFormat dateFormat = new SimpleDateFormat("yyyyMMd'T'HH:mm:ss");
-			dateFormat.setTimeZone(TIME_ZONE_UTC);
+			DateFormat dateFormat = constructUtcDateFormat("yyyyMMd'T'HH:mm:ss");
 			dateFormat.setLenient(false);
 			return dateFormat;
 		}
@@ -125,8 +128,7 @@ public class XmppDateTime {
 			FORMATTER = new ThreadLocal<DateFormat>() {
 				@Override
 				protected DateFormat initialValue() {
-					DateFormat dateFormat = new SimpleDateFormat(FORMAT_STRING);
-					dateFormat.setTimeZone(TIME_ZONE_UTC);
+					DateFormat dateFormat = constructUtcDateFormat(FORMAT_STRING);
 					return dateFormat;
 				}
 			};
diff --git a/jxmpp-core/src/test/java/org/jxmpp/util/XmppDateTimeTest.java b/jxmpp-core/src/test/java/org/jxmpp/util/XmppDateTimeTest.java
index 626e404..67db41a 100644
--- a/jxmpp-core/src/test/java/org/jxmpp/util/XmppDateTimeTest.java
+++ b/jxmpp-core/src/test/java/org/jxmpp/util/XmppDateTimeTest.java
@@ -1,6 +1,6 @@
 /**
  *
- * Copyright © 2014-2018 Florian Schmaus
+ * Copyright © 2014-2021 Florian Schmaus
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -21,6 +21,7 @@ import static org.junit.Assert.assertEquals;
 import java.text.ParseException;
 import java.util.Calendar;
 import java.util.Date;
+import java.util.Locale;
 import java.util.TimeZone;
 
 import org.junit.Test;
@@ -296,4 +297,14 @@ public class XmppDateTimeTest {
 		cal.setTimeZone(TimeZone.getTimeZone("GMT"));
 		assertEquals(3, cal.get(Calendar.SECOND));
 	}
+
+	@Test
+	public void testArabicLocale() throws ParseException {
+		Locale.setDefault(new Locale("AR"));
+		String initialDateString = "2018-09-22T20:09:42.000+00:00";
+		Date date = XmppDateTime.parseXEP0082Date(initialDateString);
+		String dateString = XmppDateTime.formatXEP0082Date(date);
+		assertEquals(initialDateString, dateString);
+	}
+
 }
diff --git a/version b/version
index 7dea76e..6d7de6e 100644
--- a/version
+++ b/version
@@ -1 +1 @@
-1.0.1
+1.0.2

Publish Blockers

  • ☑ run was successful
  • ☑ package has not been removed from the archive
  • ☑ command has not changed
  • ☒ not yet reviewed, but review needed
  • ☑ 0 publish attempts so far.not currently attempting to back off
  • ☒ merge proposals for the package maintainer are currently being rate-limited (open: 1258, max open: 200)
  • ☑ change set e7e827bb-5a2f-4697-98d0-bbde9941a5d8 is ready

Resulting package

The resulting binary packages can be installed (if you have the apt repository enabled) by running one of:

apt install -t fresh-releases libjxmpp-java

Lintian Result

Full worker log Full build log