chiark / gitweb /
Avoid namespace clash detected by picky compilers
[disorder] / ChangeLog.d / disorder--mainline--0.1
1 # do not edit -- automatically generated by arch changelog
2 # arch-tag: automatic-ChangeLog--rjk@greenend.org.uk--2004/disorder--mainline--0.1
3 #
4
5 2006-11-11 18:04:40 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-328
6
7     Summary:
8       Missing ship
9     Revision:
10       disorder--mainline--0.1--patch-328
11
12     * scripts/Makefile.am: Remember to ship oggrename.
13
14     modified files:
15      ChangeLog.d/disorder--mainline--0.1 scripts/Makefile.am
16
17
18 2006-11-11 13:13:27 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-327
19
20     Summary:
21       oggrename
22     Revision:
23       disorder--mainline--0.1--patch-327
24
25     * scripts/oggrename: Script to rename OGG files according to embedded
26       title information.
27
28     new files:
29      scripts/oggrename
30
31     modified files:
32      ChangeLog.d/disorder--mainline--0.1
33
34
35 2006-11-04 15:56:52 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-326
36
37     Summary:
38       disorderfm filename converter
39     Revision:
40       disorder--mainline--0.1--patch-326
41
42     * clients/disorderfm.c: New filename management tool.
43     * doc/disorderfm.1.in: Documentation.
44     * lib/charset.c: New entry points required for disorderfm.
45     * lib/eclient.c: Quieten compiler.
46     * clients/filename-bytes.c: Grotty utility for examining byte strings in
47       filenames.
48
49     new files:
50      clients/disorderfm.c clients/filename-bytes.c
51      doc/disorderfm.1.in
52
53     modified files:
54      CHANGES ChangeLog.d/disorder--mainline--0.1
55      clients/Makefile.am doc/Makefile.am lib/charset.c
56      lib/charset.h lib/eclient.c
57
58
59 2006-10-08 21:26:01 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-325
60
61     Summary:
62       Update CHANGES
63     Revision:
64       disorder--mainline--0.1--patch-325
65
66     * CHANGES: Update change description
67
68     modified files:
69      CHANGES ChangeLog.d/disorder--mainline--0.1
70
71
72 2006-10-08 21:20:31 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-324
73
74     Summary:
75       Copyright dates.
76     Revision:
77       disorder--mainline--0.1--patch-324
78
79
80     modified files:
81      ChangeLog.d/disorder--mainline--0.1 server/trackname.c
82      templates/prefs.html
83
84
85 2006-10-08 21:12:53 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-323
86
87     Summary:
88       Search by tag
89     Revision:
90       disorder--mainline--0.1--patch-323
91
92     * server/trackdb.c: Search for tags using tag: syntax.
93     
94     * templates/help.html: Mention tag: syntax.
95     * doc/disobedience.1.in: Mention tag: syntax.
96     * doc/disorder.1.in: Mention tag: syntax.
97     * doc/disorder_protocol.5.in: Mention tag: syntax.
98
99     modified files:
100      ChangeLog.d/disorder--mainline--0.1 doc/disobedience.1.in
101      doc/disorder.1.in doc/disorder_protocol.5.in server/trackdb.c
102      templates/help.html
103
104
105 2006-10-08 19:17:44 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-322
106
107     Summary:
108       Avoid needless redraws.
109     Revision:
110       disorder--mainline--0.1--patch-322
111
112     * disobedience/choose.c: Don't issue a redraw on an empty search result
113       if we were already displaying the right thing.
114
115     modified files:
116      ChangeLog.d/disorder--mainline--0.1 disobedience/choose.c
117
118
119 2006-10-08 19:01:22 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-321
120
121     Summary:
122       Docs + window title.
123     Revision:
124       disorder--mainline--0.1--patch-321
125
126     * disobedience/disobedience.c: Correct window title.
127     * doc/disobedience.1.in: Document search box.
128
129     modified files:
130      ChangeLog.d/disorder--mainline--0.1
131      disobedience/disobedience.c doc/disobedience.1.in
132
133
134 2006-10-08 18:56:29 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-320
135
136     Summary:
137       Better search responsiveness.
138     Revision:
139       disorder--mainline--0.1--patch-320
140
141     * disobedience/choose.c: More efficient initial construction of search
142       results tree.  The display of the tree is now the expensive bit (e.g
143       0.2s for 300 hits on my Athlon).  The old logic remains for expanding
144       individual items in the tree, but it does much less work in that
145       context and so isn't a performance problem.
146
147     modified files:
148      ChangeLog.d/disorder--mainline--0.1 disobedience/choose.c
149
150
151 2006-10-08 18:35:13 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-319
152
153     Summary:
154       Cancel search button
155     Revision:
156       disorder--mainline--0.1--patch-319
157
158     * disobedience/choose.c: Add a cancel button to clear the current search.
159       You can do this by deleting all the text but having an obvious button
160       for it seems friendlier.
161
162     modified files:
163      ChangeLog.d/disorder--mainline--0.1 disobedience/choose.c
164
165
166 2006-10-08 17:58:28 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-318
167
168     Summary:
169       Search cleanup
170     Revision:
171       disorder--mainline--0.1--patch-318
172
173     'search-parse' makes much more sense as it means we guarantee a uniform
174     interpretation of search strings across all clients.  So we make 'search'
175     do that.
176     
177     * server/server.c: 'search' takes on the meaning of 'search-parse' now.
178     * lib/eclient.c: Keep up with changed 'search' names.
179     * lib/client.c: Use new search interface.
180     * server/dcgi.c: Use new search interface.
181     * clients/disorder.c: Use new search interface.
182     
183     * doc/disorder_protocol.5.in: Document resolved search semantics
184
185     modified files:
186      ChangeLog.d/disorder--mainline--0.1 clients/disorder.c
187      disobedience/TODO doc/disorder_protocol.5.in lib/client.c
188      lib/client.h lib/eclient.c server/dcgi.c server/server.c
189
190
191 2006-10-08 17:45:28 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-317
192
193     Summary:
194       Search in Disobedience
195     Revision:
196       disorder--mainline--0.1--patch-317
197
198     Lots of cleanup and documentation to do.
199     
200     * disobedience/choose.c: Track searching.  This is implemented as a text
201       entry in the choose window.  Whenever contains a valid search string
202       then the choose tree is replaced with the search results.
203     * disobedience/choose.c: Disable breakdown by initial letter.  The code
204       is still there and available via --choosealpha.
205     * disobedience/disobedience.c: Make report window available earlier.
206     * disobedience/disobedience.c: --choosealpha option to re-enable initial
207       letter breakup of choose tree.
208     
209     * server/server.c: search-parse parses search string instead of expecting
210       caller to do so.
211     
212     * lib/eclient.c: Implement search.
213     * lib/hash.c: Constness.
214     * lib/split.c: Cope with an absent error handler.
215     * server/trackdb.c: Directory-tree-order comparison moved to lib/trackname.c.
216     * lib/trackname.c: Export directory-tree-order comparison as compare_path().
217     
218     * doc/disorder_protocol.5.in: Document search-parse.
219
220     modified files:
221      ChangeLog.d/disorder--mainline--0.1 disobedience/choose.c
222      disobedience/disobedience.c disobedience/disobedience.h
223      disobedience/disobedience.rc doc/disobedience.1.in
224      doc/disorder_protocol.5.in lib/eclient.c lib/eclient.h
225      lib/hash.c lib/hash.h lib/split.c lib/trackname.c
226      lib/trackname.h server/server.c server/trackdb.c
227      server/trackname.c
228
229
230 2006-09-17 14:53:57 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-316
231
232     Summary:
233       Support for obsolete GCC.
234     Revision:
235       disorder--mainline--0.1--patch-316
236
237     * configure.ac: Turn off -Werror for GCC 2.95.
238     
239     Not sure how worthwhile this is...
240
241     modified files:
242      ChangeLog.d/disorder--mainline--0.1 configure.ac
243      disobedience/TODO
244
245
246 2006-09-17 10:24:35 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-315
247
248     Summary:
249       Fix popup menu behaviour.
250     Revision:
251       disorder--mainline--0.1--patch-315
252
253     * disobedience/queue.c: Pop up menu on button press, not release, giving
254       more traditional behaviour.
255     * disobedience/choose.c: Pop up menu on button press.
256
257     modified files:
258      ChangeLog.d/disorder--mainline--0.1 disobedience/choose.c
259      disobedience/queue.c
260
261
262 2006-09-17 10:21:22 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-314
263
264     Summary:
265       Document Disobedience tag support.
266     Revision:
267       disorder--mainline--0.1--patch-314
268
269     * doc/disobedience.1.in: Document tag support.
270
271     modified files:
272      ChangeLog.d/disorder--mainline--0.1 doc/disobedience.1.in
273
274
275 2006-09-17 10:18:19 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-313
276
277     Summary:
278       Tags in Disobedience
279     Revision:
280       disorder--mainline--0.1--patch-313
281
282     * disobedience/properties.c: Edit tags.  Also fix boolean prefs to work
283       for prefs other than pick_at_random, not that there are any yet.
284
285     modified files:
286      ChangeLog.d/disorder--mainline--0.1 disobedience/properties.c
287
288
289 2006-09-17 10:04:16 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-312
290
291     Summary:
292       Web editing for tags
293     Revision:
294       disorder--mainline--0.1--patch-312
295
296     * server/dcgi.c: Accept tags in a prefs response.
297     * templates/prefs.html: Edit tags in web prefs screen.
298     * templates/options.labels: Label for tags field.
299     * templates/help.html: Mention tags in html help.
300
301     modified files:
302      ChangeLog.d/disorder--mainline--0.1 server/dcgi.c
303      templates/help.html templates/options.labels
304      templates/prefs.html
305
306
307 2006-09-17 09:50:43 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-311
308
309     Summary:
310       Tags fiddling and documntation.
311     Revision:
312       disorder--mainline--0.1--patch-311
313
314     * server/trackdb.c: Tags are now separated by commas and can contain
315       spaces.
316     * doc/disorder.1.in: Mention tags in track preferences.
317     * doc/disorder_config.5.in; Mention tag list syntax.
318
319     modified files:
320      ChangeLog.d/disorder--mainline--0.1 doc/disorder.1.in
321      doc/disorder_config.5.in server/trackdb.c
322
323
324 2006-09-17 09:28:24 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-310
325
326     Summary:
327       Update copyright dates
328     Revision:
329       disorder--mainline--0.1--patch-310
330
331
332     modified files:
333      ChangeLog.d/disorder--mainline--0.1 doc/disorder.3
334      lib/client.h lib/disorder.h lib/plugin.c lib/plugin.h
335      plugins/Makefile.am server/play.h
336
337
338 2006-09-17 09:22:24 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-309
339
340     Summary:
341       Fix missing events bugs (hooray)
342     Revision:
343       disorder--mainline--0.1--patch-309
344
345     * disobedience/queue.c: Only create drag target widgets when actually
346       dragging, as otherwise they sometimes(!) steal events from the widgets
347       they overlap.
348       The padding cell at the RHS of every row is now sensitive to input.
349       Add a comment describing widget hierarchy.
350
351     modified files:
352      ChangeLog.d/disorder--mainline--0.1 disobedience/queue.c
353
354
355 2006-09-15 21:46:30 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-308
356
357     Summary:
358       Minor fixups
359     Revision:
360       disorder--mainline--0.1--patch-308
361
362     * server/play.c: Close the spare writing end of the player's log pipe -
363       it only needs to be visible as stdout/err.
364     
365     * disobedience/queue.c: Conditioned out diagnostic code for lost clicks.
366     
367     * scripts/completion.bash: Update completeions for current command set.
368
369     modified files:
370      CHANGES ChangeLog.d/disorder--mainline--0.1
371      disobedience/queue.c scripts/completion.bash server/play.c
372
373
374 2006-05-14 16:49:56 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-307
375
376     Summary:
377       Heartbeat
378     Revision:
379       disorder--mainline--0.1--patch-307
380
381     * disobedience/disobedience.c: Add a (conditioned-out) heartbeat in
382       pursuit of unresponsiveness.
383
384     modified files:
385      ChangeLog.d/disorder--mainline--0.1
386      disobedience/disobedience.c
387
388
389 2006-05-03 23:11:14 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-306
390
391     Summary:
392       Tags and global preferences.
393     Revision:
394       disorder--mainline--0.1--patch-306
395
396     Higher-level user interfaces have yet to be written and not much testing
397     has been done but the basics seem to be working.
398     
399     * server/trackdb.c: Tags.  Global preferences for recording long-term
400       server state.  This is relatively involved; although the logic for
401       maintaining tags is very simple, being similar to search, picking a
402       track at random when it must have particular tags is more annoying and
403       we don't use the database to help us much, but instead keep a cache and
404       remember to blow it in various places.
405     * server/play.c: playing_enable and random_enabled are now database
406       entries.
407     * server/disorderd.c: Need to do initial setup more directly now.
408     * server/server.c: Track protocol changes.
409     
410     * server/dcgi.c: Abolish disable-now.
411     
412     * lib/client.c: Track protocol changes.
413     * lib/configuration.c: enabled/random_enabled config options abolished in
414       favour of new global prefs.
415     * lib/hash.c: Start with a 256-slot hash.  Cope with null values.  New
416       hash_keys() returns a list of keys in no particular order.
417     
418     * clients/disorder.c: Kill disable-now.
419       Add tags, get-global, set-global, unset-global.
420     
421     * plugins/pick.c: Removed.
422     * lib/plugin.c: Pick plugin abolished.
423     
424     * doc/disorder.1.in: Document new command line options.
425     * doc/disorder.3: Document removal of pick plugin.
426     * doc/disorder_config.5.in: Document global prefs and removal of
427       enabled/random_enabled config options and disable-now CGI action.
428     * doc/disorder_protocol.5.in: Document get-global, set-global,
429       unset-global, tags.
430
431     removed files:
432      plugins/pick.c
433
434     modified files:
435      CHANGES ChangeLog.d/disorder--mainline--0.1 README.upgrades
436      clients/disorder.c doc/disorder.1.in doc/disorder.3
437      doc/disorder_config.5.in doc/disorder_protocol.5.in
438      lib/client.c lib/client.h lib/configuration.c
439      lib/configuration.h lib/disorder.h lib/hash.c lib/hash.h
440      lib/plugin.c lib/plugin.h plugins/Makefile.am server/dcgi.c
441      server/disorderd.c server/play.c server/play.h server/server.c
442      server/trackdb.c server/trackdb.h
443
444
445 2006-05-01 17:38:20 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-305
446
447     Summary:
448       Drag+drop fixing.
449     Revision:
450       disorder--mainline--0.1--patch-305
451
452     * disobedience/queue.c: Cope with dragging to the head of the queue.
453
454     modified files:
455      ChangeLog.d/disorder--mainline--0.1 disobedience/queue.c
456
457
458 2006-05-01 17:32:38 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-304
459
460     Summary:
461       Quieten compiler
462     Revision:
463       disorder--mainline--0.1--patch-304
464
465     * disobedience/queue.c: Rename 'time' args to keep gcc happy.
466
467     modified files:
468      ChangeLog.d/disorder--mainline--0.1 disobedience/queue.c
469
470
471 2006-05-01 17:31:14 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-303
472
473     Summary:
474       Drag+drop queue rearrangement
475     Revision:
476       disorder--mainline--0.1--patch-303
477
478     * disobedience/queue.c: Drag+drop queue rearrangement.  Use button
479       release events, not press, as the latter get confused with drag starts.
480     * disobedience/choose.c: Use button release events, not press.
481     * disobedience/disobedience.c: New log_moved() signature.
482     * disobedience/disobedience.rc: Colors for drag target zones
483     
484     * doc/disorder_protocol.5.in: Document moveafter and 'moved' log change.
485     
486     * lib/queue.c: queue_moveafter() is the underlying implementation of the
487       'moveafter' command.
488     * server/server.c: New 'moveafter' command moves a bunch of tracks to a
489       single ocation in the queue.
490     * lib/eclient.c: Support moveafter and 'moved' log change.
491
492     modified files:
493      ChangeLog.d/disorder--mainline--0.1 disobedience/TODO
494      disobedience/choose.c disobedience/disobedience.c
495      disobedience/disobedience.rc disobedience/queue.c
496      doc/disorder_protocol.5.in lib/eclient.c lib/eclient.h
497      lib/queue.c lib/queue.h server/server.c
498
499
500 2006-05-01 14:33:27 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-302
501
502     Summary:
503       Reduce accidental scratching.
504     Revision:
505       disorder--mainline--0.1--patch-302
506
507     * disobedience/queue.c: Only make scratch item in popup sensitive if the
508       playing track is selected, to cut down on accidental scratching.
509
510     modified files:
511      ChangeLog.d/disorder--mainline--0.1 disobedience/TODO
512      disobedience/queue.c
513
514
515 2006-05-01 12:15:02 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-301
516
517     Summary:
518       Cache fixes.
519     Revision:
520       disorder--mainline--0.1--patch-301
521
522     * lib/hash.c: Remember to actually save value.
523     * lib/cache.c: Pass correct time when expiring.
524
525     modified files:
526      ChangeLog.d/disorder--mainline--0.1 disobedience/TODO
527      lib/cache.c lib/hash.c
528
529
530 2006-05-01 12:01:48 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-300
531
532     Summary:
533       More administrivia
534     Revision:
535       disorder--mainline--0.1--patch-300
536
537     More copyright dates and exceptions.
538
539     modified files:
540      ChangeLog.d/disorder--mainline--0.1 scripts/check
541      scripts/completion.bash scripts/copyright.exceptions
542
543
544 2006-05-01 11:57:48 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-299
545
546     Summary:
547       Default transform/namepart.
548     Revision:
549       disorder--mainline--0.1--patch-299
550
551     * lib/configuration.c: Default transform/namepart.
552     
553     * debian/disorder.config: Commment out transform/namepart.
554     * examples/config.sample.in: Commment out transform/namepart.
555     
556     * README.client: more notes.
557     * README.upgrades: Mention that transform/namepart are optional now.
558
559     modified files:
560      CHANGES ChangeLog.d/disorder--mainline--0.1 README.client
561      README.upgrades debian/disorder.config
562      doc/disorder_config.5.in examples/config.sample.in
563      lib/configuration.c
564
565
566 2006-05-01 11:21:02 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-298
567
568     Summary:
569       Administrivia
570     Revision:
571       disorder--mainline--0.1--patch-298
572
573     * scripts/check: Easier invocation.
574     * scripts/completion.bash: Option completion for Disobedience.
575     
576     Also updated copyright dates on a bunch of files.
577
578     modified files:
579      ChangeLog.d/disorder--mainline--0.1 debian/rules.m4
580      disobedience/disobedience.rc doc/Makefile.am
581      images/Makefile.am lib/asprintf.c lib/authhash.c
582      lib/authhash.h lib/hash.c lib/hash.h lib/log.c lib/mem.c
583      lib/mem.h lib/printf.h lib/queue.c lib/queue.h lib/split.c
584      lib/trackname.c lib/trackname.h prepare scripts/Makefile.am
585      scripts/check scripts/completion.bash
586      scripts/copyright.exceptions server/cgi.c server/server.h
587      server/trackdb.h templates/Makefile.am templates/help.html
588
589
590 2006-05-01 11:07:54 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-297
591
592     Summary:
593       Fix queue column width
594     Revision:
595       disorder--mainline--0.1--patch-297
596
597     * disobedience/queue.c: Columns should shrink to fit, not stay at their
598       maximum extent indefinitely.
599
600     modified files:
601      ChangeLog.d/disorder--mainline--0.1 disobedience/queue.c
602
603
604 2006-04-30 23:22:53 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-296
605
606     Summary:
607       Memory optimization.
608     Revision:
609       disorder--mainline--0.1--patch-296
610
611     * lib/hash.c: Less memory-heavy hash implementation.
612
613     modified files:
614      ChangeLog.d/disorder--mainline--0.1 lib/hash.c
615
616
617 2006-04-30 19:53:08 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-295
618
619     Summary:
620       More documentation.
621     Revision:
622       disorder--mainline--0.1--patch-295
623
624     * README: mention --without-* options.
625     * README.client: how to set up a standalone client install.
626
627     new files:
628      README.client
629
630     modified files:
631      ChangeLog.d/disorder--mainline--0.1 Makefile.am README
632      disobedience/TODO
633
634
635 2006-04-30 19:42:54 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-294
636
637     Summary:
638       Documentation updates.
639     Revision:
640       disorder--mainline--0.1--patch-294
641
642     * doc/disorder.1.in: Mention the automatic rescan.
643       Add a troubleshooting section.
644     
645     * doc/disobedience.1.in: Hide --sync.  Document keyboard shortcuts and
646       recent changes to 'Choose'.
647     
648     * templates/help.html: Add a troubleshooting section.  Possibly this
649       should just be a link to the equivalent disorder(1) section.
650     
651     * CHANGES: Updated.
652
653     modified files:
654      CHANGES ChangeLog.d/disorder--mainline--0.1
655      doc/disobedience.1.in doc/disorder.1.in templates/help.html
656
657
658 2006-04-30 19:05:29 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-293
659
660     Summary:
661       debian policy fixup
662     Revision:
663       disorder--mainline--0.1--patch-293
664
665     * debian/autorules.m4: Make binary targets depend on build target.
666
667     modified files:
668      ChangeLog.d/disorder--mainline--0.1 debian/autorules.m4
669
670
671 2006-04-30 18:55:26 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-292
672
673     Summary:
674       Don't forget queue selection on update
675     Revision:
676       disorder--mainline--0.1--patch-292
677
678     * disobedience/queue.c: Use new selection_*() functions to record
679       selection so that it survives updates to the queue reliably.
680     
681     * lib/selection.c: Selection management functions using a hash.
682     
683     * lib/hash.c: hash_count() to count the number of items in a hash.
684     
685     * lib/queue.h: queue_entry.selected is gone.
686
687     new files:
688      lib/selection.c lib/selection.h
689
690     modified files:
691      ChangeLog.d/disorder--mainline--0.1
692      disobedience/disobedience.h disobedience/queue.c
693      lib/Makefile.am lib/hash.c lib/hash.h lib/queue.c lib/queue.h
694
695
696 2006-04-30 16:42:07 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-291
697
698     Summary:
699       Faster startup
700     Revision:
701       disorder--mainline--0.1--patch-291
702
703     * lib/eclient.c: Batch up command writes once authenticated.  This
704       improves Disobedience performance, in particular it fills in the track
705       names faster at startup if the server is over a network, by reducing
706       the number of round trip times.
707     * lib/log.c: DISORDER_DEBUG_ONLY allows you to limit debug output to that
708       from a single file.
709
710     modified files:
711      ChangeLog.d/disorder--mainline--0.1 lib/eclient.c lib/log.c
712
713
714 2006-04-30 15:02:27 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-290
715
716     Summary:
717       Fix playing indicator for aliased tracks.
718     Revision:
719       disorder--mainline--0.1--patch-290
720
721     * lib/choose.c: Resolve filenames (so that the playing indicator and
722       properties window work).
723     
724     * lib/eclient.c: disorder_eclient_resolve().
725
726     modified files:
727      ChangeLog.d/disorder--mainline--0.1 disobedience/choose.c
728      lib/eclient.c lib/eclient.h
729
730
731 2006-04-30 14:40:31 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-289
732
733     Summary:
734       Popup menu and selection in choose tab
735     Revision:
736       disorder--mainline--0.1--patch-289
737
738     * disobedience/choose.c: Abolish buttons and just use labels and do our
739       own click parsing.  Maintain a selection in the same way as queue.c.
740       Popup menu to play/edit tracks, middle click to play straight away.
741     
742     * disobedience/disobedience.rc: Supply bg whenever we supply fg.
743     
744     * disobedience/menu.c: Edit menu uses callbacks to deal with different
745       kinds of tabs rather than explicit knowledge.
746     
747     * disobedience/queue.c: Callbacks for edit menu.
748
749     modified files:
750      ChangeLog.d/disorder--mainline--0.1 disobedience/TODO
751      disobedience/choose.c disobedience/disobedience.h
752      disobedience/disobedience.rc disobedience/menu.c
753      disobedience/queue.c
754
755
756 2006-04-30 11:59:49 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-288
757
758     Summary:
759       Set sensitivity of main menu items.
760     Revision:
761       disorder--mainline--0.1--patch-288
762
763     * disobedience/menu.c: Move out main menu code.  Set sensitivity of
764       Properties and Select All appropriately from menu_update().
765     
766     * disobedience/queue.c: Call menu_update() when queue/recent changes.
767       Provide queue-counting functions queue_count_*() to set sensitivity of
768       main menu items.  Fix 'remove' option.
769     
770     * disobedience/disobedience.c: Move main menu out to menu.c.  Call
771       menu_update() when the user switches tabs.
772     
773     * disobedience/disobedience.h: Include almost all headers from here.
774       Organize function prototypes into logical groups.
775
776     new files:
777      disobedience/menu.c
778
779     modified files:
780      ChangeLog.d/disorder--mainline--0.1 disobedience/Makefile.am
781      disobedience/choose.c disobedience/client.c
782      disobedience/control.c disobedience/disobedience.c
783      disobedience/disobedience.h disobedience/misc.c
784      disobedience/properties.c disobedience/queue.c
785
786
787 2006-04-30 11:21:54 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-287
788
789     Summary:
790       Edit>Properties starts working.
791     Revision:
792       disorder--mainline--0.1--patch-287
793
794     * disobedience/disobedience.c: Edit>Properties menu item now works for
795       queues.
796     
797     * disobedience/queue.c: queue_properties() entry point for the above.
798
799     modified files:
800      ChangeLog.d/disorder--mainline--0.1
801      disobedience/disobedience.c disobedience/disobedience.h
802      disobedience/queue.c
803
804
805 2006-04-29 18:00:36 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-286
806
807     Summary:
808       Document properties window.
809     Revision:
810       disorder--mainline--0.1--patch-286
811
812     * doc/disobedience.1.in: Document properties window.
813
814     modified files:
815      ChangeLog.d/disorder--mainline--0.1 doc/disobedience.1.in
816
817
818 2006-04-29 16:04:00 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-285
819
820     Summary:
821       Stock buttons in properties window
822     Revision:
823       disorder--mainline--0.1--patch-285
824
825     * disobedience/properties.c: Use stock items for properties window buttons.
826
827     modified files:
828      ChangeLog.d/disorder--mainline--0.1 disobedience/properties.c
829
830
831 2006-04-29 13:46:31 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-284
832
833     Summary:
834       Stop badness if user closes progress bar window
835     Revision:
836       disorder--mainline--0.1--patch-284
837
838     * disobedience/properties.c: Cope with progress bar window being
839       destroyed part way through.
840
841     modified files:
842      ChangeLog.d/disorder--mainline--0.1 disobedience/properties.c
843
844
845 2006-04-29 13:38:28 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-283
846
847     Summary:
848       Properties window
849     Revision:
850       disorder--mainline--0.1--patch-283
851
852     Only usable from queue/recent so far - need to do select and the menu bar
853     properties item too.  Also search when that is done.
854     
855     * disobedience/properties.c: New properties popup window.
856     * disobedience/queue.c: Pass queue definition as well as item to menu
857       item activation.
858       namepart_update() notifies that a namepart might have changed.
859       If we right click away from any selected item, select just the hovered
860       item.
861       Make properties menu item in popup sensitive if anything is selected,
862       and call properties() with the selected tracks when it is activated.
863       Include formerly missing backlink from first queued track to playing
864       track.
865     * lib/eclient.c: get, set and unset.
866     * disobedience/client.c: Split out popup_error().
867     * disobedience/misc.c: popup_error().
868     * disobedience/disobedience.c: Rename function to avoid collision.
869
870     new files:
871      disobedience/properties.c
872
873     modified files:
874      ChangeLog.d/disorder--mainline--0.1 disobedience/Makefile.am
875      disobedience/client.c disobedience/disobedience.c
876      disobedience/disobedience.h disobedience/misc.c
877      disobedience/queue.c lib/eclient.c lib/eclient.h
878
879
880 2006-04-26 20:24:36 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-282
881
882     Summary:
883       Rename gdisorder to 'Disobedience'
884     Revision:
885       disorder--mainline--0.1--patch-282
886
887     Name suggested by Owen Dunn.
888
889     modified files:
890      ChangeLog.d/disorder--mainline--0.1 configure.ac
891      disobedience/Makefile.am disobedience/choose.c
892      disobedience/client.c disobedience/control.c
893      disobedience/disobedience.c disobedience/disobedience.h
894      disobedience/disobedience.rc disobedience/misc.c
895      disobedience/queue.c doc/Makefile.am doc/disobedience.1.in
896
897     renamed files:
898      doc/gdisorder.1.in
899        ==> doc/disobedience.1.in
900      gdisorder/.arch-ids/=id
901        ==> disobedience/.arch-ids/=id
902      gdisorder/gdisorder.c
903        ==> disobedience/disobedience.c
904      gdisorder/gdisorder.h
905        ==> disobedience/disobedience.h
906      gdisorder/gdisorder.rc
907        ==> disobedience/disobedience.rc
908
909     new directories:
910      disobedience/.arch-ids
911
912     removed directories:
913      gdisorder/.arch-ids
914
915     renamed directories:
916      gdisorder
917        ==> disobedience
918
919
920 2006-04-17 18:29:49 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-281
921
922     Summary:
923       Build fixes
924     Revision:
925       disorder--mainline--0.1--patch-281
926
927     * gdisorder/Makefile.am: ship gdisorder.c
928     * server/server.c: Quieten compiler.
929     * lib/eclient.c: Quieten stupid compiler.
930
931     modified files:
932      ChangeLog.d/disorder--mainline--0.1 debian/changelog
933      gdisorder/Makefile.am lib/eclient.c server/server.c
934
935
936 2006-04-17 11:18:34 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-280
937
938     Summary:
939       Install gdisorder
940     Revision:
941       disorder--mainline--0.1--patch-280
942
943     * gdisorder/Makefile.am: Install gdisorder.
944     * doc/gdisorder.1.in: Update man page.
945     * doc/Makefile.am: Install gdisorder man page
946
947     modified files:
948      ChangeLog.d/disorder--mainline--0.1 doc/Makefile.am
949      doc/gdisorder.1.in gdisorder/Makefile.am
950
951
952 2006-04-17 11:02:51 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-279
953
954     Summary:
955       Popup improvements, multi-track remove.
956     Revision:
957       disorder--mainline--0.1--patch-279
958
959     * gdisorder/queue.c: Table driven popup menus.  The menu items are now
960       fixed but the sensitivity changes according to context.  Multi-track
961       remove now works.
962
963     modified files:
964      ChangeLog.d/disorder--mainline--0.1 gdisorder/TODO
965      gdisorder/queue.c
966
967
968 2006-04-16 23:39:34 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-278
969
970     Summary:
971       gdisorder tidying
972     Revision:
973       disorder--mainline--0.1--patch-278
974
975     * gdisorder/gdisorder.c: Remove bogus underlines.
976
977     modified files:
978      ChangeLog.d/disorder--mainline--0.1 gdisorder/gdisorder.c
979
980
981 2006-04-16 23:37:58 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-277
982
983     Summary:
984       Selection in queue/recent.
985     Revision:
986       disorder--mainline--0.1--patch-277
987
988     * gdisorder/queue.c: Show and maintain the selection.  You can't do
989       anything useful with the selection yet, however.
990     * lib/eclient.c: Fill in backlinks in queue lists.
991     * gdisorder/gdisorder.c: New Edit menu.  Just a placeholder right now.
992
993     modified files:
994      ChangeLog.d/disorder--mainline--0.1 gdisorder/gdisorder.c
995      gdisorder/queue.c lib/eclient.c
996
997
998 2006-04-16 22:47:58 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-276
999
1000     Summary:
1001       Popup menu in queue/recent.
1002     Revision:
1003       disorder--mainline--0.1--patch-276
1004
1005     * lib/eclient.c: disorder_eclient_scratch() now takes an ID.
1006       disorder_eclient_scratch_playing() provides the old scratch-anything
1007       interface for the benefit of control.c.
1008     * lib/queue.h: Add a 'ql' field to the queue so gdisorder can remember
1009       which queue each entry belongs to.
1010     * gdisorder/queue.c: Popup menus on right button in queues.  Currently
1011       only scratch and remove work, though 'properties' appears in the menu
1012       for the sake of show.
1013     * gdisorder/control.c: Keep up with eclient.c.
1014
1015     modified files:
1016      ChangeLog.d/disorder--mainline--0.1 gdisorder/control.c
1017      gdisorder/queue.c lib/eclient.c lib/eclient.h lib/queue.c
1018      lib/queue.h
1019
1020
1021 2006-04-16 18:28:04 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-275
1022
1023     Summary:
1024       Show how much of the currently playing track has played.
1025     Revision:
1026       disorder--mainline--0.1--patch-275
1027
1028     * gdisorder/queue.c: Show how much of the currently playing track has
1029       been played.  Destroy queue label widgets as well as their containing
1030       eventbox.
1031     
1032     * gdisorder/gdisorder.c: Refetch currently playing track data whenever
1033       the track is paused or resumed.
1034
1035     modified files:
1036      ChangeLog.d/disorder--mainline--0.1 gdisorder/TODO
1037      gdisorder/gdisorder.c gdisorder/queue.c
1038
1039
1040 2006-04-16 17:17:27 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-274
1041
1042     Summary:
1043       New gdisorder buttons to enable/disable play/random play
1044     Revision:
1045       disorder--mainline--0.1--patch-274
1046
1047     * gdisorder/control.c: New buttons to enable/disable play/random play.
1048     
1049     * lib/eclient.c: New calls to enable/disable play/random play.
1050     
1051     * images/random.png: Question-mark icon to enable random play.
1052     * images/randomcross.png: Crossed question-mark icon to disable random play
1053     * images/notescross.png: Notes icon to enable play.  We use the existing
1054       notes.png to disable play.
1055
1056     new files:
1057      images/.arch-ids/notescross.png.id
1058      images/.arch-ids/random.png.id
1059      images/.arch-ids/randomcross.png.id images/notescross.png
1060      images/random.png images/randomcross.png
1061
1062     modified files:
1063      ChangeLog.d/disorder--mainline--0.1 gdisorder/control.c
1064      images/Makefile.am lib/eclient.c lib/eclient.h
1065
1066
1067 2006-04-14 17:06:26 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-273
1068
1069     Summary:
1070       Volume control for gdisorder
1071     Revision:
1072       disorder--mainline--0.1--patch-273
1073
1074     * gdisorder/control.c: Volume control.  Visually rather ugly but the
1075       feature is now there.
1076     * gdisorder/gdisorder.c: Monitor volume.
1077     * lib/eclient.c: Volume support.
1078     * server/disorderd.c: Check the current volume from time to time in case
1079       it's changed outside the server's control.
1080     * server/server.c: Remember the (believed) current volume.
1081
1082     modified files:
1083      ChangeLog.d/disorder--mainline--0.1 gdisorder/TODO
1084      gdisorder/control.c gdisorder/gdisorder.c
1085      gdisorder/gdisorder.h lib/eclient.c lib/eclient.h
1086      server/disorderd.c server/server.c server/server.h
1087
1088
1089 2006-04-14 10:45:35 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-272
1090
1091     Summary:
1092       Split out icon code to control.c
1093     Revision:
1094       disorder--mainline--0.1--patch-272
1095
1096     * gdisorder/control.c: Split icon code out to a control.c.
1097     * gdisorder/gdisorder.c: Split icon code out to a control.c.
1098     * gdisorder/queue.c: Rename 'playing' to 'playing_track' to avoid
1099       conflict with now-global playing boolean.
1100
1101     new files:
1102      gdisorder/control.c
1103
1104     modified files:
1105      ChangeLog.d/disorder--mainline--0.1 gdisorder/Makefile.am
1106      gdisorder/gdisorder.c gdisorder/gdisorder.h gdisorder/queue.c
1107
1108
1109 2006-04-12 19:45:13 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-271
1110
1111     Summary:
1112       Fix queue/recent title truncation.
1113     Revision:
1114       disorder--mainline--0.1--patch-271
1115
1116     * gdisorder/queue.c: Determine title cell width each time round rather
1117       than stashing it.  Eliminates truncation of rightmost title.
1118
1119     new files:
1120      gdisorder/TODO
1121
1122     modified files:
1123      ChangeLog.d/disorder--mainline--0.1 gdisorder/queue.c
1124
1125
1126 2006-04-12 18:36:05 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-270
1127
1128     Summary:
1129       Pause and scratch buttons for gdisorder
1130     Revision:
1131       disorder--mainline--0.1--patch-270
1132
1133     The scratch button doesn't currently use the same trick as the GUI to be
1134     sure it's scratching exactly the right thing.  Since the display is much
1135     more likely to be up to date that's less of an issue here.  Still, it
1136     would be good to fix it sometime.
1137     
1138     * gdisorder/gdisorder.c: Icon bar between menu bar and tabs containing
1139       pause/resume buttons and a scratch button.  Pause and resume are
1140       actually separate buttons but exactly one is ever visible at any given
1141       time.
1142     
1143     * lib/eclient.c: Implement _pause/_resume/_scratch commands.
1144       protocol_error() takes an operation not a client, since the operation
1145       pointer in the client may be the wrong one by the point it gets called.
1146       Support the 'state' log entry.
1147     
1148     * server/server.c: The 'log' command now issues some initial lines to
1149       synchronize the current state.
1150     
1151     * images/pause.png: Pause icon.
1152     
1153     * images/play.png: Play icon.
1154
1155     new files:
1156      images/.arch-ids/pause.png.id images/.arch-ids/play.png.id
1157      images/pause.png images/play.png
1158
1159     modified files:
1160      ChangeLog.d/disorder--mainline--0.1 gdisorder/gdisorder.c
1161      images/Makefile.am lib/eclient.c lib/eclient.h server/server.c
1162
1163
1164 2006-04-11 19:30:38 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-269
1165
1166     Summary:
1167       Display track lengths
1168     Revision:
1169       disorder--mainline--0.1--patch-269
1170
1171     * lib/eclient.c: disorder_eclient_length()
1172     * gdisorder/queue.c: Include track lengths in queue/recent.
1173
1174     modified files:
1175      ChangeLog.d/disorder--mainline--0.1 gdisorder/queue.c
1176      lib/eclient.c lib/eclient.h
1177
1178
1179 2006-04-11 19:10:35 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-268
1180
1181     Summary:
1182       Minor gdisorder fixes.
1183     Revision:
1184       disorder--mainline--0.1--patch-268
1185
1186     * lib/mem.c: Reverse test in xcalloc.  You can ask for count=0 but size=0
1187       will give silly results.
1188     
1189     * gdisorder/choose.c: Build fixes for Mac.
1190     
1191     * gdisorder/queue.c: Cope with completely empty queue.
1192
1193     modified files:
1194      ChangeLog.d/disorder--mainline--0.1 gdisorder/choose.c
1195      gdisorder/queue.c lib/mem.c
1196
1197
1198 2006-04-09 22:12:57 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-267
1199
1200     Summary:
1201       More concise logging
1202     Revision:
1203       disorder--mainline--0.1--patch-267
1204
1205     * server/server.c: Don't log boring errors (EPIPE when talking to a
1206       client in particular).  When we do log an error make sure it's the
1207       correct one (though it usually was anyway).
1208
1209     modified files:
1210      ChangeLog.d/disorder--mainline--0.1 server/server.c
1211
1212
1213 2006-04-09 22:11:42 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-266
1214
1215     Summary:
1216       Kill a recently introduced crash...
1217     Revision:
1218       disorder--mainline--0.1--patch-266
1219
1220     * lib/cache.c: Don't try to clean the cache if it does not exist yet!
1221
1222     modified files:
1223      ChangeLog.d/disorder--mainline--0.1 lib/cache.c
1224
1225
1226 2006-04-09 22:03:52 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-265
1227
1228     Summary:
1229       Title bar for gdisorder queue/recent listing
1230     Revision:
1231       disorder--mainline--0.1--patch-265
1232
1233     * gdisorder/queue.c: Rewrite in terms of layouts.  This proved to be the
1234       least painful way of getting a title bar which panned in synch.
1235     * gdisorder/gdisorder.rc: gdisorder-title style is (by default) white on
1236       black in a bold font.  *.row-title is bound to it.
1237     * lib/mem.c: xcalloc().
1238
1239     modified files:
1240      ChangeLog.d/disorder--mainline--0.1 gdisorder/gdisorder.rc
1241      gdisorder/queue.c lib/mem.c lib/mem.h
1242
1243
1244 2006-04-08 11:44:00 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-264
1245
1246     Summary:
1247       Update CHANGES.
1248     Revision:
1249       disorder--mainline--0.1--patch-264
1250
1251     * CHANGES: updated.
1252
1253     modified files:
1254      CHANGES ChangeLog.d/disorder--mainline--0.1
1255
1256
1257 2006-04-08 11:42:31 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-263
1258
1259     Summary:
1260       Cache track lookups that use regexps.
1261     Revision:
1262       disorder--mainline--0.1--patch-263
1263
1264     Top-level track lookups generally involve scanning over the whole
1265     database and filtering.  This is significantly slower than any other
1266     lookup - noticably slow in one slightly underpowered installation - so
1267     well worthwhile caching the results.
1268     
1269     Note that we do not have a call to cache_expire anywhere in the server
1270     yet.  It doesn't matter: there is a daily automatic rescan, and all the
1271     cached file lookups are junked at the end of any rescan, so a cache entry
1272     never has a lifetime much greater than a day anyway.
1273     
1274     * lib/cache.c: cache_clean() allows selective or total elimination of
1275       cache elements.
1276     * server/trackdb.c: Clean out track lookup cache when a rescan completes.
1277     * server/server.c: Cache track lookups that use regexps.
1278
1279     modified files:
1280      ChangeLog.d/disorder--mainline--0.1 lib/cache.c lib/cache.h
1281      server/server.c server/trackdb.c server/trackdb.h
1282
1283
1284 2006-04-05 22:37:10 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-262
1285
1286     Summary:
1287       Better reporting.
1288     Revision:
1289       disorder--mainline--0.1--patch-262
1290
1291     * lib/eclient.c: 'report' callback to signal what's going on to the
1292       application.
1293     * gdisorder/choose.c, gdisorder/queue.c: Set report line when we start a
1294       command.
1295     * lib/client.c: Clear the report line when the client goes idle.
1296
1297     modified files:
1298      ChangeLog.d/disorder--mainline--0.1 clients/test-eclient.c
1299      gdisorder/choose.c gdisorder/client.c gdisorder/queue.c
1300      lib/eclient.c lib/eclient.h
1301
1302
1303 2006-04-05 22:24:37 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-261
1304
1305     Summary:
1306       Tidying up
1307     Revision:
1308       disorder--mainline--0.1--patch-261
1309
1310     * templates/options.transform: Removed because now obsolete.
1311     * CHANGES: Note the move here too.
1312
1313     removed files:
1314      templates/options.transform
1315
1316     modified files:
1317      CHANGES ChangeLog.d/disorder--mainline--0.1
1318      templates/Makefile.am
1319
1320
1321 2006-04-05 21:34:37 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-260
1322
1323     Summary:
1324       Correct text and sorting in track choice tab
1325     Revision:
1326       disorder--mainline--0.1--patch-260
1327
1328     * lib/configuration.c: 'transform' directive moved here from web options.
1329     * lib/trackname.c: trackname_transform() and compare_tracks() moved from
1330       CGI code.
1331     * server/cgi.c: Don't parse 'transform' directive.  cgi_transform() moved
1332       to trackname.c.
1333     * server/dcgi.c: compare_multi() moved to trackname.c.
1334     
1335     * gdisorder/choose.c: Display and sort directory and track names using
1336       'transform' directive, as the web interface.
1337     
1338     * README.upgrades: Mention move of 'transform'.
1339     * doc/disorder_config.5.in: Move documentation for 'transform' to its new
1340       section.
1341     
1342     * examples/config.sample.in: 'transform' directives moved to config file.
1343     * debian/disorder.config: 'transform' directives moved to config file.
1344
1345     modified files:
1346      ChangeLog.d/disorder--mainline--0.1 README.upgrades
1347      debian/disorder.config doc/disorder_config.5.in
1348      examples/config.sample.in gdisorder/choose.c
1349      lib/configuration.c lib/configuration.h lib/trackname.c
1350      lib/trackname.h server/cgi.c server/dcgi.c
1351
1352
1353 2006-04-05 20:23:12 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-259
1354
1355     Summary:
1356       Queue fixes
1357     Revision:
1358       disorder--mainline--0.1--patch-259
1359
1360     * gdisorder/queue.c: Queue now expands to fill horizontal space
1361       available.  Kill a GTK+ error message when there is nothing in the
1362       queue.
1363
1364     modified files:
1365      ChangeLog.d/disorder--mainline--0.1 gdisorder/queue.c
1366
1367
1368 2006-04-02 18:58:23 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-258
1369
1370     Summary:
1371       Memory leak
1372     Revision:
1373       disorder--mainline--0.1--patch-258
1374
1375     * gdisorder/choose.c: Don't leak tree widgets.  It seems GTK+ remembers
1376       pointers to them somewhere even after thay have been deparented,
1377       frustrating the garbage collector.
1378
1379     modified files:
1380      ChangeLog.d/disorder--mainline--0.1 gdisorder/choose.c
1381
1382
1383 2006-04-02 18:50:54 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-257
1384
1385     Summary:
1386       Prettier colors
1387     Revision:
1388       disorder--mainline--0.1--patch-257
1389
1390     * gdisorder/choose.c: Don't set colors explicitly, just set widget names
1391       instead.
1392     
1393     * gdisorder/gdisorder.c: Apply a default style.
1394     
1395     * gdisorder/misc.c: scroll_widget() adds a GtkViewport to non-GtkLayout
1396       widgets and sets the name of the scrolled window's child (i.e. the
1397       GtkViewport or the GtkLayout).
1398     
1399     * gdisorder/queue.c: Use a GtkTable instead of a list store in order to
1400       colorize rows conveniently.  Still not happy with the queue views but
1401       they look better than they did.
1402     
1403     * doc/gdisorder.1.in: Start of a man page for gdisorder.
1404     
1405     * gdisorder/gdisorder.rc: Default style information for gdisorder.
1406     
1407     * scripts/text2c: Script to convert gdisorder.rc (or other files) into a
1408       variable in C.
1409
1410     new files:
1411      doc/gdisorder.1.in gdisorder/gdisorder.rc scripts/text2c
1412
1413     modified files:
1414      ChangeLog.d/disorder--mainline--0.1 doc/Makefile.am
1415      gdisorder/Makefile.am gdisorder/choose.c gdisorder/gdisorder.c
1416      gdisorder/gdisorder.h gdisorder/misc.c gdisorder/queue.c
1417      scripts/Makefile.am
1418
1419
1420 2006-04-02 14:55:02 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-256
1421
1422     Summary:
1423       State reporting to event log.
1424     Revision:
1425       disorder--mainline--0.1--patch-256
1426
1427     * server/play.c: Report state changes to event log.
1428     * server/server.c: Report volume changes to event log.
1429     
1430     * doc/disorder_protocol.5.in: Document the above.
1431     
1432     * scripts/inst: Correct path to CGI.
1433     * debian/rules.m4: Correct path to CGI.
1434
1435     modified files:
1436      ChangeLog.d/disorder--mainline--0.1 debian/rules.m4
1437      doc/disorder_protocol.5.in scripts/inst server/play.c
1438      server/server.c
1439
1440
1441 2006-04-02 14:43:19 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-255
1442
1443     Summary:
1444       Tidying up
1445     Revision:
1446       disorder--mainline--0.1--patch-255
1447
1448     * gdisorder/Makefile.am: Lose 'gtk' prefix from source files.
1449
1450     modified files:
1451      ChangeLog.d/disorder--mainline--0.1 gdisorder/Makefile.am
1452
1453     renamed files:
1454      gdisorder/gtkchoose.c
1455        ==> gdisorder/choose.c
1456      gdisorder/gtkclient.c
1457        ==> gdisorder/client.c
1458      gdisorder/gtkmisc.c
1459        ==> gdisorder/misc.c
1460      gdisorder/gtkqueue.c
1461        ==> gdisorder/queue.c
1462
1463
1464 2006-04-02 14:42:14 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-254
1465
1466     Summary:
1467       Make scroll bar arrows work.
1468     Revision:
1469       disorder--mainline--0.1--patch-254
1470
1471     * gdisorder/gtkmisc.c: Fix up scroll step increments for layouts, which
1472       for some reason default to 0.
1473
1474     modified files:
1475      ChangeLog.d/disorder--mainline--0.1 gdisorder/gtkmisc.c
1476
1477
1478 2006-04-02 11:52:52 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-253
1479
1480     Summary:
1481       Mark currently playing tracks in the choose track widget.
1482     Revision:
1483       disorder--mainline--0.1--patch-253
1484
1485     * gdisorder/gtkchoose.c: Display the notes icon next to tracks that are
1486       queued or playing.
1487     * gdisorder/gtkqueue.c: Notify Choose tab when then the queue or playing
1488       track change.  New queued() function to tell whether a track is queued
1489       or playing.
1490     * gdisorder/gtkmisc.c: find_image() loads images into the cache as
1491       pixbufs.
1492     * lib/cache.c: More careful checking for cache expiry, since we may have
1493       very large lifetimes.
1494     * images/notes.png: New notes icon to mark currently playing tracks.
1495     * configure.ac: Build and install images/ for GTK+ builds as well as
1496       server builds.  We share the images between the two.
1497     
1498     * gdisorder/gtkchoose.c: If the Choose layout shrinks then invalidate the
1499       regions outside it, since they are not redrawn otherwise.
1500
1501     new files:
1502      images/.arch-ids/notes.png.id images/notes.png
1503
1504     modified files:
1505      ChangeLog.d/disorder--mainline--0.1 configure.ac
1506      gdisorder/gdisorder.h gdisorder/gtkchoose.c
1507      gdisorder/gtkmisc.c gdisorder/gtkqueue.c images/Makefile.am
1508      lib/cache.c
1509
1510
1511 2006-04-01 19:00:06 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-252
1512
1513     Summary:
1514       Client-only (and Mac) fixups
1515     Revision:
1516       disorder--mainline--0.1--patch-252
1517
1518     The result of this works on my Mac with a minimal configuration file,
1519     connecting to the server on a Linux box using TCP/IP.
1520     
1521     * configure.ac: Don't search fink db4 includes if not building server.
1522       Fix bad test for want_server when checking db version.
1523     * lib/log.c: Use explicit casts and wide types when printing timestamps
1524       in debug messages.
1525     * lib/configuration.c: Removed server-specific configuration checks.
1526
1527     modified files:
1528      ChangeLog.d/disorder--mainline--0.1 configure.ac
1529      lib/configuration.c lib/log.c
1530
1531
1532 2006-04-01 18:20:39 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-251
1533
1534     Summary:
1535       Split up clients from server and allow configure-time selection.
1536     Revision:
1537       disorder--mainline--0.1--patch-251
1538
1539     The command line clients are split into their own directory, clients/ and
1540     everything else that used to be in progs/ is now in server.  You can
1541     control what is built with --without-python, --without-gtk and
1542     --without-server.
1543     
1544     * configure.ac: Tell the top-level makefile what subdirectories to build
1545       based on --with/--without options.  We also only ask for libraries that
1546       we actually need.
1547       The shipped getopt is abolished until someone wants it enough to figure
1548       out a convenient way of having it used from multiple directories.
1549     * clients/disorder.c: Abolish --length option.  It was always in the
1550       wrong place anyway and the client/server build split makes it even
1551       siller as well as inconvenient.
1552
1553     new files:
1554      clients/.arch-ids/=id clients/Makefile.am
1555
1556     removed files:
1557      DESIGN2
1558
1559     modified files:
1560      ChangeLog.d/disorder--mainline--0.1 Makefile.am
1561      clients/disorder.c configure.ac prepare server/Makefile.am
1562
1563     renamed files:
1564      progs/.arch-ids/=id
1565        ==> server/.arch-ids/=id
1566      progs/authorize.c
1567        ==> clients/authorize.c
1568      progs/authorize.h
1569        ==> clients/authorize.h
1570      progs/disorder.c
1571        ==> clients/disorder.c
1572      progs/test-eclient.c
1573        ==> clients/test-eclient.c
1574
1575     new directories:
1576      clients clients/.arch-ids server/.arch-ids
1577
1578     removed directories:
1579      progs/.arch-ids
1580
1581     renamed directories:
1582      progs
1583        ==> server
1584
1585
1586 2006-04-01 14:46:11 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-250
1587
1588     Summary:
1589       Minor fixes.
1590     Revision:
1591       disorder--mainline--0.1--patch-250
1592
1593     * gdisorder/gdisorder.c: Refetch server state once every 10m.
1594     * gdisorder/gtkchoose.c: Make background white.  Probably the wrong
1595       answer - we really want to make it do whatever the standard tree view
1596       widget does.
1597
1598     modified files:
1599      ChangeLog.d/disorder--mainline--0.1 gdisorder/gdisorder.c
1600      gdisorder/gtkchoose.c
1601
1602
1603 2006-04-01 14:27:41 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-249
1604
1605     Summary:
1606       Show currently playing track
1607     Revision:
1608       disorder--mainline--0.1--patch-249
1609
1610     * lib/eclient.c: disorder_eclient_playing() reports currently playing
1611       track.
1612     * gdisorder/gtkqueue.c: Bung currently playing track at top of queue.  It
1613       could really do with being a separate color or something.
1614     * gdisorder/gdisorder.c: Call playing_update() when the currently playing
1615       track might have changed.
1616
1617     modified files:
1618      ChangeLog.d/disorder--mainline--0.1 gdisorder/gdisorder.c
1619      gdisorder/gdisorder.h gdisorder/gtkqueue.c lib/eclient.c
1620      lib/eclient.h
1621
1622
1623 2006-04-01 12:57:47 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-248
1624
1625     Summary:
1626       Pick tracks in gdisorder.
1627     Revision:
1628       disorder--mainline--0.1--patch-248
1629
1630     * gdisorder/gtkchoose.c: Choose tracks from a tree structure.
1631     
1632     * gdisorder/gdisorder.c: choose_widget() moved to new gtkchoose.c.
1633     * gdisorder/gtkqueue.c: Use scroll_widget().
1634     * gdisorder/gtkclient.c: Split out popup_protocol_error().
1635     * gdisorder/gtkmisc.c: Split out scroll_widget().
1636     
1637     * lib/eclient.c: Support null callbacks.
1638
1639     new files:
1640      gdisorder/gtkchoose.c gdisorder/gtkmisc.c
1641
1642     modified files:
1643      ChangeLog.d/disorder--mainline--0.1 gdisorder/Makefile.am
1644      gdisorder/gdisorder.c gdisorder/gdisorder.h
1645      gdisorder/gtkclient.c gdisorder/gtkqueue.c lib/eclient.c
1646      lib/eclient.h
1647
1648
1649 2006-03-30 22:29:29 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-247
1650
1651     Summary:
1652       Starting blocks for a GTK+ client
1653     Revision:
1654       disorder--mainline--0.1--patch-247
1655
1656     Currently the client can display the queue and recently played list and
1657     keep up to date with them, and not much else.  Hence it's noinst_ for
1658     now.
1659     
1660     It's in a separate directory so that we can easily turn it on or off from
1661     the configure with --with arguments.  At some point the server and its
1662     helpers will have to be moved to a new directory for the same reason so
1663     you can conveniently do a client-only build.
1664     
1665     * lib/cache.c: Generic cache.
1666     * lib/asprintf.c: New byte_xvasprintf().
1667     * lib/authhash.c: const-correct.
1668     * lib/client.c: Split with_sockaddr() out to client-common.c
1669     * lib/hash.c: New hash_foreach()  (used by cache expiry)
1670     * lib/queue.h: New selected field in queue entries for use by client.
1671       Not in marshalled form!
1672     * lib/queue.c: queue_unmarshall_vec() for parsing pre-split queue
1673       descriptions.
1674     * lib/client-common.c: Common code for the two C client implementations.
1675     * lib/eclient.c: New asynchronous C client.
1676     
1677     * gdisorder/gdisorder.c: Main program for GTK+ client.  Not finished!
1678     * gdisorder/gtkqueue.c: Queue management in GTK+.
1679     * gdisorder/gtkclient.c: Wrap an eclient up so it can be used in a GTK+
1680       program.
1681     * gdisorder/gdisorder.h: Header file for GTK+ client.
1682     
1683     * progs/test-eclient.c: Test rig for eclient.c
1684     
1685     * doc/disorder_protocol.5.in: XX4 description was missing from last
1686       commit.
1687     
1688     * configure.ac: Find GTK+/Glib includes; we need to fix them up to use
1689       -isystem as they can provoke warnings.
1690
1691     new files:
1692      gdisorder/.arch-ids/=id gdisorder/Makefile.am
1693      gdisorder/gdisorder.c gdisorder/gdisorder.h
1694      gdisorder/gtkclient.c gdisorder/gtkqueue.c lib/cache.c
1695      lib/cache.h lib/client-common.c lib/client-common.h
1696      lib/eclient.c lib/eclient.h progs/test-eclient.c
1697
1698     modified files:
1699      ChangeLog.d/disorder--mainline--0.1 Makefile.am configure.ac
1700      doc/disorder_protocol.5.in lib/Makefile.am lib/asprintf.c
1701      lib/authhash.c lib/authhash.h lib/client.c lib/hash.c
1702      lib/hash.h lib/printf.h lib/queue.c lib/queue.h
1703      progs/Makefile.am {arch}/=tagging-method
1704
1705     new directories:
1706      gdisorder gdisorder/.arch-ids
1707
1708
1709 2006-03-30 21:50:14 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-246
1710
1711     Summary:
1712       Log changes
1713     Revision:
1714       disorder--mainline--0.1--patch-246
1715
1716     Required for work that isn't checked in yet.
1717     
1718     * progs/server.c: Log returns 254 to indicate an indefinite body.
1719     * doc/disorder_protocol.5.in: Document xx4 responses and log namespace
1720       change.
1721     * lib/queue.c: Change log tags so that they are valid C identifiers.
1722
1723     modified files:
1724      ChangeLog.d/disorder--mainline--0.1 doc/disorder_protocol.5.in
1725      lib/queue.c progs/server.c
1726
1727
1728 2006-03-26 23:28:22 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-245
1729
1730     Summary:
1731       Tidier debug output.
1732     Revision:
1733       disorder--mainline--0.1--patch-245
1734
1735     * lib/log.c: Strip ../ from filenames in debug output.
1736
1737     modified files:
1738      ChangeLog.d/disorder--mainline--0.1 lib/log.c
1739
1740
1741 2006-03-26 19:36:32 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-244
1742
1743     Summary:
1744       Quoting bug and response code sanity
1745     Revision:
1746       disorder--mainline--0.1--patch-244
1747
1748     * lib/split.c: Quote strings containing newlines properly.
1749     * progs/server.c: Coherent response code policy.
1750     * doc/disorder_protocol.5.in: Document response code policy and also the
1751       authentication protocol.
1752
1753     modified files:
1754      ChangeLog.d/disorder--mainline--0.1 doc/disorder_protocol.5.in
1755      lib/split.c progs/server.c
1756
1757
1758 2006-03-25 18:28:17 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-243
1759
1760     Summary:
1761       Release 1.5.1
1762     Revision:
1763       disorder--mainline--0.1--patch-243
1764
1765     * configure.ac: Release 1.5.1
1766     * CHANGES: Bring up to date
1767
1768     modified files:
1769      CHANGES ChangeLog.d/disorder--mainline--0.1 configure.ac
1770      debian/changelog
1771
1772
1773 2006-03-22 20:38:03 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-242
1774
1775     Summary:
1776       Buglet in choose page
1777     Revision:
1778       disorder--mainline--0.1--patch-242
1779
1780     * templates/choosealpha.html: correct '*' link.
1781
1782     modified files:
1783      ChangeLog.d/disorder--mainline--0.1 templates/choosealpha.html
1784
1785
1786 2006-03-20 22:43:46 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-241
1787
1788     Summary:
1789       Documentation setting
1790     Revision:
1791       disorder--mainline--0.1--patch-241
1792
1793     * doc/disorder_config.5.in: Trivial formatting fix.
1794
1795     modified files:
1796      ChangeLog.d/disorder--mainline--0.1 doc/disorder_config.5.in
1797
1798
1799 2006-03-20 22:41:00 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-240
1800
1801     Summary:
1802       Release 1.5
1803     Revision:
1804       disorder--mainline--0.1--patch-240
1805
1806     * lib/configuration.c: Compatibility alias 'nice' for 'nice_rescan' to
1807       keep old config files working (it was in the example even if it wasn't
1808       documented).
1809     * examples/config.sample.in: Remove 'nice' from sample config.
1810     * configure.ac: Release 1.5
1811
1812     modified files:
1813      ChangeLog.d/disorder--mainline--0.1 configure.ac
1814      debian/changelog debian/disorder.config
1815      examples/config.sample.in lib/configuration.c
1816
1817
1818 2006-03-20 22:30:00 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-239
1819
1820     Summary:
1821       Administrivia
1822     Revision:
1823       disorder--mainline--0.1--patch-239
1824
1825     * templates/help.html: Eliminate 'just'.
1826     * doc/checklist.txt: More checklist items.
1827     * templates/about.html: Copyright dates
1828     * scripts/dist: Copyright dates
1829
1830     modified files:
1831      ChangeLog.d/disorder--mainline--0.1 doc/checklist.txt
1832      scripts/dist templates/about.html templates/help.html
1833
1834
1835 2006-03-20 21:55:48 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-238
1836
1837     Summary:
1838       Bug blame
1839     Revision:
1840       disorder--mainline--0.1--patch-238
1841
1842     * BUGS: Point a finger of blame at Libtool.
1843
1844     modified files:
1845      BUGS ChangeLog.d/disorder--mainline--0.1
1846
1847
1848 2006-03-19 20:04:48 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-237
1849
1850     Summary:
1851       Attribute scratches properly.
1852     Revision:
1853       disorder--mainline--0.1--patch-237
1854
1855     * progs/play.c: Attribute scratches to the user who requested the scratch.
1856
1857     modified files:
1858      CHANGES ChangeLog.d/disorder--mainline--0.1 progs/play.c
1859
1860
1861 2006-03-19 20:03:26 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-236
1862
1863     Summary:
1864       Administrivia
1865     Revision:
1866       disorder--mainline--0.1--patch-236
1867
1868     * progs/rescan.c: Copyright date.
1869     * progs/play.c: Copyright date.
1870     * README: Copyright date.
1871     * scripts/dist: cd into =build if it exists.
1872
1873     modified files:
1874      ChangeLog.d/disorder--mainline--0.1 README progs/play.c
1875      progs/rescan.c scripts/dist
1876
1877
1878 2006-03-19 00:19:32 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-235
1879
1880     Summary:
1881       New speaker_nice option.
1882     Revision:
1883       disorder--mainline--0.1--patch-235
1884
1885     * lib/configuration.c: New speaker_nice option.
1886     * progs/disorderd.c: Start speaker process as root.
1887     * progs/speaker.c: Set nice value, ignore SIGPIPE and become mortal.
1888     * progs/trackdb.c: Reset subprocess priority to zero.  (Ineffectual if
1889       the main server is already at positive niceness.)
1890     * lib/user.c: Moved to lib since shared between several programs.
1891     
1892     * doc/disorder_config.5.in: Document speaker_nice.
1893
1894     modified files:
1895      CHANGES ChangeLog.d/disorder--mainline--0.1
1896      doc/disorder_config.5.in lib/Makefile.am lib/configuration.c
1897      lib/configuration.h progs/Makefile.am progs/disorderd.c
1898      progs/speaker.c progs/trackdb.c templates/credits.html
1899
1900     renamed files:
1901      progs/user.c
1902        ==> lib/user.c
1903      progs/user.h
1904        ==> lib/user.h
1905
1906
1907 2006-03-18 23:52:04 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-234
1908
1909     Summary:
1910       Move deployed filtering of track names closer to the right place
1911     Revision:
1912       disorder--mainline--0.1--patch-234
1913
1914     * progs/dcgi.c: Use the server's regexp filtering rather than getting all
1915       the files and throwing away the ones that do not match.
1916     
1917     * progs/disorder.c: Correct handling of variable-argument commands
1918       Make regexp support available to files/allfiles/dirs.
1919     
1920     * progs/trackdb.c: Correct handling of pcre_exec() return value, so we
1921       don't report no match if there are subpatterns.  We still log
1922       unexpected errors.
1923     
1924     * templates/choosealpha.html: With server-based regexp filtering, we need
1925       slightly more subtle regexps to keep the initial 'the' out.  Perhaps
1926       better still (for choosealpha) would be some kind of server-held cache,
1927       but we'll see what performance is like in reality.
1928     
1929     * doc/disorder.1.in: Document regexp support in the command line client.
1930
1931     modified files:
1932      CHANGES ChangeLog.d/disorder--mainline--0.1 doc/disorder.1.in
1933      doc/disorder_config.5.in progs/dcgi.c progs/disorder.c
1934      progs/trackdb.c templates/choosealpha.html
1935
1936
1937 2006-03-18 21:00:33 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-233
1938
1939     Summary:
1940       First round of process priority changes.
1941     Revision:
1942       disorder--mainline--0.1--patch-233
1943
1944     * progs/disorderd.c: Apply nice_server config setting at startup.
1945     * progs/rescan.c: nice_rescan applies to whole rescan process, not just
1946       to collection scanner subprocesses.
1947     * lib/configuration.c: 'nice' renamed to nice_rescan.  Added
1948       nice_server.
1949     * doc/disorder_config.5.in: Document nice_rescan and nice_server.  (The
1950       former was never documented in its old guise as 'nice'.)
1951
1952     modified files:
1953      CHANGES ChangeLog.d/disorder--mainline--0.1
1954      doc/disorder_config.5.in lib/configuration.c
1955      lib/configuration.h progs/disorderd.c progs/rescan.c
1956
1957
1958 2006-03-18 20:43:50 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-232
1959
1960     Summary:
1961       update CHANGES
1962     Revision:
1963       disorder--mainline--0.1--patch-232
1964
1965     * CHANGES: missing CHANGES note for the last commit.
1966
1967     modified files:
1968      CHANGES ChangeLog.d/disorder--mainline--0.1
1969
1970
1971 2006-03-18 20:42:17 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-231
1972
1973     Summary:
1974       Don't crash when the user tries to pause a non-pausible track.
1975     Revision:
1976       disorder--mainline--0.1--patch-231
1977
1978     * progs/play.c: Correct test for pause-capable players, which contained
1979       an embarassing parenthesization error.  Because of this mistake, if you
1980       tried to pause a track using a non-pause-capable player, the server
1981       would immediately crash.
1982
1983     modified files:
1984      ChangeLog.d/disorder--mainline--0.1 progs/play.c
1985
1986
1987 2006-03-18 20:36:01 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-230
1988
1989     Summary:
1990       Fix a disorder-speaker crash
1991     Revision:
1992       disorder--mainline--0.1--patch-230
1993
1994     * progs/speaker.c: If the speaker process detects underrun then it should
1995       not later treat written_bytes as a byte count!  This could lead to the
1996       speaker process crashing.
1997
1998     modified files:
1999      CHANGES ChangeLog.d/disorder--mainline--0.1 progs/speaker.c
2000      scripts/inst
2001
2002
2003 2006-02-19 11:39:46 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-229
2004
2005     Summary:
2006       Missing build dependencies
2007     Revision:
2008       disorder--mainline--0.1--patch-229
2009
2010     * debian/control (Build-Depends): Was missing libao-dev.
2011
2012     modified files:
2013      ChangeLog.d/disorder--mainline--0.1 debian/control
2014
2015
2016 2005-11-15 19:28:43 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-228
2017
2018     Summary:
2019       Report track played so far properly.
2020     Revision:
2021       disorder--mainline--0.1--patch-228
2022
2023     * progs/speaker.c: Record (and therefore report) amount of a track played
2024       so far, which got lost in the ALSA transition.
2025
2026     modified files:
2027      CHANGES ChangeLog.d/disorder--mainline--0.1 doc/checklist.txt
2028      progs/speaker.c
2029
2030     renamed files:
2031      doc/ui-checklist.txt
2032        ==> doc/checklist.txt
2033
2034
2035 2005-11-15 19:14:45 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-227
2036
2037     Summary:
2038       Clean up logging FD leaks.
2039     Revision:
2040       disorder--mainline--0.1--patch-227
2041
2042     * lib/logfd.c: Don't leak reader end of log pipe when it's finished.
2043     * progs/play.c: Don't leak writer end of log pipe if fork fails.
2044
2045     modified files:
2046      CHANGES ChangeLog.d/disorder--mainline--0.1 configure.ac
2047      lib/logfd.c progs/play.c
2048
2049
2050 2005-11-05 15:38:53 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-226
2051
2052     Summary:
2053       Release 1.4
2054     Revision:
2055       disorder--mainline--0.1--patch-226
2056
2057     * BUGS: Document past problems with VIA OSS driver.
2058     * configure.ac: Change version number.
2059     * debian/changelog: New version number.
2060
2061     modified files:
2062      BUGS CHANGES ChangeLog.d/disorder--mainline--0.1 configure.ac
2063      debian/changelog
2064
2065
2066 2005-11-05 15:01:16 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-225
2067
2068     Summary:
2069       Update copyright dates and testing
2070     Revision:
2071       disorder--mainline--0.1--patch-225
2072
2073     * doc/ui-checklist.txt: More checks.
2074     * scripts/check: Ignore certain files.
2075
2076     new files:
2077      scripts/copyright.exceptions
2078
2079     modified files:
2080      ChangeLog.d/disorder--mainline--0.1 doc/ui-checklist.txt
2081      lib/syscalls.c lib/syscalls.h plugins/Makefile.am
2082      plugins/exec.c plugins/shell.c scripts/check
2083
2084
2085 2005-11-05 14:36:15 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-224
2086
2087     Summary:
2088       New stopwords
2089     Revision:
2090       disorder--mainline--0.1--patch-224
2091
2092     * examples/config.sample.in: Add 'for' and 'is' to stopwords.
2093     * debian/disorder.config: Add 'for' and 'is' to stopwords.
2094
2095     modified files:
2096      ChangeLog.d/disorder--mainline--0.1 debian/disorder.config
2097      examples/config.sample.in
2098
2099
2100 2005-11-05 14:34:09 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-223
2101
2102     Summary:
2103       Documentation cleanups.
2104     Revision:
2105       disorder--mainline--0.1--patch-223
2106
2107     * templates/help.html: Missing words.
2108     * doc/disorder-dump.8.in: Typo.
2109     * doc/disorder.3: Catch up with reality.
2110     * doc/disorder_protocol.5.in: Document 'pause' and 'resume'.
2111
2112     modified files:
2113      ChangeLog.d/disorder--mainline--0.1 doc/disorder-dump.8.in
2114      doc/disorder.3 doc/disorder_protocol.5.in doc/ui-checklist.txt
2115      templates/help.html
2116
2117
2118 2005-11-05 14:19:53 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-222
2119
2120     Summary:
2121       Make @nfiles@ consistent.
2122     Revision:
2123       disorder--mainline--0.1--patch-222
2124
2125     * progs/dcgi.c: In @nfiles@, if cgi arg files is not set then default to
2126       1 (to be consistent with everywhere else).
2127
2128     modified files:
2129      ChangeLog.d/disorder--mainline--0.1 progs/dcgi.c
2130
2131
2132 2005-11-05 14:15:52 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-221
2133
2134     Summary:
2135       No Darwin support for now.
2136     Revision:
2137       disorder--mainline--0.1--patch-221
2138
2139     Remove references to Darwin, since ALSA dependency breaks it.  You could
2140     still build without support for raw players, but it won't work "out of
2141     the box".
2142
2143     removed files:
2144      README.darwin
2145
2146     modified files:
2147      BUGS ChangeLog.d/disorder--mainline--0.1 Makefile.am
2148
2149
2150 2005-11-04 12:49:51 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-220
2151
2152     Summary:
2153       disorder-speaker now uses ALSA.
2154     Revision:
2155       disorder--mainline--0.1--patch-220
2156
2157     This seems to work better than the various libao attempts.  We still use
2158     a libao plugin to capture decoded audio from ogg123 etc.
2159     
2160     * progs/speaker.c: Use ALSA directly rather than libao.
2161     * lib/configuration.c: Configurable ALSA device.
2162     * lib/log.c: Timestamp debug messages.
2163     * configure.ac: Chheck for ALSA library.
2164     * doc/disorder_config.5.in: Document 'device' option.
2165     * README: Mention ALSA dependency.
2166     * debian/control: Depend on alsa development library package.
2167
2168     modified files:
2169      ChangeLog.d/disorder--mainline--0.1 README configure.ac
2170      debian/changelog debian/control doc/disorder_config.5.in
2171      lib/configuration.c lib/configuration.h lib/log.c
2172      progs/Makefile.am progs/speaker.c
2173
2174
2175 2005-11-02 17:58:28 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-219
2176
2177     Summary:
2178       Log speaker stderr.
2179     Revision:
2180       disorder--mainline--0.1--patch-219
2181
2182     * progs/play.c: log speaker stderr
2183
2184     modified files:
2185      ChangeLog.d/disorder--mainline--0.1 debian/changelog
2186      progs/play.c
2187
2188
2189 2005-11-01 15:54:37 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-218
2190
2191     Summary:
2192       Typo fixes
2193     Revision:
2194       disorder--mainline--0.1--patch-218
2195
2196     * doc/disorder.1.in: Typo fixes.
2197
2198     modified files:
2199      ChangeLog.d/disorder--mainline--0.1 doc/disorder.1.in
2200
2201
2202 2005-10-23 13:59:59 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-217
2203
2204     Summary:
2205       Fix process-management problems.
2206     Revision:
2207       disorder--mainline--0.1--patch-217
2208
2209     * lib/hash.c: Grow array correctly so we don't lose PIDs.
2210     * lib/queue.h: Abolish per-track signal.  Too much hassle for not enough
2211       gain.
2212     * progs/play.c: Abolish per-track signal.  Log failures to find PIDs.
2213     * progs/speaker.c: Log too-short grace periods.
2214     
2215     * doc/disorder_config.5.in: Document the above.
2216
2217     modified files:
2218      ChangeLog.d/disorder--mainline--0.1 README.raw
2219      debian/changelog doc/disorder_config.5.in lib/hash.c
2220      lib/queue.c lib/queue.h progs/play.c progs/speaker.c
2221
2222
2223 2005-10-22 16:22:16 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-216
2224
2225     Summary:
2226       Various shutdown fixes
2227     Revision:
2228       disorder--mainline--0.1--patch-216
2229
2230     * progs/play.c: Terminate all players on shutdown, not just the one for
2231       the currently playing track.
2232     * lib/configuration.c: Default signal to forcibly terminate players is
2233       now SIGKILL.
2234     * examples/config.sample.in: Don't use --signal=SIGKILL any more.
2235     * debian/disorder.config: Don't use --signal=SIGKILL any more.
2236     * doc/disorder_config.5.in: Document change to SIGKILL.
2237
2238     modified files:
2239      CHANGES ChangeLog.d/disorder--mainline--0.1 README.raw
2240      debian/disorder.config doc/disorder_config.5.in
2241      examples/config.sample.in lib/configuration.c progs/play.c
2242
2243
2244 2005-10-22 16:03:27 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-215
2245
2246     Summary:
2247       Stop web UI refreshing like mad
2248     Revision:
2249       disorder--mainline--0.1--patch-215
2250
2251     * progs/dcgi.c: Don't clamp refresh to gap if next track in queue is a
2252       random track and random play is not enabled.
2253
2254     modified files:
2255      ChangeLog.d/disorder--mainline--0.1 debian/changelog
2256      progs/dcgi.c
2257
2258
2259 2005-10-16 20:16:30 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-214
2260
2261     Summary:
2262       Don't forget PIDs across reconfiguration.
2263     Revision:
2264       disorder--mainline--0.1--patch-214
2265
2266     This change moves PIDs out of queue entries and instead uses a hash table
2267     to map IDs to PIDs.  The reason is that on reconfigure the queue is saved
2268     and reloaded, losing the PID along the way.
2269     
2270     * lib/hash.c: Simple hash table.
2271     * lib/queue.h: Don't keep PID in queue data structure.
2272     * progs/play.c: Move PID records to a hash table.
2273
2274     new files:
2275      lib/hash.c lib/hash.h
2276
2277     modified files:
2278      ChangeLog.d/disorder--mainline--0.1 lib/Makefile.am
2279      lib/queue.c lib/queue.h progs/play.c
2280
2281
2282 2005-10-16 18:12:13 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-213
2283
2284     Summary:
2285       Clean up rescan abort.
2286     Revision:
2287       disorder--mainline--0.1--patch-213
2288
2289     * progs/trackdb.c: reap_rescan() no longer trashes PID of new rescanner.
2290       trackdb_scan() is now interruptible.  Propagate debug status to
2291       subprocesses.
2292     * progs/deadlock.c: --no-debug option.
2293     * progs/rescan.c: Cleaner abort.  --no-debug option.
2294
2295     modified files:
2296      ChangeLog.d/disorder--mainline--0.1 progs/deadlock.c
2297      progs/rescan.c progs/trackdb-int.h progs/trackdb.c
2298
2299
2300 2005-10-16 17:38:20 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-212
2301
2302     Summary:
2303       Don't forget lookahead on reconfigure.
2304     Revision:
2305       disorder--mainline--0.1--patch-212
2306
2307     * progs/play.c: Commit queue after adding a random track.
2308
2309     modified files:
2310      ChangeLog.d/disorder--mainline--0.1 progs/play.c
2311
2312
2313 2005-10-16 17:33:18 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-211
2314
2315     Summary:
2316       More on disorder-rescan interruption.
2317     Revision:
2318       disorder--mainline--0.1--patch-211
2319
2320     * progs/rescan.c: SA_RESTART for SIGINT/SIGTERM.
2321     * CHANGES: Mention the reconfigure hang bug as fixed.
2322
2323     modified files:
2324      CHANGES ChangeLog.d/disorder--mainline--0.1 progs/rescan.c
2325
2326
2327 2005-10-16 17:24:05 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-210
2328
2329     Summary:
2330       Propagate reconfigure requests to the speaker process.
2331     Revision:
2332       disorder--mainline--0.1--patch-210
2333
2334     This is more work than it sounds because previously the reconfigure code
2335     would leak memory in the absence of a garbage collector.  It still will
2336     on error, but this should be rather rare - if the server fails to parse
2337     the configuration it doesn't tell the speaker to reload it.
2338     
2339     Along the way fixed a logging bug and a rescan bug than could hang the
2340     server in a db close operation.
2341     
2342     * progs/state.c: Transmit reconfiguration requests to the speaker process.
2343     * progs/play.c: Transmit reconfiguration requests to the speaker process.
2344     * progs/speaker.c: Log configuration reloads.
2345     * lib/configuration.c: Free old configs when new ones are installed.
2346       This implies taking a bit more care over when we strdup.
2347       Also put in VALUE/ADDRESS macros for less typo-prone access to
2348       configuration struct members.
2349     * lib/mem.c: xfree() calls free/GC_free as appropriate.  
2350     * lib/charset.c: Use realloc rather than malloc to avoid leaking memory
2351       in non-GC case
2352     * progs/rescan.c: Shut down cleanly on SIGTERM/SIGINT to keep db happy.
2353       Also use stderr rather than stdout to determine whether to log to
2354       syslog or stderr.
2355     * progs/trackdb.c: Only redirect subprogram output if we're not on a
2356       terminal.  Also stomp db_deadlock_pid on a just-in-case basis.
2357
2358     modified files:
2359      ChangeLog.d/disorder--mainline--0.1 lib/charset.c
2360      lib/configuration.c lib/configuration.h lib/mem.c lib/mem.h
2361      progs/play.c progs/play.h progs/rescan.c progs/speaker.c
2362      progs/state.c progs/trackdb.c
2363
2364
2365 2005-10-16 15:44:40 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-209
2366
2367     Summary:
2368       More careful checking for track termination in speaker.
2369     Revision:
2370       disorder--mainline--0.1--patch-209
2371
2372     * progs/speaker.c: Cope with player being interrupted part way through a
2373       frame.
2374
2375     modified files:
2376      ChangeLog.d/disorder--mainline--0.1 debian/changelog
2377      progs/speaker.c
2378
2379
2380 2005-10-16 13:53:34 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-208
2381
2382     Summary:
2383       Workarounds for various external bugs.
2384     Revision:
2385       disorder--mainline--0.1--patch-208
2386
2387     * README.raw: Document ogg123 braindamage.
2388     * examples/config.sample.in: --signal=SIGKILL for ogg123.
2389     * debian/disorder.config: --signal=SIGKILL for ogg123.
2390     * driver/disorder.c: Call exit instead of _exit, to allow for player
2391       cleanup.
2392     * lib/event.c: Work around ptrace braindamage.
2393
2394     modified files:
2395      CHANGES ChangeLog.d/disorder--mainline--0.1 README.raw
2396      debian/changelog debian/disorder.config driver/disorder.c
2397      examples/config.sample.in lib/event.c
2398
2399
2400 2005-10-15 19:20:46 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-207
2401
2402     Summary:
2403       Fix crash in speaker process.
2404     Revision:
2405       disorder--mainline--0.1--patch-207
2406
2407     * progs/speaker.c: Check the number of bits per sample in the incoming
2408       data, not the currently playing track.  This could not only cause the
2409       answer to be potentially wrong, but would crash if there was no playing
2410       track.
2411
2412     modified files:
2413      ChangeLog.d/disorder--mainline--0.1 progs/speaker.c
2414
2415
2416 2005-10-15 15:59:11 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-206
2417
2418     Summary:
2419       Catch up.
2420     Revision:
2421       disorder--mainline--0.1--patch-206
2422
2423     * CHANGES: Mention multi-track editing.
2424
2425     modified files:
2426      CHANGES ChangeLog.d/disorder--mainline--0.1
2427
2428
2429 2005-10-15 15:44:37 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-205
2430
2431     Summary:
2432       Edit prefs for a whole directory at once.
2433     Revision:
2434       disorder--mainline--0.1--patch-205
2435
2436     * progs/dcgi.c: Support editing prefs for multiple track simultaneously.
2437     * templates/choose.html: Link to whole-directory prefs edit.
2438     * templates/prefs.html: Support editing prefs for multiple track
2439       simultaneously.  We lose the raw prefs interface for the time being; it
2440       remains available via the command line however.
2441     * templates/recent.html: New prefs args.
2442     * templates/options.labels: New labels for whole-directory prefs-editing.
2443
2444     modified files:
2445      ChangeLog.d/disorder--mainline--0.1 doc/disorder_config.5.in
2446      progs/dcgi.c templates/choose.html templates/options.labels
2447      templates/prefs.html templates/recent.html
2448
2449
2450 2005-10-15 13:07:00 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-204
2451
2452     Summary:
2453       Random track lookahead.
2454     Revision:
2455       disorder--mainline--0.1--patch-204
2456
2457     * lib/queue.c: Support adding queue entries just before the final random
2458       track.  Cope with reading back in randomly pick tracks from a saved
2459       queue (they have no submitter which was previously not allowed).
2460     * progs/dcgi.c: @who@ now just reports an empty string if there was no
2461       submitter rather than &nbsp;.  Also correct the order of the table of
2462       expansions.
2463     * progs/play.c: add_random_track() adds a random track if random play is
2464       enabled and there is no such track in the queue.  play() now uses that
2465       instead of doing it itself, and doesn't play random tracks found in the
2466       queue if random play is disabled.  It also adds a new random track just
2467       after playing the old one.
2468       If necessary add a random track when play/random play are enabled.
2469     * progs/server.c: Add a new random track if the old one is removed.  Also
2470       when random track is moved to a non-final position in the queue then we
2471       make it into a normal track and add a new random track.
2472     * templates/playing.html: Indicate the random track in the queue and if
2473       playing, using new labels.
2474
2475     modified files:
2476      CHANGES ChangeLog.d/disorder--mainline--0.1 lib/queue.c
2477      lib/queue.h progs/dcgi.c progs/play.c progs/play.h
2478      progs/server.c templates/options.labels templates/playing.html
2479
2480
2481 2005-10-15 12:28:15 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-203
2482
2483     Summary:
2484       Cope with randomly chosen tracks in the queue.
2485     Revision:
2486       disorder--mainline--0.1--patch-203
2487
2488     At the moment nothing adds such tracks to the queue, so this is just
2489     laying foundations.
2490     
2491     * lib/queue.h: New 'random' track state indicates that the track was a
2492       randomly chosen track in the queue rather than explicitly requested.
2493     * progs/dcgi.c: @state@ expansion provides access to track state field in
2494       queue.  Process random tracks just as unplayed ones.
2495     * progs/play.c: Handle 'random' state just like 'unplayed'.
2496     * doc/disorder_config.5.in: Document @state@ expansion and track states.
2497
2498     modified files:
2499      ChangeLog.d/disorder--mainline--0.1 doc/disorder_config.5.in
2500      lib/queue.c lib/queue.h progs/dcgi.c progs/play.c
2501
2502
2503 2005-10-15 11:58:37 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-202
2504
2505     Summary:
2506       Complete label docs.
2507     Revision:
2508       disorder--mainline--0.1--patch-202
2509
2510     * templates/options.labels: Document links.css, missed in previous pass.
2511
2512     modified files:
2513      ChangeLog.d/disorder--mainline--0.1 templates/options.labels
2514
2515
2516 2005-10-15 11:56:27 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-201
2517
2518     Summary:
2519       More change detail.
2520     Revision:
2521       disorder--mainline--0.1--patch-201
2522
2523     * CHANGES: More detail.
2524
2525     modified files:
2526      CHANGES ChangeLog.d/disorder--mainline--0.1
2527
2528
2529 2005-10-15 11:39:22 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-200
2530
2531     Summary:
2532       Move documentation of labels to options.labels.
2533     Revision:
2534       disorder--mainline--0.1--patch-200
2535
2536     * templates/options.labels: Document labels.
2537     * doc/disorder_config.5.in: No longer document labels here.
2538
2539     modified files:
2540      CHANGES ChangeLog.d/disorder--mainline--0.1
2541      doc/disorder_config.5.in templates/options.labels
2542
2543
2544 2005-10-15 11:16:15 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-199
2545
2546     Summary:
2547       New buttons to move to head/tail of queue.
2548     Revision:
2549       disorder--mainline--0.1--patch-199
2550
2551     * images/Makefile.am: Install new images.
2552     * templates/playing.html: New buttons to move to head/tail.
2553     * templates/options.labels: Labels to configure new buttons.
2554     * debian/options.debian: Keep up to date.
2555     * templates/help.html: Document new queue management.
2556     * doc/disorder_config.5.in: Document new labels (at least as well as the
2557       old ones; I am starting to think that the options.* files would be a
2558       better place for this stuff.)
2559
2560     modified files:
2561      CHANGES ChangeLog.d/disorder--mainline--0.1
2562      debian/options.debian doc/disorder_config.5.in
2563      images/Makefile.am templates/help.html
2564      templates/options.labels templates/playing.html
2565
2566
2567 2005-10-15 10:55:34 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-198
2568
2569     Summary:
2570       new images
2571     Revision:
2572       disorder--mainline--0.1--patch-198
2573
2574     New {no,}{upup,downdown}.png images for sending a track right to the end
2575     of the queue.
2576
2577     new files:
2578      images/.arch-ids/downdown.png.id
2579      images/.arch-ids/nodowndown.png.id
2580      images/.arch-ids/noupup.png.id images/.arch-ids/upup.png.id
2581      images/downdown.png images/nodowndown.png images/noupup.png
2582      images/upup.png
2583
2584     modified files:
2585      ChangeLog.d/disorder--mainline--0.1
2586
2587
2588 2005-10-14 18:33:18 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-197
2589
2590     Summary:
2591       more debian catchup
2592     Revision:
2593       disorder--mainline--0.1--patch-197
2594
2595     * debian/options.debian: bring images up to date
2596
2597     modified files:
2598      ChangeLog.d/disorder--mainline--0.1 debian/changelog
2599      debian/options.debian
2600
2601
2602 2005-10-14 18:14:56 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-196
2603
2604     Summary:
2605       debian config catchup
2606     Revision:
2607       disorder--mainline--0.1--patch-196
2608
2609     * debian/disorder.config: no gap between tracks
2610
2611     modified files:
2612      ChangeLog.d/disorder--mainline--0.1 debian/changelog
2613      debian/disorder.config
2614
2615
2616 2005-10-09 13:31:20 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-195
2617
2618     Summary:
2619       Documentation.
2620     Revision:
2621       disorder--mainline--0.1--patch-195
2622
2623     * templates/help.html: Bring help up to date with UI changes.
2624
2625     modified files:
2626      ChangeLog.d/disorder--mainline--0.1 templates/help.html
2627
2628
2629 2005-10-09 13:24:58 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-194
2630
2631     Summary:
2632       Release notes.
2633     Revision:
2634       disorder--mainline--0.1--patch-194
2635
2636     * CHANGES: More coherent change description.
2637
2638     modified files:
2639      CHANGES ChangeLog.d/disorder--mainline--0.1
2640
2641
2642 2005-10-09 13:07:48 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-193
2643
2644     Summary:
2645       More release notes.
2646     Revision:
2647       disorder--mainline--0.1--patch-193
2648
2649     * README.raw: mpg321 is less buggy than ogg123.
2650
2651     modified files:
2652      ChangeLog.d/disorder--mainline--0.1 README.raw
2653
2654
2655 2005-10-09 13:05:17 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-192
2656
2657     Summary:
2658       Fix plugin interface.
2659     Revision:
2660       disorder--mainline--0.1--patch-192
2661
2662     * lib/disorder.h: Missing 'extern'.
2663     * lib/speaker.c: Build fixes (for Darwin).
2664
2665     modified files:
2666      ChangeLog.d/disorder--mainline--0.1 doc/disorder.3
2667      lib/disorder.h lib/speaker.c
2668
2669
2670 2005-10-09 12:59:44 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-191
2671
2672     Summary:
2673       Pre-decode raw tracks; better support for buggy players; tidy-ups.
2674     Revision:
2675       disorder--mainline--0.1--patch-191
2676
2677     * progs/play.c: prepare() and abandon() allow tracks to be prepared for
2678       play (and abandoned when they are removed from the queue) before they
2679       are actually to be played.
2680     * progs/server.c: Call prepare() and abandon() when appropriate.
2681     * driver/disorder.c: New 'fragile' option to work around players that
2682       ignore write errors.
2683     
2684     * doc/disorder_config.5.in: Document libao driver properly.
2685     * README.raw: Bring notes on raw players up to date.
2686     
2687     * examples/config.sample.in: Use fragile driver option for ogg213.
2688     * debian/disorder.config: Use disorder libao driver.
2689     * debian/control: Depend on mpg321 directly as we address its command
2690       line syntax now.
2691
2692     modified files:
2693      ChangeLog.d/disorder--mainline--0.1 README.raw debian/control
2694      debian/disorder.config doc/disorder_config.5.in
2695      driver/disorder.c examples/config.sample.in progs/play.c
2696      progs/play.h progs/server.c
2697
2698
2699 2005-10-09 10:52:47 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-190
2700
2701     Summary:
2702       cleanfiles
2703     Revision:
2704       disorder--mainline--0.1--patch-190
2705
2706     * progs/Makefile.am: clean up temprary files
2707
2708     modified files:
2709      ChangeLog.d/disorder--mainline--0.1 progs/Makefile.am
2710
2711
2712 2005-10-09 10:41:23 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-189
2713
2714     Summary:
2715       miscellaneous command-line fixups
2716     Revision:
2717       disorder--mainline--0.1--patch-189
2718
2719     * progs/Makefile.am: check that command completions are up to date
2720     * scripts/completion.bash: bring command completions up to date
2721     * progs/disorder.c: fix help for scratch-id
2722
2723     modified files:
2724      ChangeLog.d/disorder--mainline--0.1 progs/Makefile.am
2725      progs/disorder.c scripts/completion.bash
2726
2727
2728 2005-10-08 17:00:04 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-188
2729
2730     Summary:
2731       more web pause
2732     Revision:
2733       disorder--mainline--0.1--patch-188
2734
2735     Sort out pausing labels and use thereof.
2736
2737     modified files:
2738      ChangeLog.d/disorder--mainline--0.1 templates/options.labels
2739      templates/playing.html
2740
2741
2742 2005-10-08 16:55:32 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-187
2743
2744     Summary:
2745       pausing from the web
2746     Revision:
2747       disorder--mainline--0.1--patch-187
2748
2749     * progs/dcgi.c: new @paused@ expansion and pause/resume actions.
2750     * templates/playing.html: pausing.  State buttons now have a uniform
2751       button and a tick/cross by them to indicate state.
2752
2753     modified files:
2754      ChangeLog.d/disorder--mainline--0.1 doc/disorder_config.5.in
2755      progs/dcgi.c templates/disorder.css templates/options.labels
2756      templates/playing.html
2757
2758
2759 2005-10-08 16:32:49 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-186
2760
2761     Summary:
2762       Images again
2763     Revision:
2764       disorder--mainline--0.1--patch-186
2765
2766     More coherent image naming.
2767
2768     removed files:
2769      images/.arch-ids/cross.png.id images/cross.png
2770
2771     modified files:
2772      ChangeLog.d/disorder--mainline--0.1 images/Makefile.am
2773      templates/options.labels templates/playing.html
2774
2775     renamed files:
2776      images/.arch-ids/noscratch.png.id
2777        ==> images/.arch-ids/nocross.png.id
2778      images/.arch-ids/scratch.png.id
2779        ==> images/.arch-ids/cross.png.id
2780      images/noscratch.png
2781        ==> images/nocross.png
2782      images/scratch.png
2783        ==> images/cross.png
2784
2785
2786 2005-10-08 16:29:54 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-185
2787
2788     Summary:
2789       new images
2790     Revision:
2791       disorder--mainline--0.1--patch-185
2792
2793     Tick and cross images.
2794
2795     new files:
2796      images/.arch-ids/cross.png.id images/.arch-ids/tick.png.id
2797      images/cross.png images/tick.png
2798
2799     modified files:
2800      ChangeLog.d/disorder--mainline--0.1 images/Makefile.am
2801
2802
2803 2005-10-08 15:08:51 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-184
2804
2805     Summary:
2806       release notes
2807     Revision:
2808       disorder--mainline--0.1--patch-184
2809
2810     * CHANGES: mention pausing
2811
2812     modified files:
2813      CHANGES ChangeLog.d/disorder--mainline--0.1
2814
2815
2816 2005-10-08 15:05:57 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-183
2817
2818     Summary:
2819       more pausing work
2820     Revision:
2821       disorder--mainline--0.1--patch-183
2822
2823     * lib/plugin.c: fix a rather disastrous typo
2824     * lib/queue.c: new 'paused' state for a track.  queue_fix_sofar() broken
2825       out as a separate function.
2826     * progs/dcgi.c: cope with paused tracks
2827     * progs/server.c: call queue_fix_sofar() before sending currently playing
2828       track or calculating expected start times.
2829
2830     modified files:
2831      ChangeLog.d/disorder--mainline--0.1 lib/plugin.c lib/queue.c
2832      lib/queue.h progs/dcgi.c progs/disorder.c progs/play.c
2833      progs/server.c
2834
2835
2836 2005-10-08 14:38:22 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-182
2837
2838     Summary:
2839       support pausers that don't know how much played
2840     Revision:
2841       disorder--mainline--0.1--patch-182
2842
2843     * lib/queue.c: support a played-so-far return of -1, as described in
2844       disorder.h
2845     * doc/disorder.3: document played-so-far of -1.
2846
2847     modified files:
2848      ChangeLog.d/disorder--mainline--0.1 doc/disorder.3 lib/queue.c
2849
2850
2851 2005-10-08 14:26:20 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-181
2852
2853     Summary:
2854       typo
2855     Revision:
2856       disorder--mainline--0.1--patch-181
2857
2858     * progs/disorder.c: typo fix
2859
2860     modified files:
2861      ChangeLog.d/disorder--mainline--0.1 progs/disorder.c
2862
2863
2864 2005-10-08 14:24:01 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-180
2865
2866     Summary:
2867       more docs
2868     Revision:
2869       disorder--mainline--0.1--patch-180
2870
2871     * doc/disorder.3: note that prefork/pause functions mustn't block.
2872
2873     modified files:
2874      ChangeLog.d/disorder--mainline--0.1 doc/disorder.3
2875
2876
2877 2005-10-08 14:15:28 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-179
2878
2879     Summary:
2880       more pause/resume work
2881     Revision:
2882       disorder--mainline--0.1--patch-179
2883
2884     * lib/play.c: Pausing is now a capabality (of standalone players) not
2885       a new player type.  New notify calls for pausing/resuming.
2886     * python/disorder.py.in: Python bindings for pause/resume.
2887
2888     modified files:
2889      ChangeLog.d/disorder--mainline--0.1 doc/disorder.3
2890      lib/disorder.h lib/plugin.c lib/plugin.h plugins/notify.c
2891      progs/play.c python/disorder.py.in
2892
2893
2894 2005-10-08 14:05:16 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-178
2895
2896     Summary:
2897       docs + minor fixes
2898     Revision:
2899       disorder--mainline--0.1--patch-178
2900
2901     * doc/disorder.3: document updated player plugin interface
2902     * doc/disorder.1.in: document pause/resume commands
2903     * lib/disorder.h: correct sifnature of disorder_play_resume
2904     * progs/disorder.c: correct order of commands
2905
2906     modified files:
2907      ChangeLog.d/disorder--mainline--0.1 doc/disorder.1.in
2908      doc/disorder.3 lib/disorder.h progs/disorder.c
2909
2910
2911 2005-10-08 13:49:04 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-177
2912
2913     Summary:
2914       typo fix
2915     Revision:
2916       disorder--mainline--0.1--patch-177
2917
2918     * progs/disorder.c: typo
2919
2920     modified files:
2921      ChangeLog.d/disorder--mainline--0.1 progs/disorder.c
2922
2923
2924 2005-10-08 13:48:42 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-176
2925
2926     Summary:
2927       implement pausing support
2928     Revision:
2929       disorder--mainline--0.1--patch-176
2930
2931     _PLAYER_PAUSES is not really tested since I don't have any playes that
2932     support that protocol.  Also the web interface does not know anything
2933     about this yet, and it is not documented.
2934     
2935     * progs/play.c: Implement pausing.  
2936     
2937     * lib/queue.c: Pause/resume tracking for _PLAYER_PAUSES players.
2938     * lib/client.c: C pause/resume bindings.
2939     * lib/plugin.c: Pause/resume stubs.
2940     * progs/disorder.c: Pause/resume commands.
2941     * progs/server.c: Pause/resume commands.  Automatically resumes under
2942       conditions.
2943
2944     modified files:
2945      ChangeLog.d/disorder--mainline--0.1 lib/client.c lib/client.h
2946      lib/plugin.c lib/plugin.h lib/queue.c lib/queue.h
2947      progs/disorder.c progs/play.c progs/play.h progs/server.c
2948
2949
2950 2005-10-05 21:53:29 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-175
2951
2952     Summary:
2953       documentation catchup
2954     Revision:
2955       disorder--mainline--0.1--patch-175
2956
2957     First pass at documenting the latest batch of changes.  Also updated the
2958     sample config file to use raw players for OGG and MP3, and to remove the
2959     inter-track gap.
2960
2961     new files:
2962      README.raw
2963
2964     modified files:
2965      CHANGES ChangeLog.d/disorder--mainline--0.1 README
2966      README.upgrades doc/disorder_config.5.in
2967      examples/config.sample.in
2968
2969
2970 2005-10-05 20:58:25 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-174
2971
2972     Summary:
2973       implement and use the speaker process.
2974     Revision:
2975       disorder--mainline--0.1--patch-174
2976
2977     No documentation yet!
2978     
2979     * driver/disorder.c: Look at ${DISORDER_RAW_FD} for default output file
2980       descriptor.
2981     * lib/plugin.c: New play_get_type().  Tidy up.
2982     * lib/queue.h: Correct order of enum constants.
2983                    New queue entry fields:
2984                    * type - type word from plugin
2985                    * pid - process ID of decoder/player
2986                    * sofar - how many seconds played so far
2987                * signal - signal to kill decoder/player
2988     * lib/queue.c: fake up sofar field where it's not filled in by the
2989       speaker process
2990     * lib/syscalls.c: we never use chdir, so remove it.
2991     * plugins/execraw.c: exec plugin for decoders, uses modified exec.c
2992     * progs/deadlock.c: use stderr not stdout to determine whether we're a
2993       daemon
2994     * progs/disorder.c: report sofar
2995     * progs/disorderd.c: start speaker process
2996     * progs/play.c: use the speaker process for _RAW players.
2997       + send the speaker an SM_PLAY if a _RAW player
2998       + support --wait-for-device and --signal player options
2999       + act on incoming messages from the speaker
3000       + split player-finished logic into process-finished and generic halves
3001       + still scratch even if subprocess terminated
3002       + disconnect from speaker when quitting
3003     * lib/signame.c: split out of configuration.c, needed by --signal player
3004       option
3005     * lib/speaker.c: speaker/server communication support
3006     * progs/speaker.c: the speaker process itself.
3007
3008     new files:
3009      lib/signame.c lib/signame.h lib/speaker.c lib/speaker.h
3010      plugins/execraw.c progs/speaker.c
3011
3012     modified files:
3013      ChangeLog.d/disorder--mainline--0.1 driver/disorder.c
3014      lib/Makefile.am lib/configuration.c lib/configuration.h
3015      lib/disorder.h lib/plugin.c lib/plugin.h lib/queue.c
3016      lib/queue.h lib/syscalls.c lib/syscalls.h plugins/Makefile.am
3017      plugins/exec.c plugins/shell.c progs/Makefile.am
3018      progs/deadlock.c progs/disorder.c progs/disorderd.c
3019      progs/play.c progs/play.h progs/state.c
3020
3021
3022 2005-10-01 17:31:19 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-173
3023
3024     Summary:
3025       Prefork/cleanup support
3026     Revision:
3027       disorder--mainline--0.1--patch-173
3028
3029     * lib/plugin.c: simplify plugin opening interface.  The main reason for
3030       the plugin struct is to keep track of plugin names and to avoid repeat
3031       opening, but it also allows the hiding of the dlopen() interface.
3032       Also add support for the prefork/cleanup interface.
3033     
3034     * lib/queue.h: track plugin and its data for each track.  Currently only
3035       for the playing track but perhaps also for pre-decoded tracks in the
3036       future.
3037     
3038     * progs/play.c: Support the prefork/cleanup player plugin interface.
3039
3040     modified files:
3041      ChangeLog.d/disorder--mainline--0.1 lib/plugin.c lib/plugin.h
3042      lib/queue.c lib/queue.h progs/play.c
3043
3044
3045 2005-10-01 16:35:07 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-172
3046
3047     Summary:
3048       new plugin interface
3049     Revision:
3050       disorder--mainline--0.1--patch-172
3051
3052     New plugin interface declarations.  No implementation behind them yet
3053     however.
3054     
3055     * lib/disorder.h: new player plugin declarations
3056     * plugins/shell.c: new plugin interface
3057     * plugins/exec.c: new plugin interface
3058
3059     modified files:
3060      ChangeLog.d/disorder--mainline--0.1 lib/disorder.h
3061      plugins/exec.c plugins/shell.c
3062
3063
3064 2005-10-01 16:16:50 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-171
3065
3066     Summary:
3067       libao driver
3068     Revision:
3069       disorder--mainline--0.1--patch-171
3070
3071     * driver/disorder.c: libao driver that outputs in raw format with a
3072       descriptive header.
3073     * README: note dependency on libao
3074
3075     new files:
3076      driver/.arch-ids/=id driver/Makefile.am driver/disorder.c
3077
3078     modified files:
3079      ChangeLog.d/disorder--mainline--0.1 Makefile.am README
3080      README.darwin configure.ac
3081
3082     new directories:
3083      driver driver/.arch-ids
3084
3085
3086 2005-09-27 18:30:42 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-170
3087
3088     Summary:
3089       random play enabled on first startup
3090     Revision:
3091       disorder--mainline--0.1--patch-170
3092
3093     If random play is enabled before we've got any tracks then
3094     trackdb_random() tried to get record 1 of 0, and fails, and terminates
3095     the process.  Fixed.
3096
3097     modified files:
3098      CHANGES ChangeLog.d/disorder--mainline--0.1 progs/trackdb.c
3099
3100
3101 2005-08-07 11:11:05 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-169
3102
3103     Summary:
3104       build against fink libraries without extra configure args
3105     Revision:
3106       disorder--mainline--0.1--patch-169
3107
3108     * configure.ac: if fink is installed, add some CPPFLAGS/LDFLAGS based on
3109       its path.
3110     * README.darwin: no longer need to specify paths to fink libraries.
3111
3112     modified files:
3113      ChangeLog.d/disorder--mainline--0.1 README.darwin configure.ac
3114
3115
3116 2005-07-04 21:55:09 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-168
3117
3118     Summary:
3119       more build-time testing
3120     Revision:
3121       disorder--mainline--0.1--patch-168
3122
3123     * lib/Makefile.am: don't automatically run checks
3124     * progs/Makefile.am: check that --help options work
3125
3126     modified files:
3127      ChangeLog.d/disorder--mainline--0.1 lib/Makefile.am
3128      progs/Makefile.am scripts/dist scripts/inst
3129
3130
3131 2005-07-04 21:40:14 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-167
3132
3133     Summary:
3134       don't crash in --help-commands
3135     Revision:
3136       disorder--mainline--0.1--patch-167
3137
3138     * progs/disorder.c: don't crash in --help-commands
3139
3140     modified files:
3141      ChangeLog.d/disorder--mainline--0.1 progs/disorder.c
3142
3143
3144 2005-06-18 17:31:44 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-166
3145
3146     Summary:
3147       correct version numbers
3148     Revision:
3149       disorder--mainline--0.1--patch-166
3150
3151     * README.upgrades: correct version numbers
3152
3153     modified files:
3154      ChangeLog.d/disorder--mainline--0.1 README.upgrades
3155
3156
3157 2005-06-17 17:24:01 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-165
3158
3159     Summary:
3160       post 1.3
3161     Revision:
3162       disorder--mainline--0.1--patch-165
3163
3164     * CHANGES: remove entries up to 1.0.  200 lines is plenty of history in a
3165       file people are expected to actually read.
3166     * configure.ac: version changed to 1.3+dev
3167
3168     modified files:
3169      CHANGES ChangeLog.d/disorder--mainline--0.1 configure.ac
3170
3171
3172 2005-06-16 20:42:17 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-164
3173
3174     Summary:
3175       release 1.2
3176     Revision:
3177       disorder--mainline--0.1--patch-164
3178
3179     * progs/server.c: save queue after move operation
3180     * configure.ac: release 1.3
3181     * debian/changelog: release 1.3
3182     * CHANGES: release 1.3
3183
3184     modified files:
3185      CHANGES ChangeLog.d/disorder--mainline--0.1 configure.ac
3186      debian/changelog progs/server.c
3187
3188
3189 2005-06-16 20:31:17 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-163
3190
3191     Summary:
3192       missing documentation
3193     Revision:
3194       disorder--mainline--0.1--patch-163
3195
3196     * doc/disorder_config.5.in: document 'alias' directive
3197
3198     modified files:
3199      ChangeLog.d/disorder--mainline--0.1 doc/disorder_config.5.in
3200
3201
3202 2005-06-16 20:16:40 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-162
3203
3204     Summary:
3205       distribution administrivia
3206     Revision:
3207       disorder--mainline--0.1--patch-162
3208
3209     * debian/rules.m4: install all READMEs
3210     * progs/Makefile.am: remember trackdb-int.h
3211
3212     modified files:
3213      ChangeLog.d/disorder--mainline--0.1 debian/changelog
3214      debian/rules.m4 progs/Makefile.am
3215
3216
3217 2005-06-08 09:48:40 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-161
3218
3219     Summary:
3220       quieten tree-lint
3221     Revision:
3222       disorder--mainline--0.1--patch-161
3223
3224     * {arch}/=tagging-method: stop tree-lint from complaining about emacs
3225       droppings
3226
3227     modified files:
3228      ChangeLog.d/disorder--mainline--0.1 {arch}/=tagging-method
3229
3230
3231 2005-06-01 22:45:28 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-160
3232
3233     Summary:
3234       darwin port update
3235     Revision:
3236       disorder--mainline--0.1--patch-160
3237
3238     Build on Mac OS X again.
3239     
3240     * progs/trackdb.c: missing header
3241     * progs/trackdb-int.h: correct types
3242     * README.darwin: note requirement for db4.3
3243
3244     modified files:
3245      ChangeLog.d/disorder--mainline--0.1 README.darwin
3246      progs/trackdb-int.h progs/trackdb.c
3247
3248
3249 2005-05-31 22:13:11 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-159
3250
3251     Summary:
3252       update CHANGES
3253     Revision:
3254       disorder--mainline--0.1--patch-159
3255
3256     * CHANGES: mention missing files included for 1.2.1.  The fclose checked
3257       in 1.2.1 isn't present any more anyway.
3258
3259     modified files:
3260      CHANGES ChangeLog.d/disorder--mainline--0.1
3261
3262
3263 2005-05-31 19:55:21 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-158
3264
3265     Summary:
3266       web ui reports errors more gracefully
3267     Revision:
3268       disorder--mainline--0.1--patch-158
3269
3270     * progs/cgimain.c: report errors by calling disorder_cgi_error()
3271     * progs/dcgi.c: disorder_cgi_error expands the 'error' template with the
3272       'error' label set to an error indicator string.
3273     * progs/cgi.c: cgi_set_option allows web options to be set other than
3274       through the config files
3275     
3276     * templates/error.html: new template for error pages
3277     * templates/options.labels: default error strings
3278
3279     new files:
3280      templates/error.html
3281
3282     modified files:
3283      CHANGES ChangeLog.d/disorder--mainline--0.1
3284      doc/disorder_config.5.in progs/cgi.c progs/cgi.h
3285      progs/cgimain.c progs/dcgi.c progs/dcgi.h
3286      templates/Makefile.am templates/options.labels
3287
3288
3289 2005-05-31 19:26:23 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-157
3290
3291     Summary:
3292       management screen fixes
3293     Revision:
3294       disorder--mainline--0.1--patch-157
3295
3296     * templates/playing.html: put a <form> around volume input boxes, so the
3297       client knows where to send the change.
3298     * templates/disorder.css: management stuff is all displayed inline
3299     * doc/ui-checklist.txt: new checklist for manual UI testing
3300
3301     new files:
3302      doc/ui-checklist.txt
3303
3304     modified files:
3305      ChangeLog.d/disorder--mainline--0.1 templates/disorder.css
3306      templates/playing.html
3307
3308
3309 2005-05-31 18:23:15 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-156
3310
3311     Summary:
3312       minor build fixes
3313     Revision:
3314       disorder--mainline--0.1--patch-156
3315
3316     * progs/dcgi.c: quieten compiler
3317     * lib/Makefile.am: delete the right file
3318
3319     modified files:
3320      ChangeLog.d/disorder--mainline--0.1 lib/Makefile.am
3321      progs/dcgi.c
3322
3323
3324 2005-05-30 11:02:45 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-155
3325
3326     Summary:
3327       color enable/disable buttons to reflect current state
3328     Revision:
3329       disorder--mainline--0.1--patch-155
3330
3331     * templates/disorder.css: enable/disable button colors
3332     * templates/playing.html: enable/disable buttons get red/green
3333       backgrounds
3334
3335     modified files:
3336      CHANGES ChangeLog.d/disorder--mainline--0.1
3337      templates/disorder.css templates/options.labels
3338      templates/playing.html
3339
3340
3341 2005-05-30 10:27:41 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-154
3342
3343     Summary:
3344       update copyright dates
3345     Revision:
3346       disorder--mainline--0.1--patch-154
3347
3348     Administrivia.
3349
3350     modified files:
3351      ChangeLog.d/disorder--mainline--0.1 acinclude.m4
3352      examples/disorder.init.in progs/api-server.c
3353
3354
3355 2005-05-29 23:17:23 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-153
3356
3357     Summary:
3358       update CHANGES
3359     Revision:
3360       disorder--mainline--0.1--patch-153
3361
3362     * CHANGES: note that subprocess output is logged
3363
3364     modified files:
3365      CHANGES ChangeLog.d/disorder--mainline--0.1
3366
3367
3368 2005-05-29 22:51:59 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-152
3369
3370     Summary:
3371       log output of subprocesses
3372     Revision:
3373       disorder--mainline--0.1--patch-152
3374
3375     * lib/logfd.c: logfd() returns an FD which (via the event loop) ends up
3376       in log output.  Useful to pick up stdout/stderr of subprocesses.
3377     * progs/trackdb.c: log output of deadlock and rescan subprocesses
3378     * progs/play.c: log output of player subprocesses
3379     
3380     * progs/rescan.c: check for newline in raw path, not track
3381     * progs/dcgi.c: quieten compiler
3382     * progs/dump.c: quieten compiler
3383
3384     new files:
3385      lib/logfd.c lib/logfd.h
3386
3387     modified files:
3388      ChangeLog.d/disorder--mainline--0.1 lib/Makefile.am
3389      progs/dcgi.c progs/dump.c progs/play.c progs/rescan.c
3390      progs/trackdb.c
3391
3392
3393 2005-05-29 18:30:28 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-151
3394
3395     Summary:
3396       unweird search output
3397     Revision:
3398       disorder--mainline--0.1--patch-151
3399
3400     Searching was producing weird results: the artist 'Various' was being
3401     displayed as the first aliased artist (but sorted, correctly, as
3402     'Various').  This change fixes this, though artists are still sorted by
3403     their display name (so the 'The ...' bug remains in this context).  
3404     
3405     * progs/dcgi.c: @search@ takes an additional CONTEXT argument, and marks
3406       the last element in a group correctly.
3407     * doc/disorder_config.5.in: document changes to @search@
3408     * templates/search.html: @search@ context used to avoid weirdness.
3409
3410     modified files:
3411      ChangeLog.d/disorder--mainline--0.1 doc/disorder_config.5.in
3412      progs/dcgi.c templates/search.html
3413
3414
3415 2005-05-29 18:01:01 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-150
3416
3417     Summary:
3418       rewritten track database code
3419     Revision:
3420       disorder--mainline--0.1--patch-150
3421
3422     * lib/disorder.h: _count and _getn are gone, replaced by _random
3423     * plugins/pick.c: use _random instead of _count and _getn
3424     
3425     * lib/client.c: rescan no longer takes an arg; dump is gone; new resolve
3426       command.
3427     * lib/filepart.c: strip_extension() and extension()
3428     * lib/trackname.c: implement 'ext' and 'path' parts here
3429     * progs/api-server.c: adapt to new trackdb_ interface
3430     * progs/dcgi.c: resolve paths when figuring out track status; implement
3431       @resolve@
3432     * progs/disorder.c: new resolve, scratch-id; modified rescan
3433     * progs/disorderd.c: adapt to new trackdb_ code; open database after
3434       taking lockfile, not before; move user change code to user.c
3435     * progs/play.c: adapt to new trackdb_ interface
3436     * progs/server.c: adapt to new trackdb_ interface.  resolve aliases when
3437       playing.  dump is gone.  new resolve command.
3438     * progs/state.c: dapt to new trackdb_ interface
3439     * progs/trackdb.c: new trackdb.  Largely rewritten though a little old
3440       tracks.c material remains.
3441     
3442     * progs/dump.c: rewritten for new trackdb_ code.  Dump and undump both
3443       access the database directly and work while the server is running
3444       (although particularly undumping while it is running is likely to be
3445       painful).  --recompute-aliases and --remove-pathless can be used to
3446       tidy up broken databases, mostly useful when developing.  --recover and
3447       --recover-fatal provide access to libdb facilities (though these are
3448       also available through db_recover).
3449     * progs/deadlock.c: disorder-deadlock implementation.  Just runs the
3450       deadlock detector once a second.
3451     * progs/rescan.c: disorder-rescan implementation.
3452     * progs/user.c: user-switching code taken from disorderd.c
3453     
3454     * templates/choose.html: resolve track when linking to prefs
3455     
3456     * scripts/completion.bash: disorder-dump support
3457     * examples/disorder.init.in: put sbindir on the path
3458     
3459     * debian/control: need libdb4.3-dev
3460     
3461     * doc/disorder-dump.8.in: document rewritten dump program
3462     * doc/disorder.1.in: document resolve, scratch-id and modified rescan
3463     * doc/disorder.3: _count and _getn are gone, replaced by _random; recheck
3464       happens in a subprocess.
3465     * doc/disorder_config.5.in: document @resolve@
3466     * doc/disorder_protocol.5.in: document resolve and changed rescan; dump
3467       is gone.
3468     * doc/disorderd.8.in: helper programs must be on the path; discuss
3469       backups using disorder-dump.  Mention DB_CONFIG.
3470
3471     new files:
3472      doc/disorder-deadlock.8.in doc/disorder-rescan.8.in
3473      progs/deadlock.c progs/rescan.c progs/trackdb-int.h
3474      progs/trackdb.c progs/trackdb.h progs/user.c progs/user.h
3475
3476     removed files:
3477      progs/rescan.c progs/tracks.c progs/tracks.h
3478
3479     modified files:
3480      CHANGES ChangeLog.d/disorder--mainline--0.1 README
3481      README.upgrades debian/control doc/Makefile.am
3482      doc/disorder-dump.8.in doc/disorder.1.in doc/disorder.3
3483      doc/disorder_config.5.in doc/disorder_protocol.5.in
3484      doc/disorderd.8.in examples/disorder.init.in lib/client.c
3485      lib/client.h lib/disorder.h lib/event.c lib/filepart.c
3486      lib/filepart.h lib/log-impl.h lib/trackname.c plugins/pick.c
3487      progs/Makefile.am progs/api-server.c progs/dcgi.c
3488      progs/disorder.c progs/disorderd.c progs/dump.c progs/play.c
3489      progs/server.c progs/state.c scripts/completion.bash
3490      scripts/inst templates/choose.html
3491
3492
3493 2005-05-27 14:24:51 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-149
3494
3495     Summary:
3496       new 'lock' directive
3497     Revision:
3498       disorder--mainline--0.1--patch-149
3499
3500     * progs/disorderd.c: take lock here, under control of 'lock' directive
3501     * progs/tracks.c: don't lock here any more
3502     * lib/configuration.c: 'lock' directive 
3503
3504     modified files:
3505      CHANGES ChangeLog.d/disorder--mainline--0.1
3506      doc/disorder_config.5.in lib/configuration.c
3507      lib/configuration.h progs/disorderd.c progs/tracks.c
3508
3509
3510 2005-05-27 14:19:25 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-148
3511
3512     Summary:
3513       wrap up program name setting
3514     Revision:
3515       disorder--mainline--0.1--patch-148
3516
3517     * lib/log.c: set_progname() sets progname from argv[0]
3518     * progs/disorderd.c: use set_progname()
3519
3520     modified files:
3521      ChangeLog.d/disorder--mainline--0.1 lib/log.c lib/log.h
3522      progs/disorderd.c
3523
3524
3525 2005-05-27 14:17:04 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-147
3526
3527     Summary:
3528       optionally abort on fatal error
3529     Revision:
3530       disorder--mainline--0.1--patch-147
3531
3532     * lib/log-impl.h: DISORDER_FATAL_ABORT=yes forces fatal() to abort, for
3533       debugging purposes.
3534
3535     modified files:
3536      ChangeLog.d/disorder--mainline--0.1 lib/log-impl.h
3537
3538
3539 2005-05-27 14:04:58 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-146
3540
3541     Summary:
3542       more liberal url-encoding
3543     Revision:
3544       disorder--mainline--0.1--patch-146
3545
3546     * lib/kvp.c: allow RFC2396 unreserved characters plus '/' to pass
3547       URL-encoding unchanged.
3548
3549     modified files:
3550      ChangeLog.d/disorder--mainline--0.1 lib/kvp.c
3551
3552
3553 2005-05-27 13:55:49 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-145
3554
3555     Summary:
3556       more conservative signal handling
3557     Revision:
3558       disorder--mainline--0.1--patch-145
3559
3560     * lib/event.c: if we fail to write to the signal pipe then abort.  This
3561       saves worry about write() modifiying errno.
3562
3563     modified files:
3564      ChangeLog.d/disorder--mainline--0.1 lib/event.c
3565
3566
3567 2005-05-27 13:50:27 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-144
3568
3569     Summary:
3570       libtool 1.4 no good
3571     Revision:
3572       disorder--mainline--0.1--patch-144
3573
3574     * README: libtool note
3575
3576     modified files:
3577      ChangeLog.d/disorder--mainline--0.1 README
3578
3579
3580 2005-05-26 12:02:49 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-143
3581
3582     Summary:
3583       update copyright dates
3584     Revision:
3585       disorder--mainline--0.1--patch-143
3586
3587     Update copyright dates.
3588
3589     modified files:
3590      ChangeLog.d/disorder--mainline--0.1 lib/regsub.c lib/regsub.h
3591      lib/vector.h
3592
3593
3594 2005-05-26 11:54:52 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-142
3595
3596     Summary:
3597       detect missing symbols in plugins early
3598     Revision:
3599       disorder--mainline--0.1--patch-142
3600
3601     * lib/plugin.c: use RTLD_NOW instead of RTLD_LAZY.
3602
3603     modified files:
3604      ChangeLog.d/disorder--mainline--0.1 lib/plugin.c
3605
3606
3607 2005-05-22 13:15:38 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-141
3608
3609     Summary:
3610       minor doc fixes
3611     Revision:
3612       disorder--mainline--0.1--patch-141
3613
3614     * debian/README.Debian: leftover names converted to /etc/disorder.
3615
3616     modified files:
3617      ChangeLog.d/disorder--mainline--0.1 debian/README.Debian
3618
3619
3620 2005-05-21 17:16:03 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-140
3621
3622     Summary:
3623       check for UTF-8 support in pcre.
3624     Revision:
3625       disorder--mainline--0.1--patch-140
3626
3627     * acinclude.m4: new RJK_REQUIRE_PCRE_UTF8 macro checks that PCRE was
3628       built with UTF-8 support.
3629
3630     modified files:
3631      ChangeLog.d/disorder--mainline--0.1 acinclude.m4 configure.ac
3632
3633
3634 2005-05-21 12:17:49 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-139
3635
3636     Summary:
3637       config overview
3638     Revision:
3639       disorder--mainline--0.1--patch-139
3640
3641     * doc/disorder_config.5.in: add an overview section
3642     
3643     
3644
3645     modified files:
3646      ChangeLog.d/disorder--mainline--0.1 doc/disorder_config.5.in
3647
3648
3649 2005-05-15 20:02:36 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-138
3650
3651     Summary:
3652       unchecked fclose
3653     Revision:
3654       disorder--mainline--0.1--patch-138
3655
3656     * progs/tracks.c: unchecked fclose()
3657
3658     modified files:
3659      ChangeLog.d/disorder--mainline--0.1 progs/tracks.c
3660
3661
3662 2005-05-15 19:59:12 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-137
3663
3664     Summary:
3665       correct for multiple =build directories
3666     Revision:
3667       disorder--mainline--0.1--patch-137
3668
3669     * {arch}/=tagging-method: correct =build* exclusion
3670
3671     modified files:
3672      ChangeLog.d/disorder--mainline--0.1 {arch}/=tagging-method
3673
3674
3675 2005-05-15 19:57:44 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-136
3676
3677     Summary:
3678       typos
3679     Revision:
3680       disorder--mainline--0.1--patch-136
3681
3682     * doc/disorder_config.5.in: typo fix
3683
3684     modified files:
3685      ChangeLog.d/disorder--mainline--0.1 doc/disorder_config.5.in
3686
3687
3688 2005-05-11 18:56:43 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-135
3689
3690     Summary:
3691       add missing files
3692     Revision:
3693       disorder--mainline--0.1--patch-135
3694
3695     * lib/filepart.c, lib/filepart.c: missing files from previous commit.
3696       Thought that wasn't supposed to be possible...
3697
3698     new files:
3699      lib/filepart.c lib/filepart.h
3700
3701     modified files:
3702      ChangeLog.d/disorder--mainline--0.1
3703
3704
3705 2005-05-08 19:05:56 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-134
3706
3707     Summary:
3708       results of trackname_ prefs appear in virtual filesystem
3709     Revision:
3710       disorder--mainline--0.1--patch-134
3711
3712     * lib/configuration.c: 'alias' directive; syntax-check collection root
3713     * lib/regsub.c: REGSUB_REPLACE flag to just expand the substitution
3714       string rather than substituting it into the subject string
3715     * lib/trackname.c: compute track name parts from track name without
3716       collection root.
3717     * progs/rescan.c: recompute aliases as part of rescan.
3718     * progs/tracks.c: support aliases, i.e. names that appear in the virtual
3719       filesystem corresponding to the results of trackname_display_ prefs.
3720       When they are in the same directory as their real file, only the alias
3721       is visible.
3722     
3723     * README.upgrades: note 'ext' namepart and namepart changes
3724     * debian/disorder.config: add 'ext' directive and update namepart
3725       directives for new semantics
3726     * doc/disorder_config.5.in: note that collection root is removed.
3727     * examples/config.sample.in: add 'ext' directive and update namepart
3728       directives for new semantics
3729
3730     modified files:
3731      ChangeLog.d/disorder--mainline--0.1 README.upgrades
3732      debian/disorder.config doc/disorder_config.5.in
3733      examples/config.sample.in lib/Makefile.am lib/configuration.c
3734      lib/configuration.h lib/regsub.c lib/regsub.h lib/trackname.c
3735      lib/trackname.h lib/vector.h progs/play.c progs/rescan.c
3736      progs/tracks.c progs/tracks.h
3737
3738
3739 2005-05-07 16:08:16 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-133
3740
3741     Summary:
3742       'disorder authorize' command to simplify adding users
3743     Revision:
3744       disorder--mainline--0.1--patch-133
3745
3746     * lib/configuration.c: export paths to subsiduary configuration files as
3747       required.
3748     * progs/disorder.c: 'authorize' command
3749     * progs/authorize.c: implementation of 'authorize' command
3750     * scripts/completion.bash: add 'authorize' command to list
3751     * README: mention disorder authorize; alternative advice about
3752       config.USER ownership.
3753     * doc/disorder.1.in: document 'authorize' command
3754     * doc/disorder_config.5.in: config.private is root:jukebox, not jukebox:*
3755       according to README and debian/postinst; make disorder_config(5)
3756       consistent.
3757
3758     new files:
3759      progs/authorize.c progs/authorize.h
3760
3761     modified files:
3762      CHANGES ChangeLog.d/disorder--mainline--0.1 README
3763      doc/disorder.1.in doc/disorder_config.5.in lib/configuration.c
3764      lib/configuration.h progs/Makefile.am progs/disorder.c
3765      scripts/completion.bash
3766
3767
3768 2005-05-07 13:50:13 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-132
3769
3770     Summary:
3771       more encoding safeguard text
3772     Revision:
3773       disorder--mainline--0.1--patch-132
3774
3775     * debian/templates (disorder/encoding): note in template text that you
3776       can't guess the encoding.
3777
3778     modified files:
3779      ChangeLog.d/disorder--mainline--0.1 debian/templates
3780
3781
3782 2005-05-07 13:30:54 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-131
3783
3784     Summary:
3785       notes about wrong fs encoding troubles
3786     Revision:
3787       disorder--mainline--0.1--patch-131
3788
3789     * README: emphasize need to get filesystem encoding right
3790     * BUGS: note about difficulty of recovering from wrong filesystem
3791       encoding.
3792
3793     modified files:
3794      BUGS ChangeLog.d/disorder--mainline--0.1 README
3795
3796
3797 2005-03-12 17:53:26 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-130
3798
3799     Summary:
3800       missing file
3801     Revision:
3802       disorder--mainline--0.1--patch-130
3803
3804     * progs/Makefile.am: remember to distribute getopt.h
3805
3806     modified files:
3807      ChangeLog.d/disorder--mainline--0.1 progs/Makefile.am
3808
3809
3810 2005-03-12 17:51:42 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-129
3811
3812     Summary:
3813       post 1.2
3814     Revision:
3815       disorder--mainline--0.1--patch-129
3816
3817     * configure.ac: 1.2+dev
3818     
3819
3820     modified files:
3821      ChangeLog.d/disorder--mainline--0.1 configure.ac
3822
3823
3824 2005-03-11 20:07:38 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-128
3825
3826     Summary:
3827       release 1.2
3828     Revision:
3829       disorder--mainline--0.1--patch-128
3830
3831     * configure.ac, debian/changelog, CHANGES: version number
3832     * scripts/inst: run ldconfig
3833
3834     modified files:
3835      CHANGES ChangeLog.d/disorder--mainline--0.1 configure.ac
3836      debian/changelog scripts/inst
3837
3838
3839 2005-03-05 20:57:35 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-127
3840
3841     Summary:
3842       build fix
3843     Revision:
3844       disorder--mainline--0.1--patch-127
3845
3846     * plugins/mad.c: quieten gcc 4 prerelease
3847
3848     modified files:
3849      ChangeLog.d/disorder--mainline--0.1 plugins/mad.c
3850
3851
3852 2005-03-04 23:31:19 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-126
3853
3854     Summary:
3855       fix broken @navigate@
3856     Revision:
3857       disorder--mainline--0.1--patch-126
3858
3859     * progs/dcgi.c: fix path name parsing in @navigate@.  Was always broken
3860       but never showed up until memory allocation changes in patch-125.
3861
3862     modified files:
3863      ChangeLog.d/disorder--mainline--0.1 progs/dcgi.c
3864
3865
3866 2005-03-04 19:41:29 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-125
3867
3868     Summary:
3869       disable gc for some utilities
3870     Revision:
3871       disorder--mainline--0.1--patch-125
3872
3873     * lib/mem.c: callers can disable gc too
3874     * progs/cgimain.c, progs/trackname.c: no gc for web interface or
3875       trackname utility.  These are very short running programs.
3876     * progs/disorderd.c: enable gc.  Long running program.
3877     * progs/disorder.c, progs/dump.c: enable gc.  disorder(1) might run a
3878       long time if log is used; dump.c allocates memory for every track which
3879       soon goes unreachable.  If there are very many tracks then not freeing
3880       this memory along the way might consume excessive amounts.
3881
3882     modified files:
3883      ChangeLog.d/disorder--mainline--0.1 lib/mem.c lib/mem.h
3884      progs/cgimain.c progs/disorder.c progs/disorderd.c
3885      progs/dump.c progs/trackname.c
3886
3887
3888 2005-03-04 19:22:18 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-124
3889
3890     Summary:
3891       optional disabling of garbage collection for debug purposes
3892     Revision:
3893       disorder--mainline--0.1--patch-124
3894
3895     * lib/mem.c: allow garbage collection to be turned off, e.g. for use with
3896       memory allocation checkers that don't play nicely with libgc.  To turn
3897       garbage collection off set the environment variable DISORDER_GC=no.
3898
3899     modified files:
3900      ChangeLog.d/disorder--mainline--0.1 lib/mem.c
3901
3902
3903 2005-03-01 00:08:09 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-123
3904
3905     Summary:
3906       tidying up
3907     Revision:
3908       disorder--mainline--0.1--patch-123
3909
3910     * lib/log.h: move log_output structure to log.c, since it is not needed
3911       by callers any more.
3912     * templates/disorder.css, templates/volume.html,
3913       templates/stylesheet.html, scripts/htmlman: copyright date
3914
3915     modified files:
3916      ChangeLog.d/disorder--mainline--0.1 lib/log.c lib/log.h
3917      progs/dcgi.c progs/dcgi.h scripts/htmlman
3918      templates/choosealpha.html templates/disorder.css
3919      templates/sidebar.html templates/stylesheet.html
3920      templates/volume.html
3921
3922
3923 2005-02-27 19:43:31 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-122
3924
3925     Summary:
3926       more spelling
3927     Revision:
3928       disorder--mainline--0.1--patch-122
3929
3930     * python/disorder.py.in: typo fixes
3931
3932     modified files:
3933      ChangeLog.d/disorder--mainline--0.1 python/disorder.py.in
3934
3935
3936 2005-02-27 19:41:10 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-121
3937
3938     Summary:
3939       better python docs
3940     Revision:
3941       disorder--mainline--0.1--patch-121
3942
3943     * python/disorder.py.in: more verbose docs
3944
3945     modified files:
3946      ChangeLog.d/disorder--mainline--0.1 python/disorder.py.in
3947      templates/help.html
3948
3949
3950 2005-02-27 19:21:51 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-120
3951
3952     Summary:
3953       more 'tooltips'
3954     Revision:
3955       disorder--mainline--0.1--patch-120
3956
3957     * templates/playing.html: TITLE attributes for links and buttons
3958     * templates/options.labels: values for the above attributes
3959
3960     modified files:
3961      ChangeLog.d/disorder--mainline--0.1 templates/options.labels
3962      templates/playing.html
3963
3964
3965 2005-02-27 19:05:19 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-119
3966
3967     Summary:
3968       typo fixes
3969     Revision:
3970       disorder--mainline--0.1--patch-119
3971
3972     * README.upgrades: typo fixes
3973     * CHANGES: typo fixes
3974     * doc/disorder_config.5.in: typo fixes
3975
3976     modified files:
3977      CHANGES ChangeLog.d/disorder--mainline--0.1 README.upgrades
3978      doc/disorder_config.5.in
3979
3980
3981 2005-02-27 18:24:53 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-118
3982
3983     Summary:
3984       remove annoying hang in tkdisorder
3985     Revision:
3986       disorder--mainline--0.1--patch-118
3987
3988     * python/tkdisorder: perform initial fill of recent window (or whatever)
3989       in a background thread, to avoid blocking the rest of the UI.  We set
3990       the cursor to 'watch' for the duration.
3991
3992     modified files:
3993      ChangeLog.d/disorder--mainline--0.1 python/tkdisorder
3994
3995
3996 2005-02-26 20:36:56 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-117
3997
3998     Summary:
3999       debian fixes for new web arrangements
4000     Revision:
4001       disorder--mainline--0.1--patch-117
4002
4003     * debian/options.debian: this becomes a debian-specific version of
4004       /etc/disorder/options, with alternative URLs for static content.  It's
4005       marked as a conffile but the user would be better off putting their
4006       changes into options.user.
4007
4008     modified files:
4009      ChangeLog.d/disorder--mainline--0.1 debian/conffiles
4010      debian/options.debian debian/rules.m4
4011
4012
4013 2005-02-26 18:46:03 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-116
4014
4015     Summary:
4016       simpler static content configuration
4017     Revision:
4018       disorder--mainline--0.1--patch-116
4019
4020     * templates/options.labels: images.* and links.* are the full URL
4021       (possibly relative to the disorder cgi base URL).
4022     * templates/playing.html, templates/volume.html, templates/recent.html,
4023       templates/help.html, templates/choose.html: fix image links
4024     * templates/stylesheet.html: fix stylesheet URL
4025     * doc/disorder_config.5.in: document URL changes
4026
4027     modified files:
4028      ChangeLog.d/disorder--mainline--0.1 doc/disorder_config.5.in
4029      templates/choose.html templates/help.html
4030      templates/options.labels templates/playing.html
4031      templates/recent.html templates/stylesheet.html
4032      templates/volume.html
4033
4034
4035 2005-02-24 22:58:17 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-115
4036
4037     Summary:
4038       static (non-embedded) stylesheet
4039     Revision:
4040       disorder--mainline--0.1--patch-115
4041
4042     * templates/disorder.css: copied from contents of stylesheet.html
4043     * templates/stylesheet.html: just link to disorder.css
4044     * templates/options.labels: links.css label identifies stylesheet
4045
4046     new files:
4047      templates/disorder.css
4048
4049     modified files:
4050      CHANGES ChangeLog.d/disorder--mainline--0.1
4051      templates/Makefile.am templates/options.labels
4052      templates/stylesheet.html
4053
4054
4055 2005-02-20 19:29:08 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-114
4056
4057     Summary:
4058       link/image title attributes
4059     Revision:
4060       disorder--mainline--0.1--patch-114
4061
4062     * templates/options.labels: new *.*verbose labels used for informative
4063       TITLE attributes on various links and images
4064
4065     modified files:
4066      ChangeLog.d/disorder--mainline--0.1 templates/choose.html
4067      templates/credits.html templates/options.labels
4068      templates/playing.html templates/recent.html
4069      templates/topbar.html templates/volume.html
4070
4071
4072 2005-02-20 18:34:43 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-113
4073
4074     Summary:
4075       more flexible choice of graphics
4076     Revision:
4077       disorder--mainline--0.1--patch-113
4078
4079     * templates/options.labels: individual labels for each graphic.
4080       Currently everything has to be relative to url.static which might not
4081       be ideal.
4082     * templates/playing.html, templates/choose.html, templates/help.html,
4083       templates/recent.html, templates/volume.html: use new labels for
4084       graphics.  We discard the width and height attributes which is a shame
4085       but most of the time browsers will have a copy already so it shouldn't
4086       be too problematic.
4087     * doc/disorder_config.5.in: document new labels
4088
4089     modified files:
4090      ChangeLog.d/disorder--mainline--0.1 doc/disorder_config.5.in
4091      templates/choose.html templates/help.html
4092      templates/options.labels templates/playing.html
4093      templates/recent.html templates/volume.html
4094
4095
4096 2005-02-20 12:39:10 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-112
4097
4098     Summary:
4099       missing bit of patch-107
4100     Revision:
4101       disorder--mainline--0.1--patch-112
4102
4103     * templates/help.html: forgot to includ ethe menu end file in patch-107
4104
4105     modified files:
4106      ChangeLog.d/disorder--mainline--0.1 templates/help.html
4107
4108
4109 2005-02-20 12:35:42 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-111
4110
4111     Summary:
4112       definitions moved from macros to library
4113     Revision:
4114       disorder--mainline--0.1--patch-111
4115
4116     * lib/defs.c: make macros defined by configure (VERSION, PKGCONFDIR, etc)
4117       available as library symbols, rather than repeating them everywhere
4118       they are use.
4119
4120     new files:
4121      lib/defs.c lib/defs.h
4122
4123     modified files:
4124      ChangeLog.d/disorder--mainline--0.1 lib/Makefile.am
4125      lib/configuration.c lib/configuration.h lib/plugin.c
4126      progs/cgi.c progs/dcgi.c progs/disorder.c progs/disorderd.c
4127      progs/dump.c progs/server.c progs/trackname.c
4128
4129
4130 2005-02-19 23:48:05 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-110
4131
4132     Summary:
4133       fix search facility
4134     Revision:
4135       disorder--mainline--0.1--patch-110
4136
4137     * progs/dcgi.c: unbreak the search facility, which didn't return all the
4138       results for an artist (or album) which contains more than one hit.
4139
4140     modified files:
4141      CHANGES ChangeLog.d/disorder--mainline--0.1 progs/dcgi.c
4142
4143
4144 2005-02-19 23:27:28 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-109
4145
4146     Summary:
4147       missing bits from previous changes
4148     Revision:
4149       disorder--mainline--0.1--patch-109
4150
4151     * scripts/htmlman: make generated web pages use the new menu
4152       infrastructure.
4153
4154     modified files:
4155      ChangeLog.d/disorder--mainline--0.1 scripts/htmlman
4156
4157
4158 2005-02-19 23:18:21 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-108
4159
4160     Summary:
4161       revert clumsiness
4162     Revision:
4163       disorder--mainline--0.1--patch-108
4164
4165     * templates/choose.html: accidentally reverted class change in patch-107.
4166
4167     modified files:
4168      ChangeLog.d/disorder--mainline--0.1 templates/choose.html
4169
4170
4171 2005-02-19 23:10:17 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-107
4172
4173     Summary:
4174       flexible menu infrastructure, new default menu layout
4175     Revision:
4176       disorder--mainline--0.1--patch-107
4177
4178     * progs/dcgi.c: @action@ expansion to make determining the current action
4179       easier.
4180     
4181     * templates/options.labels: default 'menu' label to 'topbar'
4182     
4183     * doc/disorder_config.5.in: document 'menu' label and @action@ expansion
4184     * templates/help.html: updated for the above changes
4185     
4186     * templates/topbar.html: new default menu template
4187     * templates/topbarend.html: menu tempates now have a closing half too,
4188       where the credits are output from.
4189     * templates/stylesheet.html: formatting rules for topbar; make title
4190       bigger to stand out against (rather big and friendly) menu items.
4191     
4192     * templates/sidebar.html: open the content div from the sidebar template
4193     * templates/sidebarend.html: final half of sidebar template closes the
4194       content div as well as outputting the credits.
4195
4196     new files:
4197      templates/sidebarend.html templates/topbar.html
4198      templates/topbarend.html
4199
4200     modified files:
4201      CHANGES ChangeLog.d/disorder--mainline--0.1
4202      doc/disorder_config.5.in progs/dcgi.c templates/Makefile.am
4203      templates/about.html templates/choose.html
4204      templates/choosealpha.html templates/help.html
4205      templates/options.labels templates/playing.html
4206      templates/prefs.html templates/recent.html
4207      templates/search.html templates/sidebar.html
4208      templates/stylesheet.html templates/volume.html
4209
4210
4211 2005-02-19 22:02:08 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-106
4212
4213     Summary:
4214       more powerful management page
4215     Revision:
4216       disorder--mainline--0.1--patch-106
4217
4218     * templates/playing.html: put volume control into management page
4219     * templates/options.labels: new playing.volume label;
4220       playing.{random,playing} labels now contain the colon formerly in the
4221       template (for greater flexibility).
4222     * doc/disorder_config.5.in: document playing.volume (and playing.playing
4223       which was formerly missing)
4224
4225     modified files:
4226      CHANGES ChangeLog.d/disorder--mainline--0.1
4227      doc/disorder_config.5.in templates/options.labels
4228      templates/playing.html
4229
4230
4231 2005-02-19 21:28:20 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-105
4232
4233     Summary:
4234       volume control bug fixes + visual improvements
4235     Revision:
4236       disorder--mainline--0.1--patch-105
4237
4238     * progs/dcgi.c: make act_volume() redirect back to itself when a change
4239       occurs, so that it's safe to reload volume pages
4240     * templates/volume.html: use new graphics for up/down
4241     * templates/stylesheet.html: center volume control
4242     * templates/options.labels: volume.{left,right} set to null on the
4243       assumption that user can deduce that the left and rights input boxes
4244       control the left and right speakers respectively
4245
4246     modified files:
4247      CHANGES ChangeLog.d/disorder--mainline--0.1 progs/dcgi.c
4248      templates/options.labels templates/stylesheet.html
4249      templates/volume.html
4250
4251
4252 2005-02-19 21:03:03 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-104
4253
4254     Summary:
4255       more graphical improvements
4256     Revision:
4257       disorder--mainline--0.1--patch-104
4258
4259     * images/scratch.png, images/noscratch.png: cleaner scratch button
4260
4261     modified files:
4262      ChangeLog.d/disorder--mainline--0.1 images/noscratch.png
4263      images/scratch.png
4264
4265
4266 2005-02-19 20:37:56 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-103
4267
4268     Summary:
4269       tidy up graphics a little
4270     Revision:
4271       disorder--mainline--0.1--patch-103
4272
4273     * images/edit.png: truncate the pencil perpendicular to its long axis,
4274       rather than according to the corner of the bounding square, to
4275       eliminate the visually confusing corner.
4276
4277     modified files:
4278      ChangeLog.d/disorder--mainline--0.1 images/edit.png
4279
4280
4281 2005-02-19 20:32:56 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-102
4282
4283     Summary:
4284       grey out inactive buttons
4285     Revision:
4286       disorder--mainline--0.1--patch-102
4287
4288     * progs/dcgi.c: @isfirst@ and @islast@ expansions report whether this is
4289       the first or last (or other) iteration of a recursive template
4290       expansion.
4291     * templates/playing.html: 'grey out' up/down buttons for first/last track
4292       in queue (since they don't do anything useful).
4293     * doc/disorder_config.5.in: document @isfirst@/@islast@
4294
4295     modified files:
4296      ChangeLog.d/disorder--mainline--0.1 doc/disorder_config.5.in
4297      progs/dcgi.c progs/dcgi.h templates/playing.html
4298
4299
4300 2005-02-19 20:17:40 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-101
4301
4302     Summary:
4303       ignore whitespace between expansion arguments
4304     Revision:
4305       disorder--mainline--0.1--patch-101
4306
4307     * progs/cgi.c: ignore whitespace after '}' and at the start and end of
4308       unquoted template expansion args.
4309     * doc/disorder_config.5.in: document new whitespace rules
4310     * templates/playing.html: missing class attribute on an img
4311
4312     modified files:
4313      CHANGES ChangeLog.d/disorder--mainline--0.1
4314      doc/disorder_config.5.in progs/cgi.c templates/playing.html
4315
4316
4317 2005-02-19 19:05:29 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-100
4318
4319     Summary:
4320       graphical buttons in web interface
4321     Revision:
4322       disorder--mainline--0.1--patch-100
4323
4324     * README, README.upgrades: mention appearance of /static
4325     * doc/disorder_config.5.in: document url.static
4326     
4327     * templates/choose.html: graphical button for edit
4328     * templates/help.html: catch up with graphical buttons; tidy up a bit.
4329     * templates/playing.html: graphic buttons for scratch/remove/up/down
4330     * templates/recent.html: graphical button for edit
4331     * templates/stylesheet.html: img.button class for new graphical buttons
4332     
4333     * images/*.png: new graphics
4334     
4335     * debian/options.debian: debian-specific location for static content
4336     * debian/conffiles: options.debian is a conffile
4337     * debian/rules.m4: install static content under /var/www
4338                        install options.debian
4339     
4340     * progs/play.h: update copyright date
4341     * examples/Makefile.am: update copyright date
4342     * progs/daemonize.c: update copyright date
4343
4344     new files:
4345      debian/options.debian images/.arch-ids/=id
4346      images/.arch-ids/down.png.id images/.arch-ids/edit.png.id
4347      images/.arch-ids/nodown.png.id
4348      images/.arch-ids/noscratch.png.id images/.arch-ids/noup.png.id
4349      images/.arch-ids/scratch.png.id images/.arch-ids/up.png.id
4350      images/Makefile.am images/down.png images/edit.png
4351      images/nodown.png images/noscratch.png images/noup.png
4352      images/scratch.png images/up.png
4353
4354     modified files:
4355      CHANGES ChangeLog.d/disorder--mainline--0.1 Makefile.am README
4356      README.upgrades configure.ac debian/Makefile.am
4357      debian/autorules.m4 debian/conffiles debian/rules.m4
4358      doc/disorder_config.5.in examples/Makefile.am
4359      progs/daemonize.c progs/play.h templates/choose.html
4360      templates/help.html templates/playing.html
4361      templates/recent.html templates/stylesheet.html
4362
4363     new directories:
4364      images images/.arch-ids
4365
4366
4367 2005-02-19 14:16:39 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-99
4368
4369     Summary:
4370       restore debian/changelog to proper name
4371     Revision:
4372       disorder--mainline--0.1--patch-99
4373
4374     * debian/changelog: rename back to the standard name.  I can't quite see
4375       from the change history why it was changelog.Debian in the first place.
4376       Hopefuly nothing will break.
4377
4378     modified files:
4379      ChangeLog.d/disorder--mainline--0.1 debian/Makefile.am
4380      debian/autorules.m4
4381
4382     renamed files:
4383      debian/changelog.Debian
4384        ==> debian/changelog
4385
4386
4387 2005-02-18 20:49:17 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-98
4388
4389     Summary:
4390       docs catch up with changes below
4391     Revision:
4392       disorder--mainline--0.1--patch-98
4393
4394     * doc/disorder_protocol.5.in: document new 'quitting' state
4395
4396     modified files:
4397      ChangeLog.d/disorder--mainline--0.1 doc/disorder_protocol.5.in
4398
4399
4400 2005-02-18 20:27:06 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-97
4401
4402     Summary:
4403       mention previous bug fix
4404     Revision:
4405       disorder--mainline--0.1--patch-97
4406
4407     * CHANGES: mention previous bug fix
4408
4409     modified files:
4410      CHANGES ChangeLog.d/disorder--mainline--0.1
4411
4412
4413 2005-02-18 20:15:05 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-96
4414
4415     Summary:
4416       add current track to recently played list on server shutdown
4417     Revision:
4418       disorder--mainline--0.1--patch-96
4419
4420     When the recently played list was not preserved across restarts this was
4421     unnecessary.  It was left out when it started being preserved.
4422     
4423     * progs/play.c: when quitting, explicitly call player_finished() to get
4424       the track added to the recently played list (and do notifications etc)
4425     * progs/state.c: tell playing module we're quitting rather than just
4426       disabling playing and expecting it to guess
4427     * lib/queue.h: new track state for a track terminated by server shutdown
4428
4429     modified files:
4430      ChangeLog.d/disorder--mainline--0.1 lib/queue.c lib/queue.h
4431      progs/dcgi.c progs/play.c progs/play.h progs/state.c
4432
4433
4434 2005-02-18 16:51:04 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-95
4435
4436     Summary:
4437       disorder.monitor python class
4438     Revision:
4439       disorder--mainline--0.1--patch-95
4440
4441     * python/disorder.py.in: disorder.monitor class provides cooked access to
4442       event log
4443     * examples/disorder-log: sketch example of using disorder.monitor
4444     
4445     * CHANGES: mention event log changes
4446
4447     new files:
4448      examples/disorder-log
4449
4450     modified files:
4451      CHANGES ChangeLog.d/disorder--mainline--0.1
4452      examples/Makefile.am python/disorder.py.in
4453
4454
4455 2005-02-18 15:56:49 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-94
4456
4457     Summary:
4458       event log interface
4459     Revision:
4460       disorder--mainline--0.1--patch-94
4461
4462     * lib/eventlog.c: new event log interface for sending messages to clients
4463       that issue the 'log' command
4464     * lib/queue.c: event log queue, moved, removed, recent-* messages
4465     * progs/play.c: event log completed, scratched, failed, playing messages
4466     * progs/disorder.c: mention event log in command help
4467     * progs/server.c: use event log interface for 'log' command
4468     
4469     * lib/log.c: don't send log messages to clients; logging interface is
4470       simplified slightly.
4471     * progs/daemonize.c: following simplified logging interface
4472     
4473     * doc/disorder_protocol.5.in: document event log
4474     
4475     * lib/configuration.c: remove left-over debugging printf, oops!
4476     * progs/server.c: set SO_REUSEADDR so we don't have to cool off a bit
4477       before binding to a TCP socket again.
4478
4479     new files:
4480      lib/eventlog.c lib/eventlog.h
4481
4482     modified files:
4483      ChangeLog.d/disorder--mainline--0.1 doc/disorder.1.in
4484      doc/disorder_protocol.5.in lib/Makefile.am lib/configuration.c
4485      lib/log.c lib/log.h lib/queue.c progs/daemonize.c
4486      progs/disorder.c progs/play.c progs/server.c
4487      python/disorder.py.in
4488
4489
4490 2005-02-17 00:02:42 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-93
4491
4492     Summary:
4493       put README on the web
4494     Revision:
4495       disorder--mainline--0.1--patch-93
4496
4497     * scripts/dist: put README on the web
4498
4499     modified files:
4500      ChangeLog.d/disorder--mainline--0.1 scripts/dist
4501
4502
4503 2005-02-16 23:49:44 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-92
4504
4505     Summary:
4506       update copyright dates for files changed in 2005
4507     Revision:
4508       disorder--mainline--0.1--patch-92
4509
4510     * scripts/check: case independent check
4511
4512     modified files:
4513      ChangeLog.d/disorder--mainline--0.1 debian/copyright
4514      lib/client.c lib/client.h lib/kvp.c lib/kvp.h lib/log.c
4515      lib/log.h lib/table.h plugins/tracklength.c progs/Makefile.am
4516      progs/cgi.h progs/cgimain.c progs/tracks.h scripts/check
4517      templates/Makefile.am templates/choose.html
4518      templates/playing.html templates/recent.html
4519      templates/search.html
4520
4521
4522 2005-02-16 23:40:00 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-91
4523
4524     Summary:
4525       unicode search strings
4526     Revision:
4527       disorder--mainline--0.1--patch-91
4528
4529     * templates/search.html: use POST with multipart/form-data and an
4530       explicit charset for the search form, rather than GET, so that we can
4531       portably have non-ASCII characters in search terms.
4532       back= URLs still use GET, but we can interpret query strings that
4533       encode non-ASCII characters however we choose, and we choose UTF-8.
4534
4535     modified files:
4536      CHANGES ChangeLog.d/disorder--mainline--0.1
4537      templates/search.html
4538
4539
4540 2005-02-16 23:13:16 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-90
4541
4542     Summary:
4543       configurable scratch signal
4544     Revision:
4545       disorder--mainline--0.1--patch-90
4546
4547     * lib/configuration.c: new 'signal' configuration item controls the
4548       signal that will be used to interrupt players.  Default SIGINT.
4549     * progs/play.c: interrupt tracks using configured signal
4550     
4551     * lib/table.h: document TABLE_FIND() macro
4552     
4553     * doc/disorder_config.5.in: document 'signal'
4554     * doc/disorder.3: document scratching interface.
4555     
4556     I've only listed signals from glibc's <bits/signal.h>; more could easily
4557     be added.
4558
4559     modified files:
4560      CHANGES ChangeLog.d/disorder--mainline--0.1 doc/disorder.3
4561      doc/disorder_config.5.in lib/configuration.c
4562      lib/configuration.h lib/table.h progs/play.c
4563
4564
4565 2005-02-16 22:17:38 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-89
4566
4567     Summary:
4568       make artist/album in playing/recent be links
4569     Revision:
4570       disorder--mainline--0.1--patch-89
4571
4572     * progs/dcgi.c: generalize @dirname@ and @basename@
4573     * templates/playing.html: make artist/album be links
4574     * templates/recent.html: make artist/album be links
4575     * doc/disorder_config.5.in: document extended @dirname@/@basename@
4576
4577     modified files:
4578      CHANGES ChangeLog.d/disorder--mainline--0.1
4579      doc/disorder_config.5.in progs/dcgi.c templates/playing.html
4580      templates/recent.html
4581
4582
4583 2005-02-16 21:32:50 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-88
4584
4585     Summary:
4586       improved track selection extended to searching, debugged
4587     Revision:
4588       disorder--mainline--0.1--patch-88
4589
4590     The previous approach, of recording the directory to go back to, didn't
4591     work for searching and didn't work properly where a regexp argument
4592     reduced the set of tracks listed.  The new approach is to specify the
4593     exact URL to return to.
4594     
4595     * progs/dcgi.c: new 'back' CGI argument provides URL to redirect back to
4596       after any operation except 'playing'.  We use this to simply act_play().
4597       New @thisurl@ expansion gives the current page's URL, with a freshened
4598       nonce.
4599     
4600     * templates/choose.html: use new 'back' behaviour; canonicalize name of
4601       nonce arguments.
4602     * templates/help.html: canonicalize name of nonce arguments.
4603     * templates/search.html: use new 'back' behaviour as per choose.html
4604     
4605     * doc/disorder_config.5.in: document the above
4606
4607     modified files:
4608      CHANGES ChangeLog.d/disorder--mainline--0.1
4609      doc/disorder_config.5.in progs/dcgi.c templates/choose.html
4610      templates/help.html templates/search.html
4611
4612
4613 2005-02-06 23:45:49 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-87
4614
4615     Summary:
4616       typo
4617     Revision:
4618       disorder--mainline--0.1--patch-87
4619
4620     * doc/disorder_config.5.in: typo fix
4621
4622     modified files:
4623      ChangeLog.d/disorder--mainline--0.1 doc/disorder_config.5.in
4624
4625
4626 2005-02-06 23:44:50 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-86
4627
4628     Summary:
4629       improved track picking interface
4630     Revision:
4631       disorder--mainline--0.1--patch-86
4632
4633     This change follows watching a user pick several tracks fromg a single
4634     album without the benefit of an 'open in new tab' client command (the
4635     client they were using had the feature but they didn't know to use it).
4636     
4637     The new behaviour is that when you pick a track to be played you stay on
4638     the same screen, with an indicator appearing beside the track to show
4639     that it is on the queue.
4640     
4641     The old behaviour is still available, by editing templates/choose.html.
4642     
4643     * lib/kvp.c: urlencodestring() provides a more convenient interface for
4644       getting url-encoded strings
4645     * progs/dcgi.c: action=play now takes a back=directory argument to
4646       redirect back into action=choose with a chosen directory.  Used to stay
4647       on the same page when choosing multiple tracks.
4648       New @trackstate@ action reports current track state as 'playing',
4649       'queued' or '' if neither.
4650     * templates/choose.html: use the above to stay on the same page when
4651       choosing tracks while also giving visual feedback
4652     * doc/disorder_config.5.in: document the above changes
4653     * CHANGES: mention recent changes
4654
4655     modified files:
4656      CHANGES ChangeLog.d/disorder--mainline--0.1
4657      doc/disorder_config.5.in lib/kvp.c lib/kvp.h progs/dcgi.c
4658      templates/choose.html
4659
4660
4661 2005-02-06 20:39:47 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-85
4662
4663     Summary:
4664       faster searching
4665     Revision:
4666       disorder--mainline--0.1--patch-85
4667
4668     * progs/tracks.c: track_search() retrieves word list for each track from
4669       isearch database, which is rather fewer queries than reconstructing the
4670       word list on the fly.
4671       isearch_words() factors out common code for getting word lists from
4672       isearch.db.
4673
4674     modified files:
4675      ChangeLog.d/disorder--mainline--0.1 progs/tracks.c
4676
4677
4678 2005-02-06 18:37:32 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-84
4679
4680     Summary:
4681       inverse search index
4682     Revision:
4683       disorder--mainline--0.1--patch-84
4684
4685     * progs/tracks.c: isearch.db is 'inverse' of search db, so we can keep
4686       search db properly up to date.
4687       DBCALL writes to debug output.
4688       get/put write to debug output, report db name
4689       opendb() centralizes database opening
4690       track_getpart() wraps trackname_part(), doing database lookup too
4691     * progs/server.c: use track_getpart() instead of manually checking
4692       database and calling trackname_part().
4693     * lib/log.c: report file/line in debug output
4694
4695     modified files:
4696      ChangeLog.d/disorder--mainline--0.1 lib/configuration.c
4697      lib/configuration.h lib/log.c lib/log.h progs/cgi.h
4698      progs/server.c progs/tracks.c progs/tracks.h
4699
4700
4701 2005-02-06 16:00:55 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-83
4702
4703     Summary:
4704       internal documentation
4705     Revision:
4706       disorder--mainline--0.1--patch-83
4707
4708     * progs/tracks.c: describe current database tables
4709
4710     modified files:
4711      CHANGES ChangeLog.d/disorder--mainline--0.1 progs/tracks.c
4712
4713
4714 2005-02-05 19:50:44 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-82
4715
4716     Summary:
4717       tkdisorder improvements
4718     Revision:
4719       disorder--mainline--0.1--patch-82
4720
4721     * python/tkdisorder: use a canvas to display queue/recent listings,
4722       showing artist, album and title.  A bit slow.  Could use timings,
4723       submitters, etc too.
4724
4725     modified files:
4726      ChangeLog.d/disorder--mainline--0.1 python/tkdisorder
4727
4728
4729 2005-02-05 18:18:16 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-81
4730
4731     Summary:
4732       avoid accumulating overlarge recently played list
4733     Revision:
4734       disorder--mainline--0.1--patch-81
4735
4736     * lib/queue.c: recompute size of 'recent' list on loading it.  Previously
4737       it was not recounted but started again from 0 even if it wasn't empty;
4738       so restarting the server effectively bumped the history variable
4739       upwards by whatever the current size of the list was.
4740     * {arch}/=tagging-method: ignore =obj directory
4741
4742     modified files:
4743      ChangeLog.d/disorder--mainline--0.1 lib/queue.c
4744      {arch}/=tagging-method
4745
4746
4747 2005-02-05 17:20:43 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-80
4748
4749     Summary:
4750       make tkdisorder use 'part' command
4751     Revision:
4752       disorder--mainline--0.1--patch-80
4753
4754     * python/tkdisorder: replace local track parsing with calls to
4755       disorder.client.part()
4756     * python/disorder.py.in: DISORDER_PYTHON_DEBUG can be used to turn on
4757       disorder.py debugging
4758
4759     modified files:
4760      ChangeLog.d/disorder--mainline--0.1 python/disorder.py.in
4761      python/tkdisorder
4762
4763
4764 2005-02-05 15:33:36 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-79
4765
4766     Summary:
4767       build fixes
4768     Revision:
4769       disorder--mainline--0.1--patch-79
4770
4771     * lib/types.h: work around broken apple header file by undefining PRI?MAX
4772       values that GNU C rejects in pedantic mode.
4773     * plugins/tracklength.c: cast strncmp() args to reliably match declaration
4774
4775     modified files:
4776      ChangeLog.d/disorder--mainline--0.1 lib/types.h
4777      plugins/tracklength.c
4778
4779
4780 2005-02-05 15:12:52 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-78
4781
4782     Summary:
4783       fix trackname parsing for scratches
4784     Revision:
4785       disorder--mainline--0.1--patch-78
4786
4787     * progs/server.c: don't insist that the track exists, as this can break
4788       scratches which aren't required to 'exist' (in this sense)
4789     * progs/trackname.c: new internal program exposes trackname_part() for
4790       testing purposes.
4791
4792     new files:
4793      progs/trackname.c
4794
4795     modified files:
4796      ChangeLog.d/disorder--mainline--0.1 progs/Makefile.am
4797      progs/server.c
4798
4799
4800 2005-02-05 11:54:53 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-77
4801
4802     Summary:
4803       move trackname parsing into server
4804     Revision:
4805       disorder--mainline--0.1--patch-77
4806
4807     Moving the trackname parsing into the server allows every client to get
4808     the same logic without having to locally reimplement it.
4809     
4810     * debian/disorder.config: add namepart directives
4811     * examples/config.sample.in: add namepart directives
4812     * doc/disorder_config.5.in: document namepart directive; remove
4813       trackname-part references.
4814     
4815     * lib/trackname.c: trackname_part() function does regexp substitution
4816       based on namepart directives.
4817     * lib/configuration.c: namepart directive
4818     * lib/regsub.c: moved to lib
4819     
4820     * progs/server.c: implement 'part' command
4821     * lib/client.c: add disorder_part() function; report transmitted commands
4822       in debug output.
4823     * doc/disorder_protocol.5.in: document 'part' command
4824     
4825     * progs/disorder.c: expose 'part' command to command line
4826     * doc/disorder.1.in: document 'part' command
4827     
4828     * python/disorder.py.in: expose 'part' command to python
4829     
4830     * progs/cgi.c: abolish trackname-part
4831     * progs/cgimain.c: environment variable DISORDER_DEBUG enables debugging.
4832     * progs/dcgi.c: use disorder_part() to get track name parts
4833     * templates/options: options.trackname is gone
4834     * templates/options.trackname: gone
4835     
4836     * README.upgrades: new upgrading instructions mention this change.
4837     * README: mention README.upgrades
4838
4839     new files:
4840      README.upgrades lib/trackname.c lib/trackname.h
4841
4842     removed files:
4843      templates/options.trackname
4844
4845     modified files:
4846      CHANGES ChangeLog.d/disorder--mainline--0.1 Makefile.am README
4847      debian/disorder.config doc/disorder.1.in
4848      doc/disorder_config.5.in doc/disorder_protocol.5.in
4849      examples/config.sample.in lib/Makefile.am lib/client.c
4850      lib/client.h lib/configuration.c lib/configuration.h
4851      progs/Makefile.am progs/cgi.c progs/cgimain.c progs/dcgi.c
4852      progs/disorder.c progs/server.c python/disorder.py.in
4853      templates/Makefile.am templates/options
4854
4855     renamed files:
4856      progs/regsub.c
4857        ==> lib/regsub.c
4858      progs/regsub.h
4859        ==> lib/regsub.h
4860
4861
4862 2005-02-04 13:29:13 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-76
4863
4864     Summary:
4865       preparations for the future
4866     Revision:
4867       disorder--mainline--0.1--patch-76
4868
4869     Prepare for move of DisOrder website to www.greenend.org/rjk/disorder.
4870     Version number to 1.1+dev.
4871
4872     modified files:
4873      CHANGES ChangeLog.d/disorder--mainline--0.1 configure.ac
4874      debian/copyright scripts/check scripts/dist
4875      templates/about.html templates/credits.html
4876
4877
4878 2005-02-03 22:26:13 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-75
4879
4880     Summary:
4881       better ChangeLog.d handling
4882     Revision:
4883       disorder--mainline--0.1--patch-75
4884
4885     Distribute ChangeLog.d/* by mentioning it in EXTRA_DIST rather than
4886     giving it its own Makefile.
4887
4888     removed files:
4889      ChangeLog.d/Makefile.am
4890
4891     modified files:
4892      ChangeLog.d/disorder--mainline--0.1 Makefile.am configure.ac
4893
4894
4895 2005-02-03 17:07:25 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-74
4896
4897     Summary:
4898       automake bodge
4899     Revision:
4900       disorder--mainline--0.1--patch-74
4901
4902     * prepare: make sure Automake adds INSTALL, but doesn't fall over because
4903       of missing ChangeLog.
4904
4905     modified files:
4906      ChangeLog.d/disorder--mainline--0.1 prepare
4907
4908
4909 2005-02-03 00:02:59 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-73
4910
4911     Summary:
4912       fix up dist script
4913     Revision:
4914       disorder--mainline--0.1--patch-73
4915
4916     * scripts/dist: install change history files
4917     
4918     
4919
4920     modified files:
4921      ChangeLog.d/disorder--mainline--0.1 scripts/dist
4922
4923
4924 2005-02-02 23:50:09 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-72
4925
4926     Summary:
4927       release 1.1
4928     Revision:
4929       disorder--mainline--0.1--patch-72
4930
4931     * configure.ac, CHANGES, debian/changelog.Debian: version number to 1.1
4932     * debian/control: Build-Depends on libdb4.3 then libdb4.2
4933     * scripts/makedeb: bzip2
4934     * scripts/check: script to scan for missing copyright dates
4935     * lib/Makefile.am: tie libdisorder shared library version to disorder
4936       version to avoid appearing to promise anything about ABI stability.
4937     
4938     Everything else: missing copyright dates.
4939
4940     new files:
4941      scripts/check
4942
4943     modified files:
4944      CHANGES ChangeLog.d/disorder--mainline--0.1 configure.ac
4945      debian/changelog.Debian debian/config debian/control
4946      doc/Makefile.am doc/disorder.3 doc/disorderd.8.in
4947      lib/Makefile.am lib/charset.c lib/charset.h
4948      lib/configuration.c lib/configuration.h lib/disorder.h
4949      lib/hex.c lib/hex.h lib/plugin.c lib/plugin.h lib/queue.h
4950      lib/types.h lib/utf8.h plugins/notify.c plugins/pick.c
4951      progs/cgi.c progs/dcgi.c progs/play.c progs/server.c
4952      progs/state.c progs/tracks.c python/Makefile.am
4953      scripts/Makefile.am scripts/inst scripts/makedeb
4954      scripts/sedfiles.make templates/credits.html
4955      templates/help.html templates/prefs.html
4956
4957
4958 2005-02-01 20:09:19 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-71
4959
4960     Summary:
4961       more portability fixes
4962     Revision:
4963       disorder--mainline--0.1--patch-71
4964
4965     The aim is to build with CC=gcc -std=c89 -pedantic, though sadly it's not
4966     practical to add -Werror in there as well.
4967     
4968     * configure.ac: turn on -Werror (if that's being used) when checking for
4969       long long, since that's how it'll be used later on.  In fact this only
4970       rejects long long for compilers that warn but accept it, but it's
4971       useful to be able to build without long long being available.
4972       However, we disable -Werror if we can't convert function pointers to
4973       object pointers without warning: DisOrder without dlsym() is
4974       essentially hopeless.
4975     * lib/basen.c: rename div to divide (libc conflict)
4976     * lib/configuration.c: variable initializers are not allowed in C89
4977     * lib/types.h: include <stdlib.h> before redefing atoll() etc
4978       Define PRIxMAX
4979     * progs/server.c: use uintmax_t rather than explicit unsigned long long
4980       to report times in client log messages.
4981
4982     modified files:
4983      ChangeLog.d/disorder--mainline--0.1 configure.ac lib/basen.c
4984      lib/configuration.c lib/types.h progs/server.c
4985
4986
4987 2005-01-30 13:08:35 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-70
4988
4989     Summary:
4990       cope with broken darwin headers
4991     Revision:
4992       disorder--mainline--0.1--patch-70
4993
4994     'gcc-3.3 -std=c99' on Darwin turns declaration of strtoll and atoll off,
4995     even though they are in the C99 library clause.
4996     
4997     * plugins/pick.c: cope with undeclared atoll
4998     * lib/types.h: cope with undeclared strtoll/atoll
4999     * configure.ac: check whether strtoll/atoll are declared; include
5000       <sys/types.h> for ssize_t
5001
5002     modified files:
5003      ChangeLog.d/disorder--mainline--0.1 configure.ac lib/types.h
5004      plugins/pick.c
5005
5006
5007 2005-01-29 19:18:11 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-69
5008
5009     Summary:
5010       libdb version checking makes more sense
5011     Revision:
5012       disorder--mainline--0.1--patch-69
5013
5014     * progs/tracks.c: reverse sense of libdb 4.2/4.3 tests; now DB42 means
5015       just libdb 4.2, rather than DB43 meaning anything from 4.3 onwards.
5016
5017     modified files:
5018      ChangeLog.d/disorder--mainline--0.1 progs/tracks.c
5019
5020
5021 2005-01-27 23:49:50 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-68
5022
5023     Summary:
5024       fix botched libdb upgrade
5025     Revision:
5026       disorder--mainline--0.1--patch-68
5027
5028     * progs/tracks.c: 4.2 code was bust, restore
5029
5030     modified files:
5031      ChangeLog.d/disorder--mainline--0.1 progs/tracks.c
5032
5033
5034 2005-01-27 23:47:29 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-67
5035
5036     Summary:
5037       improved distribution script
5038     Revision:
5039       disorder--mainline--0.1--patch-67
5040
5041     * scripts/webman: dead
5042     * scripts/dist: new distribution script installs tarball and web man
5043       pages in right place
5044
5045     new files:
5046      scripts/dist
5047
5048     removed files:
5049      scripts/webman
5050
5051     modified files:
5052      ChangeLog.d/disorder--mainline--0.1
5053
5054
5055 2005-01-27 23:37:34 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-66
5056
5057     Summary:
5058       abolish backward compatibility code
5059     Revision:
5060       disorder--mainline--0.1--patch-66
5061
5062     * progs/tracks.c: remove upgrade code for ancient database location and
5063       content
5064     * README: db 4.3 and gcc 3.4 work
5065
5066     modified files:
5067      CHANGES ChangeLog.d/disorder--mainline--0.1 README
5068      progs/tracks.c
5069
5070
5071 2005-01-27 23:20:21 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-65
5072
5073     Summary:
5074       db version 4.3 support
5075     Revision:
5076       disorder--mainline--0.1--patch-65
5077
5078     We support 4.2 and 4.3 for now.  4.2 support can be expected to go away
5079     at some point.
5080     
5081     * progs/tracks.c: db4.3 support
5082
5083     modified files:
5084      ChangeLog.d/disorder--mainline--0.1 progs/tracks.c
5085
5086
5087 2005-01-27 22:55:36 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-64
5088
5089     Summary:
5090       spelling corrections
5091     Revision:
5092       disorder--mainline--0.1--patch-64
5093
5094     * python/disorder.py.in: minor typo fixes
5095     * doc/disorder_config.5.in: typo fix
5096     * progs/disorder.c: typo fix
5097
5098     modified files:
5099      CHANGES ChangeLog.d/disorder--mainline--0.1
5100      doc/disorder_config.5.in progs/disorder.c
5101      python/disorder.py.in
5102
5103
5104 2005-01-25 23:52:36 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-63
5105
5106     Summary:
5107       C dialect strictness
5108     Revision:
5109       disorder--mainline--0.1--patch-63
5110
5111     * configure.ac: move _GNU_SOURCE define above library checks, since
5112       <db.h> gets on badly with -std=c89 otherwise.
5113     * lib/configuration.h: 'restrict' is a C99 keyword, don't use it as a
5114       structure member name!
5115     * lib/configuration.c: 'restrict' option field is now 'restrictions'
5116     * progs/server.c: 'restrict' option field is now 'restrictions'
5117     * progs/dcgi.c: 'restrict' option field is now 'restrictions'
5118     * progs/cgi.c: remove extraneous semicolon
5119     * lib/plugin.c: cast to keep gcc --std=c99 -pedantic happy
5120
5121     modified files:
5122      ChangeLog.d/disorder--mainline--0.1 configure.ac
5123      lib/configuration.c lib/configuration.h lib/plugin.c
5124      progs/cgi.c progs/dcgi.c progs/server.c
5125
5126
5127 2005-01-25 18:35:36 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-62
5128
5129     Summary:
5130       completion.bash
5131     Revision:
5132       disorder--mainline--0.1--patch-62
5133
5134     * scripts/completion.bash: renamed from disorder-bash-completion.
5135       'disorder' will already be in the path since it is installed to
5136       pkgdatadir.
5137
5138     modified files:
5139      CHANGES ChangeLog.d/disorder--mainline--0.1 README
5140      scripts/Makefile.am
5141
5142     renamed files:
5143      scripts/disorder-bash-completion
5144        ==> scripts/completion.bash
5145
5146
5147 2005-01-24 19:49:23 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-61
5148
5149     Summary:
5150       bash completion
5151     Revision:
5152       disorder--mainline--0.1--patch-61
5153
5154     * scripts/disorder-bash-completion: bash completion for disorder and
5155       disorderd
5156
5157     new files:
5158      scripts/disorder-bash-completion
5159
5160     modified files:
5161      CHANGES ChangeLog.d/disorder--mainline--0.1
5162      scripts/Makefile.am
5163
5164
5165 2005-01-24 01:47:36 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-60
5166
5167     Summary:
5168       more UTF-8 testing stuff
5169     Revision:
5170       disorder--mainline--0.1--patch-60
5171
5172     * lib/charset.c: ucs4cmp, used in testing
5173     * lib/test.c: fix broken UTF-8 testing
5174
5175     modified files:
5176      ChangeLog.d/disorder--mainline--0.1 lib/charset.c
5177      lib/charset.h lib/test.c
5178
5179
5180 2005-01-24 01:42:37 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-59
5181
5182     Summary:
5183       more tests
5184     Revision:
5185       disorder--mainline--0.1--patch-59
5186
5187     * lib/charset.c: new ucs42utf8 function, currently only used by tests
5188     * lib/test.c: test hex codec; ucs42utf8; casefold; check the basic
5189       character set looks like ASCII.
5190
5191     modified files:
5192      ChangeLog.d/disorder--mainline--0.1 lib/charset.c
5193      lib/charset.h lib/test.c
5194
5195
5196 2005-01-23 19:17:20 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-58
5197
5198     Summary:
5199       eliminate bogus diagnostics
5200     Revision:
5201       disorder--mainline--0.1--patch-58
5202
5203     * lib/hex.c: prevoius change to unhexdigit() produced an error on every
5204       call.  Oops.
5205
5206     modified files:
5207      ChangeLog.d/disorder--mainline--0.1 lib/hex.c
5208
5209
5210 2005-01-23 19:08:58 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-57
5211
5212     Summary:
5213       base64 corrections
5214     Revision:
5215       disorder--mainline--0.1--patch-57
5216
5217     * lib/test.c: MIME base64 tests
5218     * lib/mime.c: corrected base64 parsing
5219
5220     modified files:
5221      ChangeLog.d/disorder--mainline--0.1 lib/mime.c lib/test.c
5222
5223
5224 2005-01-23 18:18:25 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-56
5225
5226     Summary:
5227       quoted-printable tests and fixes
5228     Revision:
5229       disorder--mainline--0.1--patch-56
5230
5231     * lib/test.c: a few MIME decoding tests
5232     * lib/hex.c: quiet hex digit conversion
5233     * lib/mime.c: corrected decoding of quoted-printable;
5234       eliminate bogus diagnostics
5235
5236     modified files:
5237      CHANGES ChangeLog.d/disorder--mainline--0.1 lib/hex.c
5238      lib/hex.h lib/mime.c lib/test.c
5239
5240
5241 2005-01-23 17:49:14 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-55
5242
5243     Summary:
5244       tests, further UTF-8 improvements
5245     Revision:
5246       disorder--mainline--0.1--patch-55
5247
5248     * lib/test.c: tests for UTF-8 decoding and validation
5249     * lib/utf8.h: corrected again, sigh
5250     * lib/Makefile.am: run library tests at build time (not that there are
5251       many of them)
5252
5253     new files:
5254      lib/test.c
5255
5256     modified files:
5257      ChangeLog.d/disorder--mainline--0.1 lib/Makefile.am lib/utf8.h
5258
5259
5260 2005-01-19 23:09:55 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-54
5261
5262     Summary:
5263       finally correct UTF-8 checking
5264     Revision:
5265       disorder--mainline--0.1--patch-54
5266
5267     * lib/utf8.h: check for invalid UTF-8 sequences more strictly
5268                   parse [U+10000,U+10FFFF] correctly(!)
5269     * lib/utf8.c: validutf8() function checks a string
5270     * progs/cgi.c: use validutf8() instead of wrongly(!) checking manually.
5271
5272     new files:
5273      lib/utf8.c
5274
5275     modified files:
5276      CHANGES ChangeLog.d/disorder--mainline--0.1 lib/Makefile.am
5277      lib/utf8.h progs/cgi.c
5278
5279
5280 2005-01-18 20:49:23 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-53
5281
5282     Summary:
5283       stricter CGI arg checking
5284     Revision:
5285       disorder--mainline--0.1--patch-53
5286
5287     * progs/cgi.c: UTF-8 checking of CGI arguments
5288
5289     modified files:
5290      CHANGES ChangeLog.d/disorder--mainline--0.1 progs/cgi.c
5291
5292
5293 2005-01-17 23:39:46 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-52
5294
5295     Summary:
5296       make prefs.html self-consistent
5297     Revision:
5298       disorder--mainline--0.1--patch-52
5299
5300     * templates/prefs.html: even/odd styles count from 0, not 1 l-)
5301
5302     modified files:
5303      ChangeLog.d/disorder--mainline--0.1 templates/prefs.html
5304
5305
5306 2005-01-17 23:26:15 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-51
5307
5308     Summary:
5309       base64/qp support in MIME parsing
5310     Revision:
5311       disorder--mainline--0.1--patch-51
5312
5313     * lib/mime.c: base64 and qp support for MIME body parts.  mime_header()
5314       becomes mime_parse() and promises do deal with
5315       content-transfer-encoding for you.
5316     * progs/cgi.c: track mime.c changes
5317
5318     modified files:
5319      ChangeLog.d/disorder--mainline--0.1 lib/mime.c lib/mime.h
5320      progs/cgi.c
5321
5322
5323 2005-01-17 22:31:40 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-50
5324
5325     Summary:
5326       use multipart/form-data for preference submissions
5327     Revision:
5328       disorder--mainline--0.1--patch-50
5329
5330     * progs/cgi.c: accept multipart/form-data POST data.  Note that the
5331       character set is assumed to be UTF-8.
5332     * lib/mime.c,: enough MIME support for multipart/form-data support.  We
5333       don't do QP or BASE64 yet(!)
5334     * templates/prefs.html: use multi-part/form-data submission for
5335       preference updates.
5336
5337     new files:
5338      lib/mime.c lib/mime.h
5339
5340     modified files:
5341      ChangeLog.d/disorder--mainline--0.1 lib/Makefile.am
5342      progs/cgi.c templates/prefs.html
5343
5344
5345 2005-01-16 19:57:33 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-49
5346
5347     Summary:
5348       python administrivia
5349     Revision:
5350       disorder--mainline--0.1--patch-49
5351
5352     * doc/Makefile.am: ship tkdisorder.1
5353     * doc/tkdisorder.1: refer to 'pydoc disorder'
5354     * doc/disorder.1.in: refer to 'pydoc disorder'
5355
5356     modified files:
5357      ChangeLog.d/disorder--mainline--0.1 doc/Makefile.am
5358      doc/disorder.1.in doc/tkdisorder.1
5359
5360
5361 2005-01-16 16:25:33 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-48
5362
5363     Summary:
5364       tkdisorder administrivia
5365     Revision:
5366       disorder--mainline--0.1--patch-48
5367
5368     * python/disorder.py.in: copyright message, version number
5369     * python/tkdisorder: copyright message, display version
5370     * scripts/sedfiles.make: version number substitution
5371     * doc/tkdisorder.1: document tkdisorder
5372
5373     new files:
5374      doc/tkdisorder.1
5375
5376     modified files:
5377      ChangeLog.d/disorder--mainline--0.1 doc/Makefile.am
5378      python/Makefile.am python/disorder.py.in python/tkdisorder
5379      scripts/sedfiles.make
5380
5381
5382 2005-01-16 15:20:43 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-47
5383
5384     Summary:
5385       more user-friendly "cooked" preferences interface
5386     Revision:
5387       disorder--mainline--0.1--patch-47
5388
5389     * templates/prefs.html: cooked preferences; wider input boxes
5390     * templates/options.labels: new labels for cooked prefs
5391     * templates/help.html: describe cooked preferences interface
5392     * progs/dcgi.c: prefs is now a proper action, @prefs@ just iterates over
5393       the set preferences.  @pref@ added.  @part@ can now take a track name.
5394     * doc/disorder_config.5.in: document new/modified expansions and action
5395     * CHANGES: mention cooked prefs
5396
5397     modified files:
5398      CHANGES ChangeLog.d/disorder--mainline--0.1
5399      doc/disorder_config.5.in progs/dcgi.c templates/help.html
5400      templates/options.labels templates/prefs.html
5401
5402
5403 2005-01-12 23:24:12 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-46
5404
5405     Summary:
5406       preserve recently played list across server restarts
5407     Revision:
5408       disorder--mainline--0.1--patch-46
5409
5410     * lib/queue.c: save/restore recently-played list
5411     * progs/state.c: restore recently-played list at startup
5412     * progs/play.c: save recently-played list after modifying it
5413     * doc/disorderd.8.in: mention new file
5414     * doc/disorder_config.5.in: recent list no longer nuked at startup
5415     * CHANGES: mention the change
5416     
5417     A better approach might be for the mutating queue_*() functions to set a
5418     flag, which is then queried each time round the event loop to determine
5419     when a save is required.
5420
5421     modified files:
5422      CHANGES ChangeLog.d/disorder--mainline--0.1
5423      doc/disorder_config.5.in doc/disorderd.8.in lib/queue.c
5424      lib/queue.h progs/disorder.c progs/play.c progs/state.c
5425
5426
5427 2005-01-04 19:56:52 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-45
5428
5429     Summary:
5430       further tkdisorder improvements
5431     Revision:
5432       disorder--mainline--0.1--patch-45
5433
5434     * python/tkdisorder: break up QueueWidget into TrackListWidget and
5435       {Queue,Recent}Widget, replacing callback with subclassing.
5436       Add title to main window.
5437       Be more careful about using clients from the right thread.
5438
5439     modified files:
5440      ChangeLog.d/disorder--mainline--0.1 python/tkdisorder
5441
5442
5443 2005-01-03 16:30:02 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-44
5444
5445     Summary:
5446       'recent' button
5447     Revision:
5448       disorder--mainline--0.1--patch-44
5449
5450     * python/tkdisorder: 'recent' button pops up a window with the last N
5451       tracks.  Generalized QueueWidget a bit.  MonitorStateThread can have
5452       widgets added to and removed from its notification list.
5453
5454     modified files:
5455      ChangeLog.d/disorder--mainline--0.1 python/tkdisorder
5456
5457
5458 2005-01-03 14:39:10 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-43
5459
5460     Summary:
5461       scratch button for tkdisorder
5462     Revision:
5463       disorder--mainline--0.1--patch-43
5464
5465     * python/tkdisorder: Quit and Scratch buttons
5466
5467     modified files:
5468      ChangeLog.d/disorder--mainline--0.1 python/tkdisorder
5469
5470
5471 2005-01-03 14:21:33 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-42
5472
5473     Summary:
5474       more efficient tkdisorder
5475     Revision:
5476       disorder--mainline--0.1--patch-42
5477
5478     We could make it more efficient yet by ignoring irrelevant log messages.
5479     
5480     * python/disorder.py.in: warning about disorder.log() return value
5481     * python/tkdisorder: Use disorder.log() to watch for server state changes
5482       rather than plling.  Also separate clients for separate threads rather
5483       than locking a single client.
5484
5485     modified files:
5486      ChangeLog.d/disorder--mainline--0.1 python/disorder.py.in
5487      python/tkdisorder
5488
5489
5490 2005-01-03 13:51:01 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-41
5491
5492     Summary:
5493       notifications and logs for queue and playing state changes
5494     Revision:
5495       disorder--mainline--0.1--patch-41
5496
5497     * lib/disorder.h: new notify plugin calls report when a track is moved or
5498       removed in the queue
5499     * doc/disorder.3: document new notify calls
5500     * lib/plugin.c: stubs for new notify calls
5501     * lib/plugin.c: stubs for new notify calls
5502     * plugins/notify.c: empty implementations of new calls
5503     
5504     * lib/queue.c: call new notify plugin calls
5505                    log queue changes
5506     * progs/play.c: log playing, scratchin and completion of tracks
5507                     unconditionally log playing status
5508
5509     modified files:
5510      ChangeLog.d/disorder--mainline--0.1 doc/disorder.3
5511      lib/disorder.h lib/plugin.c lib/plugin.h lib/queue.c
5512      lib/queue.h plugins/notify.c progs/play.c progs/server.c
5513
5514
5515 2005-01-03 00:26:18 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-40
5516
5517     Summary:
5518       update copyright dates
5519     Revision:
5520       disorder--mainline--0.1--patch-40
5521
5522     More copyright dates.
5523
5524     modified files:
5525      ChangeLog.d/disorder--mainline--0.1 templates/about.html
5526
5527
5528 2005-01-03 00:25:36 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-39
5529
5530     Summary:
5531       update copyright dates
5532     Revision:
5533       disorder--mainline--0.1--patch-39
5534
5535     It's 2005 now.
5536
5537     modified files:
5538      ChangeLog.d/Makefile.am ChangeLog.d/disorder--mainline--0.1
5539      Makefile.am README configure.ac debian/rules.m4
5540      doc/disorder.1.in doc/disorder_config.5.in
5541      doc/disorder_protocol.5.in lib/basen.c lib/basen.h lib/queue.c
5542      prepare progs/disorder.c
5543
5544
5545 2005-01-03 00:21:16 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-38
5546
5547     Summary:
5548       Typo fixes
5549     Revision:
5550       disorder--mainline--0.1--patch-38
5551
5552     Trivial corrections to various bits of documentation.
5553
5554     modified files:
5555      ChangeLog.d/disorder--mainline--0.1 README doc/disorder.1.in
5556      doc/disorder_config.5.in doc/disorder_protocol.5.in
5557
5558
5559 2005-01-02 23:56:24 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-37
5560
5561     Summary:
5562       automake --foreign
5563     Revision:
5564       disorder--mainline--0.1--patch-37
5565
5566     Reduce Automake strictness and delete quietening files.
5567
5568     removed files:
5569      .arch-ids/ChangeLog.id AUTHORS ChangeLog NEWS
5570
5571     modified files:
5572      ChangeLog.d/disorder--mainline--0.1 prepare
5573
5574
5575 2005-01-02 21:31:11 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-36
5576
5577     Summary:
5578       documentation trivia
5579     Revision:
5580       disorder--mainline--0.1--patch-36
5581
5582     * CHANGES: describe recent changes
5583     * doc/disorder.1.in: unify remove/move language and caveat
5584
5585     modified files:
5586      CHANGES ChangeLog.d/disorder--mainline--0.1 doc/disorder.1.in
5587
5588
5589 2005-01-02 21:16:36 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-35
5590
5591     Summary:
5592       track ID improvements
5593     Revision:
5594       disorder--mainline--0.1--patch-35
5595
5596     * progs/disorder.c: report track id in output
5597     * lib/basen.c: arbitrary base printer
5598     * lib/queue.c: queue IDs are now base-62 not hex, making them much
5599       shorter.  The serial number is made the most significant word to
5600       increase diversity of adjacently generated IDs.
5601
5602     new files:
5603      ChangeLog lib/basen.c lib/basen.h
5604
5605     modified files:
5606      ChangeLog.d/disorder--mainline--0.1 lib/Makefile.am
5607      lib/queue.c progs/disorder.c
5608
5609
5610 2005-01-02 20:42:37 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-34
5611
5612     Summary:
5613       ChangeLog.d directory
5614     Revision:
5615       disorder--mainline--0.1--patch-34
5616
5617     Move changelogs into ChangeLog.d directory.
5618     
5619     * CHANGES: note movement of ChangeLogs
5620
5621     new files:
5622      .arch-ids/ChangeLog.id ChangeLog ChangeLog.d/.arch-ids/=id
5623      ChangeLog.d/Makefile.am
5624
5625     modified files:
5626      CHANGES ChangeLog Makefile.am configure.ac debian/rules.m4
5627
5628     renamed files:
5629      ChangeLog
5630        ==> ChangeLog.d/disorder--mainline--0.1
5631      ChangeLog.cvs
5632        ==> ChangeLog.d/cvs--ChangeLog
5633
5634     new directories:
5635      ChangeLog.d ChangeLog.d/.arch-ids
5636
5637
5638 2005-01-02 20:27:21 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-33
5639
5640     Summary:
5641       expose track movement to the command line interface
5642     Revision:
5643       disorder--mainline--0.1--patch-33
5644
5645     * progs/disorder.c: implement 'move' command
5646     * doc/disorder.1.in: document 'move' command
5647
5648     modified files:
5649      ChangeLog doc/disorder.1.in progs/disorder.c
5650
5651
5652 2004-12-30 16:21:07 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-32
5653
5654     Summary:
5655       sort 'The Beatles' under B not T
5656     Revision:
5657       disorder--mainline--0.1--patch-32
5658
5659     * progs/dcgi.c: filter according to regexp in the web interface rather
5660       than in the server.  This is slower but can actually be made correct.
5661       This might be a problem for sites with very large numbers of (in
5662       particular) top-level directories.
5663       part() is renamed tracknamepart() as a no-longer-required build fix,
5664       but it's also a bit clearer what it does, so I left it in.
5665     
5666     * BUGS: remove fixed bugs.
5667
5668     modified files:
5669      BUGS ChangeLog progs/dcgi.c
5670
5671
5672 2004-12-30 14:42:26 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-31
5673
5674     Summary:
5675       strip out libdb backwards compatibility cruft
5676     Revision:
5677       disorder--mainline--0.1--patch-31
5678
5679     Anything before libdb 4.2 is now regarded obsolete, and thus the grotty
5680     configure and preprocessor logic to support older versions is removed.
5681     
5682     * progs/dbfixup.h: removed
5683     * progs/tracks.c: strip out db version fixup hackery.  Now we only
5684       support libdb 4.2 (and possibly later).
5685     * README: note that libdb 4.1 and earlier won't work
5686     * progs/Makefile.am: dbfixup.h is gone
5687     * configure.ac: remove obsolete libdb feature tests
5688     
5689
5690     removed files:
5691      progs/dbfixup.h
5692
5693     modified files:
5694      ChangeLog README configure.ac progs/Makefile.am progs/tracks.c
5695
5696
5697 2004-12-30 14:18:19 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-30
5698
5699     Summary:
5700       documentation fixups
5701     Revision:
5702       disorder--mainline--0.1--patch-30
5703
5704     * scripts/webman: html man pages are in doc directory now
5705     * scripts/htmlman: fix title of unmunged man pages
5706     * configure.ac: version number to 1.0+dev
5707     
5708
5709     modified files:
5710      ChangeLog configure.ac scripts/htmlman scripts/webman
5711
5712
5713 2004-12-30 12:55:48 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-29
5714
5715     Summary:
5716       release 1.0
5717     Revision:
5718       disorder--mainline--0.1--patch-29
5719
5720     * README: list development-time dependencies
5721     * scripts/Makefile.am: ship sedfiles.make
5722     * debian/rules.m4: disorder.init and disorder.cgi moved
5723     * debian/autorules.m4: debian.changelog moved
5724     
5725
5726     modified files:
5727      CHANGES ChangeLog README configure.ac debian/autorules.m4
5728      debian/changelog.Debian debian/rules.m4 scripts/Makefile.am
5729      scripts/makedeb
5730
5731
5732 2004-12-05 11:21:09 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-28
5733
5734     Summary:
5735       more post-split tidy-up
5736     Revision:
5737       disorder--mainline--0.1--patch-28
5738
5739     * scripts/inst: disorder.cgi is in progs/ now
5740
5741     modified files:
5742      ChangeLog scripts/inst
5743
5744
5745 2004-12-04 17:36:25 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-27
5746
5747     Summary:
5748       more most-split tidy-ups
5749     Revision:
5750       disorder--mainline--0.1--patch-27
5751
5752     * debian/changelog.Debian: a saner name
5753
5754     modified files:
5755      ChangeLog debian/Makefile.am debian/autorules.m4
5756
5757     renamed files:
5758      debian/ChangeLog
5759        ==> debian/changelog.Debian
5760
5761
5762 2004-12-04 16:18:26 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-26
5763
5764     Summary:
5765       make python optional
5766     Revision:
5767       disorder--mainline--0.1--patch-26
5768
5769     Python support should be optional.  Implement this by suppressing
5770     recursion into python/ if no Python interpreter is found.  Not tested on
5771     a system without Python, please report success/failure in such cases.
5772
5773     modified files:
5774      ChangeLog Makefile.am README configure.ac
5775
5776
5777 2004-12-04 16:06:33 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-25
5778
5779     Summary:
5780       fix up build instructions
5781     Revision:
5782       disorder--mainline--0.1--patch-25
5783
5784     * BUGS: note that darwin can't do volume control
5785     * Makefile.am: ship README.darwin
5786     * README: link to mailing lists
5787               catch up with directory split
5788     * README.darwin: caveats
5789
5790     modified files:
5791      BUGS CHANGES ChangeLog Makefile.am README README.darwin
5792
5793     renamed files:
5794      inst
5795        ==> scripts/inst
5796      webman
5797        ==> scripts/webman
5798
5799
5800 2004-12-04 15:26:48 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-24
5801
5802     Summary:
5803       post-directory-split tidy-ups
5804     Revision:
5805       disorder--mainline--0.1--patch-24
5806
5807     * scripts/sedfiles.make: de-dupe seddery into a single file
5808     * debian/autorules.m4: catch up with filename case change
5809                            (workaround for automake wackiness)
5810
5811     new files:
5812      scripts/sedfiles.make
5813
5814     modified files:
5815      ChangeLog debian/autorules.m4 doc/Makefile.am
5816      examples/Makefile.am python/Makefile.am
5817
5818
5819 2004-12-04 13:50:38 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-23
5820
5821     Summary:
5822       split into subdirectories
5823     Revision:
5824       disorder--mainline--0.1--patch-23
5825
5826     Almost everything moves out of the root.  The new directory structure is:
5827       templates/       web interface template files
5828       scripts/         scripts used in the build process
5829       lib/             libdisorder
5830       progs/           the server and the front-end programs
5831       doc/             man pages
5832       plugins/         the standard plugins
5833       debian/          debian build files
5834       sounds/          standard scratch sounds
5835       python/          python support code
5836       examples/        config/init examples, etc
5837       config.aux/      autotools auxilary files
5838
5839     new files:
5840      config.aux/.arch-ids/=id doc/.arch-ids/=id doc/Makefile.am
5841      examples/.arch-ids/=id examples/Makefile.am lib/.arch-ids/=id
5842      lib/Makefile.am progs/.arch-ids/=id progs/Makefile.am
5843      python/.arch-ids/=id python/Makefile.am scripts/.arch-ids/=id
5844      scripts/Makefile.am
5845
5846     modified files:
5847      ChangeLog Makefile.am configure.ac debian/Makefile.am
5848      plugins/Makefile.am prepare
5849
5850     renamed files:
5851      addr.c
5852        ==> lib/addr.c
5853      addr.h
5854        ==> lib/addr.h
5855      api-client.c
5856        ==> progs/api-client.c
5857      api-client.h
5858        ==> progs/api-client.h
5859      api-server.c
5860        ==> progs/api-server.c
5861      api.c
5862        ==> progs/api.c
5863      asprintf.c
5864        ==> lib/asprintf.c
5865      authhash.c
5866        ==> lib/authhash.c
5867      authhash.h
5868        ==> lib/authhash.h
5869      casefold.h
5870        ==> lib/casefold.h
5871      cgi.c
5872        ==> progs/cgi.c
5873      cgi.h
5874        ==> progs/cgi.h
5875      cgimain.c
5876        ==> progs/cgimain.c
5877      charset.c
5878        ==> lib/charset.c
5879      charset.h
5880        ==> lib/charset.h
5881      client.c
5882        ==> lib/client.c
5883      client.h
5884        ==> lib/client.h
5885      config.sample.in
5886        ==> examples/config.sample.in
5887      configuration.c
5888        ==> lib/configuration.c
5889      configuration.h
5890        ==> lib/configuration.h
5891      daemonize.c
5892        ==> progs/daemonize.c
5893      daemonize.h
5894        ==> progs/daemonize.h
5895      dbfixup.h
5896        ==> progs/dbfixup.h
5897      dcgi.c
5898        ==> progs/dcgi.c
5899      dcgi.h
5900        ==> progs/dcgi.h
5901      debian/changelog
5902        ==> debian/ChangeLog
5903      disorder-dump.8.in
5904        ==> doc/disorder-dump.8.in
5905      disorder.1.in
5906        ==> doc/disorder.1.in
5907      disorder.3
5908        ==> doc/disorder.3
5909      disorder.c
5910        ==> progs/disorder.c
5911      disorder.h
5912        ==> lib/disorder.h
5913      disorder.init.in
5914        ==> examples/disorder.init.in
5915      disorder.py.in
5916        ==> python/disorder.py.in
5917      disorder_config.5.in
5918        ==> doc/disorder_config.5.in
5919      disorder_protocol.5.in
5920        ==> doc/disorder_protocol.5.in
5921      disorderd.8.in
5922        ==> doc/disorderd.8.in
5923      disorderd.c
5924        ==> progs/disorderd.c
5925      dump.c
5926        ==> progs/dump.c
5927      event.c
5928        ==> lib/event.c
5929      event.h
5930        ==> lib/event.h
5931      fprintf.c
5932        ==> lib/fprintf.c
5933      hex.c
5934        ==> lib/hex.c
5935      hex.h
5936        ==> lib/hex.h
5937      htmlman
5938        ==> scripts/htmlman
5939      inputline.c
5940        ==> lib/inputline.c
5941      inputline.h
5942        ==> lib/inputline.h
5943      kvp.c
5944        ==> lib/kvp.c
5945      kvp.h
5946        ==> lib/kvp.h
5947      log-impl.h
5948        ==> lib/log-impl.h
5949      log.c
5950        ==> lib/log.c
5951      log.h
5952        ==> lib/log.h
5953      makedeb
5954        ==> scripts/makedeb
5955      mem-impl.h
5956        ==> lib/mem-impl.h
5957      mem.c
5958        ==> lib/mem.c
5959      mem.h
5960        ==> lib/mem.h
5961      mixer.c
5962        ==> lib/mixer.c
5963      mixer.h
5964        ==> lib/mixer.h
5965      play.c
5966        ==> progs/play.c
5967      play.h
5968        ==> progs/play.h
5969      plugin.c
5970        ==> lib/plugin.c
5971      plugin.h
5972        ==> lib/plugin.h
5973      printf.c
5974        ==> lib/printf.c
5975      printf.h
5976        ==> lib/printf.h
5977      queue.c
5978        ==> lib/queue.c
5979      queue.h
5980        ==> lib/queue.h
5981      regsub.c
5982        ==> progs/regsub.c
5983      regsub.h
5984        ==> progs/regsub.h
5985      rescan.c
5986        ==> progs/rescan.c
5987      server.c
5988        ==> progs/server.c
5989      server.h
5990        ==> progs/server.h
5991      sink.c
5992        ==> lib/sink.c
5993      sink.h
5994        ==> lib/sink.h
5995      snprintf.c
5996        ==> lib/snprintf.c
5997      split.c
5998        ==> lib/split.c
5999      split.h
6000        ==> lib/split.h
6001      state.c
6002        ==> progs/state.c
6003      state.h
6004        ==> progs/state.h
6005      syscalls.c
6006        ==> lib/syscalls.c
6007      syscalls.h
6008        ==> lib/syscalls.h
6009      table.c
6010        ==> lib/table.c
6011      table.h
6012        ==> lib/table.h
6013      tkdisorder
6014        ==> python/tkdisorder
6015      tracks.c
6016        ==> progs/tracks.c
6017      tracks.h
6018        ==> progs/tracks.h
6019      types.h
6020        ==> lib/types.h
6021      unicodegc.h
6022        ==> lib/unicodegc.h
6023      utf8.h
6024        ==> lib/utf8.h
6025      vacopy.h
6026        ==> lib/vacopy.h
6027      vector.c
6028        ==> lib/vector.c
6029      vector.h
6030        ==> lib/vector.h
6031      words.c
6032        ==> lib/words.c
6033      words.h
6034        ==> lib/words.h
6035      wstat.c
6036        ==> lib/wstat.c
6037      wstat.h
6038        ==> lib/wstat.h
6039
6040     new directories:
6041      config.aux config.aux/.arch-ids doc doc/.arch-ids examples
6042      examples/.arch-ids lib lib/.arch-ids progs progs/.arch-ids
6043      python python/.arch-ids scripts scripts/.arch-ids
6044
6045
6046 2004-12-03 16:18:53 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-22
6047
6048     Summary:
6049       missing from previous change
6050     Revision:
6051       disorder--mainline--0.1--patch-22
6052
6053     * dump.c: missing includes
6054     * disorder.c: missing includes
6055
6056     modified files:
6057      ChangeLog disorder.c dump.c
6058
6059
6060 2004-12-03 16:09:46 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-21
6061
6062     Summary:
6063       fix garbage collection problems under Darwin
6064     Revision:
6065       disorder--mainline--0.1--patch-21
6066
6067     Call GC_init() at the start of each program.  This is necesary on Darwin and
6068     leaving it out led to crashes.
6069     
6070     * play.c: more idiomatic xmalloc
6071     * README.darwin: where to get ogg123/mpg321.
6072
6073     modified files:
6074      ChangeLog README.darwin cgimain.c disorder.c disorderd.c
6075      dump.c mem.c mem.h play.c
6076
6077
6078 2004-12-03 13:15:15 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-20
6079
6080     Summary:
6081       first pass at Darwin (Mac OS X) port
6082     Revision:
6083       disorder--mainline--0.1--patch-20
6084
6085     The code now builds, runs, and plays music (albeit rather tinnily on my
6086     laptop's speakers), but has a tendency to crash e.g. if you scratch three
6087     or four tracks in a row.
6088     
6089     Code changes:
6090     
6091     * asprintf.c: error-checking wrapper for byte_asprintf
6092     * event.c: EPROTO might not exist
6093     * mixer.c: don't know how to set the volume if we don't have
6094                <sys/soundcard.h>
6095     * printf.c: support 'q' length modifier as a synonym for 'll'
6096     * server.c: Darwin's getpeername() doesn't reliably fill in sa_family,
6097                 so remember the protocol family ourselves.
6098     * tracks.c: DBT.size is not size_t
6099                 pass length back from track_states() correctly
6100     
6101     Build system changes:
6102     
6103     * prepare: look in /sw for the benefit of finkified Darwin.
6104     * Makefile.am: Abandoned the attempt to restrict exported symbols; it is
6105                    impractical to do portably.
6106     * configure.ac: Use RJK_CHECK_LIB for iconv as AC_CHECK_LIB is not up to
6107                     the job.
6108     * confgure.ac: If fdatasync() is not available use fsync() instead.
6109     * Makefile.am: Only use getopt* sources if necessary, and disable -Werror
6110                    in that case (since the code doesn't compile cleanly
6111                    enough)
6112
6113     new files:
6114      README.darwin
6115
6116     removed files:
6117      disorder.vs
6118
6119     modified files:
6120      ChangeLog Makefile.am README addr.c asprintf.c cgi.c cgimain.c
6121      client.c configuration.c configure.ac dcgi.c event.c mixer.c
6122      plugin.c prepare printf.c printf.h queue.c server.c
6123      sounds/slap.ogg state.c tracks.c wstat.c
6124
6125
6126 2004-12-01 23:51:21 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-19
6127
6128     Summary:
6129       DisOrder 0.13
6130     Revision:
6131       disorder--mainline--0.1--patch-19
6132
6133     New release.
6134
6135     modified files:
6136      CHANGES ChangeLog configure.ac debian/changelog
6137
6138
6139 2004-12-01 23:41:59 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-18
6140
6141     Summary:
6142       fix crash on queue_find() of non-existent tracks
6143     Revision:
6144       disorder--mainline--0.1--patch-18
6145
6146     * queue.c: queue_find() was returning &qhead on error, which seriously
6147                confuses its callers; for instance it could lead to the 'fake'
6148                root node in the queue being removed, with hilarious
6149                consequences when the queue was written back out.
6150                Changed queue_find() to correctly return 0 on error.
6151
6152     modified files:
6153      ChangeLog queue.c
6154
6155
6156 2004-10-31 13:56:12 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-17
6157
6158     Summary:
6159       change version to 0.12+dev
6160     Revision:
6161       disorder--mainline--0.1--patch-17
6162
6163     0.12 branch is disorder--release-0-12--0.1.
6164
6165     modified files:
6166      ChangeLog configure.ac
6167
6168
6169 2004-10-31 13:50:51 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-16
6170
6171     Summary:
6172       delete non-working configs/ directory
6173     Revision:
6174       disorder--mainline--0.1--patch-16
6175
6176
6177     removed files:
6178      configs/.arch-ids/=id configs/disorder-0.12.arch
6179      configs/disorder.arch
6180
6181     modified files:
6182      ChangeLog
6183
6184     removed directories:
6185      configs configs/.arch-ids
6186
6187
6188 2004-10-31 13:34:31 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-15
6189
6190     Summary:
6191       config for release 0.12
6192     Revision:
6193       disorder--mainline--0.1--patch-15
6194
6195     Add configs for
6196       disorder        main development line
6197       disorder-0.12   release 0.12
6198
6199     new files:
6200      configs/.arch-ids/=id configs/disorder-0.12.arch
6201      configs/disorder.arch
6202
6203     modified files:
6204      ChangeLog
6205
6206     new directories:
6207      configs configs/.arch-ids
6208
6209
6210 2004-10-30 18:52:50 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-14
6211
6212     Summary:
6213       release 0.12
6214     Revision:
6215       disorder--mainline--0.1--patch-14
6216
6217     ChangeLog is now an arch changelog; old changes can be found in
6218     ChangeLog.cvs.
6219     
6220     Release 0.12.
6221
6222     new files:
6223      ChangeLog
6224
6225     modified files:
6226      CHANGES Makefile.am configure.ac debian/changelog
6227      debian/rules.m4
6228
6229     renamed files:
6230      ChangeLog
6231        ==> ChangeLog.cvs
6232
6233
6234 2004-10-30 18:37:34 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-13
6235
6236     Summary:
6237       tidy up disorder.py
6238     Revision:
6239       disorder--mainline--0.1--patch-13
6240
6241     Remove a bogus debugging print
6242     
6243     Add an example to the disorder.log() documentation
6244
6245     modified files:
6246      disorder.py.in
6247
6248
6249 2004-10-30 18:33:08 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-12
6250
6251     Summary:
6252       log command could crash server
6253     Revision:
6254       disorder--mainline--0.1--patch-12
6255
6256     Log output to a conn was never stopped even when the client no longer
6257     wanted it.  So not only would bogus log messages be sent if the conn was
6258     kept open, once it was closed there would be a crash.
6259     
6260     Fixed by storing the log output in the conn and closing it at the right
6261     point.
6262
6263     modified files:
6264      CHANGES server.c
6265
6266
6267 2004-10-30 18:26:39 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-11
6268
6269     Summary:
6270       support 'log' in python client
6271     Revision:
6272       disorder--mainline--0.1--patch-11
6273
6274     New disorder.log method supports log command.
6275
6276     modified files:
6277      disorder.py.in
6278
6279
6280 2004-10-29 19:50:39 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-10
6281
6282     Summary:
6283       more detailed dependencies table
6284     Revision:
6285       disorder--mainline--0.1--patch-10
6286
6287     List version numbers for build dependencies.
6288
6289     modified files:
6290      README
6291
6292
6293 2004-10-29 19:39:33 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-9
6294
6295     Summary:
6296       deprecate libdb before 4.2
6297     Revision:
6298       disorder--mainline--0.1--patch-9
6299
6300     No code changes, but no promises regarding older libdb versions.
6301
6302     modified files:
6303      README
6304
6305
6306 2004-10-29 19:38:04 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-8
6307
6308     Summary:
6309       fix debian build rules
6310     Revision:
6311       disorder--mainline--0.1--patch-8
6312
6313     Cope with debian/rules being made outside ${srcdir}.
6314
6315     modified files:
6316      debian/Makefile.am debian/autorules.m4
6317
6318
6319 2004-10-29 15:15:17 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-7
6320
6321     Summary:
6322       enable/disable from web templates
6323     Revision:
6324       disorder--mainline--0.1--patch-7
6325
6326     Add enable, disable, disable-now actions and @enabled@ expansion, and
6327     documented them.  The playing.html has an example usage in a comment, not
6328     enabled because we find {enable,disable}-random much more useful in
6329     practice.
6330
6331     modified files:
6332      dcgi.c disorder_config.5.in templates/options.labels
6333      templates/playing.html
6334
6335
6336 2004-10-28 23:05:52 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-6
6337
6338     Summary:
6339       typo fix in error message
6340     Revision:
6341       disorder--mainline--0.1--patch-6
6342
6343
6344     modified files:
6345      dcgi.c
6346
6347
6348 2004-10-28 23:04:31 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-5
6349
6350     Summary:
6351       add missing documentation
6352     Revision:
6353       disorder--mainline--0.1--patch-5
6354
6355     Describe various missing labels and the action= values.
6356
6357     modified files:
6358      disorder_config.5.in
6359
6360
6361 2004-10-28 22:52:15 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-4
6362
6363     Summary:
6364       add random play enable/disable buttons
6365     Revision:
6366       disorder--mainline--0.1--patch-4
6367
6368     @random-enabled@ expansion reports current state as a boolean
6369     
6370     random-enable and random-disable actions do the obvious thing
6371     
6372     New labels provide the text.  playing.html template includes the buttons
6373     in management mode.
6374     
6375
6376     modified files:
6377      CHANGES dcgi.c disorder_config.5.in templates/help.html
6378      templates/options.labels templates/playing.html
6379
6380
6381 2004-10-28 21:04:30 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-3
6382
6383     Summary:
6384       Fix file permissions mangled in import
6385     Revision:
6386       disorder--mainline--0.1--patch-3
6387
6388     Added executable bit trampled by my add-arch-tag script.
6389
6390     modified files:
6391      debian/config debian/postinst debian/postrm debian/prerm
6392      htmlman inst makedeb prepare tkdisorder webman
6393
6394
6395 2004-10-28 20:45:11 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-2
6396
6397     Summary:
6398       Further error corrections for import
6399     Revision:
6400       disorder--mainline--0.1--patch-2
6401
6402     Sort out confusion over aclocal.m4/acinclude.m4
6403     
6404
6405     new files:
6406      acinclude.m4
6407
6408     removed files:
6409      aclocal.m4
6410
6411     modified files:
6412      {arch}/=tagging-method
6413
6414
6415 2004-10-28 20:02:17 GMT Richard Kettlewell <rjk@greenend.org.uk>        patch-1
6416
6417     Summary:
6418       Fix missing files in import
6419     Revision:
6420       disorder--mainline--0.1--patch-1
6421
6422     Fix =tagging-method to not make debian/*.m4 and configure.ac(!) precious
6423     Add arch-tags to add new files.
6424
6425     new files:
6426      configure.ac debian/autorules.m4 debian/rules.m4
6427
6428     modified files:
6429      {arch}/=tagging-method
6430
6431
6432 2004-10-28 19:19:21 GMT Richard Kettlewell <rjk@greenend.org.uk>        base-0
6433
6434     Summary:
6435       import from cvs tag disorder--mainline--0_1--base-0
6436     Revision:
6437       disorder--mainline--0.1--base-0
6438
6439     Add arch-tag lines to almost all files
6440     'arch add' binary files and files without known comment syntax:
6441       sounds/scratch.ogg
6442       sounds/slap.ogg
6443       debian/conffiles
6444       debian/templates
6445     Omitted .cvsignore files.
6446     
6447     Make various generated files (whether made by automake, prepare, etc)
6448     precious.
6449
6450     new files:
6451      AUTHORS BUGS CHANGES ChangeLog DESIGN2 Makefile.am NEWS README
6452      README.streams TODO aclocal.m4 addr.c addr.h api-client.c
6453      api-client.h api-server.c api.c asprintf.c authhash.c
6454      authhash.h casefold.h cgi.c cgi.h cgimain.c charset.c
6455      charset.h client.c client.h config.sample.in configuration.c
6456      configuration.h daemonize.c daemonize.h dbfixup.h dcgi.c
6457      dcgi.h debian/Makefile.am debian/README.Debian
6458      debian/changelog debian/conffiles debian/config debian/control
6459      debian/copyright debian/disorder.config debian/htaccess
6460      debian/postinst debian/postrm debian/prerm debian/templates
6461      disorder-dump.8.in disorder.1.in disorder.3 disorder.c
6462      disorder.h disorder.init.in disorder.py.in disorder.vs
6463      disorder_config.5.in disorder_protocol.5.in disorderd.8.in
6464      disorderd.c dump.c event.c event.h fprintf.c hex.c hex.h
6465      htmlman inputline.c inputline.h inst kvp.c kvp.h log-impl.h
6466      log.c log.h makedeb mem-impl.h mem.c mem.h mixer.c mixer.h
6467      play.c play.h plugin.c plugin.h plugins/Makefile.am
6468      plugins/exec.c plugins/fs.c plugins/mad.c plugins/madshim.h
6469      plugins/notify.c plugins/pick.c plugins/shell.c
6470      plugins/tracklength.c prepare printf.c printf.h queue.c
6471      queue.h regsub.c regsub.h rescan.c server.c server.h sink.c
6472      sink.h snprintf.c sounds/Makefile.am sounds/scratch.ogg
6473      sounds/slap.ogg split.c split.h state.c state.h syscalls.c
6474      syscalls.h table.c table.h templates/Makefile.am
6475      templates/about.html templates/choose.html
6476      templates/choosealpha.html templates/credits.html
6477      templates/help.html templates/options
6478      templates/options.columns templates/options.labels
6479      templates/options.trackname templates/options.transform
6480      templates/playing.html templates/prefs.html
6481      templates/recent.html templates/search.html
6482      templates/sidebar.html templates/stdhead.html
6483      templates/stylesheet.html templates/volume.html tkdisorder
6484      tracks.c tracks.h types.h unicodegc.h utf8.h vacopy.h vector.c
6485      vector.h webman words.c words.h wstat.c wstat.h
6486
6487