anchor.diff:  
   class _ImageWrapperState extends State<ImageWrapper> {
     ImageStreamListener _imageStreamListener;
  -  ImageStream _stream;
  +  ImageStream _imageStream;
     ImageChunkEvent _imageChunkEvent;
     ImageInfo _imageInfo;
     bool _loading = true;
  
positive.code: 
    // retrieve image from the provider
    void _getImage() {
      _stream = widget.imageProvider.resolve(
        const ImageConfiguration(),
      );
  
      void handleImageChunk(ImageChunkEvent event) {
        assert(widget.loadingBuilder != null);
        setState(() => _imageChunkEvent = event);
  
negative.code:       onChunk: handleImageChunk,
        onError: handleError,
      );
  
      return _imageStreamListener;
    }
  
    void _updateSourceStream(ImageStream newStream) {
      if (_imageStream != null) {
        if (_imageStream?.key == newStream.key) {
          return;
        }
        _imageStream.removeListener(_imageStreamListener);
      }
      _imageStream = newStream;
      _imageStream.addListener(_getOrCreateListener());
    }
  
    void _stopImageStream() {
      if (_imageStream != null) {
        _imageStream.removeListener(_imageStreamListener);
      }
    }
  
    @override
    void didUpdateWidget(ImageWrapper oldWidget) {
      super.didUpdateWidget(oldWidget);
      if (widget.imageProvider != oldWidget.imageProvider) {
        _getImage();
      }
    }
  
    @override
    void didChangeDependencies() {
      _getImage();
      super.didChangeDependencies();
    }
  
    @override
  