title: Which of the run loop queues does each the new component lifecycle hooks run in?
body: <p>From Ember blog, these are the new component life cycle hooks.</p>
  <blockquote>
  <p>On first render (in order):</p>
  <ul>
  <li><code>didInitAttrs</code> runs after a component was created and passed attrs are guaranteed to be present. In Ember 1.13, the attributes will be available as this.get('attrName').</li>
  <li><code>didReceiveAttrs</code> runs after didInitAttrs, and it also runs on subsequent re-renders, which is useful for logic that is the same on all renders. It does not run when the component has been re-rendered from the inside.</li>
  <li><code>willRender</code> runs before the template is rendered. It runs when the template is updated for any reason (both initial and re-render, and regardless of whether the change was caused by an attrs change or re-render).</li>
  <li><code>didInsertElement</code> runs after the template has rendered and the element is in the DOM.</li>
  <li><code>didRender</code> runs after didInsertElement (it also runs on subsequent re-renders).</li>
  </ul>
  <p>On re-render (in order):</p>
  <ul>
  <li><code>didUpdateAttrs</code> runs when the attributes of a component have changed (but not when the component is re-rendered, via component.rerender, component.set, or changes in models or services used by the template).</li>
  <li><code>didReceiveAttrs</code>, same as above.</li>
  <li><code>willUpdate</code> runs when the component is re-rendering for any reason, including component.rerender(), component.set() or changes in models or services used by the template.</li>
  <li><code>willRender</code>, same as above</li>
  <li><code>didUpdate</code> runs after the template has re-rendered and the DOM is now up to date.</li>
  <li><code>didRender</code>, same as above.</li>
  </ul>
  </blockquote>
  <p>These are the run loop queues:</p>
  <blockquote>
  <ul>
  <li>The <code>sync</code> queue contains binding synchronization jobs</li>
  <li>The <code>actions</code> queue is the general work queue and will typically contain scheduled tasks e.g. promises</li>
  <li>The <code>routerTransitions</code> queue contains transition jobs in the router</li>
  <li>The <code>render</code> queue contains jobs meant for rendering, these will typically update the DOM</li>
  <li>The <code>afterRender</code> contains jobs meant to be run after all previously scheduled render tasks are complete. This is often good for 3rd-party DOM manipulation libraries, that should only be run after an entire tree of DOM has been updated</li>
  <li>The <code>destroy</code> queue contains jobs to finish the teardown of objects other jobs have scheduled to destroy</li>
  </ul>
  </blockquote>