Jesse Vincent and I just pushed a first release of Prophet and SD which is what I've been hacking on for all of this summer and half of last.

Jesse summarises Prophet and SD well:

Prophet is a lightweight schemaless database designed for peer to peer replication and disconnected operation. Prophet keeps a full copy of your data and (history) on your laptop, desktop or server. Prophet syncs when you want it to, so you can use Prophet-backed applications whether or not you have network.

SD (Simple Defects) is a peer-to-peer issue tracking system built on top of Prophet. In addition to being a full-fledged distributed bug tracker, SD can also bidirectionally sync with your RT, Hiveminder, Trac, GitHub or Google Code issue tracker.

Website here, full announcement here .

All the missing core dependencies have been uploaded to Debian and made it through NEW; Prophet and SD packages will come shortly (1-2 days, likely).

Debian folks may also be wondering when SD will support syncing with debbugs (at least one of you have asked me already). The answer is "eventually, but maybe sooner if you want to help". I started sketching out a debbugs foreign replica type last summer, but it's fallen off my radar since. I also spoke with Lars and Don at DebConf9 about their ideas for a Bug exchange format, which might be worth waiting for debbugs to support.

However, this afternoon I felt inspired to poke around at the old skeleton again and started making some changes. I'll hopefully push a debbugs feature branch that is at least closer in the next couple days, depending on how far I get. Talk to me if you're interested in lending a hand.

Thanks for good work!
I am really awaiting SD and Prophet packages. As, at work we deal with Perl - I am sure to push it in our place..
Comment by kartikm [] Thu 27 Aug 2009 05:15:46 AM UTC
How does it work?
I think it would be really useful of that Prophet page got a concise description of how the data actually flow. Slides and talks aren't what I have in mind. A page with a diagram would be easier to get to. I think it sounds great, but in order to sustain that interest, I need to know how it works, without watching videos or reading the code.
Comment by Thu 27 Aug 2009 06:29:20 AM UTC
Several thoughts and questions?

Here are a few questions that occured to me after reading through some slides.

What are the similarities and differences between this and the git data model? How are deletions from the database handled? Have you considered a synchronization protocol between two live instances based on Y. Minsky, A. Trachtenberg, and R. Zippel "Set Reconciliation with Nearly Optimal Communication Complexity"? (

Comment by kabloom [] Thu 27 Aug 2009 04:39:08 PM UTC
Partial syncing?
Does SD support partial syncing with a bug-tracking system? I'd love to sync all the bugs I've reported, in all the bug-tracking systems I use.
Comment by josh Thu 27 Aug 2009 10:06:42 PM UTC