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