     @state = @linter.state
     @subscriptions = new CompositeDisposable
     @messages = []
-    @markers = new Map()
+    @markers = new WeakMap()
     @panel = new BottomPanel(@state.scope)
     @bottomContainer = new BottomContainer().prepare(@linter.state)
     @bottomBar = null

    return unless activeEditor
    added.forEach (message) =>
      return unless message.currentFile
      @markers.set(message.key, marker = activeEditor.markBufferRange message.range, {invalidate: 'inside'})
      activeEditor.decorateMarker(
        marker, type: 'line-number', class: "linter-highlight #{message.class}"
      )


  removeMarkers: (messages = @messages) ->
    messages.forEach((message) =>
      return unless @markers.has(message)
      marker = @markers.get(message)
      marker.destroy()
      @markers.delete(message)
    )

  removeBubble: ->
