Bugs

duplicate key violates unique constraint ...

Uploading an image (and most probably also a file) with the same name as another live image/file causes this internal server error. The code should check the database constraint itself and offer the user some alternatives, eg:

You already have an image called 'foo.jpg'.  Would you like to:

[ Replace the old image ]      [ Cancel ]

replace file/image not working

These functions currently don't do anything useful.

allow upper case in image/file names

The current is a bit restrictive. Might be an idea to lowercase the names before storing them in the database.

intra-page links

Should be able to have a link of the form [[page#heading]]. This requires modifying, and perhaps also simplifying the wikilib.ml parser which is currently very complex and fragile.

Disallow empty headers, incorrectly nested headers

Basically prevent people from using '==' as a short cut for getting bold text. If a header isn't in front of anything, don't mark it up. Similarly for incorrect nesting of headers.

page_edit_form fails on template pages

Fails on template pages with no content.

This probably applies to other page-level functions too, where there may be no physical page in the database. Need to check for this.

Stats don't work

Maybe it's just a local or temporary problem, but on this wiki and ocaml-tutorial.org, the "Stats" link doesn't work. The lower frame says:

Not Found
The requested URL /rocketstats/sandbox.merjis.com/2006W13/page-9755bc78fb26637fab2c7dccf959bf10.html was not found on this server.

Apache/1.3.33 Server at www.merjis.com Port 80