Commit | Line | Data |
---|---|---|
2ea2b361 | 1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"> |
b0a578cb RK |
2 | <html> |
3 | <head> | |
4 | <title>DisOrder Change History</title> | |
2ea2b361 | 5 | <link rel=StyleSheet type="text/css" href="docs.css"> |
b0a578cb RK |
6 | </head> |
7 | ||
8 | <body> | |
9 | <h1>DisOrder Change History</h1> | |
10 | ||
d8b95785 RK |
11 | <p>This file documents recent user-visible changes to <a |
12 | href="http://www.greenend.org.uk/rjk/disorder/">DisOrder</a>.</p> | |
13 | ||
2ea2b361 RK |
14 | <p><b>IMPORTANT</b>: you should read <a |
15 | href="README.upgrades.html">README.upgrades</a> before upgrading.</p> | |
16 | ||
d9bc9ccd RK |
17 | <h2>Changes up to version 5.2</h2> |
18 | ||
19 | <div class=section> | |
20 | ||
2f575936 | 21 | <h3>PulseAudio Support</h3> |
d9bc9ccd RK |
22 | |
23 | <div class=section> | |
24 | ||
25 | <p>PulseAudio is now supported, if the support library is available at | |
26 | build time. It is the default for client applications, reflecting its | |
27 | widespread use in desktop environments.</p> | |
28 | ||
2f575936 | 29 | <p>Volume setting is not currently supported when PulseAudio is in |
d9bc9ccd RK |
30 | use.</p> |
31 | ||
32 | </div> | |
33 | ||
2f575936 | 34 | <h3>Changes To RTP Support</h3> |
d9bc9ccd RK |
35 | |
36 | <div class=section> | |
37 | ||
38 | <p>Disobedience now has a menu to select the network playback API.</p> | |
39 | ||
2f575936 RK |
40 | <p><code>disorder-playrtp</code> now selects playback API using |
41 | a <code>--api</code> option. The old API-selection options remain | |
42 | available but are deprecated and will be removed in the future.</p> | |
d9bc9ccd | 43 | |
2f575936 RK |
44 | <p>RTP playback can now transmit to multiple unicast destinations, added |
45 | and removed on demand. This is controlled by the new <code>rtp_mode</code> | |
46 | option. The motivating use case is a bridged network with high- and | |
47 | low-capacity components. However it is may also be useful in a routed | |
48 | network without multicast routing support.</p> | |
d9bc9ccd RK |
49 | |
50 | </div> | |
51 | ||
c764e832 MW |
52 | <h3>GStreamer support</h3> |
53 | ||
54 | <div class=section> | |
55 | ||
56 | <p>If it's detected at <tt>configure</tt> time, a new decoder | |
dccba972 MW |
57 | program <tt>disorder-gstdecode</tt> and a new tracklength |
58 | plugin <tt>tracklength-gstreamer</tt> are built. These use the GStreamer | |
59 | library for filetype detection, audio decoding and sample-rate conversion, | |
60 | among other features. Using these, DisOrder can play any audio file | |
61 | supported by GStreamer. | |
c764e832 MW |
62 | |
63 | <p>The decoder has a number of options for controlling the sample-rate and | |
64 | audio format conversion, allowing various tradeoffs between quality and | |
65 | processor time. (High-quality conversion can consume more processor time | |
66 | than decoding, so this is potentially useful on very a small device such as | |
67 | a Raspberry Pi.</p> | |
68 | ||
69 | <p>The GStreamer decoder can also use ReplayGain information stored in | |
70 | audio files' metadata to adjust playback volume, so that tracks with very | |
71 | wide dynamic range don't sound really quiet in comparison. This | |
72 | information can be added using tools such as <tt>mp3gain</tt>, | |
73 | <tt>vorbisgain</tt>, or <tt>metaflac</tt>. This is turned on by default if | |
74 | you use the decoder; you can choose between per-album or per-track | |
75 | settings, or turn it off entirely, using command-line options.</p> | |
76 | ||
77 | <p>The GStreamer decoder is not used by default, but it can be enabled | |
78 | easily enough by dropping something like the following into the server | |
79 | configuration file: | |
80 | <pre> | |
81 | player | |
82 | player *.flac execraw /usr/sbin/disorder-gstdecode -ralbum -f-8.0 | |
83 | player *.mp2 execraw /usr/sbin/disorder-gstdecode -ralbum -f-8.0 | |
84 | player *.mp3 execraw /usr/sbin/disorder-gstdecode -ralbum -f-8.0 | |
85 | player *.ogg execraw /usr/sbin/disorder-gstdecode -ralbum -f-8.0 | |
86 | player *.wav execraw /usr/sbin/disorder-gstdecode -ralbum -f-8.0 | |
dccba972 MW |
87 | |
88 | tracklength | |
89 | tracklength *.flac tracklength-gstreamer | |
90 | tracklength *.mp2 tracklength-gstreamer | |
91 | tracklength *.mp3 tracklength-gstreamer | |
92 | tracklength *.ogg tracklength-gstreamer | |
93 | tracklength *.wav tracklength-gstreamer | |
c764e832 MW |
94 | </pre> |
95 | </p> | |
96 | ||
0e5e68c3 MW |
97 | <h3>Bug fixes</h3> |
98 | ||
99 | <div class=section> | |
100 | ||
101 | <ul> | |
102 | <li>The CGI program now checks user passwords even when it runs as the | |
103 | main jukebox user(!).</li> | |
104 | ||
fdd04cdb | 105 | <li>Disobedience doesn't crash when search terms change under its |
0e5e68c3 MW |
106 | feet.</li> |
107 | ||
108 | <li>The CGI program doesn't crash on some POST requests. | |
109 | </ul> | |
110 | ||
111 | </div> | |
112 | ||
d9bc9ccd RK |
113 | </div> |
114 | ||
d8d79f78 | 115 | <h2>Changes up to version 5.1.1</h2> |
d875f8dd RK |
116 | |
117 | <div class=section> | |
118 | ||
119 | <h3>Bug fixes</h3> | |
120 | ||
121 | <div class=section> | |
122 | ||
123 | <ul> | |
124 | <li><code>player</code> and <code>tracklength</code> can now be used | |
125 | without arguments to clear the lists, as per the documentation.</li> | |
126 | ||
127 | <li>Tracks without a player are forgotten upon rescan.</li> | |
128 | ||
129 | <li>The speaker process avoids splitting frames.</li> | |
130 | </ul> | |
131 | ||
132 | <p>Thanks to Mark Wooding and Joe Birr-Pixton.</p> | |
133 | ||
134 | </div> | |
135 | ||
136 | </div> | |
137 | ||
5bb003c8 RK |
138 | <h2>Changes up to version 5.1</h2> |
139 | ||
140 | <div class=section> | |
141 | ||
142 | <h3>Removable Device Support</h3> | |
143 | ||
144 | <div class=section> | |
145 | ||
146 | <p>The server will now automatically initiate a rescan when a filesystem is | |
8488cf7d RK |
147 | mounted or unmounted. (Use the <tt>mount_rescan</tt> option if you want to |
148 | suppress this behavior.)</p> | |
5bb003c8 RK |
149 | |
150 | <p>The server takes care not to hold audio files open unnecessarily, so | |
151 | that devices can be unmounted even if tracks from them are currently being | |
152 | buffered.</p> | |
153 | ||
154 | </div> | |
155 | ||
5568dfa8 RK |
156 | <h3>Disobedience</h3> |
157 | ||
158 | <div class=section> | |
159 | ||
160 | <p>You can now edit the <tt>required-tags</tt> and <tt>prohibited-tags</tt> | |
161 | global preferences in Disobedience | |
162 | (<a href="http://code.google.com/p/disorder/issues/detail?id=29">issue | |
163 | #29</a>).</p> | |
164 | ||
164f2e93 RK |
165 | <p>The “Manage users” option is now more reliably greyed out if |
166 | it will not work. This depends on a server change too, so it may still be | |
167 | wrong if a new Disobedience is used against an old server.</p> | |
51827ce3 RK |
168 | |
169 | <p>A <tt>.desktop</tt> file is now shipped, making Disobedience visible as | |
170 | an application in freedesktop.org-compliant systems.</p> | |
164f2e93 | 171 | |
5568dfa8 RK |
172 | </div> |
173 | ||
7823bd97 RK |
174 | <h3>Backups</h3> |
175 | ||
176 | <div class=section> | |
177 | ||
178 | <p>The Debian package now includes a cronjob that backs up the database | |
179 | daily. See <tt>/etc/cron.d/disorder</tt>. You can put settings | |
180 | in <tt>/etc/default/disorder</tt> to turn this off or to control how long | |
181 | the backups are kept for.</p> | |
182 | ||
183 | <p>The <tt>disorder-dump -r</tt> option was broken.</p> | |
184 | ||
5568dfa8 | 185 | <p><tt>disorder-dump</tt> now gets permissions right automatically (<a |
7823bd97 RK |
186 | href="http://code.google.com/p/disorder/issues/detail?id=56">issue |
187 | #56</a>).</p> | |
188 | ||
5568dfa8 RK |
189 | </div> |
190 | ||
b1dd58fc RK |
191 | <h3>General</h3> |
192 | ||
193 | <div class=section> | |
194 | ||
195 | <p>Unicode support has been upgraded to <a | |
196 | href="http://www.unicode.org/versions/Unicode6.0.0/">Unicode | |
197 | 6.0.0</a>.</p> | |
4019fe4d RK |
198 | |
199 | <p>Client programs no longer depend on libdb.</p> | |
7823bd97 | 200 | |
657fdb79 RK |
201 | <p>The following have been removed:</p> |
202 | ||
203 | <ul> | |
204 | ||
205 | <li>The <tt>allow</tt>, <tt>gap</tt>, <tt>lock</tt>, <tt>prefsync</tt>, | |
206 | <tt>restrict</tt>, <tt>trust</tt> configuration commands. If they still | |
207 | appear in your configuration file then the server will not start.</li> | |
208 | ||
209 | <li>The <tt>columns</tt> web interface option. It will generate an | |
210 | message in your error log but otherwise be ignored.</li> | |
211 | ||
212 | <li>The <tt>--wait-for-device</tt> player option. If it still appears in | |
213 | any player commands, they will not work.</li> | |
214 | ||
215 | <li>Support for automatically importing pre-3.0 users.</li> | |
216 | ||
217 | </ul> | |
218 | ||
7823bd97 | 219 | <p>Various minor bug fixes.</p> |
b1dd58fc RK |
220 | |
221 | </div> | |
222 | ||
f3ae6953 RK |
223 | </div> |
224 | ||
68a78d16 RK |
225 | <h2>Changes up to version 5.0.3</h2> |
226 | ||
227 | <div class=section> | |
228 | ||
229 | <p><b>Security</b>: Local connections can no longer create and delete users | |
230 | unless they are properly authorized.</p> | |
231 | ||
232 | </div> | |
233 | ||
06bedf43 RK |
234 | <h2>Changes up to version 5.0.2</h2> |
235 | ||
236 | <div class=section> | |
237 | ||
238 | <p>The login form now indicates that a cookie will be set.</p> | |
239 | ||
240 | </div> | |
241 | ||
9b68b94f RK |
242 | <h2>Changes up to version 5.0.1</h2> |
243 | ||
244 | <div class=section> | |
245 | ||
246 | <h3>Disobedience</h3> | |
247 | ||
248 | <div class=section> | |
249 | ||
250 | <p>The sense of the Control → Playing menu item was fixed.</p> | |
251 | ||
252 | </div> | |
253 | ||
5bb003c8 RK |
254 | </div> |
255 | ||
64360021 | 256 | <h2>Changes up to version 5.0</h2> |
f5fd9a6b RK |
257 | |
258 | <div class=section> | |
259 | ||
f207f710 RK |
260 | <h3>Server</h3> |
261 | ||
f5fd9a6b RK |
262 | <div class=section> |
263 | ||
fe33cfc0 | 264 | <p>The <tt>device</tt> configuration option now works under OS X. |
7cd4dd21 | 265 | Devices may |
f207f710 | 266 | be specified either by UID or name. Fixes <a |
f5fd9a6b RK |
267 | href="http://code.google.com/p/disorder/issues/detail?id=27">Issue |
268 | 27</a>.</p> | |
f207f710 | 269 | |
f71fc3ab | 270 | <p>Gapless play should be more reliable, and playback latency over RTP |
6762ac8a | 271 | should be a bit lower. Note though that all the sound output code has |
f71fc3ab | 272 | been reorganized and in some cases completely rewritten, so it's possible |
900fa0b8 RK |
273 | that bugs may have been (re-)introduced. Decoding of scratches is also |
274 | initiated ahead of time, giving more reliable playback.</p> | |
7cd4dd21 RK |
275 | |
276 | <p>The <tt>command</tt> backend now (optionally) sends silence instead | |
277 | of suspending writes when a pause occurs or no track is playing.</p> | |
c3feb35b RK |
278 | |
279 | <p>If <a href="http://www.mega-nerd.com/SRC/">libsamplerate</a> is | |
280 | available at build time then that will be used instead of invoking | |
317dc3e8 RK |
281 | <a href="http://sox.sourceforge.net/">SoX</a>. SoX support will be |
282 | removed in a future version.</p> | |
c3feb35b | 283 | |
6a213ecb RK |
284 | <p>The libao plugin has been removed, because the plugin API is not |
285 | usable in libao 1.0.0.</p> | |
86541f5a | 286 | |
79ab6bd2 RK |
287 | <p>Playlists are now supported. These allow a collection of tracks to be |
288 | prepared offline and played as a unit.</p> | |
289 | ||
7cd4dd21 RK |
290 | </div> |
291 | ||
6a7eb118 RK |
292 | <h3>Disobedience</h3> |
293 | ||
294 | <div class=section> | |
295 | ||
69c456f3 RK |
296 | <p>Multiple tracks can now be dragged in the queue in a single operation. |
297 | Furthermore, it is now possible to drag tracks from the | |
298 | “Recent”, “Added” and “Choose” tabs | |
299 | to the queue.</p> | |
6a7eb118 | 300 | |
c2f51940 RK |
301 | <p>Disobedience now supports playlist editing and has a compact mode, |
302 | available from the <b>Control</b> menu.</p> | |
79ab6bd2 | 303 | |
67b1beae RK |
304 | <p>Disobedience has a <a href="disobedience/manual/index.html">new |
305 | manual</a>.</p> | |
306 | ||
6a7eb118 RK |
307 | </div> |
308 | ||
7cd4dd21 RK |
309 | <h3>Web Interface</h3> |
310 | ||
311 | <div class=section> | |
53710d44 | 312 | |
7cd4dd21 RK |
313 | <p>Confirmation URLs should be cleaner (and in particular not end |
314 | with punctuation). (Please see <a | |
2ea2b361 | 315 | href="README.upgrades.html">README.upgrades</a> for more about this.)</p> |
533272be | 316 | |
f207f710 RK |
317 | </div> |
318 | ||
319 | <h3>RTP Player</h3> | |
320 | ||
321 | <div class=section> | |
322 | ||
323 | <p>There is a new <tt>--command</tt> option which allows the RTP player | |
324 | to send audio data to a user-chosen command instead of an audio API. See | |
325 | the man page for details.</p> | |
326 | ||
327 | <p>The <tt>--device</tt> option to <tt>disorder-playrtp</tt> now works | |
328 | under OS X (as above).</p> | |
f5fd9a6b RK |
329 | |
330 | </div> | |
7cd4dd21 RK |
331 | |
332 | <h3>General</h3> | |
f5fd9a6b | 333 | |
7cd4dd21 RK |
334 | <div class=section> |
335 | ||
336 | <p>IPv6 should now work. Network address specifications | |
337 | (<tt>listen</tt>, <tt>connect</tt> etc) can now be prefixed with | |
338 | <tt>-4</tt> or <tt>-6</tt> to force use | |
339 | of IPv4 or IPv6, though normally this should not be needed.</p> | |
340 | ||
2cb9bc5f RK |
341 | <p>Unicode support has been upgraded to <a |
342 | href="http://www.unicode.org/versions/Unicode5.1.0/">Unicode | |
343 | 5.1.0</a>.</p> | |
344 | ||
7cd4dd21 RK |
345 | <p>Various elements of the source code have been |
346 | rationalized.</p> | |
347 | ||
348 | </div> | |
349 | ||
f5fd9a6b RK |
350 | <h3>Bugs fixed</h3> |
351 | ||
352 | <div class=section> | |
353 | ||
354 | <table class=bugs> | |
355 | <tr> | |
356 | <th>ID</th> | |
357 | <th>Description</th> | |
358 | </tr> | |
417ef7de RK |
359 | |
360 | <tr> | |
361 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=22">#22</a></td> | |
362 | <td>Background decoders interact badly with server reload</td> | |
363 | </tr> | |
364 | ||
f5fd9a6b RK |
365 | <tr> |
366 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=27">#27</a></td> | |
367 | <td>Mac DisOrder uses wrong sound device</td> | |
368 | </tr> | |
369 | ||
548c9cba | 370 | <tr> |
2ea2b361 | 371 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=30">#30</a></td> |
548c9cba RK |
372 | <td>mini disobedience interface</td> |
373 | </tr> | |
374 | ||
bbaed9ec | 375 | <tr> |
2ea2b361 | 376 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=32">#32</a></td> |
bbaed9ec RK |
377 | <td>Excessively verbose log chatter on shutdown</td> |
378 | </tr> | |
379 | ||
7cd4dd21 | 380 | <tr> |
2ea2b361 | 381 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=33">#33</a></td> |
7cd4dd21 RK |
382 | <td>(Some) plugins need -lm.</td> |
383 | </tr> | |
6762ac8a RK |
384 | |
385 | <tr> | |
2ea2b361 | 386 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=39">#39</a></td> |
6762ac8a RK |
387 | <td>Double bind() non-multicast AF_INET</td> |
388 | </tr> | |
389 | ||
390 | <tr> | |
2ea2b361 | 391 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=40">#40</a></td> |
6762ac8a RK |
392 | <td>Missing stub function</td> |
393 | </tr> | |
394 | ||
395 | <tr> | |
2ea2b361 | 396 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=41">#41</a></td> |
6762ac8a RK |
397 | <td>Missing includes for timeval</td> |
398 | </tr> | |
399 | ||
400 | <tr> | |
2ea2b361 | 401 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=42">#42</a></td> |
6762ac8a RK |
402 | <td>syntax error in empeg_host section</td> |
403 | </tr> | |
404 | ||
93379b3d | 405 | <tr> |
2ea2b361 | 406 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=43">#43</a></td> |
93379b3d RK |
407 | <td>decoder segfault with FLAC 1.2.1</td> |
408 | </tr> | |
409 | ||
6762ac8a | 410 | <tr> |
2ea2b361 | 411 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=44">#44</a></td> |
6762ac8a RK |
412 | <td>gcc 4.3.2-1ubuntu12 SUYB patch</td> |
413 | </tr> | |
414 | ||
415 | <tr> | |
2ea2b361 | 416 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=45">#45</a></td> |
6762ac8a RK |
417 | <td>disobedience doesn't configure its back end</td> |
418 | </tr> | |
fa667301 | 419 | |
d53ef367 | 420 | <tr> |
2ea2b361 | 421 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=46">#46</a></td> |
d53ef367 RK |
422 | <td>Sort search results in web interface</td> |
423 | </tr> | |
424 | ||
fa667301 | 425 | <tr> |
2ea2b361 | 426 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=48">#48</a></td> |
fa667301 RK |
427 | <td>build-time dependency on <tt>oggdec</tt> removed</td> |
428 | </tr> | |
429 | ||
e03df0a5 | 430 | <tr> |
2ea2b361 | 431 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=49">#49</a></td> |
e03df0a5 RK |
432 | <td>Disobedience's 'When' column gets out of date</td> |
433 | </tr> | |
434 | ||
de38ab9b RK |
435 | <tr> |
436 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=51">#51</a></td> | |
437 | <td>Improved speaker process robustness</td> | |
438 | </tr> | |
439 | ||
900fa0b8 RK |
440 | <tr> |
441 | <td>(none)</td> | |
442 | <td>“found track in no collection” messages for scratches | |
443 | are now suppressed</td> | |
444 | </tr> | |
445 | ||
37e94d5c RK |
446 | <tr> |
447 | <td>(none)</td> | |
448 | <td>Disobedience would sometimes fail to notice when a track | |
449 | started, leading to its display getting out of date.</td> | |
450 | </tr> | |
451 | ||
f5fd9a6b | 452 | </table> |
f5fd9a6b RK |
453 | </div> |
454 | </div> | |
455 | ||
a0e78d96 | 456 | <h2>Changes up to version 4.3</h2> |
d8b95785 RK |
457 | |
458 | <div class=section> | |
459 | ||
460 | <h3>Disobedience</h3> | |
461 | ||
462 | <div class=section> | |
463 | ||
464 | <p>A bug was fixed in the calculation of how much of the track had | |
e02f9807 RK |
465 | played. This would lead to the counter showing incorrect values in |
466 | various situations.</p> | |
d8b95785 RK |
467 | |
468 | <p>Disobedience's icons have been changed to larger, more colorful | |
469 | ones. The SVG source is included if you want to fiddle with them.</p> | |
470 | ||
a0e78d96 RK |
471 | <p>“Select all” is now no longer available in the choose |
472 | tab. Instead there is a new “Select children” option which | |
473 | selects the file children of a single subdirectory.</p> | |
474 | ||
d8b95785 RK |
475 | </div> |
476 | ||
6151ae7e RK |
477 | <h3>Server</h3> |
478 | ||
479 | <div class=section> | |
480 | ||
481 | <p>The selection bias for newly added tracks was reduced by half. You | |
482 | can put it back to the old very neophilic value with | |
483 | “<tt>new_bias 900000</tt>” in the config file.</p> | |
484 | ||
ff45af7c RK |
485 | <p>It is now possible to ‘adopt’ randomly picked tracks. |
486 | Disobedience and the command-line client support this but the web | |
487 | interface does not.</p> | |
488 | ||
e02f9807 RK |
489 | <p>The default track name parsing was modified to handle filenames |
490 | generated by iTunes.</p> | |
491 | ||
6151ae7e RK |
492 | </div> |
493 | ||
10a6c925 | 494 | <h3>Miscellaneous</h3> |
d8b95785 RK |
495 | |
496 | <div class=section> | |
497 | ||
10a6c925 RK |
498 | <p><tt>disorderfm</tt> now preserves directory permissions.</p> |
499 | ||
e7eb3a27 RK |
500 | <p>DisOrder is now licensed under <a |
501 | href="http://www.gnu.org/licenses/gpl-3.0.html">GPL v3</a>. The main | |
502 | goal is to prohibit <a | |
503 | href="http://en.wikipedia.org/wiki/Tivoization">Tivoization</a>.</p> | |
504 | ||
d8b95785 | 505 | <p>The build system will now automatically cope with Fink's broken GTK+ |
e02f9807 RK |
506 | packages. There are a number of improvements to the Debian |
507 | packaging.</p> | |
d8b95785 | 508 | |
74cfbeaa RK |
509 | <p>DisOrder now builds on 64-bit Linux systems.</p> |
510 | ||
e02f9807 | 511 | <p>There are various minor fixes.</p> |
d8b95785 RK |
512 | |
513 | </div> | |
514 | ||
e02f9807 RK |
515 | <h3>Bugs fixed</h3> |
516 | ||
517 | <div class=section> | |
518 | ||
519 | <table class=bugs> | |
520 | <tr> | |
521 | <th>ID</th> | |
522 | <th>Description</th> | |
523 | </tr> | |
524 | ||
525 | <tr> | |
526 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=24">#24</a></td> | |
527 | <td>Fails to build on ubuntu 8.10</td> | |
528 | </tr> | |
529 | <tr> | |
530 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=26">#26</a></td> | |
531 | <td>Disobedience shows wrong track elapsed time after a pause</td> | |
532 | </tr> | |
533 | </table> | |
534 | ||
535 | </div> | |
d8b95785 | 536 | </div> |
b0a578cb | 537 | |
eb2a1fe9 RK |
538 | <h2>Changes up to version 4.2</h2> |
539 | ||
540 | <div class=section> | |
541 | ||
542 | <h3>Disobedience</h3> | |
543 | ||
544 | <div class=section> | |
545 | ||
546 | <p>The login window now has a 'remote' switch. If this is turned off | |
547 | then Disobedience will connect to a local server. Formerly it would | |
548 | always use TCP/IP.</p> | |
549 | ||
550 | <p>The Delete and backspace keys will now remove tracks from the queue. | |
551 | Escape will now dismiss the properties, users or login windows and return | |
552 | now works in the login and properties windows.</p> | |
553 | ||
554 | </div> | |
555 | ||
556 | <h3>Documentation</h3> | |
557 | ||
558 | <div class=section> | |
559 | ||
560 | <p>Track and global preferences are now described in a new | |
561 | <b>disorder_preferences</b>(5) man page.</p> | |
562 | ||
563 | </div> | |
cc5b0a8e RK |
564 | |
565 | <h3>Bugs fixed</h3> | |
566 | ||
567 | <div class=section> | |
568 | ||
569 | <table class=bugs> | |
570 | <tr> | |
571 | <th>ID</th> | |
572 | <th>Description</th> | |
573 | </tr> | |
574 | ||
575 | <tr> | |
576 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=21">#21</a></td> | |
577 | <td>CGI should use PATH_INFO more sensibly</td> | |
578 | </tr> | |
579 | </table> | |
580 | ||
581 | </div> | |
eb2a1fe9 RK |
582 | </div> |
583 | ||
584 | ||
68210888 RK |
585 | <h2>Changes up to version 4.1.1</h2> |
586 | ||
587 | <div class=section> | |
588 | ||
589 | <p>Disobedience's “Login” window now works when you are logged | |
590 | in.</p> | |
591 | ||
592 | </div> | |
593 | ||
452ad6ba RK |
594 | <h2>Changes up to version 4.1</h2> |
595 | ||
596 | <div class=section> | |
597 | ||
598 | <h3>Disobedience</h3> | |
599 | ||
600 | <div class=section> | |
601 | ||
602 | <p>Disobedience has been largely rewritten:</p> | |
603 | ||
604 | <ul> | |
605 | ||
606 | <li>All the tabs now use native GTK+ list/tree widgets, resulting in | |
607 | greater speed in some cases and more consistency with other GTK+ | |
608 | applications.</li> | |
609 | ||
610 | <li>You can now use type-ahead find in the choose tab. The initiation | |
611 | of a search is delayed slightly to avoid lots of updates when you're | |
612 | half way through entering search terms.</li> | |
613 | ||
614 | <li>The choose tab now shows track lengths.</li> | |
615 | ||
616 | <li>Many buttons are now more reliably made insensitive when they can't | |
617 | be used.</li> | |
30f2f8c9 RK |
618 | |
619 | <li>You can now play tracks off the recent tab.</li> | |
620 | ||
452ad6ba RK |
621 | </ul> |
622 | ||
623 | <p>Disobedience attempts to cope with servers from older versions, up to | |
624 | a point, but this is not well tested and it's best to keep the server | |
625 | fully up to date.</p> | |
626 | ||
627 | </div> | |
628 | ||
629 | <h3>Server</h3> | |
630 | ||
631 | <div class=section> | |
632 | ||
633 | <p>When a track shares a directory with its alias, the real track name is | |
634 | now returned instead of the alias (the opposite way round to the previous | |
635 | behaviour).</p> | |
636 | ||
637 | </div> | |
638 | </div> | |
639 | ||
32918782 RK |
640 | <h2>Changes up to version 4.0.2</h2> |
641 | ||
642 | <div class=section> | |
643 | ||
644 | <p>Corrected web browser linked from Disobedience.</p> | |
645 | ||
646 | </div> | |
647 | ||
f03d4184 RK |
648 | <h2>Changes up to version 4.0.1</h2> |
649 | ||
650 | <div class=section> | |
651 | ||
652 | <p>Libtool and Automake now install the CGI correctly. As part of this, | |
653 | <tt>cgidir</tt> has been renamed to <tt>cgiexecdir</tt>. The configure | |
654 | script will report an error if you try to use the old name.</p> | |
655 | ||
656 | </div> | |
657 | ||
0ba75c7f | 658 | <h2>Changes up to version 4.0</h2> |
b0a578cb RK |
659 | |
660 | <div class=section> | |
661 | ||
662 | <h3>Server</h3> | |
663 | ||
664 | <div class=section> | |
665 | ||
666 | <p>The <tt>gap</tt> directive will no longer work. It could be | |
667 | restored if there is real demand.</p> | |
668 | ||
669 | <h4>Event Scheduling</h4> | |
670 | ||
671 | <div class=section> | |
672 | ||
673 | <p>It is now possible to schedule events to occur in the future. | |
674 | Currently the supported actions are playing a specific track, and | |
675 | changing a global preference (thus allowing e.g. random play to be | |
676 | turned on or off). See the <tt>schedule-*</tt> | |
677 | commands described in disorder(1).</p> | |
678 | ||
679 | </div> | |
680 | ||
681 | <h4>Random Track Choice</h4> | |
682 | ||
683 | <div class=section> | |
684 | ||
685 | <p>This has been completely rewritten to support new features:</p> | |
686 | ||
687 | <ul> | |
688 | ||
689 | <li>tracks in the recently-played list or in the queue are no longer | |
690 | eligible for random choice.</li> | |
691 | ||
692 | <li>there is a new <tt>weight</tt> track preference allowing for | |
693 | non-uniform track selection. See disorder(1) for details.</li> | |
694 | ||
695 | <li>there is a new configuration item <tt>replay_min</tt> defining | |
696 | the minimum time before a played track can be picked at random. | |
697 | The default is 8 hours (which matches the earlier behaviour).</li> | |
698 | ||
699 | <li>recently added tracks are biased up; see <tt>new_bias</tt> and | |
700 | <tt>new_bias_age</tt> in disorder_config(5).</li> | |
701 | ||
702 | </ul> | |
703 | ||
704 | </div> | |
705 | ||
706 | <h4>Web Interface</h4> | |
707 | ||
708 | <div class=section> | |
709 | ||
710 | <p>This has been largely rewritten. The most immediate benefits are:</p> | |
711 | ||
712 | <ul> | |
713 | ||
714 | <li>the search page is integrated into the choose page, and | |
715 | includes links to parent directories.</li> | |
716 | ||
717 | <li>if you try to do something you have insufficient rights for, | |
718 | instead of getting an error page or nothing happening, you are | |
719 | redirected to the login page.</li> | |
720 | ||
721 | </ul> | |
722 | ||
723 | <p>Customizers should find their lives easier: the syntax is less onerous, it | |
724 | is possible to define macros to avoid repetition, and the documentation is | |
725 | less monolithic (see disorder.cgi(8) as a starting point).</p> | |
726 | ||
2eee4b0c RK |
727 | <p>Mail is now sent via the system sendmail program, though it remains |
728 | possible to use TCP to connect to an SMTP server. See <tt>sendmail</tt> and | |
729 | <tt>smtp_server</tt> in disorder_config(5).</p> | |
4cbafe13 | 730 | |
64ac73bb RK |
731 | <p>The web interface is now installed automatically. If you don't want it, |
732 | use <tt>./configure --without-cgi</tt>. If you want it in a non-default | |
733 | location, or no location for it is detected, set <tt>cgidir</tt> | |
734 | and <tt>httpdir</tt> on the <tt>./configure</tt> command line.</p> | |
2eee4b0c | 735 | |
b0a578cb RK |
736 | </div> |
737 | ||
738 | </div> | |
739 | ||
740 | <h3>Disobedience</h3> | |
741 | ||
742 | <div class=section> | |
743 | ||
744 | <p>There is now a new user management window. From here you can add and | |
745 | remove users or modify their settings.</p> | |
746 | ||
747 | <p>Relatedly, the server will only allow remote user management if you set | |
748 | <tt>remote_userman</tt> to <tt>yes</tt>.</p> | |
749 | ||
750 | </div> | |
751 | ||
752 | <h3>Miscellaneous</h3> | |
753 | ||
754 | <div class=section> | |
755 | ||
756 | <p><tt>scripts/setup</tt> now honors command line options, and can | |
757 | set up network play as well as the local default sound device.</p> | |
758 | ||
759 | </div> | |
760 | ||
761 | <h3>Bugs Fixed</h3> | |
762 | ||
763 | <div class=section> | |
764 | ||
765 | <table class=bugs> | |
766 | <tr> | |
767 | <th>ID</th> | |
768 | <th>Description</th> | |
769 | </tr> | |
770 | ||
771 | <tr> | |
772 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=2">#2</a></td> | |
773 | <td>Search results should link to directories</td> | |
774 | </tr> | |
775 | ||
776 | <tr> | |
777 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=6">#6</a></td> | |
778 | <td>Schedule tracks for a particular time</td> | |
779 | </tr> | |
780 | ||
781 | <tr> | |
782 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=10">#10</a></td> | |
783 | <td>Non-uniform track selection</td> | |
784 | </tr> | |
785 | ||
786 | <tr> | |
787 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=11">#11</a></td> | |
788 | <td>Bias random selection to newly added tracks</td> | |
789 | </tr> | |
790 | ||
791 | <tr> | |
792 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=13">#13</a></td> | |
793 | <td>Default encoding for debian setup scripts</td> | |
794 | </tr> | |
795 | ||
796 | <tr> | |
797 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=16">#16</a></td> | |
798 | <td>Cookie expiry causes user to be silently logged out and not | |
799 | subsequently redirected to login page</td> | |
800 | </tr> | |
801 | ||
802 | <tr> | |
803 | <td><a href="http://code.google.com/p/disorder/issues/detail?id=20">#20</a></td> | |
804 | <td>Broken aliasing rules</td> | |
805 | </tr> | |
806 | ||
807 | </table> | |
808 | ||
809 | </div> | |
810 | ||
811 | </div> | |
812 | ||
813 | <h2>Changes up to version 3.0.2</h2> | |
814 | ||
815 | <div class=section> | |
816 | ||
817 | <p>Builds <tt>--without-server</tt> should work again.</p> | |
818 | ||
819 | <p>The web interface is a bit more liberal in the cookie value | |
820 | syntax it will accept.</p> | |
821 | ||
822 | <p>Clients fail more gracefully if no password is available.</p> | |
823 | ||
824 | </div> | |
825 | ||
826 | <h2>Changes up to version 3.0.1</h2> | |
827 | ||
828 | <div class=section> | |
829 | ||
830 | <p>Debian upgrades from 2.0.x should now work better.</p> | |
831 | ||
832 | </div> | |
833 | ||
834 | <h2>Changes up to version 3.0</h2> | |
835 | ||
836 | <div class=section> | |
837 | ||
838 | <p><b>Important</b>! See <a | |
2ea2b361 | 839 | href="README.upgrades.html">README.upgrades</a> when upgrading.</p> |
b0a578cb RK |
840 | |
841 | <h3>Platforms And Installation</h3> | |
842 | ||
843 | <div class=section> | |
844 | ||
845 | <p>Mac OS X and FreeBSD are somewhat supported. There is now a bash | |
846 | script in <tt>scripts/setup</tt> which will automate the setup after | |
847 | <tt>make install</tt>.</p> | |
848 | ||
849 | </div> | |
850 | ||
851 | <h3>Server</h3> | |
852 | ||
853 | <div class=section> | |
854 | ||
855 | <p>Users are now stored in the database rather than a configuration | |
856 | file.</p> | |
857 | ||
858 | <p>The server now has a built-in list of stopwords and players, so | |
859 | only additions to these need be mentioned in the configuration file.</p> | |
860 | ||
861 | <p>The default inter-track gap is now 0s.</p> | |
862 | ||
863 | <p>How sound is played is now controlled via the new <tt>api</tt> | |
864 | configuration command. This also controls how the volume is set, | |
865 | which now works with ALSA as well as OSS.</p> | |
866 | ||
867 | <p>A bug in the MP3 decoder was fixed (also in 2.0.4).</p> | |
868 | ||
869 | </div> | |
870 | ||
871 | <h3>Web Interface</h3> | |
872 | ||
873 | <div class=section> | |
874 | ||
875 | <p>The web interface now uses cookies to remember user identity, and | |
876 | allows online registration of new users. Also it is no longer | |
877 | necessary to manually specify the URL of the web interface (but you | |
878 | can override it if you don't like the value it figures out).</p> | |
879 | ||
880 | <p>It is possible to allow users to register via the web interface.</p> | |
881 | ||
882 | <p>The web interface's browser support has been improved. It has | |
883 | been tested with Firefox 2, Safari 3, Konqueror 3, Internet Explorer | |
884 | 7 and Opera 9.</p> | |
885 | ||
886 | </div> | |
887 | ||
888 | <h3>Disobedience</h3> | |
889 | ||
890 | <div class=section> | |
891 | ||
892 | <p>A bug which would cause a crash if you attempt to rearrange the | |
893 | queue while no track was playing has been fixed. There is a new | |
894 | 'deselect all tracks' option, mirroring 'select all tracks.</p> | |
895 | ||
896 | </div> | |
897 | ||
898 | </div> | |
899 | ||
900 | <!-- | |
901 | Local Variables: | |
902 | fill-column:79 | |
4cbafe13 | 903 | indent-tabs-mode:nil |
b0a578cb RK |
904 | End: |
905 | --> |