{ "info": { "author": "Trbs", "author_email": "trbs@trbs.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: PyPy" ], "description": "pid\n===\n\n.. image:: https://travis-ci.org/trbs/pid.svg?branch=master\n :target: https://travis-ci.org/trbs/pid\n\n.. image:: https://coveralls.io/repos/trbs/pid/badge.png\n :target: https://coveralls.io/r/trbs/pid\n\n.. image:: https://img.shields.io/pypi/v/pid.svg\n :target: https://pypi.python.org/pypi/pid/\n :alt: Latest PyPI version\n\n.. image:: https://img.shields.io/pypi/dm/pid.svg\n :target: https://pypi.python.org/pypi/pid/\n :alt: Number of PyPI downloads\n\nPidFile class featuring:\n\n - stale detection\n - pidfile locking (fcntl)\n - chmod (default is 0o644)\n - chown\n - custom exceptions\n\nContext Manager\n---------------\n\nPidFile can be used as a context manager::\n\n from pid import PidFile\n import os\n\n with PidFile('foo') as p:\n print(p.pidname) # -> 'foo'\n print(p.piddir) # -> '/var/run' But you can modify it when initialize PidFile.\n print(os.listdir('/var/run')) # -> ['foo.pid']\n\n # pid file will delete after 'with' literal.\n\nDecorator\n---------\n\nPidFile can also be used a a decorator::\n\n from pid.decorator import pidfile\n\n @pidfile()\n def main():\n pass\n\n if __name__ == \"__main__\":\n main()\n\n\nException Order\n---------------\n\nIn default mode PidFile will try to acquire a file lock before anything else.\nThis means that normally you get a PidFileAlreadyLockedError instead of the\nPidFileAlreadyRunningError when running a program twice.\n\nIf you just want to know if a program is already running its easiest to catch\njust PidFileError since it will capture all possible PidFile exceptions.\n\nBehaviour\n---------\n\nChanges in version 2.0.0 and going forward:\n\n* pid is now friendly with daemon context managers such as\n `python-daemon `_ where\n the PidFile context manager is passed as a parameter. The\n new corrected behaviour will ensure the process environment is\n determined at the time of acquiring/checking the lock. Prior\n behaviour would determine the process environment when\n instancing the class which may result in incorrect determination\n of the PID in the case of a process forking after instancing\n PidFile.\n\n\\\n\n* Cleanup of pidfile on termination is done using `atexit` module.\n The default SIGTERM handler doesn't cleanly exit and therefore\n the atexit registered functions will not execute. A custom\n handler which triggers the atexit registered functions for cleanup\n will override the default SIGTERM handler. If a prior signal handler\n has been configured, then it will not be overridden.\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/trbs/pid/", "keywords": "pid pidfile context manager decorator", "license": "ASL", "maintainer": "", "maintainer_email": "", "name": "pid", "package_url": "https://pypi.org/project/pid/", "platform": "", "project_url": "https://pypi.org/project/pid/", "project_urls": { "Homepage": "https://github.com/trbs/pid/" }, "release_url": "https://pypi.org/project/pid/2.2.5/", "requires_dist": null, "requires_python": "", "summary": "Pidfile featuring stale detection and file-locking, can also be used as context-manager or decorator", "version": "2.2.5" }, "last_serial": 5739078, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "ebcb638e5106597b39a24fe1b85b016e", "sha256": "6a3bfbe4a91522c395dd0881e622b9eac04c0949b8e15ba45d73e8a8f735f7ba" }, "downloads": -1, "filename": "pid-1.0.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "ebcb638e5106597b39a24fe1b85b016e", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 4120, "upload_time": "2014-05-12T09:48:28", "url": "https://files.pythonhosted.org/packages/3d/00/86e6b8907d9d2caf3a213c89fb4d5d86ca7b20f71576ac0121efe3c6441a/pid-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1f236243d9ebfc914cca064d6746e03e", "sha256": "3aa1be0deb5e6707be008cab049bf545a4f4c71003c0bffb943d7a61aa43d3f0" }, "downloads": -1, "filename": "pid-1.0.0.tar.gz", "has_sig": true, "md5_digest": "1f236243d9ebfc914cca064d6746e03e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3460, "upload_time": "2014-05-12T09:48:22", "url": "https://files.pythonhosted.org/packages/d9/cb/1aad05bcc384217ecec581b52798ef058cfe28dd5d5a7ba2ef4cc918007c/pid-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "e1f0493f74b5071cebfd1a2aaacc172a", "sha256": "abf5e4e3d6ed885a5c6d1e0f34efc6cba472ff9534ced7ead1e4a70ddb8620a1" }, "downloads": -1, "filename": "pid-1.0.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "e1f0493f74b5071cebfd1a2aaacc172a", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 4140, "upload_time": "2014-05-12T10:04:46", "url": "https://files.pythonhosted.org/packages/9f/09/2ec49cbc8fdec3f41024f27e33a9cfb292c427742142bc53fb441156f63a/pid-1.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "452746eba356ee5a3673e841320fd957", "sha256": "e2cd541c6a3776cfc24b7a96a234daa9c559e8a0311a472c83ac6ab630148b4a" }, "downloads": -1, "filename": "pid-1.0.1.tar.gz", "has_sig": true, "md5_digest": "452746eba356ee5a3673e841320fd957", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3479, "upload_time": "2014-05-12T10:04:29", "url": "https://files.pythonhosted.org/packages/00/3c/c695e99d7a25d09ad755d0dd6100acac8c86709c85fce8158e6ec8265ee3/pid-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "dbfcc7b47579502bdf609069287f6b78", "sha256": "f58e29017d7a72d783d10ad03eb4fd9f69ff49bdc85de8b29977bc48adfa80b5" }, "downloads": -1, "filename": "pid-1.0.2-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "dbfcc7b47579502bdf609069287f6b78", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 4142, "upload_time": "2014-05-12T10:07:15", "url": "https://files.pythonhosted.org/packages/a6/36/9f2178c218680aff2dbddedec9d547ec46de21ba52cf0abd075167b60514/pid-1.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "df2a6d606f97b5e8f5c6a80b013b4bf5", "sha256": "b79a1ce586207f66d55214866f119e9195cb184db18aea9fd7ad3b148aaa3205" }, "downloads": -1, "filename": "pid-1.0.2.tar.gz", "has_sig": true, "md5_digest": "df2a6d606f97b5e8f5c6a80b013b4bf5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3273, "upload_time": "2014-05-12T10:07:10", "url": "https://files.pythonhosted.org/packages/f4/cd/299516bd728d130656b6e5c29245f541d05d9a1b0c68e43e7c9c160cf5d9/pid-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "bfe614de1488031b59463a5f26e15ba9", "sha256": "5d3a2ec786986cac2096110b374b5cd9fe022d02d9d7cf5064dc52ed9eebac4a" }, "downloads": -1, "filename": "pid-1.0.3-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "bfe614de1488031b59463a5f26e15ba9", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 4296, "upload_time": "2014-05-12T10:23:26", "url": "https://files.pythonhosted.org/packages/8f/8c/0233bfa09ba323bdafbc304939e31d41438dee557603eb6abd5c8967013c/pid-1.0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bcc545f0c63429cbe3f86a3d4d411d4c", "sha256": "591ec97554c1e7b8ab53b5a3b6ddea2c01bd20673d6c3d1327baaaebc52f2afc" }, "downloads": -1, "filename": "pid-1.0.3.tar.gz", "has_sig": true, "md5_digest": "bcc545f0c63429cbe3f86a3d4d411d4c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3371, "upload_time": "2014-05-12T10:23:20", "url": "https://files.pythonhosted.org/packages/06/48/89deeddd1c5c0a6f2d4211df2ec6987611fd20ede0ec904dcab479baee18/pid-1.0.3.tar.gz" } ], "1.0.6": [ { "comment_text": "", "digests": { "md5": "bf5f58d504014ee9748a5caf02732f26", "sha256": "3a792a78aae8e739e8724adcdd00d5d22cadf8c44115090db9124227974c4bc9" }, "downloads": -1, "filename": "pid-1.0.6-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "bf5f58d504014ee9748a5caf02732f26", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 4876, "upload_time": "2014-05-12T13:11:30", "url": "https://files.pythonhosted.org/packages/54/5d/439b5ace146fd7af70a223573160fe2e99f93d03eb58c3ba6be96c0bd7f1/pid-1.0.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5d80c6250e53df460f23a867ce64d331", "sha256": "d9f813de859e5554a37d5ee1863265f17c98017f1645c028d48e4e7832776064" }, "downloads": -1, "filename": "pid-1.0.6.tar.gz", "has_sig": true, "md5_digest": "5d80c6250e53df460f23a867ce64d331", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3705, "upload_time": "2014-05-12T13:11:24", "url": "https://files.pythonhosted.org/packages/58/93/f192fd3b79c92d7f5065b5500a9694fe82b8bd5bba9ee24505cae499f82b/pid-1.0.6.tar.gz" } ], "1.0.7": [ { "comment_text": "", "digests": { "md5": "b34c56d9132e1cbb4828fdb1a302005d", "sha256": "87cee9eae50d6b99c3200a5384b44b783d370611142cb44bd145e1f99bdadb56" }, "downloads": -1, "filename": "pid-1.0.7-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "b34c56d9132e1cbb4828fdb1a302005d", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 4888, "upload_time": "2014-05-12T13:14:02", "url": "https://files.pythonhosted.org/packages/72/99/6a05542d3ebd45643e34189a0a6e21ed61be3834c324b6d09d0a6051598a/pid-1.0.7-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "25548f05415d0ebd5af682ad6d07fefa", "sha256": "703b014e9bf247f20d5553937f944c10e2621ce9f897e83328ab7bc8a94c3a12" }, "downloads": -1, "filename": "pid-1.0.7.tar.gz", "has_sig": true, "md5_digest": "25548f05415d0ebd5af682ad6d07fefa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3704, "upload_time": "2014-05-12T13:13:55", "url": "https://files.pythonhosted.org/packages/98/4c/081552ee6c452cb3f5360d562505f7b11ae7ab0c8e01f98f231dd6a6b756/pid-1.0.7.tar.gz" } ], "1.0.8": [ { "comment_text": "", "digests": { "md5": "8868120ad4221216326146de411b2b3b", "sha256": "54d12834d371aee7acb6d00c2a2eed5dd0706e4011370a6793adb26f739a6c76" }, "downloads": -1, "filename": "pid-1.0.8-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "8868120ad4221216326146de411b2b3b", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 4876, "upload_time": "2014-05-12T13:38:17", "url": "https://files.pythonhosted.org/packages/42/5a/695e6ac6d73dd9b2d5993b20d7724cb0e168af8192a013127e182e9adc4d/pid-1.0.8-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "42c08280cc86457c57871b637b669b10", "sha256": "e8b7a8cc815275e222c54500354bab08840939146c2e7be805a6059347903c0f" }, "downloads": -1, "filename": "pid-1.0.8.tar.gz", "has_sig": true, "md5_digest": "42c08280cc86457c57871b637b669b10", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3692, "upload_time": "2014-05-12T13:38:12", "url": "https://files.pythonhosted.org/packages/9e/56/5f82a98a022e657b3e2be64efc57d912ffc07c40af03c50e4bb0bc5895cb/pid-1.0.8.tar.gz" } ], "1.0.9": [ { "comment_text": "", "digests": { "md5": "e5b901f86381384ecc261e6cb5f06e7e", "sha256": "a4a69f3901c3cbdf35af3e41dd43a29b64d2859b4ffc15a0c14b7a706613f016" }, "downloads": -1, "filename": "pid-1.0.9-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "e5b901f86381384ecc261e6cb5f06e7e", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 4945, "upload_time": "2014-10-30T15:38:41", "url": "https://files.pythonhosted.org/packages/db/14/cf330f21b22656ae02bc52a0e01f15fe109704bc1b9e5f9bfbe15c7d8a8f/pid-1.0.9-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f706df9e4c2072ead05df3ebe5ed5395", "sha256": "8c68498ba1cd21cc2ab84e38070e7f2a19e22fc9bcf44ba3031b8c19e7e9b9b5" }, "downloads": -1, "filename": "pid-1.0.9.tar.gz", "has_sig": true, "md5_digest": "f706df9e4c2072ead05df3ebe5ed5395", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3759, "upload_time": "2014-10-30T15:38:36", "url": "https://files.pythonhosted.org/packages/9e/da/6f780e844dc855db5b828d9c45114bfa1ec5572e5ca5e0e68c3ebbdb76bc/pid-1.0.9.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "8d11d39760e3c0de08bc85b96895a38a", "sha256": "ac3c5aa6e99798e2018dc9c32782f76ae3e1d7c42f04c50746dfaf6ea87d5cf0" }, "downloads": -1, "filename": "pid-1.1.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "8d11d39760e3c0de08bc85b96895a38a", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 5097, "upload_time": "2014-10-30T16:02:05", "url": "https://files.pythonhosted.org/packages/18/1b/78c988741f197a9447ead816e7b44889f2024bd39d719080e8250c9fdb69/pid-1.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "343f20dfa18af6b452c6e4ee8fb3bfa3", "sha256": "590898b5bb20e85589605a0a5e124acb77ee84fa3c95910e5b81409defe3c1a5" }, "downloads": -1, "filename": "pid-1.1.0.tar.gz", "has_sig": true, "md5_digest": "343f20dfa18af6b452c6e4ee8fb3bfa3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3838, "upload_time": "2014-10-30T16:01:58", "url": "https://files.pythonhosted.org/packages/a4/c0/5200173e3dba219bb890da2ff9600da766667b2a7eeb5a7602ad9ddd04ca/pid-1.1.0.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "8d79fe9e865af8f6856b5ae34fb2e77d", "sha256": "1c8eb1f1cf4e5054e5b5559c7df89debad13172bdca81e3d01f0cba9a18fcb35" }, "downloads": -1, "filename": "pid-2.0.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "8d79fe9e865af8f6856b5ae34fb2e77d", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 6498, "upload_time": "2015-03-27T19:39:28", "url": "https://files.pythonhosted.org/packages/e7/58/2c22cb54bef77525679650eaf061e396260fb4098854627c8f5cbb418c38/pid-2.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "59a1183275a53fe9bde5ebd271b6a934", "sha256": "d966bf7caed3d2eca3e9c4d4816d56a548fb8327e33d5813787c44974d566772" }, "downloads": -1, "filename": "pid-2.0.0.tar.gz", "has_sig": true, "md5_digest": "59a1183275a53fe9bde5ebd271b6a934", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4798, "upload_time": "2015-03-27T19:39:21", "url": "https://files.pythonhosted.org/packages/89/90/8001ec1c49da9e5c61d0ebe93fad336b8fd8e14917c48a24b8b643c8ed22/pid-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "1120fb3f538a005100135523e4e4c668", "sha256": "054cde9c64b8ac979ec27f714e71ebb97ecf8388ea5fe29f6b93db222e92d433" }, "downloads": -1, "filename": "pid-2.0.1.tar.gz", "has_sig": true, "md5_digest": "1120fb3f538a005100135523e4e4c668", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9373, "upload_time": "2015-08-04T20:50:16", "url": "https://files.pythonhosted.org/packages/52/ef/e8bacae62f5c1bb3807b0ee97fb3a9285e30a25d18df6d8b2cf33ffdc6c3/pid-2.0.1.tar.gz" } ], "2.1.0": [ { "comment_text": "", "digests": { "md5": "78bccdd2d4f6af05d4049c9edd5a2b13", "sha256": "f5fe06620d70c60e965cd373b75ac38174fa4e698f2b7ca15e3501ecc9c06d15" }, "downloads": -1, "filename": "pid-2.1.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "78bccdd2d4f6af05d4049c9edd5a2b13", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 6635, "upload_time": "2016-10-05T22:04:54", "url": "https://files.pythonhosted.org/packages/33/aa/c0cfe62d15254e4ff1899a81840fa39f1a22ccd54d5e1de2788e4ecaa077/pid-2.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ed4f604bf259092a44c0fae417cb44ff", "sha256": "37ce56b4a6c022eac5c7a5b5150fe5bd8c14f667e6157ea7b433268fbad2da85" }, "downloads": -1, "filename": "pid-2.1.0.tar.gz", "has_sig": true, "md5_digest": "ed4f604bf259092a44c0fae417cb44ff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9572, "upload_time": "2016-10-05T22:04:50", "url": "https://files.pythonhosted.org/packages/4f/5c/6a830cf8dd637753cdd4c63ccc98b8d7be7e36fd1b511d8e80cebd614ba7/pid-2.1.0.tar.gz" } ], "2.1.1": [ { "comment_text": "", "digests": { "md5": "7a4c1cd5df40a0adfc1a147da7425b34", "sha256": "07e0a908808f72e3f70e28abc9e2b359fbfca8c97a55e80e48adc87d6a9517ba" }, "downloads": -1, "filename": "pid-2.1.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "7a4c1cd5df40a0adfc1a147da7425b34", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 6646, "upload_time": "2016-10-05T22:44:44", "url": "https://files.pythonhosted.org/packages/b7/b1/6d009b50d67f20b7775faa219f1b0ed24b93fde30338af95b2094ef9635a/pid-2.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9634b1e3d545544a9d496e25e4530d14", "sha256": "b443169d3dc21397695b4a82016fadb4cfdb0ed8b2ddb4aaa428e1701bb34e1f" }, "downloads": -1, "filename": "pid-2.1.1.tar.gz", "has_sig": true, "md5_digest": "9634b1e3d545544a9d496e25e4530d14", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9591, "upload_time": "2016-10-05T22:44:42", "url": "https://files.pythonhosted.org/packages/7a/00/aaa596eb9963f224538dcdbbb53a5deeceab51ae2a5fe5ef93df5bdf8932/pid-2.1.1.tar.gz" } ], "2.2.0": [ { "comment_text": "", "digests": { "md5": "6744e2ebec8bc90375651da5202e67a6", "sha256": "b71dd3ce0bd56eb5021a84a2feddaa180328869ead002d980a26f815767baf50" }, "downloads": -1, "filename": "pid-2.2.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "6744e2ebec8bc90375651da5202e67a6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6897, "upload_time": "2018-02-21T20:27:58", "url": "https://files.pythonhosted.org/packages/80/fb/8f4e402e940493c11c3cc808a5b53abaaefc8643b69d74013f41a7fd6f7d/pid-2.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "04d30308013d16aa882b3806feda8ab2", "sha256": "d8bb2ceec21a4ae84be6e9d320db1f56934b30e676e31c6f098ca7218b3d67d4" }, "downloads": -1, "filename": "pid-2.2.0.tar.gz", "has_sig": true, "md5_digest": "04d30308013d16aa882b3806feda8ab2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10752, "upload_time": "2018-02-21T20:27:59", "url": "https://files.pythonhosted.org/packages/4a/b1/299131fffc271f2b4f4207929a60b431e51873a56371bc6b51d4156d7584/pid-2.2.0.tar.gz" } ], "2.2.1": [ { "comment_text": "", "digests": { "md5": "418f5c6414b3a4a3ac65e62ba71a4aae", "sha256": "636cb4743a6e6fb1d89efcfd772e6deb5a058590f3531703595d776507098d7b" }, "downloads": -1, "filename": "pid-2.2.1.tar.gz", "has_sig": true, "md5_digest": "418f5c6414b3a4a3ac65e62ba71a4aae", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12213, "upload_time": "2019-01-09T14:57:39", "url": "https://files.pythonhosted.org/packages/6e/da/8bc87f0171d45b98a15acb2324cd3e61e37938d717c0506f873ac3e69b1b/pid-2.2.1.tar.gz" } ], "2.2.2": [ { "comment_text": "", "digests": { "md5": "126f90ab0fad31cb76bb8755058065b4", "sha256": "daa52ff1aa4f3e21cee0df5d8862be5db96dde6e5abf7613964a626a78eca5f8" }, "downloads": -1, "filename": "pid-2.2.2.tar.gz", "has_sig": true, "md5_digest": "126f90ab0fad31cb76bb8755058065b4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11286, "upload_time": "2019-02-07T15:29:58", "url": "https://files.pythonhosted.org/packages/d7/33/e80d9a457668fa7daedd6538b487e175719085771325c7544fff2f2badd7/pid-2.2.2.tar.gz" } ], "2.2.3": [ { "comment_text": "", "digests": { "md5": "02ef4e490417fe2d24433f02f721cf5d", "sha256": "077da788630394adce075c88f4a087bcdb27d98cab67eb9046ebcfeedfc1194d" }, "downloads": -1, "filename": "pid-2.2.3.tar.gz", "has_sig": true, "md5_digest": "02ef4e490417fe2d24433f02f721cf5d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12708, "upload_time": "2019-02-15T08:37:28", "url": "https://files.pythonhosted.org/packages/b4/e7/333cec100e4f6a52c3f3ff730d1adc50dd2aae32398ef38aaa38de9548ec/pid-2.2.3.tar.gz" } ], "2.2.4": [ { "comment_text": "", "digests": { "md5": "1e23f2d8b35f657cb6d30491a7fcb61d", "sha256": "db621fbab1faf5f68bdecc2a8cad0a56a2f0362c05fe416c861c27db837def96" }, "downloads": -1, "filename": "pid-2.2.4-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "1e23f2d8b35f657cb6d30491a7fcb61d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9307, "upload_time": "2019-07-07T09:54:53", "url": "https://files.pythonhosted.org/packages/6b/d3/c6b5d1f1565e226a89779f1ffeeb55351059702f327fd0a301c3bb4e731a/pid-2.2.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8c234977437d8016ca38831a606317aa", "sha256": "34058efdf3bb5db9417c2e1fa19c3454e64b7ef65f0f56164407cac973f0e168" }, "downloads": -1, "filename": "pid-2.2.4.tar.gz", "has_sig": true, "md5_digest": "8c234977437d8016ca38831a606317aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12924, "upload_time": "2019-07-07T09:54:55", "url": "https://files.pythonhosted.org/packages/e9/c0/2ec07bf5addae800fe59622036ee3dec08ded84e924b85ad863db43d770a/pid-2.2.4.tar.gz" } ], "2.2.5": [ { "comment_text": "", "digests": { "md5": "c1e8194af21375a412b37dc625ec9acc", "sha256": "fe1ac2fd0617b091e7afd7b90f7af65ffb2339b57586215500e965462bb3cf0b" }, "downloads": -1, "filename": "pid-2.2.5-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "c1e8194af21375a412b37dc625ec9acc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9304, "upload_time": "2019-08-27T19:14:02", "url": "https://files.pythonhosted.org/packages/82/bc/3633e94577c0f64864684be5a73251f194fd8673fb7c1f095597ef34dbc2/pid-2.2.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ad352ee1dc28b9746a15451c0c53e9d7", "sha256": "96eb7dba326b88f5164bc1afdc986c7793e0d32d7f62366256a3903c7b0614ef" }, "downloads": -1, "filename": "pid-2.2.5.tar.gz", "has_sig": true, "md5_digest": "ad352ee1dc28b9746a15451c0c53e9d7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12151, "upload_time": "2019-08-27T19:14:04", "url": "https://files.pythonhosted.org/packages/12/5c/1d479a2698ea6fb9bc946513b28c1c46965c9e809823743f3d72b3273084/pid-2.2.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c1e8194af21375a412b37dc625ec9acc", "sha256": "fe1ac2fd0617b091e7afd7b90f7af65ffb2339b57586215500e965462bb3cf0b" }, "downloads": -1, "filename": "pid-2.2.5-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "c1e8194af21375a412b37dc625ec9acc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9304, "upload_time": "2019-08-27T19:14:02", "url": "https://files.pythonhosted.org/packages/82/bc/3633e94577c0f64864684be5a73251f194fd8673fb7c1f095597ef34dbc2/pid-2.2.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ad352ee1dc28b9746a15451c0c53e9d7", "sha256": "96eb7dba326b88f5164bc1afdc986c7793e0d32d7f62366256a3903c7b0614ef" }, "downloads": -1, "filename": "pid-2.2.5.tar.gz", "has_sig": true, "md5_digest": "ad352ee1dc28b9746a15451c0c53e9d7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12151, "upload_time": "2019-08-27T19:14:04", "url": "https://files.pythonhosted.org/packages/12/5c/1d479a2698ea6fb9bc946513b28c1c46965c9e809823743f3d72b3273084/pid-2.2.5.tar.gz" } ] }