diff --git a/pkgs/package_config/lib/packages_file.dart b/pkgs/package_config/lib/packages_file.dart
index 0f1a6e6..85de194 100644
--- a/pkgs/package_config/lib/packages_file.dart
+++ b/pkgs/package_config/lib/packages_file.dart
@@ -159,12 +159,12 @@
     }
   }
 
-  baseUri = _normalizePath(baseUri);
+  baseUri = baseUri.normalizePath();
   List<String> base = baseUri.pathSegments.toList();
   if (base.isNotEmpty) {
     base = new List<String>.from(base)..removeLast();
   }
-  uri = _normalizePath(uri);
+  uri = uri.normalizePath();
   List<String> target = uri.pathSegments.toList();
   if (target.isNotEmpty && target.last.isEmpty) target.removeLast();
   int index = 0;
@@ -186,6 +186,3 @@
     return uri;
   }
 }
-
-// TODO: inline to uri.normalizePath() when we move to 1.11
-Uri _normalizePath(Uri uri) => new Uri().resolveUri(uri);
diff --git a/pkgs/package_config/lib/src/packages_impl.dart b/pkgs/package_config/lib/src/packages_impl.dart
index df89e46..e89d94d 100644
--- a/pkgs/package_config/lib/src/packages_impl.dart
+++ b/pkgs/package_config/lib/src/packages_impl.dart
@@ -23,7 +23,7 @@
         packageUri, "packageUri", 'No package named "$packageName"');
   }
 
-  Iterable<String> get packages => new Iterable<String>.generate(0);
+  Iterable<String> get packages => new Iterable<String>.empty();
 
   Map<String, Uri> asMap() => const <String, Uri>{};
 }
@@ -34,7 +34,7 @@
 /// member
 abstract class PackagesBase implements Packages {
   Uri resolve(Uri packageUri, {Uri notFound(Uri packageUri)}) {
-    packageUri = _normalizePath(packageUri);
+    packageUri = packageUri.normalizePath();
     String packageName = checkValidPackageUri(packageUri);
     Uri packageBase = getBase(packageName);
     if (packageBase == null) {
@@ -51,9 +51,6 @@
   /// Returns `null` if no package exists with that name, and that can be
   /// determined.
   Uri getBase(String packageName);
-
-  // TODO: inline to uri.normalizePath() when we move to 1.11
-  static Uri _normalizePath(Uri uri) => new Uri().resolveUri(uri);
 }
 
 /// A [Packages] implementation based on an existing map.
