diff --git a/src/library_desugar/desugar_jdk_libs.json b/src/library_desugar/desugar_jdk_libs.json
index 7d2924f..daaec32 100644
--- a/src/library_desugar/desugar_jdk_libs.json
+++ b/src/library_desugar/desugar_jdk_libs.json
@@ -1,6 +1,6 @@
 {
   "configuration_format_version": 3,
-  "version": "0.11.0",
+  "version": "0.11.2",
   "required_compilation_api_level": 26,
   "synthesized_library_classes_package_prefix": "j$.",
   "library_flags": [
@@ -68,13 +68,13 @@
         "java.util.concurrent.ConcurrentMap": "j$.util.concurrent.ConcurrentMap"
       },
       "custom_conversion": {
-        "java.util.Optional": "j$.util.OptionalConversions",
-        "java.util.OptionalDouble": "j$.util.OptionalConversions",
-        "java.util.OptionalInt": "j$.util.OptionalConversions",
-        "java.util.OptionalLong": "j$.util.OptionalConversions",
-        "java.util.LongSummaryStatistics": "j$.util.LongSummaryStatisticsConversions",
-        "java.util.IntSummaryStatistics": "j$.util.IntSummaryStatisticsConversions",
-        "java.util.DoubleSummaryStatistics": "j$.util.DoubleSummaryStatisticsConversions"
+        "java.util.Optional": "java.util.OptionalConversions",
+        "java.util.OptionalDouble": "java.util.OptionalConversions",
+        "java.util.OptionalInt": "java.util.OptionalConversions",
+        "java.util.OptionalLong": "java.util.OptionalConversions",
+        "java.util.LongSummaryStatistics": "java.util.LongSummaryStatisticsConversions",
+        "java.util.IntSummaryStatistics": "java.util.IntSummaryStatisticsConversions",
+        "java.util.DoubleSummaryStatistics": "java.util.DoubleSummaryStatisticsConversions"
       }
     }
   ],
@@ -93,12 +93,12 @@
         "java.util.GregorianCalendar#toZonedDateTime": "java.util.DesugarGregorianCalendar"
       },
       "custom_conversion": {
-        "java.time.ZonedDateTime": "j$.time.TimeConversions",
-        "java.time.LocalDate": "j$.time.TimeConversions",
-        "java.time.Duration": "j$.time.TimeConversions",
-        "java.time.ZoneId": "j$.time.TimeConversions",
-        "java.time.MonthDay": "j$.time.TimeConversions",
-        "java.time.Instant": "j$.time.TimeConversions"
+        "java.time.ZonedDateTime": "java.time.TimeConversions",
+        "java.time.LocalDate": "java.time.TimeConversions",
+        "java.time.Duration": "java.time.TimeConversions",
+        "java.time.ZoneId": "java.time.TimeConversions",
+        "java.time.MonthDay": "java.time.TimeConversions",
+        "java.time.Instant": "java.time.TimeConversions"
       }
     },
     {
@@ -152,13 +152,13 @@
         "java.util.concurrent.ConcurrentMap": "j$.util.concurrent.ConcurrentMap"
       },
       "custom_conversion": {
-        "java.util.Optional": "j$.util.OptionalConversions",
-        "java.util.OptionalDouble": "j$.util.OptionalConversions",
-        "java.util.OptionalInt": "j$.util.OptionalConversions",
-        "java.util.OptionalLong": "j$.util.OptionalConversions",
-        "java.util.LongSummaryStatistics": "j$.util.LongSummaryStatisticsConversions",
-        "java.util.IntSummaryStatistics": "j$.util.IntSummaryStatisticsConversions",
-        "java.util.DoubleSummaryStatistics": "j$.util.DoubleSummaryStatisticsConversions"
+        "java.util.Optional": "java.util.OptionalConversions",
+        "java.util.OptionalDouble": "java.util.OptionalConversions",
+        "java.util.OptionalInt": "java.util.OptionalConversions",
+        "java.util.OptionalLong": "java.util.OptionalConversions",
+        "java.util.LongSummaryStatistics": "java.util.LongSummaryStatisticsConversions",
+        "java.util.IntSummaryStatistics": "java.util.IntSummaryStatisticsConversions",
+        "java.util.DoubleSummaryStatistics": "java.util.DoubleSummaryStatisticsConversions"
       }
     }
   ],
diff --git a/src/main/java/com/android/tools/r8/Version.java b/src/main/java/com/android/tools/r8/Version.java
index 28c54ff..aae71ee 100644
--- a/src/main/java/com/android/tools/r8/Version.java
+++ b/src/main/java/com/android/tools/r8/Version.java
@@ -11,7 +11,7 @@
 
   // This field is accessed from release scripts using simple pattern matching.
   // Therefore, changing this field could break our release scripts.
-  public static final String LABEL = "2.0.88";
+  public static final String LABEL = "2.0.89";
 
   private Version() {
   }
diff --git a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/DesugaredLibraryContentTest.java b/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/DesugaredLibraryContentTest.java
index 159aa8d..1b46018 100644
--- a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/DesugaredLibraryContentTest.java
+++ b/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/DesugaredLibraryContentTest.java
@@ -66,6 +66,7 @@
         L8Command.builder(diagnosticsHandler)
             .addLibraryFiles(ToolHelper.getAndroidJar(AndroidApiLevel.P))
             .addProgramFiles(ToolHelper.getDesugarJDKLibs())
+            .addProgramFiles(ToolHelper.DESUGAR_LIB_CONVERSIONS)
             .addLibraryFiles(ToolHelper.getCoreLambdaStubs())
             .addDesugaredLibraryConfiguration(
                 StringResource.fromFile(ToolHelper.DESUGAR_LIB_JSON_FOR_TESTING))
@@ -74,6 +75,12 @@
     ToolHelper.runL8(l8Builder.build(), options -> {});
     CodeInspector codeInspector = new CodeInspector(desugaredLib);
     assertCorrect(codeInspector);
+    assertNoWarningsErrors(diagnosticsHandler);
+  }
+
+  private void assertNoWarningsErrors(TestDiagnosticMessagesImpl diagnosticsHandler) {
+    assertTrue(diagnosticsHandler.getWarnings().isEmpty());
+    assertTrue(diagnosticsHandler.getErrors().isEmpty());
   }
 
   private void assertCorrect(CodeInspector inspector) {
diff --git a/tools/create_maven_release.py b/tools/create_maven_release.py
index cc36693..42dcc63 100755
--- a/tools/create_maven_release.py
+++ b/tools/create_maven_release.py
@@ -96,11 +96,6 @@
       <distribution>repo</distribution>
     </license>
   </licenses>
-  <dependencies>
-    <groupId>com.android.tools</groupId>
-    <artifactId>desugar_jdk_libs</artifactId>
-    <version>1.0.1</version>
-  </dependencies>
   <developers>
     <developer>
       <name>The Android Open Source Project</name>
