<body>
<h1>DisOrder Change History</h1>
-<p>This file documents recent user-visible changes to DisOrder.</p>
+<p>This file documents recent user-visible changes to <a
+ href="http://www.greenend.org.uk/rjk/disorder/">DisOrder</a>.</p>
+
+<h2>Changes up to version 4.4</h2>
+
+ <div class=section>
+
+ <h3>Server</h3>
+
+ <div class=section>
+
+ <p>The <tt>device</tt> configuration option now works under OS X.
+ Devices may
+ be specified either by UID or name. Fixes <a
+ href="http://code.google.com/p/disorder/issues/detail?id=27">Issue
+ 27</a>.</p>
+
+ <p>Gapless play should be more reliable, and playback latency over RTP
+ should be a bit lower. Note though that all the sound output code has
+ been reorganized and in some cases completely rewritten, so it's possible
+ that bugs may have been (re-)introduced.</p>
+
+ <p>The <tt>command</tt> backend now (optionally) sends silence instead
+ of suspending writes when a pause occurs or no track is playing.</p>
+
+ <p>If <a href="http://www.mega-nerd.com/SRC/">libsamplerate</a> is
+ available at build time then that will be used instead of invoking
+ <a href="http://sox.sourceforge.net/">SoX</a>. SoX support will be
+ removed in a future version.</p>
+
+ </div>
+
+ <h3>Disobedience</h3>
+
+ <div class=section>
+
+ <p>Multiple tracks can now be dragged in the queue in a single operation.
+ Furthermore, it is now possible to drag tracks from the
+ “Recent”, “Added” and “Choose” tabs
+ to the queue.</p>
+
+ </div>
+
+ <h3>Web Interface</h3>
+
+ <div class=section>
+
+ <p>Confirmation URLs should be cleaner (and in particular not end
+ with punctuation). (Please see <a
+ href="README.upgrades">README.upgrades</a> for more about this.)</p>
+
+ </div>
+
+ <h3>RTP Player</h3>
+
+ <div class=section>
+
+ <p>There is a new <tt>--command</tt> option which allows the RTP player
+ to send audio data to a user-chosen command instead of an audio API. See
+ the man page for details.</p>
+
+ <p>The <tt>--device</tt> option to <tt>disorder-playrtp</tt> now works
+ under OS X (as above).</p>
+
+ </div>
+
+ <h3>General</h3>
+
+ <div class=section>
+
+ <p>IPv6 should now work. Network address specifications
+ (<tt>listen</tt>, <tt>connect</tt> etc) can now be prefixed with
+ <tt>-4</tt> or <tt>-6</tt> to force use
+ of IPv4 or IPv6, though normally this should not be needed.</p>
+
+ <p>Unicode support has been upgraded to <a
+ href="http://www.unicode.org/versions/Unicode5.1.0/">Unicode
+ 5.1.0</a>.</p>
+
+ <p>Various elements of the source code have been
+ rationalized.</p>
+
+ </div>
+
+ <h3>Bugs fixed</h3>
+
+ <div class=section>
+
+ <table class=bugs>
+ <tr>
+ <th>ID</th>
+ <th>Description</th>
+ </tr>
+
+ <tr>
+ <td><a href="http://code.google.com/p/disorder/issues/detail?id=27">#27</a></td>
+ <td>Mac DisOrder uses wrong sound device</td>
+ </tr>
+
+ <tr>
+ <td><a href="http://code.google.com/p/disorder/issues/detail?id=33">#33</a></d>
+ <td>(Some) plugins need -lm.</td>
+ </tr>
+
+ <tr>
+ <td><a href="http://code.google.com/p/disorder/issues/detail?id=39">#39</a></d>
+ <td>Double bind() non-multicast AF_INET</td>
+ </tr>
+
+ <tr>
+ <td><a href="http://code.google.com/p/disorder/issues/detail?id=40">#40</a></d>
+ <td>Missing stub function</td>
+ </tr>
+
+ <tr>
+ <td><a href="http://code.google.com/p/disorder/issues/detail?id=41">#41</a></d>
+ <td>Missing includes for timeval</td>
+ </tr>
+
+ <tr>
+ <td><a href="http://code.google.com/p/disorder/issues/detail?id=42">#42</a></d>
+ <td>syntax error in empeg_host section</td>
+ </tr>
+
+ <tr>
+ <td><a href="http://code.google.com/p/disorder/issues/detail?id=43">#43</a></d>
+ <td>decoder segfault with FLAC 1.2.1</td>
+ </tr>
+
+ <tr>
+ <td><a href="http://code.google.com/p/disorder/issues/detail?id=44">#44</a></d>
+ <td>gcc 4.3.2-1ubuntu12 SUYB patch</td>
+ </tr>
+
+ <tr>
+ <td><a href="http://code.google.com/p/disorder/issues/detail?id=45">#45</a></d>
+ <td>disobedience doesn't configure its back end</td>
+ </tr>
+
+ <tr>
+ <td><a href="http://code.google.com/p/disorder/issues/detail?id=48">#48</a></d>
+ <td>build-time dependency on <tt>oggdec</tt> removed</td>
+ </tr>
+
+
+ </table>
+
+ </div>
+ </div>
+
+<h2>Changes up to version 4.3</h2>
+
+ <div class=section>
+
+ <h3>Disobedience</h3>
+
+ <div class=section>
+
+ <p>A bug was fixed in the calculation of how much of the track had
+ played. This would lead to the counter showing incorrect values in
+ various situations.</p>
+
+ <p>Disobedience's icons have been changed to larger, more colorful
+ ones. The SVG source is included if you want to fiddle with them.</p>
+
+ <p>“Select all” is now no longer available in the choose
+ tab. Instead there is a new “Select children” option which
+ selects the file children of a single subdirectory.</p>
+
+ </div>
+
+ <h3>Server</h3>
+
+ <div class=section>
+
+ <p>The selection bias for newly added tracks was reduced by half. You
+ can put it back to the old very neophilic value with
+ “<tt>new_bias 900000</tt>” in the config file.</p>
+
+ <p>It is now possible to ‘adopt’ randomly picked tracks.
+ Disobedience and the command-line client support this but the web
+ interface does not.</p>
+
+ <p>The default track name parsing was modified to handle filenames
+ generated by iTunes.</p>
+
+ </div>
+
+ <h3>Miscellaneous</h3>
+
+ <div class=section>
+
+ <p><tt>disorderfm</tt> now preserves directory permissions.</p>
+
+ <p>DisOrder is now licensed under <a
+ href="http://www.gnu.org/licenses/gpl-3.0.html">GPL v3</a>. The main
+ goal is to prohibit <a
+ href="http://en.wikipedia.org/wiki/Tivoization">Tivoization</a>.</p>
+
+ <p>The build system will now automatically cope with Fink's broken GTK+
+ packages. There are a number of improvements to the Debian
+ packaging.</p>
+
+ <p>DisOrder now builds on 64-bit Linux systems.</p>
+
+ <p>There are various minor fixes.</p>
+
+ </div>
+
+ <h3>Bugs fixed</h3>
+
+ <div class=section>
+
+ <table class=bugs>
+ <tr>
+ <th>ID</th>
+ <th>Description</th>
+ </tr>
+
+ <tr>
+ <td><a href="http://code.google.com/p/disorder/issues/detail?id=24">#24</a></td>
+ <td>Fails to build on ubuntu 8.10</td>
+ </tr>
+ <tr>
+ <td><a href="http://code.google.com/p/disorder/issues/detail?id=26">#26</a></td>
+ <td>Disobedience shows wrong track elapsed time after a pause</td>
+ </tr>
+ </table>
+
+ </div>
+ </div>
+
+<h2>Changes up to version 4.2</h2>
+
+<div class=section>
+
+ <h3>Disobedience</h3>
+
+ <div class=section>
+
+ <p>The login window now has a 'remote' switch. If this is turned off
+ then Disobedience will connect to a local server. Formerly it would
+ always use TCP/IP.</p>
+
+ <p>The Delete and backspace keys will now remove tracks from the queue.
+ Escape will now dismiss the properties, users or login windows and return
+ now works in the login and properties windows.</p>
+
+ </div>
+
+ <h3>Documentation</h3>
+
+ <div class=section>
+
+ <p>Track and global preferences are now described in a new
+ <b>disorder_preferences</b>(5) man page.</p>
+
+ </div>
+
+ <h3>Bugs fixed</h3>
+
+ <div class=section>
+
+ <table class=bugs>
+ <tr>
+ <th>ID</th>
+ <th>Description</th>
+ </tr>
+
+ <tr>
+ <td><a href="http://code.google.com/p/disorder/issues/detail?id=21">#21</a></td>
+ <td>CGI should use PATH_INFO more sensibly</td>
+ </tr>
+ </table>
+
+ </div>
+</div>
+
<h2>Changes up to version 4.1.1</h2>