{ "info": { "author": "Juan Batiz-Benet", "author_email": "juan@benet.ai", "bugtrack_url": null, "classifiers": [], "description": "# DroneStore\n\n### distributed version control for application data\n\nDronestore is a library that keeps objects and their attributes versioned to\nallow merging with different versions of the object at a later date.\nUpon merging two object versions, attribute values are selected according to\ngiven rules (e.g. most recent, maximum). Thus, multiple disconnected machines\ncan modify the same object and sync changes at a later date.\n\n(slides from a talk [here](http://static.juanbb.com/acm.dronestore.pdf))\n\n## Install\n\n sudo python setup.py install\n\n## License\n\nDronestore is under the MIT License.\n\n## Hello World\n\n >>> import dronestore\n >>> from dronestore import StringAttribute\n >>> from dronestore.merge import LatestStrategy\n >>>\n >>> class MyModel(dronestore.Model):\n ... first = StringAttribute(strategy=LatestStrategy)\n ... second = StringAttribute(strategy=LatestStrategy)\n ...\n >>> foo = MyModel('FooBar')\n >>> foo.first = 'Hello'\n >>> foo.commit()\n >>>\n >>> bar = MyModel('FooBar')\n >>> bar.second = 'World'\n >>> bar.commit()\n >>>\n >>> foo.merge(bar)\n >>> print foo.first, foo.second\n Hello World", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/jbenet/py-dronestore", "keywords": "dronestore,data versioning", "license": "MIT License", "maintainer": null, "maintainer_email": null, "name": "dronestore", "package_url": "https://pypi.org/project/dronestore/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/dronestore/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/jbenet/py-dronestore" }, "release_url": "https://pypi.org/project/dronestore/0.2.8/", "requires_dist": null, "requires_python": null, "summary": "DroneStore python implementation ", "version": "0.2.8" }, "last_serial": 791410, "releases": { "0.1.10": [ { "comment_text": "", "digests": { "md5": "660e67cd93661fa005dea7415e96fad0", "sha256": "c8fbc08c34ff3f75ed82e8588d8073152d952522a59104bf3564b25a6b8ab002" }, "downloads": -1, "filename": "dronestore-0.1.10.tar.gz", "has_sig": false, "md5_digest": "660e67cd93661fa005dea7415e96fad0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30016, "upload_time": "2011-11-06T12:03:47", "url": "https://files.pythonhosted.org/packages/5c/89/fc3392286336fe7cf5cd8734d4de8b64bf9f3e2c16761e0c9332f996e8f3/dronestore-0.1.10.tar.gz" } ], "0.1.11": [ { "comment_text": "", "digests": { "md5": "120ee0da0ca54fe772f3118cc0307db3", "sha256": "32c1d9d0b984e413b779b1cf4d5aa8f879a551d968e5923817a4adf7db2fc37c" }, "downloads": -1, "filename": "dronestore-0.1.11.tar.gz", "has_sig": false, "md5_digest": "120ee0da0ca54fe772f3118cc0307db3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31951, "upload_time": "2012-07-01T19:20:25", "url": "https://files.pythonhosted.org/packages/fe/03/3954c38d5b2766e9cf91143ae191483f5c7f2cf1d1b14208240e8ee7f08f/dronestore-0.1.11.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "a3092da19b3a7b5bc1fa0b468543543e", "sha256": "19e3d2ccb68536bcdf1e73cab4633fd11103cbd4908f3a1a9682963382031751" }, "downloads": -1, "filename": "dronestore-0.1.8.tar.gz", "has_sig": false, "md5_digest": "a3092da19b3a7b5bc1fa0b468543543e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22217, "upload_time": "2011-09-22T14:39:17", "url": "https://files.pythonhosted.org/packages/12/e2/6a4d990c9e67210c68fff82451257ba8b610670dd109aaeeab5c682bb246/dronestore-0.1.8.tar.gz" } ], "0.1.9": [ { "comment_text": "", "digests": { "md5": "9a7b9843c5cd3b51c94345f965bb2be4", "sha256": "ef763cb18a0d2dab580578b02202227f577ead018898671bde8739d86f9d4488" }, "downloads": -1, "filename": "dronestore-0.1.9.tar.gz", "has_sig": false, "md5_digest": "9a7b9843c5cd3b51c94345f965bb2be4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28404, "upload_time": "2011-09-22T14:53:09", "url": "https://files.pythonhosted.org/packages/ac/e4/b2d6956d9da86518a8269a2c64696e1e973c39498f06831c0b9c289ba216/dronestore-0.1.9.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "ff790efd9d4dc39ff0289355c9dceb6a", "sha256": "12451b4266b8112d96f89cc2753c5ec18ef5906f00d76cf0bb489c24887d7c7e" }, "downloads": -1, "filename": "dronestore-0.2.0.tar.gz", "has_sig": false, "md5_digest": "ff790efd9d4dc39ff0289355c9dceb6a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20901, "upload_time": "2012-08-03T09:14:56", "url": "https://files.pythonhosted.org/packages/4d/c3/a3c5354e1304d2aabb7182e350f82e6b7a3d8686f97b44e853f174cb2cfe/dronestore-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "d4e7a9d22dae46ac1232284542011aac", "sha256": "a81336e5b63de0be419eacc71f5ab0890727323aa463900f52d2dc9c241c2d8f" }, "downloads": -1, "filename": "dronestore-0.2.1.tar.gz", "has_sig": false, "md5_digest": "d4e7a9d22dae46ac1232284542011aac", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21431, "upload_time": "2012-08-03T09:24:01", "url": "https://files.pythonhosted.org/packages/35/5b/74662262b685f0c54f5fb42603ac78641d03b2f848aa211f8c82880e4d9e/dronestore-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "aa3e9bebdcd7f098937ff2083918c9f2", "sha256": "97981a5901999f941360e4f0f78a9fdf0e9a59189105103e994de57b051bfee4" }, "downloads": -1, "filename": "dronestore-0.2.2.tar.gz", "has_sig": false, "md5_digest": "aa3e9bebdcd7f098937ff2083918c9f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21427, "upload_time": "2012-08-03T09:25:33", "url": "https://files.pythonhosted.org/packages/8b/5a/cf9b6ef566a0c571bfe5ad971e5010e9142e74661383025d7354267bcccd/dronestore-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "c49e8f7e6b774dd1398d5f77b2460b6e", "sha256": "bfcaba5bf8578def9e774c924025a9be5c07fefece961e0d04cc8638ffb17927" }, "downloads": -1, "filename": "dronestore-0.2.3.tar.gz", "has_sig": false, "md5_digest": "c49e8f7e6b774dd1398d5f77b2460b6e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21679, "upload_time": "2012-08-03T12:17:39", "url": "https://files.pythonhosted.org/packages/c3/fe/12024b74ffa4abc7680165558d95d768498737eddb67a0c451567b124725/dronestore-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "1a99949c5c1de3884e761661ef5b9540", "sha256": "dad96983251ac0c16c40f55a1be9a0673042d1c68f345e82527f07f58b6870f7" }, "downloads": -1, "filename": "dronestore-0.2.4.tar.gz", "has_sig": false, "md5_digest": "1a99949c5c1de3884e761661ef5b9540", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21770, "upload_time": "2012-09-18T09:28:37", "url": "https://files.pythonhosted.org/packages/d8/c2/2b7e1047dcc5201730c19d1278559b001dc60f3170d4fbcf284f6e2ad4b0/dronestore-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "8fb59b4728049cfb153f9b4320e1598e", "sha256": "fc44ecbe17771915a46c928fca2ff8ebe662b1da82f7b3f26c517ffa604af7f7" }, "downloads": -1, "filename": "dronestore-0.2.5.tar.gz", "has_sig": false, "md5_digest": "8fb59b4728049cfb153f9b4320e1598e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21969, "upload_time": "2012-09-24T11:49:45", "url": "https://files.pythonhosted.org/packages/01/58/b876e36f4797d31794a0f1240d5df6a91d4fb1c8fa2fe9b675d290d30fb4/dronestore-0.2.5.tar.gz" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "4347c0d7cb7eca164a4813651c3885ed", "sha256": "650713847910d65492485af5e481d74fdb53358e9ec7e79c63c1cce10ceea9c1" }, "downloads": -1, "filename": "dronestore-0.2.6.tar.gz", "has_sig": false, "md5_digest": "4347c0d7cb7eca164a4813651c3885ed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21964, "upload_time": "2012-10-29T11:56:12", "url": "https://files.pythonhosted.org/packages/b6/c2/38bece1da168459852d39472d07eeeefaa2a894e4c525062cf602a6f1f5f/dronestore-0.2.6.tar.gz" } ], "0.2.7": [ { "comment_text": "", "digests": { "md5": "218e5ea01eee2b2c884907a86599711f", "sha256": "f18015ce92e789533c7c666683fb4bad4cd679759ca107b9ae8d3ae12429584a" }, "downloads": -1, "filename": "dronestore-0.2.7.tar.gz", "has_sig": false, "md5_digest": "218e5ea01eee2b2c884907a86599711f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22051, "upload_time": "2012-10-29T12:18:53", "url": "https://files.pythonhosted.org/packages/d7/53/675026084ba9abd2c50f04b31c5fddc233793783d9fb4b2a84aa257670b9/dronestore-0.2.7.tar.gz" } ], "0.2.8": [ { "comment_text": "", "digests": { "md5": "bdd980d43fd2f1176cd78baf9e28fd52", "sha256": "62c0af04c9663b90f080b6487b099cdb65272772ceb645c9e9436b5f6d2b7e26" }, "downloads": -1, "filename": "dronestore-0.2.8.tar.gz", "has_sig": false, "md5_digest": "bdd980d43fd2f1176cd78baf9e28fd52", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22047, "upload_time": "2013-02-22T21:30:53", "url": "https://files.pythonhosted.org/packages/f9/d1/092d23b0d2057024901b1c1757164bb29827a89a7304a1a68608b95ffe0a/dronestore-0.2.8.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "bdd980d43fd2f1176cd78baf9e28fd52", "sha256": "62c0af04c9663b90f080b6487b099cdb65272772ceb645c9e9436b5f6d2b7e26" }, "downloads": -1, "filename": "dronestore-0.2.8.tar.gz", "has_sig": false, "md5_digest": "bdd980d43fd2f1176cd78baf9e28fd52", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22047, "upload_time": "2013-02-22T21:30:53", "url": "https://files.pythonhosted.org/packages/f9/d1/092d23b0d2057024901b1c1757164bb29827a89a7304a1a68608b95ffe0a/dronestore-0.2.8.tar.gz" } ] }