anchor.diff:  
     void set onError(void callback(Exception e)) {
       _onErrorCallback = callback;
  +  }
  +
  +  void set _onNoPendingWrites(void callback()) {
  +    if (!_error) {
  +      _socket.outputStream.onNoPendingWrites = callback;
  +    }
     }
   
     int hashCode() => _socket.hashCode();
  
positive.code:     _httpConnection._phase = _HttpConnectionBase.PHASE_IDLE;
      _state = DONE;
      // Stop tracking no pending write events.
      _httpConnection.outputStream.onNoPendingWrites = null;
      // Ensure that any trailing data is written.
      _writeDone();
      // If the connection is closing then close the output stream to
      // fully close the socket.
      if (_httpConnection._closing) {
        _httpConnection.outputStream.close();
      }
    }
  
    void _streamSetNoPendingWriteHandler(callback()) {
      if (_state != DONE) {
        _httpConnection.outputStream.onNoPendingWrites = callback;
      }
    }
  
  
negative.code:         // Write chunk size if transfer encoding is chunked.
          _writeHexString(data.length);
          _writeCRLF();
          _httpConnection._write(data, copyBuffer);
          allWritten = _writeCRLF();
        } else {
          allWritten = _httpConnection._write(data, copyBuffer);
        }
      }
      return allWritten;
  