seeking wiki

For a new project, I'm looking for wiki software with the following characteristics:

  • Supports SubPages and relative linking from a page to its subpages and between subpages of a page works like regular wiki linking with no special syntax. MoinMoin supports subpages but to link to them without giving the whole path is ugly: "['/SubPage']" I want to just be able to link to SubPage from page FooBar and get /FooBar/SubPage if it exists, and /SubPage otherwise.

  • Doesn't require special markup to make words that are not WikiWords, but that exist as pages, show up as links in other pages. Probably limiting this to capitalised words, and supporting turning off the feature for a blacklist of words in case of trouble.

  • Can subscribe to changes for sets of pages or the whole wiki by rss.

  • Can subscribe to be informed of new pages by rss.

  • Uses some standard plain text markup language, like markdown or restructured text, and not some obscure thing specific to that wiki. Adding special syntax for wiki links is ok, and removing features like markdown's support for arbitrary inline html is ok.

  • Keeps full history of changes to the wiki using a standard version control system like subversion. Ideally it would be possible to browse past states of the wiki at any point in time and even edit them to create branches, but UI for that is not a requirement.

  • Allows direct commits to the wiki without using a stupid web form, using a standard version control system, like subversion.

  • Supports images.

  • Supports WikiName based logins and can limit edits to logged in users (although anonymous svn commits would be ok at least until wiki spammers learn how to spam via svn).

  • Addendum: Cannot be written in PHP, thanks anyway.

At one point I had a half written wiki that supported a cvs backend (this was before svn) and supported browsing historical versions, but it got bogged down in trying to use html as the standard markup language, which diverted too much energy to writing code to sanitise html, and stalled out before it was usable. Writing one again doesn't seem wise, there are already too many. So I'm looking for pointers to anything that meets at least some of these requirements.

Update: Subwiki uses subversion but is developing slowly and may be non-DFSG free. There's discussion about making TWiki support a svn backend, but it appears not to yet; it would probably meet all my other needs then some. GW uses subversion, but seems to be a java based academic research project. trac uses subversion, though it's not just a wiki and it might not use it for the wiki.

Rather than tight subversion bindings, I'd be happy enough with a wiki that used flat text files and was flexibe enough so I could store them in svn. I'd even be happy to use viewsvn as the history browser for the wiki. Small and minimal, building blocks, like blosxom blogs, is good.