chiark / gitweb /
Merge playlist branch against trunk to date.
[disorder] / CHANGES.html
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
2 <html>
3 <head>
4 <title>DisOrder Change History</title>
5 <style type="text/css">
6 body {
7   color: black;
8   background-color: white;
9   font-family: times,serif;
10   font-weight: normal;
11   font-size: 12pt;
12   font-variant: normal
13 }
14
15 div.section {
16   margin-left:1em
17 }
18
19 h1 {
20   background-color: #e0ffe0;
21   font-family: helvetica,sans-serif;
22   padding: 0.2em
23 }
24
25 h2 {
26   background-color: #e0ffe0;
27   font-family: helvetica,sans-serif;
28   padding: 0.2em
29 }
30
31 h3 {
32   background-color: #f0f0f0;
33   font-family: helvetica,sans-serif;
34   padding: 0.2em
35 }
36
37 h4 {
38   font-family: helvetica,sans-serif
39 }
40
41 table.bugs {
42   width: 100%
43 }
44
45 table.bugs th {
46   text-align: left
47 }
48
49 span.command {
50   font-family: monospace
51 }
52 </style>
53 </head>
54
55 <body>
56 <h1>DisOrder Change History</h1>
57
58 <p>This file documents recent user-visible changes to <a
59  href="http://www.greenend.org.uk/rjk/disorder/">DisOrder</a>.</p>
60
61 <h2>Changes up to version 4.3</h2>
62
63   <div class=section>
64
65     <h3>Disobedience</h3>
66
67       <div class=section>
68
69         <p>A bug was fixed in the calculation of how much of the track had
70         played.  This would lead to the counter showing incorrect values in
71         various situations.</p>
72
73         <p>Disobedience's icons have been changed to larger, more colorful
74         ones.  The SVG source is included if you want to fiddle with them.</p>
75
76         <p>&ldquo;Select all&rdquo; is now no longer available in the choose
77         tab.  Instead there is a new &ldquo;Select children&rdquo; option which
78         selects the file children of a single subdirectory.</p>
79
80       </div>
81
82     <h3>Server</h3>
83
84       <div class=section>
85
86         <p>The selection bias for newly added tracks was reduced by half.  You
87         can put it back to the old very neophilic value with
88         &ldquo;<tt>new_bias 900000</tt>&rdquo; in the config file.</p>
89
90         <p>It is now possible to &lsquo;adopt&rsquo; randomly picked tracks.
91         Disobedience and the command-line client support this but the web
92         interface does not.</p>
93
94         <p>The default track name parsing was modified to handle filenames
95         generated by iTunes.</p>
96         
97       </div>
98
99     <h3>Miscellaneous</h3>
100
101       <div class=section>
102
103         <p><tt>disorderfm</tt> now preserves directory permissions.</p>
104
105         <p>DisOrder is now licensed under <a
106          href="http://www.gnu.org/licenses/gpl-3.0.html">GPL v3</a>.  The main
107         goal is to prohibit <a
108          href="http://en.wikipedia.org/wiki/Tivoization">Tivoization</a>.</p>
109
110         <p>The build system will now automatically cope with Fink's broken GTK+
111         packages.  There are a number of improvements to the Debian
112         packaging.</p>
113
114         <p>DisOrder now builds on 64-bit Linux systems.</p>
115
116         <p>There are various minor fixes.</p>
117
118       </div>
119
120   <h3>Bugs fixed</h3>
121   
122     <div class=section>
123
124       <table class=bugs>
125         <tr>
126           <th>ID</th>
127           <th>Description</th>
128         </tr>
129         
130         <tr>
131           <td><a href="http://code.google.com/p/disorder/issues/detail?id=24">#24</a></td>
132           <td>Fails to build on ubuntu 8.10</td>
133         </tr>
134         <tr>
135           <td><a href="http://code.google.com/p/disorder/issues/detail?id=26">#26</a></td>
136           <td>Disobedience shows wrong track elapsed time after a pause</td>
137         </tr>
138       </table>
139       
140     </div>
141   </div>
142
143 <h2>Changes up to version 4.2</h2>
144
145 <div class=section>
146
147   <h3>Disobedience</h3>
148   
149     <div class=section>
150
151       <p>The login window now has a 'remote' switch.  If this is turned off
152       then Disobedience will connect to a local server.  Formerly it would
153       always use TCP/IP.</p>
154
155       <p>The Delete and backspace keys will now remove tracks from the queue.
156       Escape will now dismiss the properties, users or login windows and return
157       now works in the login and properties windows.</p>
158       
159     </div>
160
161   <h3>Documentation</h3>
162   
163     <div class=section>
164
165       <p>Track and global preferences are now described in a new
166       <b>disorder_preferences</b>(5) man page.</p>
167       
168     </div>
169
170   <h3>Bugs fixed</h3>
171   
172     <div class=section>
173
174       <table class=bugs>
175         <tr>
176           <th>ID</th>
177           <th>Description</th>
178         </tr>
179         
180         <tr>
181           <td><a href="http://code.google.com/p/disorder/issues/detail?id=21">#21</a></td>
182           <td>CGI should use PATH_INFO more sensibly</td>
183         </tr>
184       </table>
185       
186     </div>
187 </div>
188
189
190 <h2>Changes up to version 4.1.1</h2>
191
192 <div class=section>
193
194   <p>Disobedience's &ldquo;Login&rdquo; window now works when you are logged
195   in.</p>
196   
197 </div>
198
199 <h2>Changes up to version 4.1</h2>
200
201 <div class=section>
202
203   <h3>Disobedience</h3>
204   
205     <div class=section>
206   
207       <p>Disobedience has been largely rewritten:</p>
208
209       <ul>
210         
211         <li>All the tabs now use native GTK+ list/tree widgets, resulting in
212         greater speed in some cases and more consistency with other GTK+
213         applications.</li>
214
215         <li>You can now use type-ahead find in the choose tab.  The initiation
216         of a search is delayed slightly to avoid lots of updates when you're
217         half way through entering search terms.</li>
218
219         <li>The choose tab now shows track lengths.</li>
220     
221         <li>Many buttons are now more reliably made insensitive when they can't
222         be used.</li>
223
224         <li>You can now play tracks off the recent tab.</li>
225         
226       </ul>
227       
228       <p>Disobedience attempts to cope with servers from older versions, up to
229       a point, but this is not well tested and it's best to keep the server
230       fully up to date.</p>
231
232     </div>
233      
234   <h3>Server</h3>
235   
236     <div class=section>
237
238       <p>When a track shares a directory with its alias, the real track name is
239       now returned instead of the alias (the opposite way round to the previous
240       behaviour).</p>
241       
242     </div>
243 </div>
244
245 <h2>Changes up to version 4.0.2</h2>
246
247 <div class=section>
248
249   <p>Corrected web browser linked from Disobedience.</p>
250   
251 </div>
252
253 <h2>Changes up to version 4.0.1</h2>
254
255 <div class=section>
256
257   <p>Libtool and Automake now install the CGI correctly.  As part of this,
258   <tt>cgidir</tt> has been renamed to <tt>cgiexecdir</tt>.  The configure
259   script will report an error if you try to use the old name.</p>
260   
261 </div>
262
263 <h2>Changes up to version 4.0</h2>
264
265 <div class=section>
266
267   <h3>Server</h3>
268
269 <div class=section>
270   
271   <p>The <tt>gap</tt> directive will no longer work.  It could be
272   restored if there is real demand.</p>
273   
274   <h4>Event Scheduling</h4>
275
276 <div class=section>
277
278   <p>It is now possible to schedule events to occur in the future.
279   Currently the supported actions are playing a specific track, and
280   changing a global preference (thus allowing e.g. random play to be
281   turned on or off).  See the <tt>schedule-*</tt>
282   commands described in disorder(1).</p>
283
284 </div>
285
286 <h4>Random Track Choice</h4>
287
288 <div class=section>
289
290   <p>This has been completely rewritten to support new features:</p>
291
292   <ul>
293
294     <li>tracks in the recently-played list or in the queue are no longer
295     eligible for random choice.</li>
296
297     <li>there is a new <tt>weight</tt> track preference allowing for
298     non-uniform track selection.  See disorder(1) for details.</li>
299
300     <li>there is a new configuration item <tt>replay_min</tt> defining
301     the minimum time before a played track can be picked at random.
302     The default is 8 hours (which matches the earlier behaviour).</li>
303
304     <li>recently added tracks are biased up; see <tt>new_bias</tt> and
305     <tt>new_bias_age</tt> in disorder_config(5).</li>
306
307   </ul>
308
309 </div>
310
311 <h4>Web Interface</h4>
312
313 <div class=section>
314
315   <p>This has been largely rewritten.  The most immediate benefits are:</p>
316
317   <ul>
318     
319     <li>the search page is integrated into the choose page, and
320     includes links to parent directories.</li>
321     
322     <li>if you try to do something you have insufficient rights for,
323     instead of getting an error page or nothing happening, you are
324     redirected to the login page.</li>
325
326   </ul>
327
328   <p>Customizers should find their lives easier: the syntax is less onerous, it
329   is possible to define macros to avoid repetition, and the documentation is
330   less monolithic (see disorder.cgi(8) as a starting point).</p>
331
332   <p>Mail is now sent via the system sendmail program, though it remains
333   possible to use TCP to connect to an SMTP server.  See <tt>sendmail</tt> and
334   <tt>smtp_server</tt> in disorder_config(5).</p>
335
336   <p>The web interface is now installed automatically.  If you don't want it,
337   use <tt>./configure --without-cgi</tt>.  If you want it in a non-default
338   location, or no location for it is detected, set <tt>cgidir</tt>
339   and <tt>httpdir</tt> on the <tt>./configure</tt> command line.</p>
340   
341 </div>
342
343 </div>
344
345 <h3>Disobedience</h3>
346
347 <div class=section>
348
349   <p>There is now a new user management window.  From here you can add and
350   remove users or modify their settings.</p>
351
352   <p>Relatedly, the server will only allow remote user management if you set
353   <tt>remote_userman</tt> to <tt>yes</tt>.</p>
354
355 </div>
356
357 <h3>Miscellaneous</h3>
358
359 <div class=section>
360
361   <p><tt>scripts/setup</tt> now honors command line options, and can
362   set up network play as well as the local default sound device.</p>
363
364 </div>
365
366 <h3>Bugs Fixed</h3>
367
368 <div class=section>
369
370   <table class=bugs>
371     <tr>
372       <th>ID</th>
373       <th>Description</th>
374     </tr>
375
376     <tr>
377       <td><a href="http://code.google.com/p/disorder/issues/detail?id=2">#2</a></td>
378       <td>Search results should link to directories</td>
379     </tr>
380
381     <tr>
382       <td><a href="http://code.google.com/p/disorder/issues/detail?id=6">#6</a></td>
383       <td>Schedule tracks for a particular time</td>
384     </tr>
385
386     <tr>
387       <td><a href="http://code.google.com/p/disorder/issues/detail?id=10">#10</a></td>
388       <td>Non-uniform track selection</td>
389     </tr>
390
391     <tr>
392       <td><a href="http://code.google.com/p/disorder/issues/detail?id=11">#11</a></td>
393       <td>Bias random selection to newly added tracks</td>
394     </tr>
395
396     <tr>
397       <td><a href="http://code.google.com/p/disorder/issues/detail?id=13">#13</a></td>
398       <td>Default encoding for debian setup scripts</td>
399     </tr>
400
401     <tr>
402       <td><a href="http://code.google.com/p/disorder/issues/detail?id=16">#16</a></td>
403       <td>Cookie expiry causes user to be silently logged out and not
404       subsequently redirected to login page</td>
405     </tr>
406     
407     <tr>
408       <td><a href="http://code.google.com/p/disorder/issues/detail?id=20">#20</a></td>
409       <td>Broken aliasing rules</td>
410     </tr>
411     
412   </table>
413
414 </div>
415
416 </div>
417
418 <h2>Changes up to version 3.0.2</h2>
419
420 <div class=section>
421
422   <p>Builds <tt>--without-server</tt> should work again.</p>
423
424   <p>The web interface is a bit more liberal in the cookie value
425   syntax it will accept.</p>
426
427   <p>Clients fail more gracefully if no password is available.</p>
428
429 </div>
430
431 <h2>Changes up to version 3.0.1</h2>
432
433 <div class=section>
434   
435   <p>Debian upgrades from 2.0.x should now work better.</p>
436   
437 </div>
438
439 <h2>Changes up to version 3.0</h2>
440
441 <div class=section>
442   
443   <p><b>Important</b>!  See <a
444   href="README.upgrades">README.upgrades</a> when upgrading.</p>
445   
446   <h3>Platforms And Installation</h3>
447   
448 <div class=section>
449   
450   <p>Mac OS X and FreeBSD are somewhat supported.  There is now a bash
451   script in <tt>scripts/setup</tt> which will automate the setup after
452   <tt>make install</tt>.</p>
453   
454 </div>
455
456 <h3>Server</h3>
457
458 <div class=section>
459   
460   <p>Users are now stored in the database rather than a configuration
461   file.</p>
462   
463   <p>The server now has a built-in list of stopwords and players, so
464   only additions to these need be mentioned in the configuration file.</p>
465   
466   <p>The default inter-track gap is now 0s.</p>
467   
468   <p>How sound is played is now controlled via the new <tt>api</tt>
469   configuration command.  This also controls how the volume is set,
470   which now works with ALSA as well as OSS.</p>
471   
472   <p>A bug in the MP3 decoder was fixed (also in 2.0.4).</p>
473   
474 </div>
475
476 <h3>Web Interface</h3>
477
478 <div class=section>
479   
480   <p>The web interface now uses cookies to remember user identity, and
481   allows online registration of new users.  Also it is no longer
482   necessary to manually specify the URL of the web interface (but you
483   can override it if you don't like the value it figures out).</p>
484   
485   <p>It is possible to allow users to register via the web interface.</p>
486   
487   <p>The web interface's browser support has been improved.  It has
488   been tested with Firefox 2, Safari 3, Konqueror 3, Internet Explorer
489   7 and Opera 9.</p>
490   
491 </div>
492
493 <h3>Disobedience</h3>
494
495 <div class=section>
496
497   <p>A bug which would cause a crash if you attempt to rearrange the
498   queue while no track was playing has been fixed.  There is a new
499   'deselect all tracks' option, mirroring 'select all tracks.</p>
500   
501 </div>
502
503 </div>
504
505 <!--
506 Local Variables:
507 fill-column:79
508 indent-tabs-mode:nil
509 End:
510 -->