{ "info": { "author": "Joshua Harlow", "author_email": "harlowja@yahoo-inc.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: Apache Software License", "Operating System :: POSIX :: Linux", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Topic :: Utilities" ], "description": "SharedLock\n==========\n\n.. image:: https://travis-ci.org/harlowja/SharedLock.png?branch=master\n :target: https://travis-ci.org/harlowja/SharedLock\n\nA python package that provides useful locks.\n\nIt includes the following functionality:\n\nReader-writer locks\n-------------------\n\n* Multiple readers (at the same time).\n* Single writers (blocking any readers).\n* Helpful ``read_locked`` and ``write_locked`` decorators.\n\nInter-process locks\n-------------------\n\n* Single writer using file based locking (these automatically\n release on process exit, even if ``__release__`` or\n ``__exit__`` is never called).\n* Helpful ``interprocess_locked`` decorator.", "description_content_type": null, "docs_url": null, "download_url": null, "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/harlowja/SharedLock", "keywords": "locks thread threads interprocess", "license": "ASL 2.0", "maintainer": null, "maintainer_email": null, "name": "shared_lock", "package_url": "https://pypi.org/project/shared_lock/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/shared_lock/", "project_urls": { "Homepage": "https://github.com/harlowja/SharedLock" }, "release_url": "https://pypi.org/project/shared_lock/0.2.1/", "requires_dist": [ "oslo.utils (>=1.4.0)", "six" ], "requires_python": null, "summary": "A python package that provides useful locks.", "version": "0.2.1" }, "last_serial": 1560040, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "d90e53f718ebc1b31ea45744edcca948", "sha256": "9183574877d8d2ccbe0ce0b25b47e25045ca4e10e2c913a522c2f34d79b85ff0" }, "downloads": -1, "filename": "shared_lock-0.1.0.tar.gz", "has_sig": false, "md5_digest": "d90e53f718ebc1b31ea45744edcca948", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6280, "upload_time": "2015-03-10T19:05:12", "url": "https://files.pythonhosted.org/packages/48/f6/d64448a0fa9bfdc8ba412b42b581fc6a5ccb55e8f0e048e958df864312d2/shared_lock-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "388eadea141acafb33b93f42159aef73", "sha256": "bde523d973e890a7d261a66eafec1cb42c7422fa5217e08b11ad4bed2cc37e03" }, "downloads": -1, "filename": "shared_lock-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "388eadea141acafb33b93f42159aef73", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15334, "upload_time": "2015-05-24T01:48:10", "url": "https://files.pythonhosted.org/packages/f2/fe/0eef7f68094da29cbba9be9ae6f8857156d650679aa8d9cd6fafc2f0b02f/shared_lock-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b1baca6e25293c835bf735fbd8817b55", "sha256": "6ba86295966f0bda69d14aa4e4d67d7d2d756e11f90f26afb6e566c234126f1f" }, "downloads": -1, "filename": "shared_lock-0.2.0.tar.gz", "has_sig": false, "md5_digest": "b1baca6e25293c835bf735fbd8817b55", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10417, "upload_time": "2015-05-24T01:48:14", "url": "https://files.pythonhosted.org/packages/e7/38/4af35b6cfc29f6c653e9fa089c1cee77133f5b7bb1423c5cd2f38add073c/shared_lock-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "a7f6d2b850dc8eaff45506d88d624db6", "sha256": "4fbd7759636db8a45047e5f258649a267c332f9e3635bf243d9a310e298c52a0" }, "downloads": -1, "filename": "shared_lock-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a7f6d2b850dc8eaff45506d88d624db6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15377, "upload_time": "2015-05-24T02:19:04", "url": "https://files.pythonhosted.org/packages/e6/8e/6833d9feaaac5e927da5057a67f6e18268474924c3f83de148bd3881c886/shared_lock-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c2716c919d759d3f313e065b18ea6e4a", "sha256": "e4fade6c3902dac870a176dcf8ff597f01fbe67084a891e18e29d46099383b81" }, "downloads": -1, "filename": "shared_lock-0.2.1.tar.gz", "has_sig": false, "md5_digest": "c2716c919d759d3f313e065b18ea6e4a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10445, "upload_time": "2015-05-24T02:19:08", "url": "https://files.pythonhosted.org/packages/82/82/340c3faf909102af0ef4f66e12f81d850ae89badc255e6606979823b839e/shared_lock-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a7f6d2b850dc8eaff45506d88d624db6", "sha256": "4fbd7759636db8a45047e5f258649a267c332f9e3635bf243d9a310e298c52a0" }, "downloads": -1, "filename": "shared_lock-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a7f6d2b850dc8eaff45506d88d624db6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15377, "upload_time": "2015-05-24T02:19:04", "url": "https://files.pythonhosted.org/packages/e6/8e/6833d9feaaac5e927da5057a67f6e18268474924c3f83de148bd3881c886/shared_lock-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c2716c919d759d3f313e065b18ea6e4a", "sha256": "e4fade6c3902dac870a176dcf8ff597f01fbe67084a891e18e29d46099383b81" }, "downloads": -1, "filename": "shared_lock-0.2.1.tar.gz", "has_sig": false, "md5_digest": "c2716c919d759d3f313e065b18ea6e4a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10445, "upload_time": "2015-05-24T02:19:08", "url": "https://files.pythonhosted.org/packages/82/82/340c3faf909102af0ef4f66e12f81d850ae89badc255e6606979823b839e/shared_lock-0.2.1.tar.gz" } ] }