anchor.diff:    final _files = new FileCache();
   
     final _fileVersions = <String, int>{};
  +
  +  final _log = new Logger('AnalysisServerAdapter');
   
     AnalysisServerAdapter(this._server, this._args) {
       _listeners();
  
positive.code: 
  import 'package:analysis_server_lib/analysis_server_lib.dart'
      hide Position, Location;
  
  import 'apply_change.dart';
  import 'args.dart';
  
negative.code:   Future<Null> textDocumentDidChange(VersionedTextDocumentIdentifier documentId,
        List<TextDocumentContentChangeEvent> changes) async {
      var path = _filePath(documentId.uri);
      if (_fileVersions[path] > documentId.version) {
        _log.warning('Ignoring file change for $path at version '
            '${documentId.version} since last seen in ${_fileVersions[path]}');
        return;
      }
      _fileVersions[path] = documentId.version;
      if (changes.length == 1 && changes.first.range == null) {
        _files[path] = findLineLengths(changes.single.text);
  