chiark / gitweb /
disorder
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

11 years agoFill in some missing actions
Richard Kettlewell [Sat, 17 May 2008 17:24:02 +0000 (18:24 +0100)]
Fill in some missing actions

11 years agovarious cleanups and docs improvements
Richard Kettlewell [Sat, 17 May 2008 16:32:55 +0000 (17:32 +0100)]
various cleanups and docs improvements

11 years agoSplit template docs out to disorder_templates(5)
Richard Kettlewell [Sat, 17 May 2008 16:20:29 +0000 (17:20 +0100)]
Split template docs out to disorder_templates(5)

11 years agoFirst iteration of login page translation
Richard Kettlewell [Sat, 17 May 2008 15:41:05 +0000 (16:41 +0100)]
First iteration of login page translation

11 years agofix about ... page
Richard Kettlewell [Sat, 17 May 2008 15:22:21 +0000 (16:22 +0100)]
fix about ... page

11 years agoFix pause button
Richard Kettlewell [Sat, 17 May 2008 15:19:59 +0000 (16:19 +0100)]
Fix pause button

11 years agoGet in-UI man pages working again
Richard Kettlewell [Sat, 17 May 2008 15:15:59 +0000 (16:15 +0100)]
Get in-UI man pages working again

11 years agotypo fix help.tmpl
Richard Kettlewell [Sat, 17 May 2008 15:05:35 +0000 (16:05 +0100)]
typo fix help.tmpl

11 years agoFurther hacking. Some actual success at runtime now.
Richard Kettlewell [Sat, 17 May 2008 13:06:32 +0000 (14:06 +0100)]
Further hacking.  Some actual success at runtime now.

11 years agoQuieten compiler
Richard Kettlewell [Sat, 17 May 2008 12:12:19 +0000 (13:12 +0100)]
Quieten compiler

11 years agomore template fiddling
Richard Kettlewell [Sat, 17 May 2008 12:10:12 +0000 (13:10 +0100)]
more template fiddling

11 years agomore template fiddling
Richard Kettlewell [Sat, 17 May 2008 12:07:18 +0000 (13:07 +0100)]
more template fiddling

11 years agoexp_search, fold search into choose, not really finished
Richard Kettlewell [Sat, 17 May 2008 11:50:42 +0000 (12:50 +0100)]
exp_search, fold search into choose, not really finished

11 years agonew @argq expansion; more template fiddling
Richard Kettlewell [Fri, 16 May 2008 18:32:24 +0000 (19:32 +0100)]
new @argq expansion; more template fiddling

11 years agotracks + dirs expansions
Richard Kettlewell [Mon, 12 May 2008 20:50:29 +0000 (21:50 +0100)]
tracks + dirs expansions

11 years agomore templates plus support code changes
Richard Kettlewell [Sun, 11 May 2008 17:28:07 +0000 (18:28 +0100)]
more templates plus support code changes

11 years ago@image expansion
Richard Kettlewell [Sun, 11 May 2008 14:50:13 +0000 (15:50 +0100)]
@image expansion

11 years agomore template work
Richard Kettlewell [Sun, 11 May 2008 14:37:57 +0000 (15:37 +0100)]
more template work

11 years agoextended @movable expansion; more template...
Richard Kettlewell [Sun, 11 May 2008 14:04:08 +0000 (15:04 +0100)]
extended @movable expansion; more template...

11 years ago@q expansion
Richard Kettlewell [Sun, 11 May 2008 13:53:29 +0000 (14:53 +0100)]
@q expansion

11 years agoremove action; better findtrack; more template fiddling
Richard Kettlewell [Sun, 11 May 2008 12:55:21 +0000 (13:55 +0100)]
remove action; better findtrack; more template fiddling

11 years agodirname/basename expansions; template fiddling
Richard Kettlewell [Sun, 11 May 2008 11:38:59 +0000 (12:38 +0100)]
dirname/basename expansions; template fiddling

11 years agoinfer_url() now attempts to spot https
Richard Kettlewell [Sat, 10 May 2008 19:48:15 +0000 (20:48 +0100)]
infer_url() now attempts to spot https

11 years agosplit out dcgi_get_cookie
Richard Kettlewell [Sat, 10 May 2008 17:36:43 +0000 (18:36 +0100)]
split out dcgi_get_cookie

11 years agoreorg cgi code a bit...
Richard Kettlewell [Sat, 10 May 2008 17:30:44 +0000 (18:30 +0100)]
reorg cgi code a bit...

11 years agolinux build fix
Richard Kettlewell [Sat, 10 May 2008 17:30:37 +0000 (18:30 +0100)]
linux build fix

11 years agoAlmost compiles, will not work though
Richard Kettlewell [Sat, 10 May 2008 13:50:28 +0000 (14:50 +0100)]
Almost compiles, will not work though

11 years agoFiddle with playing.tmpl a bit. not fully translated
Richard Kettlewell [Sat, 10 May 2008 12:22:27 +0000 (13:22 +0100)]
Fiddle with playing.tmpl a bit.  not fully translated

11 years agoredirect()
Richard Kettlewell [Sat, 10 May 2008 10:31:16 +0000 (11:31 +0100)]
redirect()

11 years agoact_playing
Richard Kettlewell [Sat, 10 May 2008 10:17:21 +0000 (11:17 +0100)]
act_playing

11 years agoStart conversion of CGI actions.
Richard Kettlewell [Sat, 10 May 2008 08:30:04 +0000 (09:30 +0100)]
Start conversion of CGI actions.

11 years agoExpansion syntax rewrite. Not documented yet, but then nor was the
Richard Kettlewell [Wed, 7 May 2008 20:04:23 +0000 (21:04 +0100)]
Expansion syntax rewrite.  Not documented yet, but then nor was the
previous rewrite.

11 years agoRemove some obsolete code
Richard Kettlewell [Wed, 7 May 2008 20:04:05 +0000 (21:04 +0100)]
Remove some obsolete code

11 years agoHalf way through rewriting web interface. Don't even think about
Richard Kettlewell [Mon, 5 May 2008 19:26:38 +0000 (20:26 +0100)]
Half way through rewriting web interface.  Don't even think about
trying to compile this.

11 years agoScript to generate -man documentation for expansions from comments in
Richard Kettlewell [Mon, 5 May 2008 10:24:21 +0000 (11:24 +0100)]
Script to generate -man documentation for expansions from comments in
source code.