anchor.diff:      /// Read in the pubspec file and parse it as yaml.
       var pubspec = new File('pubspec.yaml');
       if (!pubspec.existsSync()) {
  -      throw 'Unable to generate package graph, no `pubspec.yaml` found.';
  +      throw 'Unable to generate package graph, no `pubspec.yaml` found. '
  +          'This program must be ran from the root directory of your package.';
       }
       var yaml = loadYaml(pubspec.readAsStringSync());
   
       /// Read in the `.packages` file to get the locations of all packages.
       var packagesFile = new File('.packages');
       if (!packagesFile.existsSync()) {
  -      throw 'Unable to generate package graph, no `.packages` found.';
  +      throw 'Unable to generate package graph, no `.packages` found. '
  +          'This program must be ran from the root directory of your package.';
       }
       var packageLocations = <String, Uri>{};
       packagesFile.readAsLinesSync().skip(1).forEach((line) {
  
positive.code:         {bool isRoot: false}) {
        var name = yaml['name'];
        assert(!nodes.containsKey(name));
        var node = new PackageNode._(name, yaml['version'], type);
        nodes[name] = node;
  
        _depsFromYaml(yaml, withOverrides: isRoot).forEach((name, source) {
  
negative.code:   final List<PackageNode> _dependencies = [];
    Iterable<PackageNode> get dependencies => _dependencies.toList();
  
    /// The location of the current version of this package.
    final Uri location;
  
    PackageNode._(this.name, this.version, this.dependencyType, this.location);
  
    String toString() => '''
    $name:
      version: $version
      type: $dependencyType
      location: $location
      dependencies: [${dependencies.map((d) => d.name).join(', ')}]''';
  }
  
  