anchor.diff:    });
   }
   
  +/**
  + * Fetch a particular `<package>.json` file and return `Package`
  + */
   Future<Package> fetchPackage(String packageJsonUri) {
     return http.get(packageJsonUri).then((response) {
       var data = JSON.decode(response.body);
  
positive.code:   }
  }
  
  Future<PubPackages> fetchPackages() {
    return http.get(PACKAGES_DATA_URI).then((response) {
      var data = JSON.decode(response.body);
      PubPackages pubPackages = new PubPackages.fromJson(data);
  
negative.code:   });
  }
  
  /**
   * Builds the cache for a package.
   */
  int buildDocumentationCacheSync(Package package, {Map additionalEnvironment:
      null}) {
    // TODO(adam): add version constraint parameter.
    Map environment = {};
    environment['PUB_CACHE'] = BUILD_DOCUMENTATION_CACHE;
    if (additionalEnvironment != null) {
  