mbostock/d3 — pull request #682 by mbostock (2012-06-24 16:40:16+00:00)
Title: Fix bug with unexpected transition inheritance.

Prior to this change, transitions used transition.each internally, which had the
unexpected side-effect of enabling transitions on d3.transition(selection) when
called from within a tween function. This would only occur on the first
invocation of the tween function when the elapsed time between the transition
creation and the transition start was greater than the transition delay;
however, this is fairly common as the default delay for transitions is zero.

This bug caused unexpected behavior if you tried to redraw an axis within a
custom tween function: in some cases, the synchronous redraw of the axis would
compete with a concurrent transition, causing unexpected behavior. By avoiding
the use of transition.each internally, the user now controls when automatic
transitions are enabled.