Fossil + NoSQL ?
December 22nd, 2009
Fossil, from the creator of SQLite, combines a distributed version control system, wiki, and tickets, all bundled into a single file. Given some serious work on its UI, it could grow into an interesting competitor for Trac, though it replicates the latter’s weaknesses (one project per installation, no support for mailing lists or chat, etc.). I’m curious if anyone is working on anything similar using a NoSQL database of some kind (particularly if that DB is embedded). Pointers would be welcome.
(P.s. particularly especially if it’s not written in C, like Fossil…)
I looked at this a while ago (it’s a neat idea). It’s not clear from the docs how they solve the problem of multiple users making concurrent changes to a ticket. I see that a ticket is not branched and so every change to it is timestamped and then merged by time, but I don’t see how I get a coherent view of a ticket if other repos exist and are actively making comments on it. I guess it’s when they push their changes?
Why would you want a NoSQL database? This is the perfect application for SQL…
You might like ZODB. It’s easy to use (just Python objects) and has some neat functionality (time travel, demostorages). It doesn’t have built-in indexing though, which most people expect of a “database.”
ZODB could really use some good docs, but you can probably get started with http://wiki.zope.org/zope2/ZODBZopeObjectDatabase and the zodb-dev mailing list.