diff --git a/docs/options.md b/docs/options.md
index 700fef6..9604dd5 100644
--- a/docs/options.md
+++ b/docs/options.md
@@ -193,4 +193,7 @@
    * Website: https://bitbucket.org/ooicgsn/cgsn-mooring
    * Extensions: 1058
    
+1. Container Storage Interface
+   * Website: https://github.com/container-storage-interface/spec
+   * Extensions: 1059-1069
 
diff --git a/examples/WORKSPACE b/examples/WORKSPACE
index 5884354..f6c0ef0 100644
--- a/examples/WORKSPACE
+++ b/examples/WORKSPACE
@@ -39,5 +39,5 @@
     urls = ["https://github.com/bazelbuild/bazel-skylib/archive/2169ae1c374aab4a09aa90e65efe1a3aad4e279b.tar.gz"],
 )
 
-load("@bazel_skylib//:lib.bzl", "versions")
+load("@bazel_skylib//lib:versions.bzl", "versions")
 versions.check(minimum_bazel_version = "0.5.4")
diff --git a/java/bom/pom.xml b/java/bom/pom.xml
new file mode 100644
index 0000000..16c9553
--- /dev/null
+++ b/java/bom/pom.xml
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
+                             http://maven.apache.org/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>com.google.protobuf</groupId>
+  <artifactId>protobuf-bom</artifactId>
+  <version>3.6.1</version>
+  <packaging>pom</packaging>
+
+  <name>Protocol Buffers [BOM]</name>
+  <description>A compatible set of open source libraries for working with protocol buffers.</description>
+  <url>https://developers.google.com/protocol-buffers/</url>
+
+  <organization>
+    <name>Google LLC</name>
+    <url>https://cloud.google.com</url>
+  </organization>
+
+  <licenses>
+    <license>
+      <name>The Apache License, Version 2.0</name>
+      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+    </license>
+  </licenses>
+
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+  </properties>
+
+  <distributionManagement>
+    <snapshotRepository>
+      <id>sonatype-nexus-staging</id>
+      <url>https://oss.sonatype.org/content/repositories/snapshots</url>
+    </snapshotRepository>
+    <repository>
+      <id>sonatype-nexus-staging</id>
+      <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
+    </repository>
+  </distributionManagement>
+
+  <dependencyManagement>
+    <dependencies>
+      <dependency>
+        <groupId>com.google.protobuf</groupId>
+        <artifactId>protobuf-java</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>com.google.protobuf</groupId>
+        <artifactId>protobuf-java-util</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+    </dependencies>
+  </dependencyManagement>
+
+  <profiles>
+    <profile>
+      <!-- If you see the error message
+           gpg: signing failed: Inappropriate ioctl for device
+           when signing run the command
+           export GPG_TTY=$(tty)
+           and try again. -->
+      <id>release</id>
+      <build>
+        <plugins>
+          <plugin>
+            <artifactId>maven-gpg-plugin</artifactId>
+            <version>1.6</version>
+            <executions>
+              <execution>
+                <id>sign-artifacts</id>
+                <phase>verify</phase>
+                <goals>
+                  <goal>sign</goal>
+                </goals>
+               </execution>
+            </executions>
+          </plugin>
+          <plugin>
+            <groupId>org.sonatype.plugins</groupId>
+	    <artifactId>nexus-staging-maven-plugin</artifactId>
+            <version>1.6.6</version>
+            <extensions>true</extensions>
+            <configuration>
+              <nexusUrl>https://oss.sonatype.org/</nexusUrl>
+              <serverId>sonatype-nexus-staging</serverId>
+              <autoReleaseAfterClose>false</autoReleaseAfterClose>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+  </profiles>
+</project>
diff --git a/java/pom.xml b/java/pom.xml
index e4305c6..c46e52b 100644
--- a/java/pom.xml
+++ b/java/pom.xml
@@ -57,6 +57,13 @@
   <dependencyManagement>
     <dependencies>
       <dependency>
+        <groupId>com.google.protobuf</groupId>
+        <artifactId>protobuf-bom</artifactId>
+        <version>${project.version}</version>
+        <type>pom</type>
+        <scope>import</scope>
+      </dependency>
+      <dependency>
         <groupId>junit</groupId>
         <artifactId>junit</artifactId>
         <version>4.12</version>
@@ -206,6 +213,7 @@
   </profiles>
 
   <modules>
+    <module>bom</module>
     <module>core</module>
     <module>util</module>
   </modules>
diff --git a/java/util/pom.xml b/java/util/pom.xml
index 8e544c7..bcf4f19 100644
--- a/java/util/pom.xml
+++ b/java/util/pom.xml
@@ -19,7 +19,6 @@
     <dependency>
       <groupId>${project.groupId}</groupId>
       <artifactId>protobuf-java</artifactId>
-      <version>${project.version}</version>
     </dependency>
     <dependency>
       <groupId>com.google.guava</groupId>
diff --git a/protobuf.bzl b/protobuf.bzl
index ae391aa..b8ec0ee 100644
--- a/protobuf.bzl
+++ b/protobuf.bzl
@@ -1,4 +1,4 @@
-load("@bazel_skylib//:lib.bzl", "versions")
+load("@bazel_skylib//lib:versions.bzl", "versions")
 
 def _GetPath(ctx, path):
   if ctx.label.workspace_root:
diff --git a/src/google/protobuf/util/internal/json_stream_parser.h b/src/google/protobuf/util/internal/json_stream_parser.h
index 3526ec5..6dcf7ad 100644
--- a/src/google/protobuf/util/internal/json_stream_parser.h
+++ b/src/google/protobuf/util/internal/json_stream_parser.h
@@ -95,7 +95,7 @@
  private:
   friend class JsonStreamParserTest;
   // Return the current recursion depth.
-  const int recursion_depth() { return recursion_depth_; }
+  int recursion_depth() { return recursion_depth_; }
 
   enum TokenType {
     BEGIN_STRING,     // " or '
