[ckan-dev] Distributed changeset model for CKAN

Rufus Pollock rufus.pollock at okfn.org
Sat May 14 16:06:33 UTC 2011


NB: this is not a suggestion that we go down this route at the moment
but a useful piece of background for current discussion about pending
changes.

Over a year ago we did extensive work on a 'distributed'
revision/changeset model and its relation to CKAN and even had working
implementation (though it never went production)!

This is a very general model that would allow the (meta)data in CKANs
to be pushed and pulled like source code in git or mercurial. while is
probably too general for what we want I did find the insights like the
distinction between your changeset and your "Working Copy" very useful
(point is that in a distributed model because of changeset dependency
you have to pull all changesets in a given branch but you may choose
*not* to apply all of them to your working copy i.e. the set of domain
objects / tables that are what is shown to users).

Here is overview (not much on implementation -- see wiki links from
that doc for more):

<http://packages.python.org/ckan/distributed.html>

Implementation with good docstring:

<https://bitbucket.org/okfn/ckan/src/1f72a83087ab/ckan/model/changeset.py>

Rufus




More information about the ckan-dev mailing list