diff --git a/google-http-client-apache-v2/src/main/java/com/google/api/client/http/apache/v2/ApacheHttpTransport.java b/google-http-client-apache-v2/src/main/java/com/google/api/client/http/apache/v2/ApacheHttpTransport.java
index fcbbecf2d..ccf736f84 100644
--- a/google-http-client-apache-v2/src/main/java/com/google/api/client/http/apache/v2/ApacheHttpTransport.java
+++ b/google-http-client-apache-v2/src/main/java/com/google/api/client/http/apache/v2/ApacheHttpTransport.java
@@ -46,8 +46,8 @@
* Default settings are specified in {@link #newDefaultHttpClient()}. Use the {@link
* #ApacheHttpTransport(HttpClient)} constructor to override the Apache HTTP Client used. Please
* read the Apache HTTP
- * Client connection management tutorial for more complex configuration options.
+ * href="https://hc.apache.org/httpcomponents-client-4.5.x/current/tutorial/pdf/httpclient-tutorial.pdf">
+ * Apache HTTP Client connection management tutorial for more complex configuration options.
*
* @since 1.30
* @author Yaniv Inbar
diff --git a/google-http-client-appengine/pom.xml b/google-http-client-appengine/pom.xml
index bbb6c6e56..3a3eaed3e 100644
--- a/google-http-client-appengine/pom.xml
+++ b/google-http-client-appengine/pom.xml
@@ -4,11 +4,11 @@
com.google.http-client
google-http-client-parent
- 1.43.1
+ 1.43.2
../pom.xml
google-http-client-appengine
- 1.43.1
+ 1.43.2
Google App Engine extensions to the Google HTTP Client Library for Java.
diff --git a/google-http-client-assembly/pom.xml b/google-http-client-assembly/pom.xml
index 437c173c7..6e1715903 100644
--- a/google-http-client-assembly/pom.xml
+++ b/google-http-client-assembly/pom.xml
@@ -4,12 +4,12 @@
com.google.http-client
google-http-client-parent
- 1.43.1
+ 1.43.2
../pom.xml
com.google.http-client
google-http-client-assembly
- 1.43.1
+ 1.43.2
pom
Assembly for the Google HTTP Client Library for Java
diff --git a/google-http-client-bom/pom.xml b/google-http-client-bom/pom.xml
index 27ab6c2b0..6a66d5943 100644
--- a/google-http-client-bom/pom.xml
+++ b/google-http-client-bom/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.http-client
google-http-client-bom
- 1.43.1
+ 1.43.2
pom
Google HTTP Client Library for Java BOM
@@ -63,52 +63,52 @@
com.google.http-client
google-http-client
- 1.43.1
+ 1.43.2
com.google.http-client
google-http-client-android
- 1.43.1
+ 1.43.2
com.google.http-client
google-http-client-apache-v2
- 1.43.1
+ 1.43.2
com.google.http-client
google-http-client-appengine
- 1.43.1
+ 1.43.2
com.google.http-client
google-http-client-findbugs
- 1.43.1
+ 1.43.2
com.google.http-client
google-http-client-gson
- 1.43.1
+ 1.43.2
com.google.http-client
google-http-client-jackson2
- 1.43.1
+ 1.43.2
com.google.http-client
google-http-client-protobuf
- 1.43.1
+ 1.43.2
com.google.http-client
google-http-client-test
- 1.43.1
+ 1.43.2
com.google.http-client
google-http-client-xml
- 1.43.1
+ 1.43.2
diff --git a/google-http-client-findbugs/pom.xml b/google-http-client-findbugs/pom.xml
index 2f6511c9e..32e4848dd 100644
--- a/google-http-client-findbugs/pom.xml
+++ b/google-http-client-findbugs/pom.xml
@@ -4,11 +4,11 @@
com.google.http-client
google-http-client-parent
- 1.43.1
+ 1.43.2
../pom.xml
google-http-client-findbugs
- 1.43.1
+ 1.43.2
Google APIs Client Library Findbugs custom plugin.
diff --git a/google-http-client-gson/pom.xml b/google-http-client-gson/pom.xml
index a5b1dceed..09135e7a6 100644
--- a/google-http-client-gson/pom.xml
+++ b/google-http-client-gson/pom.xml
@@ -4,11 +4,11 @@
com.google.http-client
google-http-client-parent
- 1.43.1
+ 1.43.2
../pom.xml
google-http-client-gson
- 1.43.1
+ 1.43.2
GSON extensions to the Google HTTP Client Library for Java.
diff --git a/google-http-client-jackson2/pom.xml b/google-http-client-jackson2/pom.xml
index 06a095475..ccbebf555 100644
--- a/google-http-client-jackson2/pom.xml
+++ b/google-http-client-jackson2/pom.xml
@@ -4,11 +4,11 @@
com.google.http-client
google-http-client-parent
- 1.43.1
+ 1.43.2
../pom.xml
google-http-client-jackson2
- 1.43.1
+ 1.43.2
Jackson 2 extensions to the Google HTTP Client Library for Java.
diff --git a/google-http-client-protobuf/pom.xml b/google-http-client-protobuf/pom.xml
index d39bf44ca..2b5d64fb0 100644
--- a/google-http-client-protobuf/pom.xml
+++ b/google-http-client-protobuf/pom.xml
@@ -4,11 +4,11 @@
com.google.http-client
google-http-client-parent
- 1.43.1
+ 1.43.2
../pom.xml
google-http-client-protobuf
- 1.43.1
+ 1.43.2
Protocol Buffer extensions to the Google HTTP Client Library for Java.
diff --git a/google-http-client-test/pom.xml b/google-http-client-test/pom.xml
index 1894277d7..c74b04f95 100644
--- a/google-http-client-test/pom.xml
+++ b/google-http-client-test/pom.xml
@@ -4,11 +4,11 @@
com.google.http-client
google-http-client-parent
- 1.43.1
+ 1.43.2
../pom.xml
google-http-client-test
- 1.43.1
+ 1.43.2
Shared classes used for testing of artifacts in the Google HTTP Client Library for Java.
diff --git a/google-http-client-xml/pom.xml b/google-http-client-xml/pom.xml
index 681b9cdbd..e0ea47073 100644
--- a/google-http-client-xml/pom.xml
+++ b/google-http-client-xml/pom.xml
@@ -4,11 +4,11 @@
com.google.http-client
google-http-client-parent
- 1.43.1
+ 1.43.2
../pom.xml
google-http-client-xml
- 1.43.1
+ 1.43.2
XML extensions to the Google HTTP Client Library for Java.
diff --git a/google-http-client/pom.xml b/google-http-client/pom.xml
index 4579a0c8c..649d36236 100644
--- a/google-http-client/pom.xml
+++ b/google-http-client/pom.xml
@@ -4,11 +4,11 @@
com.google.http-client
google-http-client-parent
- 1.43.1
+ 1.43.2
../pom.xml
google-http-client
- 1.43.1
+ 1.43.2
Google HTTP Client Library for Java
Google HTTP Client Library for Java. Functionality that works on all supported Java platforms,
diff --git a/google-http-client/src/main/java/com/google/api/client/util/escape/PercentEscaper.java b/google-http-client/src/main/java/com/google/api/client/util/escape/PercentEscaper.java
index 3866265a3..601b52c14 100644
--- a/google-http-client/src/main/java/com/google/api/client/util/escape/PercentEscaper.java
+++ b/google-http-client/src/main/java/com/google/api/client/util/escape/PercentEscaper.java
@@ -64,10 +64,15 @@ public class PercentEscaper extends UnicodeEscaper {
public static final String SAFEPATHCHARS_URLENCODER = "-_.!~*'()@:$&,;=+";
/**
- * Contains the safe characters plus all reserved characters. This happens to be the safe path
- * characters plus those characters which are reserved for URI segments, namely '/' and '?'.
+ * A string of characters that do not need to be encoded when used in URI Templates reserved
+ * expansion, as specified in RFC 6570. This includes the safe characters plus all reserved
+ * characters.
+ *
+ * For details on escaping URI Templates using the reserved expansion, see RFC 6570 - section 3.2.3.
*/
- public static final String SAFE_PLUS_RESERVED_CHARS_URLENCODER = SAFEPATHCHARS_URLENCODER + "/?";
+ public static final String SAFE_PLUS_RESERVED_CHARS_URLENCODER =
+ SAFEPATHCHARS_URLENCODER + "/?#[]";
/**
* A string of characters that do not need to be encoded when used in URI user info part, as
diff --git a/google-http-client/src/test/java/com/google/api/client/http/UriTemplateTest.java b/google-http-client/src/test/java/com/google/api/client/http/UriTemplateTest.java
index 1a38eeafa..14ebc61b6 100644
--- a/google-http-client/src/test/java/com/google/api/client/http/UriTemplateTest.java
+++ b/google-http-client/src/test/java/com/google/api/client/http/UriTemplateTest.java
@@ -322,4 +322,30 @@ public void testExpandSeveralTemplatesNoParametersUsed() {
SortedMap map = Maps.newTreeMap();
assertEquals("", UriTemplate.expand("{?id,uid}", map, false));
}
+
+ public void testExpandTemplates_reservedExpansion_mustNotEscapeReservedCharSet() {
+
+ String reservedSet = ":/?#[]@!$&'()*+,;=";
+
+ SortedMap requestMap = Maps.newTreeMap();
+ requestMap.put("var", reservedSet);
+
+ assertEquals(
+ "Reserved expansion must not escape chars from reserved set according to rfc6570#section-3.2.3",
+ reservedSet,
+ UriTemplate.expand("{+var}", requestMap, false));
+ }
+
+ public void testExpandTemplates_reservedExpansion_mustNotEscapeUnreservedCharSet() {
+
+ String unReservedSet = "-._~";
+
+ SortedMap requestMap = Maps.newTreeMap();
+ requestMap.put("var", unReservedSet);
+
+ assertEquals(
+ "Reserved expansion must not escape chars from unreserved set according to rfc6570#section-3.2.3",
+ unReservedSet,
+ UriTemplate.expand("{+var}", requestMap, false));
+ }
}
diff --git a/pom.xml b/pom.xml
index 648d95228..d02488ed9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
4.0.0
com.google.http-client
google-http-client-parent
- 1.43.1
+ 1.43.2
pom
Parent for the Google HTTP Client Library for Java
Google HTTP Client Library for Java
@@ -326,7 +326,7 @@
maven-surefire-plugin
- 3.0.0-M7
+ ${project.surefire.version}
-Xmx1024m
sponge_log
@@ -568,7 +568,7 @@
- google-api-java-client/google-api-client-assembly/android-properties (make the filenames match the version here)
- Internally, update the default features.json file
-->
- 1.43.1
+ 1.43.2
2.0.12
UTF-8
3.0.2
@@ -581,6 +581,7 @@
4.4.16
0.31.1
..
+ 3.0.0-M7
false
diff --git a/samples/dailymotion-simple-cmdline-sample/pom.xml b/samples/dailymotion-simple-cmdline-sample/pom.xml
index b2b80d0a8..700067495 100644
--- a/samples/dailymotion-simple-cmdline-sample/pom.xml
+++ b/samples/dailymotion-simple-cmdline-sample/pom.xml
@@ -4,7 +4,7 @@
com.google.http-client
google-http-client-parent
- 1.43.1
+ 1.43.2
../../pom.xml
dailymotion-simple-cmdline-sample
diff --git a/versions.txt b/versions.txt
index c8133569f..a6f6401b9 100644
--- a/versions.txt
+++ b/versions.txt
@@ -1,17 +1,17 @@
# Format:
# module:released-version:current-version
-google-http-client:1.43.1:1.43.1
-google-http-client-bom:1.43.1:1.43.1
-google-http-client-parent:1.43.1:1.43.1
-google-http-client-android:1.43.1:1.43.1
-google-http-client-android-test:1.43.1:1.43.1
-google-http-client-apache-v2:1.43.1:1.43.1
-google-http-client-appengine:1.43.1:1.43.1
-google-http-client-assembly:1.43.1:1.43.1
-google-http-client-findbugs:1.43.1:1.43.1
-google-http-client-gson:1.43.1:1.43.1
-google-http-client-jackson2:1.43.1:1.43.1
-google-http-client-protobuf:1.43.1:1.43.1
-google-http-client-test:1.43.1:1.43.1
-google-http-client-xml:1.43.1:1.43.1
+google-http-client:1.43.2:1.43.2
+google-http-client-bom:1.43.2:1.43.2
+google-http-client-parent:1.43.2:1.43.2
+google-http-client-android:1.43.2:1.43.2
+google-http-client-android-test:1.43.2:1.43.2
+google-http-client-apache-v2:1.43.2:1.43.2
+google-http-client-appengine:1.43.2:1.43.2
+google-http-client-assembly:1.43.2:1.43.2
+google-http-client-findbugs:1.43.2:1.43.2
+google-http-client-gson:1.43.2:1.43.2
+google-http-client-jackson2:1.43.2:1.43.2
+google-http-client-protobuf:1.43.2:1.43.2
+google-http-client-test:1.43.2:1.43.2
+google-http-client-xml:1.43.2:1.43.2