[ckan-discuss] initial "distributing changes" implementation

John Bywater john.bywater at appropriatesoftware.net
Fri Apr 23 17:55:47 BST 2010

Just to say, there will be a talk about (and a demonstration of) these 
"distributed versioned data" features tomorrow at the Open Knowledge 
Conference 2010.


Best wishes,


John Bywater wrote:
> I just added a prototype implementation for 'distributing changes':
> http://www.knowledgeforge.net/ckan/trac/changeset/951%3A941c3a4bedd5
> So, there's a new changeset subdomain model with tests here:
> http://www.knowledgeforge.net/ckan/trac/browser/ckan/tests/models/test_changeset.py 
> http://www.knowledgeforge.net/ckan/trac/browser/ckan/model/changeset.py
> It's basically similar to Mercurial.
> Just like a changed Mercurial working directory, new CKAN model 
> revisions can be 'committed' to the changeset system.
> Just like Mercurial, the CKAN model can be 'updated' to correspond with 
> any existing changeset.
> Just like Mercurial, the changeset objects can be 'pulled' from one 
> instance to another.
> Just like Mercurial, diverged lines of development can be tested for 
> conflicts and merged into yet another changeset....
> There are several gaps in the implementation, but basically after 
> several rather late nights, I've worked it out.
> Best wishes,
> John.
> PS I hope other implementations of 'distributed data version control' 
> could be created, to inter-operate a protocol abstracted from the above 
> codes. It could be used to update, track, and display history for a many 
> things, including a non-temporal dataset metadata model (ie like CKAN 
> but without CKAN's revisions).

More information about the ckan-discuss mailing list