problems occur when I try a "root" appmod with "appmods =
Sorry - yes
- I didn't properly take account of root appmods as a special
case when adding the vdir stuff.
tested "appmods = <"",smallmod>" and there I got the badmatch-error of
case #3 above for every possible url, but that seems fine as I understand the
correct way of specifying it is "/", not ""?
That's been my understanding.
Please try the latest CVS and see if it fits your
The handling of root appmods will always be
something of an edge case I suspect - with the potential to surprise someone no
matter what we do.
I've taken the view that when specifying an appmod
path it's a segment 'between' slashes that is the point corresponding to the
Thus in the root appmod case - although it's
specified in the conf as "/" it's really more like the appmod applies to
the notional empty string before that slash.
This then makes sense in that arg.pathinfo, when
defined, will always have a leading slash.
Note that arg.pathinfo & arg.prepath are more
general concepts that should replace arg.appmoddata & arg.appmod_prepath for
future work with the arg record.
e.g they're applicable also to cgi/.yaws
They differ slightly in their handling of slashes
compared to the 'appmod' fields.
appmoddata is *supposed* to retain the behaviour of
the previous Yaws release - I'll need to review that.
Try the new yaws_showarg appmod as a
reasonably convenient way of comparing all these values.
e.g as a root appmod
appmod = </ , yaws_showarg>
or as a 'floating' appmod
appmod = <showarg, yaws_showarg>
I think there's room for discussion re undefined
vs  in some of the arg fields.