chiark / gitweb /
disorder
11 years agoMake menu_update() robust against being called before the notebook has
Richard Kettlewell [Fri, 6 Jun 2008 16:30:19 +0000 (17:30 +0100)]
Make menu_update() robust against being called before the notebook has
been created.

11 years agoAdd jukebox user to audio group in debian setup
Richard Kettlewell [Fri, 6 Jun 2008 15:46:45 +0000 (16:46 +0100)]
Add jukebox user to audio group in debian setup

11 years agoMore automation of web interface installation
Richard Kettlewell [Fri, 6 Jun 2008 12:49:15 +0000 (13:49 +0100)]
More automation of web interface installation

11 years agoFix another stupid in @dirs...
Richard Kettlewell [Fri, 6 Jun 2008 11:13:46 +0000 (12:13 +0100)]
Fix another stupid in @dirs...

11 years agoforce cgidir so we can build on a system without a web swerver
Richard Kettlewell [Fri, 6 Jun 2008 11:12:03 +0000 (12:12 +0100)]
force cgidir so we can build on a system without a web swerver

11 years agoFix display of play/edit all in choose.tmpl
Richard Kettlewell [Fri, 6 Jun 2008 09:33:05 +0000 (10:33 +0100)]
Fix display of play/edit all in choose.tmpl

11 years agoAutomate installation of the CGI at last.
Richard Kettlewell [Fri, 6 Jun 2008 09:27:16 +0000 (10:27 +0100)]
Automate installation of the CGI at last.

configure will try to guess the install location, if it can't then you
can set cgidir=/path/to/cgi-bin to override it.

11 years agoremove css cruft for long-gone separate search page
Richard Kettlewell [Thu, 5 Jun 2008 18:07:52 +0000 (19:07 +0100)]
remove css cruft for long-gone separate search page

11 years agoMissed an action button in earlier changes
Richard Kettlewell [Thu, 5 Jun 2008 18:05:35 +0000 (19:05 +0100)]
Missed an action button in earlier changes

11 years agoCorrect file exposed by @dirs and @files!
Richard Kettlewell [Thu, 5 Jun 2008 18:03:30 +0000 (19:03 +0100)]
Correct file exposed by @dirs and @files!

11 years agoTidy up search form; remove cruft
Richard Kettlewell [Thu, 5 Jun 2008 14:54:38 +0000 (15:54 +0100)]
Tidy up search form; remove cruft

11 years agoStyle button as well. Consistent in IE and FF, a bit off in Safari.
Richard Kettlewell [Thu, 5 Jun 2008 14:45:01 +0000 (15:45 +0100)]
Style button as well.  Consistent in IE and FF, a bit off in Safari.

11 years agoUse form-based buttons instead of hyperlinks
Richard Kettlewell [Thu, 5 Jun 2008 14:38:44 +0000 (15:38 +0100)]
Use form-based buttons instead of hyperlinks

11 years agoMacro-ize (most) <A>-based buttons
Richard Kettlewell [Thu, 5 Jun 2008 14:15:59 +0000 (15:15 +0100)]
Macro-ize (most) <A>-based buttons

11 years agoClean up properly in postrm.
Richard Kettlewell [Thu, 5 Jun 2008 11:21:42 +0000 (12:21 +0100)]
Clean up properly in postrm.
  For --remove we just remove cached data and infrastructure.
  For --purge we remove everything.

11 years agoMacroize submit buttons so we can mess with them more easily
Richard Kettlewell [Wed, 4 Jun 2008 09:31:45 +0000 (10:31 +0100)]
Macroize submit buttons so we can mess with them more easily

11 years agoVerify --help/--version for disorder-choose
Richard Kettlewell [Wed, 4 Jun 2008 08:23:05 +0000 (09:23 +0100)]
Verify --help/--version for disorder-choose

11 years agoFiddle with CSS+HTML in effort to get more consistent buttons
Richard Kettlewell [Wed, 4 Jun 2008 08:16:08 +0000 (09:16 +0100)]
Fiddle with CSS+HTML in effort to get more consistent buttons

11 years agoImprove button appearance (slightly) in IE7
Richard Kettlewell [Tue, 3 Jun 2008 18:11:46 +0000 (19:11 +0100)]
Improve button appearance (slightly) in IE7

11 years agoRestore track length in CGI
Richard Kettlewell [Tue, 3 Jun 2008 17:53:07 +0000 (18:53 +0100)]
Restore track length in CGI

11 years agoCorrect title attribute for @onoff controls
Richard Kettlewell [Tue, 3 Jun 2008 17:48:28 +0000 (18:48 +0100)]
Correct title attribute for @onoff controls

11 years agoCorrect back= URL for volume setting
Richard Kettlewell [Tue, 3 Jun 2008 17:46:22 +0000 (18:46 +0100)]
Correct back= URL for volume setting

11 years agoDon't report failure just because MTA is being over-picky
Richard Kettlewell [Tue, 3 Jun 2008 17:42:25 +0000 (18:42 +0100)]
Don't report failure just because MTA is being over-picky

11 years agoAdd missing type attribute in login.tmpl. Only IE7 noticed.
Richard Kettlewell [Tue, 3 Jun 2008 17:34:18 +0000 (18:34 +0100)]
Add missing type attribute in login.tmpl.  Only IE7 noticed.

11 years agoDebian packaging changes:
Richard Kettlewell [Tue, 3 Jun 2008 17:09:20 +0000 (18:09 +0100)]
Debian packaging changes:
   - disorder-server now depends on mail-transport-agent
   - disorder-server no longer asks for an SMTP server
     (instead uses local /usr/sbin/sendmail)
   - remove /etc/disorder/conf.debconf on purge

11 years agosetup.anjou freebsd support
Richard Kettlewell [Mon, 2 Jun 2008 21:09:46 +0000 (22:09 +0100)]
setup.anjou freebsd support

11 years agoscripts/setup no longer asks for smtp server
Richard Kettlewell [Mon, 2 Jun 2008 21:09:00 +0000 (22:09 +0100)]
scripts/setup no longer asks for smtp server

11 years agoAdd scripts/setup.anjou for local test installs
Richard Kettlewell [Mon, 2 Jun 2008 20:48:28 +0000 (21:48 +0100)]
Add scripts/setup.anjou for local test installs

11 years agoWork around buggy FreeBSD strptime()
Richard Kettlewell [Mon, 2 Jun 2008 15:12:46 +0000 (16:12 +0100)]
Work around buggy FreeBSD strptime()

11 years agoAvoid play.py looping indefinitely.
Richard Kettlewell [Mon, 2 Jun 2008 14:06:30 +0000 (15:06 +0100)]
Avoid play.py looping indefinitely.

11 years agoCHANGES -> CHANGES.html in debian scripts too
Richard Kettlewell [Mon, 2 Jun 2008 12:53:40 +0000 (13:53 +0100)]
CHANGES -> CHANGES.html in debian scripts too

11 years agoBuild fix for Linux
Richard Kettlewell [Mon, 2 Jun 2008 12:34:21 +0000 (13:34 +0100)]
Build fix for Linux

11 years agoFixed sendmail path for Debian
Richard Kettlewell [Sun, 1 Jun 2008 14:20:30 +0000 (15:20 +0100)]
Fixed sendmail path for Debian

11 years agoupdate README.upgrades
Richard Kettlewell [Sun, 1 Jun 2008 14:15:47 +0000 (15:15 +0100)]
update README.upgrades

11 years agoUse system sendmail if available (rather than SMTP over TCP)
Richard Kettlewell [Sun, 1 Jun 2008 14:15:28 +0000 (15:15 +0100)]
Use system sendmail if available (rather than SMTP over TCP)

11 years agoLimit rescan/recheck messages to one every 10 seconds (and at most one
Richard Kettlewell [Sun, 1 Jun 2008 14:01:40 +0000 (15:01 +0100)]
Limit rescan/recheck messages to one every 10 seconds (and at most one
per hundred tracks).  This cuts down a lot of pointless log chatter
when a well-established server restarts.

11 years agowarnings from man pages, if we have groff...
Richard Kettlewell [Sat, 31 May 2008 17:54:25 +0000 (18:54 +0100)]
warnings from man pages, if we have groff...

11 years agofatal() testing for dateparse()
Richard Kettlewell [Tue, 27 May 2008 21:37:05 +0000 (22:37 +0100)]
fatal() testing for dateparse()

11 years agoCHANGES -> CHANGES.html
Richard Kettlewell [Mon, 26 May 2008 12:49:02 +0000 (13:49 +0100)]
CHANGES -> CHANGES.html

11 years ago"make distcheck" now passes
Richard Kettlewell [Mon, 26 May 2008 12:07:41 +0000 (13:07 +0100)]
"make distcheck" now passes

11 years agoFiddle with menu font size
Richard Kettlewell [Mon, 26 May 2008 11:11:57 +0000 (12:11 +0100)]
Fiddle with menu font size

11 years agoMore CGI fiddlig
Richard Kettlewell [Mon, 26 May 2008 10:55:25 +0000 (11:55 +0100)]
More CGI fiddlig

11 years agoMore web appearance fiddling
Richard Kettlewell [Sun, 25 May 2008 22:26:19 +0000 (23:26 +0100)]
More web appearance fiddling

11 years agoTinker with UI appearance a bit
Richard Kettlewell [Sun, 25 May 2008 21:08:37 +0000 (22:08 +0100)]
Tinker with UI appearance a bit

11 years agoLinux build fix
Richard Kettlewell [Sun, 25 May 2008 19:38:12 +0000 (20:38 +0100)]
Linux build fix

11 years agoCatch up with new CGI location
Richard Kettlewell [Sun, 25 May 2008 19:35:45 +0000 (20:35 +0100)]
Catch up with new CGI location

11 years agoBring disorder_config(5) up to date a bit
Richard Kettlewell [Sun, 25 May 2008 18:59:31 +0000 (19:59 +0100)]
Bring disorder_config(5) up to date a bit

11 years agoSource code reorganization:
Richard Kettlewell [Sun, 25 May 2008 18:03:06 +0000 (19:03 +0100)]
Source code reorganization:
  - almost all headers now include common.h, which includes a number
    of universally necessary headers and declarations
  - the server programs now have a single disorder-server.h header
  - the cgi is now in its own directory
  - plugin exports are limited to those programs that actually need them

11 years agoQuieten over-pick compiler.
Richard Kettlewell [Sun, 25 May 2008 14:05:13 +0000 (15:05 +0100)]
Quieten over-pick compiler.

11 years agoTABLE_FIND() now uses typeof. We're committed to GCC anyway so it
Richard Kettlewell [Sun, 25 May 2008 13:52:24 +0000 (14:52 +0100)]
TABLE_FIND() now uses typeof.  We're committed to GCC anyway so it
doesn't seem worthwhile avoiding it.

11 years agoUse new random_id() for queue IDs
Richard Kettlewell [Sun, 25 May 2008 13:35:45 +0000 (14:35 +0100)]
Use new random_id() for queue IDs

11 years agoFix type of shift in disorder-choose.
Richard Kettlewell [Sun, 25 May 2008 13:29:40 +0000 (14:29 +0100)]
Fix type of shift in disorder-choose.

11 years agoThe Debian install scripts now uses the current locale's encoding as
Richard Kettlewell [Sun, 25 May 2008 12:58:08 +0000 (13:58 +0100)]
The Debian install scripts now uses the current locale's encoding as
the default character encoding.  This fixes defect #13, "Default
encoding for debian setup scripts".

11 years agoMove tests into their own directory. Means you can 'make -C lib'
Richard Kettlewell [Sun, 25 May 2008 12:30:41 +0000 (13:30 +0100)]
Move tests into their own directory.  Means you can 'make -C lib'
without a huge wait for all the tests to relink.

11 years agoLess verbose version string
Richard Kettlewell [Sun, 25 May 2008 12:06:53 +0000 (13:06 +0100)]
Less verbose version string

11 years agoMerge event scheduling implementation. This fixes defect #6,
Richard Kettlewell [Sun, 25 May 2008 11:57:20 +0000 (12:57 +0100)]
Merge event scheduling implementation.  This fixes defect #6,
"Schedule tracks for a particular time".

11 years agoupdate CHANGES
Richard Kettlewell [Sun, 25 May 2008 11:54:07 +0000 (12:54 +0100)]
update CHANGES

11 years agoLog discarded junk events.
Richard Kettlewell [Sun, 25 May 2008 11:36:01 +0000 (12:36 +0100)]
Log discarded junk events.

More testing for the schedule code.

11 years agoSupport schedule.db in disorder-dump
Richard Kettlewell [Sat, 24 May 2008 19:05:39 +0000 (20:05 +0100)]
Support schedule.db in disorder-dump

11 years agomore schedule testing
Richard Kettlewell [Sat, 24 May 2008 18:42:07 +0000 (19:42 +0100)]
more schedule testing

11 years agoFix random_id(). Oops.
Richard Kettlewell [Sat, 24 May 2008 17:13:47 +0000 (18:13 +0100)]
Fix random_id().  Oops.

Slightly more verbose tests.

11 years agoAdd schedule-* commmands to completion.bash
Richard Kettlewell [Sat, 24 May 2008 16:25:42 +0000 (17:25 +0100)]
Add schedule-* commmands to completion.bash

11 years agoKill non-re-entrant xgetdate(). We don't use it so we might as well
Richard Kettlewell [Sat, 24 May 2008 16:21:20 +0000 (17:21 +0100)]
Kill non-re-entrant xgetdate().  We don't use it so we might as well
not build it.

Linux build fixes.

11 years agoShadow disorder.dev
Richard Kettlewell [Sat, 24 May 2008 16:18:08 +0000 (17:18 +0100)]
Shadow disorder.dev

11 years agoBuild fix for Linux
Richard Kettlewell [Sat, 24 May 2008 16:17:03 +0000 (17:17 +0100)]
Build fix for Linux

11 years agoCommand line interface now takes more human-friendly timestamps. This
Richard Kettlewell [Sat, 24 May 2008 14:34:54 +0000 (15:34 +0100)]
Command line interface now takes more human-friendly timestamps.  This
is done via a modified version of Glibc's getdate(3).

11 years agoMore schedule code testing; fix C interface.
Richard Kettlewell [Sat, 24 May 2008 12:53:39 +0000 (13:53 +0100)]
More schedule code testing; fix C interface.

11 years agoSupport schedule-* commands from command-line client. Exiguously tested.
Richard Kettlewell [Sat, 24 May 2008 11:54:12 +0000 (12:54 +0100)]
Support schedule-* commands from command-line client.  Exiguously tested.

11 years agoPython test script for the scheduling code.
Richard Kettlewell [Sat, 24 May 2008 10:58:46 +0000 (11:58 +0100)]
Python test script for the scheduling code.

11 years agoRemove -u from aliases.py as well.
Richard Kettlewell [Sat, 24 May 2008 10:52:23 +0000 (11:52 +0100)]
Remove -u from aliases.py as well.

11 years agoServer and Python interface now support schedule-* commands. Tests to
Richard Kettlewell [Sat, 24 May 2008 10:44:08 +0000 (11:44 +0100)]
Server and Python interface now support schedule-* commands.  Tests to
follow.

11 years agoBack end for scheduling code (cf defect #6). Currently there's no way
Richard Kettlewell [Sat, 24 May 2008 09:44:53 +0000 (10:44 +0100)]
Back end for scheduling code (cf defect #6).  Currently there's no way
to set a scheduled event yet though.

11 years agoDisOrder's event loop now stores its timeouts in heap sorted by
Richard Kettlewell [Fri, 23 May 2008 16:51:51 +0000 (17:51 +0100)]
DisOrder's event loop now stores its timeouts in heap sorted by
trigger time.

11 years agotesting for infer_url()
Richard Kettlewell [Tue, 20 May 2008 22:32:32 +0000 (23:32 +0100)]
testing for infer_url()

11 years agoFurther test coverage
Richard Kettlewell [Tue, 20 May 2008 21:16:32 +0000 (22:16 +0100)]
Further test coverage

11 years agoAdd a test program for charset.c.
Richard Kettlewell [Tue, 20 May 2008 19:51:12 +0000 (20:51 +0100)]
Add a test program for charset.c.

Fix truncate_for_display() to get the right length.

11 years agoExtend hash.c test coverage
Richard Kettlewell [Tue, 20 May 2008 19:51:00 +0000 (20:51 +0100)]
Extend hash.c test coverage

11 years agodisorder-choose now uses an arcfour keystream as its RNG instead of
Richard Kettlewell [Mon, 19 May 2008 19:51:40 +0000 (20:51 +0100)]
disorder-choose now uses an arcfour keystream as its RNG instead of
hitting up /dev/urandom for every single byte.  It is still seeded
from the kernel's RNG.

arcfour.[ch] come from gnulib.

11 years agoBias up recently added tracks. See new_bias and new_bias_age in
Richard Kettlewell [Sun, 18 May 2008 22:44:36 +0000 (23:44 +0100)]
Bias up recently added tracks.  See new_bias and new_bias_age in
disorder_config(5) for details.  Fixes defect #11.

11 years agobring CHANGES up to date
Richard Kettlewell [Sun, 18 May 2008 22:03:24 +0000 (23:03 +0100)]
bring CHANGES up to date

11 years agoMerge disorder.macros branch.
Richard Kettlewell [Sun, 18 May 2008 21:29:17 +0000 (22:29 +0100)]
Merge disorder.macros branch.

This is a major rewrite of the web interface.  The template language
has been changed and is hopefuly easier to use.  Much of the
implementation has moved to lib/, along with some of the CGI support.
The CGI can now figure out its own URL, including HTTPS URLs.

The web interface documentation is no longer mixed into
disorder_config(5).  The top level is disorder.cgi(8) but there are
several related pages, much of the content generated from source code
comments.

The server now unsets track preferences if you try to set them to
their default value.  This resolves a long-standing TODO.  The server
is otherwise largely unchanged.

This changes fixes defects 2, 12 and 18 (the first and last of these
being the payoff for casual users).

11 years agoAdd New back to web interface (oops)
Richard Kettlewell [Sun, 18 May 2008 21:08:13 +0000 (22:08 +0100)]
Add New back to web interface (oops)

11 years agoMake "short" context in @part actually work
Richard Kettlewell [Sun, 18 May 2008 21:05:36 +0000 (22:05 +0100)]
Make "short" context in @part actually work

11 years agoEmpty back= should be treated as if absent
Richard Kettlewell [Sun, 18 May 2008 20:55:36 +0000 (21:55 +0100)]
Empty back= should be treated as if absent

11 years agoFix debian/rules for new man pages
Richard Kettlewell [Sun, 18 May 2008 20:51:07 +0000 (21:51 +0100)]
Fix debian/rules for new man pages

11 years agoBodge version number for test installs
Richard Kettlewell [Sun, 18 May 2008 20:35:46 +0000 (21:35 +0100)]
Bodge version number for test installs

11 years agoRead user.tmpl after macros.tmpl
Richard Kettlewell [Sun, 18 May 2008 18:46:53 +0000 (19:46 +0100)]
Read user.tmpl after macros.tmpl

11 years agoDocumentation tweaks
Richard Kettlewell [Sun, 18 May 2008 18:39:41 +0000 (19:39 +0100)]
Documentation tweaks

11 years agoBring CGI docs pretty much up to date
Richard Kettlewell [Sun, 18 May 2008 18:23:09 +0000 (19:23 +0100)]
Bring CGI docs pretty much up to date

11 years agoRestore breadcrumb trail to choose.tmpl
Richard Kettlewell [Sun, 18 May 2008 17:27:40 +0000 (18:27 +0100)]
Restore breadcrumb trail to choose.tmpl

11 years agoAdd a new 'wait' flag to the rescan command. This allows the caller
Richard Kettlewell [Sun, 18 May 2008 16:51:36 +0000 (17:51 +0100)]
Add a new 'wait' flag to the rescan command.  This allows the caller
to request that the rescan command blocks until the rescan is
complete.

The reason is that if you run the tests on a Linux tmpfs they would
with high probability hang, due to the rescan completing before the
rescan_monitor had started up.

The flags is available in the Python interface but not the C interface
or the command-line client.  This could easily be fixed if there is
demand.

There's also a 'fresh' flag, to demand that the rescan start after the
receipt of the command (i.e. to guarantee your new tracks make it in)
but I disabled that due to the inconvenience of testing it.  However
the code is still there if anyone feels like writing tests.

11 years agoBuild fixes
Richard Kettlewell [Sun, 18 May 2008 16:07:23 +0000 (17:07 +0100)]
Build fixes

11 years agoReturn from login page to what you were trying to do
Richard Kettlewell [Sun, 18 May 2008 15:39:42 +0000 (16:39 +0100)]
Return from login page to what you were trying to do

11 years agoTranslate preferences page to the new order.
Richard Kettlewell [Sun, 18 May 2008 15:18:49 +0000 (16:18 +0100)]
Translate preferences page to the new order.

Also, this change fixes much of defect 18 ("cookie expiry causes user
to be silently logged out and not subsequently redirected to login
page").  This is implemented by giving the actions table a list of
rights suitable for the action at hand and redirecting to the login
page on failure.  Even better would be to redirect back to the
problematic page on success.

Unusually for this branch there is a server change here, implementing
the long-standing TODO that the server should remove preferences if
you set them to their default value.  This removes this logic from the
web interface.

It remains the case that the web interface has to work out some of the
defaults.  However, that's left for another day.

11 years agoSynchronize with disorder.dev
Richard Kettlewell [Sun, 18 May 2008 12:18:17 +0000 (13:18 +0100)]
Synchronize with disorder.dev

11 years agoResolve aliases in c_get, c_set, c_prefs and c_part. The intended
Richard Kettlewell [Sun, 18 May 2008 12:12:49 +0000 (13:12 +0100)]
Resolve aliases in c_get, c_set, c_prefs and c_part.  The intended
behaviour is that preferences always belong to the canonical version
of the track and never to an alias.

Added a new aliases.py test to verify this and related alias
behaviour.

Fixes defect 20.

11 years agoFix disorder.py string parsing to not reject ""
Richard Kettlewell [Sun, 18 May 2008 11:34:37 +0000 (12:34 +0100)]
Fix disorder.py string parsing to not reject ""

11 years agodocument new choose screen properly
Richard Kettlewell [Sat, 17 May 2008 20:46:43 +0000 (21:46 +0100)]
document new choose screen properly

11 years agoFix up choose page
Richard Kettlewell [Sat, 17 May 2008 20:33:55 +0000 (21:33 +0100)]
Fix up choose page

11 years agoFix login/logout/etc and misc other bits and pieces
Richard Kettlewell [Sat, 17 May 2008 20:13:25 +0000 (21:13 +0100)]
Fix login/logout/etc and misc other bits and pieces