chiark / gitweb /
By default, disable user management over TCP (since it tends to have
[disorder] / CHANGES
CommitLineData
49a773eb
RK
1* Changes up to version 3.1
2
3** Server
4
5The 'gap' directive will no longer work. It could be restored if there
6is real demand.
7
cebe3127
RK
8*** Random Track Choice
9
10This has been completely rewritten to support new features:
11 - tracks in the recently-played list or in the queue are no longer
12 eligible for random choice
36a1a882
RK
13 - there is a new 'weight' track preference allowing for non-uniform
14 track selection. See disorder(1) for details.
cebe3127
RK
15 - there is a new configuration item replay_min defining the minimum
16 time before a played track can be picked at random. The default is
17 8 hours (which matches the earlier behaviour).
18
5d25fbdc
RK
19** Disobedience
20
21There is now a new user management window. From here you can add and
22remove users or modify their settings.
23
810b8083
RK
24Relatedly, the server will only allow remote user management if you set
25remote_userman to 'yes'.
26
e63c38e8
RK
27* Changes up to version 3.0.2
28
29Builds --without-server should work again.
30
e9eb8f7b
RK
31The web interface is a bit more liberal in the cookie value syntax it
32will accept.
33
199c2a23
RK
34Clients fail more gracefully if no password is available.
35
61f2c505
RK
36* Changes up to version 3.0.1
37
38Debian upgrades from 2.0.x should now work better.
39
5aff007d
RK
40* Changes up to version 3.0
41
42Important! See README.upgrades when upgrading.
f0feb22e 43
7a4c02b0
RK
44** Platforms And Installation
45
46Mac OS X and FreeBSD are somewhat supported. There is now a bash script
47in scripts/setup which will automate the setup after 'make install'.
48
f0feb22e
RK
49** Server
50
51Users are now stored in the database rather than a configuration file.
52
e6a35d1c
RK
53The server now has a built-in list of stopwords and players, so only
54additions to these need be mentioned in the configuration file.
86be0c30 55
07bc035e
RK
56The default inter-track gap is now 0s.
57
ad884aa5 58How sound is played is now controlled via the new 'api' configuration
59command. This also controls how the volume is set, which now works with
60ALSA as well as OSS.
61
a69fcd7a
RK
62A bug in the MP3 decoder was fixed (also in 2.0.4).
63
d84bf422 64** Web Interface
65
66The web interface now uses cookies to remember user identity, and allows
b64c2805 67online registration of new users. Also it is no longer necessary to
68manually specify the URL of the web interface (but you can override it
69if you don't like the value it figures out).
d84bf422 70
b18d2a34 71It is possible to allow users to register via the web interface.
ad884aa5 72
73The web interface's browser support has been improved. It has been
74tested with Firefox 2, Safari 3, Konqueror 3, Internet Explorer 7 and
75Opera 9.
76
8137fb3d
RK
77** Disobedience
78
79A bug which would cause a crash if you attempt to rearrange the queue
413799e3 80while no track was playing has been fixed. There is a new 'deselect all
fb009628 81tracks' option, mirroring 'select all tracks.
8137fb3d 82
92afc09e 83* Changes up to version 2.0
460b9539 84
85** General
86
460b9539 87Tracks can now have tags associated with them. See tags in disorder(1)
88or the preferences documentation for the web interface or Disobedience.
89
90The search facility knows how to limit results by tag (see search
91documentation for any interface) as well as by word search. It is
92possible to limit random play by tag (see required-tags and
93prohibited-tags in disorder_config(5)).
94
813070ec
RK
95Unicode support is improved. Case-folding and word breaking now follows
96the rules given in the Unicode standard (with a bit of tailoring in the
413799e3 97latter case).
813070ec 98
655cae67
RK
99** Disobedience
100
101There is a new client, 'Disobedience', that depends on the GTK+ library.
102Feedback on the interface would be very welcome.
103
104** Web Interface
105
106The "New" screen display tracks recently added to the database. From
107here they can be played or their preferences changed.
108
813070ec
RK
109Long track names are truncated so they fit better on the screen. Hover
110for the full name.
111
655cae67
RK
112** Network Play
113
114DisOrder can broadcast audio over a network, allowing it to be played on
115multiple client machines. See README.streams for details.
116
460b9539 117** Server
118
813070ec
RK
119Slow file lookups are cached in the server. This should help
120installations with large collections and/or slow platforms.
460b9539 121
122The 'enabled' and 'random_enabled' configuration options are now gone.
123Instead the state survives from one run of the server to the next.
124'disable now' is gone as well - if you want to emulate it disable
125playing and then scratch the current track.
126
127The 'pick' plugin has been abolished. All the logic formerly done there
128is now built into the server, where it can be done much more
129efficiently.
130
813070ec
RK
131'tracklength' plugins must be explicitly specified.
132
6aba3f6c
RK
133A bug where removing a collection (from the configuration) could cause a
134crash when random play was enabled has been fixed.
135
63e28749 136A new configuration option 'queue_pad' allows the number of random
137tracks kept on the queue to be controlled.
138
75db8354 139There is a new utility disorder-decode which can decode OGG, MP3, WAV
140and FLAC. The example config file uses it.
ce6c36be 141
813070ec
RK
142Database statistics are computed in a subprocess so that the main server
143(and all clients) are not blocked for the duration.
144
460b9539 145** disorderfm
146
147There is a new command line tool called 'disorderfm' which is designed
148for filename translation on (for instance) digital audio repositories.
149It is not yet feature-complete. See its man page for additional
150details.
151
152** Build And Configuration
153
154You can control which components are built with new --with options. See
155README.
156
157options.transform and the 'transform' web option have gone, replaced
158with a 'transform' configuration command. Both this and 'namepart' are
159now optional.
160
63e28749 161** Thanks
162
163Ross Younger, Colin Watson, Michael Stevens and Mark Wooding all
164contributed in some way to this release.
165
460b9539 166* Changes up to version 1.5.1
167
168** Web Interface
169
170Correct regexp for non-alpha tracks.
171
172* Changes up to version 1.5
173
174** Web Interface
175
176Regexp-based filtering of tracks (for instance as used by the initial
177'Choose' page) now does the regexp matching in the server, limiting the
178amount of data transferred to the web interface only to be discarded.
179
180** Client
181
182Regexp-base filtering of tracks is now available to the command line
183client.
184
185** Server
186
187New server_nice, speaker_nice and rescan_nice configuration options
188allow independent control of process priorities.
189
190Scratches are now attributed to the user who requested them.
191
192Bugs fixed:
193 A file descriptor was leaked for each track played.
194 The amount of a track played so far was not reported.
195 The speaker process could crash on underrun.
196 The server would crash if you paused a non-pause capable track.
197 Regexp matching in the file and directory list commands was not
198 reliable.
199 Handling of variable-argument commands in the client was broken.
200
201* Changes up to version 1.4
202
203** General
204
205Raw format players are now supported. See README.upgrades and
206README.raw for details. This allows pausing and eliminating the
207inter-track gap.
208
209Pausing is also supported with suitably modified standalone player
210plugins, though none of the supplied ones are capable of this.
211
212When random play is enabled the randomly picked track now appears in the
213queue, and can be moved around the queue, removed from it, etc.
214
215** Web Interface
216
217Switches (random play, pause, ...) are now presented as a
218fixed-appearance switch with an adjacent state indicator.
219
220The 'Manage' screen has new buttons to move tracks to the head or tail
221of the queue.
222
223You can now edit the preferences for all the tracks in an album in a
224single screen, rather than having to visit each separately. For the
225time being the raw preferences editing has gone; it can be reintroduced
226on some form if there is demand. (You can still edit raw preferences
227from the command line.)
228
229Labels are now documented in options.labels rather than
230disorder_config(5).
231
232** Server
233
234If you tried to start up on any empty database with random play enabled
235the server would exit with an error.
236
237The server no longer risks failing if you strace its player
238subprocesses.
239
240It was possible for the server to hang when a 'reconfigure' command was
241issued. This should no longer be the case.
242
243The default signal to forcibly terminate players is now SIGKILL.
244
245** Plugins
246
247Plugins must now declare a type word. This allows them to document
248whether they are a standalone player or a raw-format player, and whether
249they support pausing. They can also arrange to get setup and cleanup
250calls in the main server. See disorder(3) for more details.
251
252* Changes up to version 1.3
253
254** Dependencies
255
256Berkeley DB 4.2 is no longer supported. Use 4.3.
257
258** Client
259
260There is a new 'authorize' command to simplify the addition of local
261users. Please report successes as well as failures.
262
263There is a new 'resolve' command to return the real track name behind an
264alias.
265
266The 'rescan' command no longer takes an argument.
267
268** Server
269
270The track database code has been largely rewritten to improve
271maintainability.
272
273There is a new 'lock' directive. By default the server uses a lockfile
274to prevent multiple copies of itself running simultaneously; this can be
275inhibited e.g. if you are using a filesystem that does not support
276locking and are confident you can prevent concurrent running yourself.
277
278Aliases for track names, constructed from trackname_display_
279preferences, now appear in the virtual filesystem.
280
281The server now executes a subprocess for the rescan operation. It also
282runs a separate deadlock manager.
283
284Standard output and standard error from subprocesses are now logged.
285This is handy if you need to figure out why a player failed unexpectedly
286but might lead to huge log files if you have needlessly verbose players.
287
288** Web Interface
289
290Enable/disable buttons are now colored to reflect current state.
291
292Entering numeric volume values (rather than clicking on the arrows) now
293works.
294
413799e3 295Connection errors are reported more gracefully.
460b9539 296
297** Plugins
298
299Scanner plugins are now always invoked in a subprocess.
300
301disorder_track_count() and disorder_track_getn() are no longer
302available. Instead use disorder_track_random().
303
304Plugins are now opened with RTLD_NOW, so link errors are detected
305immediately.
306
307** Tools
308
309disorder-dump now insists on the input/output file being a named regular
310file, rather than using stdin or stdout.
311
312** Other
313
314Some missing files have been added, and some notes added regarding
315getting text encoding right.
316
317* Changes up to version 1.2
318
319See README.upgrades when upgrading to this version.
320
321** Bugs Fixed
322
323Avoid accumulating overlarge recently played list.
324
325When the server was stopped, the currently playing track would not be
326added to the recently played list. This has been fixed.
327
328Reloading the 'volume' page no longer repeats the last volume-changing
329action.
330
331The search facility now works properly for multiple hits within a single
332artist or album.
333
334** Server
335
336New namepart directive replaces web interface's trackname-part. There
337are associated changes to the protocol and clients.
338
339The number of database queries per candidate match required when
340searching has been reduced.
341
342The operator can control the signal used to scratch playing tracks. The
343default has been changed to SIGINT from SIGKILL.
344
345The 'log' command now provides a formalised event log, rather than raw
346access to the server's ordinary log output.
347
348** Web Interface Changes
349
350*** Choosing Tracks
351
352When picking a track the client now stays on the same screen rather than
353redirecting back to the 'Playing' screen. So that the user gets
354feedback from their action, playing and queued tracks are now marked as
355such in the track picking screen.
356
357It is possible to revert to the old behaviour by removing the back=
358argument from the choose.html and search.html templates (and optionally
359the trackstate lines).
360
361*** Search
362
363Non-ASCII characters are now properly supported in search terms.
364
365*** Syntax
366
367The template syntax has been changed slightly to ignore whitespace in
368certain places.
369
370*** Miscellaneous
371
372Some formerly textual buttons are now replaced by images (with ALT text
373reflecting the old value). The stylesheet is now a .css file (installed
374in the same place as the images) rather than being embedded into every
375template.
376
377Artist and album names in the playing and recently-played lists are now
378links to the corresponding directory.
379
380More functions are now available from the 'manage' screen.
381
382The menus are now (by default) across the top of the screen instead of
383down the side. Set the 'menu' label to 'sidebar' to restore the old
384appearance. 'Volume' is not present in this new menu, use 'Manage'
385instead (or edit the template).
386
387** tkdisorder
388
389tkdisorder now displays artist, album and title in the queue and
390recently played widgets, rather than just the title (as formerly).
391
392* Changes up to version 1.1
393
394** Bugs Fixed
395
396Corrected various problems with UTF-8 parsing.
397
398In the web interface, "The Beatles" (etc) are now grouped under 'B' not
399'T' when grouping tracks by initial letter.
400
401** Server
402
403The list of recently played tracks is now preserved across server
404restarts.
405
406Track IDs are more compact.
407
408Versions of libdb before 4.2 are no longer supported. 4.2 and 4.3 both
409work now. 4.2 support will be removed in some future release.
410
411Prehistoric backwards-compatibility logic removed. Only affects people
412upgrading from long before 1.0 (who should upgrade to 1.0 and then to
4131.1.)
414
415** Command Line
416
417Tracks can be moved in the queue from the command line.
418
419'disorder queue' now reports track IDs.
420
421$pkgdatadir/completion.bash provides tab completion over commands and
422options.
423
424** Web Interface
425
426New 'cooked' preferences interface saves users having to know arcane
427details of trackname preferences and so on. Non-ASCII characters are
428now properly supported in this context.
429
430CGI arguments to the web interface are now checked for UTF-8 compliance.
431
432Local Variables:
433mode:outline
434fill-column:72
435End: