       @value @renderable promise, @detached -> @async ->
         $ul = $ '<ul class="find-results"/>'
         @add_rendered $ul
-        promise.done ({query, result}) =>
+        promise.then ({query, result}) =>
           query_parts = query.split '.'
           for node in result
             $li = $ '<li class="cm-string"/>'

              time = moment(timestamp * 1000)
              $table.append "<tr><th>#{time.format('MMMM Do YYYY, h:mm:ss a')}</th><td class='cm-number number'>#{value?.toFixed(3) or '(none)'}</td></tr>"
            $result.append $table
        promise.fail @keeping_context (error) =>
          @error error
        promise

    fn 'graph', 'Graphs Graphite data', (args...) ->

      @async ->
        $result = @div()
        promise = graphite.get_data params
        promise.then (response) =>
          for series in response
            $header = $ '<h3>'
            $header.text series.target
