Skip to main content

DroneStore python implementation <http://dronestore.org/>

Project description

# DroneStore

### distributed version control for application data

Dronestore is a library that keeps objects and their attributes versioned to allow merging with different versions of the object at a later date. Upon merging two object versions, attribute values are selected according to given rules (e.g. most recent, maximum). Thus, multiple disconnected machines can modify the same object and sync changes at a later date.

(slides from a talk [here](http://static.juanbb.com/acm.dronestore.pdf))

## Install

sudo python setup.py install

## License

Dronestore is under the MIT License.

## Hello World

>>> import dronestore
>>> from dronestore import StringAttribute
>>> from dronestore.merge import LatestStrategy
>>>
>>> class MyModel(dronestore.Model):
...   first = StringAttribute(strategy=LatestStrategy)
...   second = StringAttribute(strategy=LatestStrategy)
...
>>> foo = MyModel('FooBar')
>>> foo.first = 'Hello'
>>> foo.commit()
>>>
>>> bar = MyModel('FooBar')
>>> bar.second = 'World'
>>> bar.commit()
>>>
>>> foo.merge(bar)
>>> print foo.first, foo.second
Hello World

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for dronestore, version 0.2.8
Filename, size File type Python version Upload date Hashes
Filename, size dronestore-0.2.8.tar.gz (22.0 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page