title: Why does less change order of output?
body: <p>I am running a python script which produces certain output when I run it in verbose mode. When I pipe the output to the less utility, the output is in a different order. For reference, the script is, if not exactly, very nearly this:</p>
  
  <p><a href="http://svn.apache.org/repos/asf/subversion/trunk/tools/client-side/change-svn-wc-format.py" rel="nofollow">http://svn.apache.org/repos/asf/subversion/trunk/tools/client-side/change-svn-wc-format.py</a></p>
  
  <p>Specifically, I get the "Data for the following field(s)" message and when I run it without piping the output to less, this message appears last. When I pipe the output to less, the output mysteriously appears first.</p>
  
  <p>Can anybody explain this?</p>
  
  <p>I have determined that the error message goes to stderr while the verbose messages go to stdout. However, even when I do:</p>
  
  <pre><code>./svnfixversion ./ 1.5 --verbose 2&gt;&amp;1 | less
  </code></pre>
  
  <p>the output is different from when I just leave off the | less. If the stderr is getting redirected to stdout, shouldn't less preserve the order?</p>