{ "info": { "author": "Gong Zhang", "author_email": "gong@me.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# procbridge-python\n\nProcBridge is a super-lightweight IPC (Inter-Process Communication) protocol over TCP socket or Unix domain socket. It enables you to **send and recieve JSON** between processes easily. ProcBridge is much like a simplified version of HTTP protocol, but only transfer JSON values.\n\nPlease note that this repo is the **Python implementation** of ProcBridge protocol. You can find detailed introduction of ProcBridge protocol in the main repository: [gongzhang/procbridge](https://github.com/gongzhang/procbridge).\n\n# Installation\n\n```\npip install procbridge==1.2.0\n```\n\n# Example\n\nServer Side:\n\n```python\nimport procbridge as pb\n\ndef delegate(method, args):\n\n # define remote methods:\n if method == 'echo':\n return args\n\n elif method == 'sum':\n return sum(x for x in args)\n\n elif method == 'err':\n raise RuntimeError(\"an server error\")\n\n\nif __name__ == '__main__':\n PORT = 8000\n s = pb.Server('0.0.0.0', PORT, delegate)\n s.start(daemon=False)\n print(\"Server is on {}...\".format(PORT))\n```\n\nClient Side:\n\n```python\nimport procbridge as pb\nclient = pb.Client('127.0.0.1', 8000)\n\n# call remote methods:\nclient.request(\"echo\", 123) # 123\nclient.request(\"echo\", ['a', 'b', 'c']) # ['a', 'b', 'c']\nclient.request(\"sum\", [1, 2, 3, 4]) # 10\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/gongzhang/procbridge-python", "keywords": "", "license": "MIT License", "maintainer": "", "maintainer_email": "", "name": "procbridge", "package_url": "https://pypi.org/project/procbridge/", "platform": "any", "project_url": "https://pypi.org/project/procbridge/", "project_urls": { "Homepage": "https://github.com/gongzhang/procbridge-python" }, "release_url": "https://pypi.org/project/procbridge/1.2.0/", "requires_dist": null, "requires_python": "", "summary": "A super-lightweight IPC (Inter-Process Communication) protocol over TCP socket.", "version": "1.2.0" }, "last_serial": 5702174, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "82379cc93a37ad1ca19e7e290ebeaf9a", "sha256": "7fd0ca9dc100d19649c6f40d444c0e0a9c4d09ae3d741772f9346e33c6806a8e" }, "downloads": -1, "filename": "procbridge-1.0.tar.gz", "has_sig": false, "md5_digest": "82379cc93a37ad1ca19e7e290ebeaf9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2379, "upload_time": "2017-03-14T05:19:46", "url": "https://files.pythonhosted.org/packages/60/72/721b21124e7b66ad2ab574b81edaf46f83fecee7ae3f2236b9b5fdbca2ee/procbridge-1.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "a65d95138a96106a082c7f005b9ed0f7", "sha256": "fefb4f2006ac790ba376543691adce9fa30df9b2f8be0aea2facec9af279abdc" }, "downloads": -1, "filename": "procbridge-1.0.1.tar.gz", "has_sig": false, "md5_digest": "a65d95138a96106a082c7f005b9ed0f7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2430, "upload_time": "2017-04-13T05:51:26", "url": "https://files.pythonhosted.org/packages/89/ed/b20428b4f48ee0e6e726b75e359bed7a984efc97ec302497e87476c6f1e0/procbridge-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "d5c63daf09e043905ddf9af14112f3c7", "sha256": "6faac26452b1507a8b1dc134c62e892bdb14f7619d2dab061498f3714fe32054" }, "downloads": -1, "filename": "procbridge-1.0.2.tar.gz", "has_sig": false, "md5_digest": "d5c63daf09e043905ddf9af14112f3c7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2452, "upload_time": "2017-04-14T02:35:19", "url": "https://files.pythonhosted.org/packages/a4/3d/5280854f95ab1b6702b104924e174129de48a9cad7a0dca340aa3c8977a2/procbridge-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "99ac44277dc9a64ee6295b9e368a2bc4", "sha256": "2f4e061aab0865853ae8e51661b0a0fa5adfd7df72c9ffc3cd78c46e8956c2b0" }, "downloads": -1, "filename": "procbridge-1.0.3.tar.gz", "has_sig": false, "md5_digest": "99ac44277dc9a64ee6295b9e368a2bc4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2560, "upload_time": "2017-08-07T03:27:06", "url": "https://files.pythonhosted.org/packages/e8/c3/61bf8e5fb859006f0aacf023a5a8213adc002de2fd1ce1363fc5d1f51f39/procbridge-1.0.3.tar.gz" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "babf2e9478ec143ed484500329d53582", "sha256": "70c4d327e2a57c0cd96c19715693c0d045ada29e58277e6bbe0c985d9af96e20" }, "downloads": -1, "filename": "procbridge-1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "babf2e9478ec143ed484500329d53582", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5228, "upload_time": "2018-11-27T07:48:18", "url": "https://files.pythonhosted.org/packages/ec/ac/42abf4cab622d1fad2f99a24f384371a61a2e97268d52de0da9eb5224d29/procbridge-1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7fc5ebb0b2aeb036c6d8d723cc5d0f9a", "sha256": "9b92cf78e48aaa21f57415d3ddc318048a3b8f0823864bd2c7d63b2b3517a3ef" }, "downloads": -1, "filename": "procbridge-1.1.tar.gz", "has_sig": false, "md5_digest": "7fc5ebb0b2aeb036c6d8d723cc5d0f9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3351, "upload_time": "2018-11-27T07:48:20", "url": "https://files.pythonhosted.org/packages/3b/22/c97d0c8752a69288c00d1596aa408a60585beb52208223a34968e5831d0e/procbridge-1.1.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "13b94179036235035f17637baaf731f6", "sha256": "042896d4c57faaeec29849577895602b7c2d9751d80457df9629c860405b4830" }, "downloads": -1, "filename": "procbridge-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "13b94179036235035f17637baaf731f6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5274, "upload_time": "2018-11-28T09:26:20", "url": "https://files.pythonhosted.org/packages/f4/80/866e53284d749f74561efc996b80924ee4a863461fd00bc84581f43b9c59/procbridge-1.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bda1a13794e2188450547bfdaf97eea8", "sha256": "acac96b9335650b3d83f626625531c8e0acb1ba389fbf52cb9752dedbb7e464f" }, "downloads": -1, "filename": "procbridge-1.1.1.tar.gz", "has_sig": false, "md5_digest": "bda1a13794e2188450547bfdaf97eea8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3366, "upload_time": "2018-11-28T09:26:21", "url": "https://files.pythonhosted.org/packages/51/88/f74c6698d970bb425309ee43effcb1f362656fd8e9741d88e3efbf39e21f/procbridge-1.1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "2eb4edb5eb01cabfba0421ecd735a969", "sha256": "d713a401012e45179f0438e114a9d501194a0598ffe9ca21da36793d6706aa83" }, "downloads": -1, "filename": "procbridge-1.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "2eb4edb5eb01cabfba0421ecd735a969", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5269, "upload_time": "2019-01-28T02:37:42", "url": "https://files.pythonhosted.org/packages/d0/4d/1dd14a83d0c5f122b93c91af38ac2c85f649a851c096135867b426681ef3/procbridge-1.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ff5d4aa5b48d7488ed9f44f74a10c455", "sha256": "447dc07343a8388c108ba8a71cb2fb4c0b4097cffee0d5bf8549732817cd99bc" }, "downloads": -1, "filename": "procbridge-1.1.2.tar.gz", "has_sig": false, "md5_digest": "ff5d4aa5b48d7488ed9f44f74a10c455", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3372, "upload_time": "2019-01-28T02:37:44", "url": "https://files.pythonhosted.org/packages/e7/81/1769631b46ddacb9d6c4ebbeac9b9d83191f208b16e7e2d7e0daae833601/procbridge-1.1.2.tar.gz" } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "b44a0052a1afc8edcf2953c3f50ba1be", "sha256": "508bde4d0c341e26caf7011a0a1520d4e4398ae86b8316b6a648a1e22e83d2a4" }, "downloads": -1, "filename": "procbridge-1.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "b44a0052a1afc8edcf2953c3f50ba1be", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5275, "upload_time": "2019-04-08T02:49:23", "url": "https://files.pythonhosted.org/packages/1e/bc/eb6258106b5dfb50254f60d8d8a40c8ab0de8dc86d1723645a8b17a26fc9/procbridge-1.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f1c00f007c3391c4a827fd0003e4a023", "sha256": "5ac0ff967a37891a48e5b01cee892ffc37c8ff2cb5f18721b5856d316d15161d" }, "downloads": -1, "filename": "procbridge-1.1.3.tar.gz", "has_sig": false, "md5_digest": "f1c00f007c3391c4a827fd0003e4a023", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3354, "upload_time": "2019-04-08T02:49:25", "url": "https://files.pythonhosted.org/packages/36/d7/db1b24975d0876f353c4a29045ca6ff9d32bd0432172f36efcc5221e4df9/procbridge-1.1.3.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "0e83ad32f31b46a54b1320faf2861e53", "sha256": "6c5ab5f6bfc5cc862b62f51dd511d498885cd85f19dca79268b1a9add04ddee1" }, "downloads": -1, "filename": "procbridge-1.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "0e83ad32f31b46a54b1320faf2861e53", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5992, "upload_time": "2019-08-20T08:49:12", "url": "https://files.pythonhosted.org/packages/fa/3d/8da3d31f77b3ded2fb4342f99478df73c37709bffcba43aca1b18eec7dbf/procbridge-1.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "96b9674748f551ebccffecbf27cb30fe", "sha256": "ffc93ce5a7f331a2ddd605f7386194e04f3e1078d3e97e695a385660be33854b" }, "downloads": -1, "filename": "procbridge-1.2.0.tar.gz", "has_sig": false, "md5_digest": "96b9674748f551ebccffecbf27cb30fe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4141, "upload_time": "2019-08-20T08:49:14", "url": "https://files.pythonhosted.org/packages/0a/7f/e1079d7c09b997f7164773551c7ef6d7290292765a1fb62a36d598c0105a/procbridge-1.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0e83ad32f31b46a54b1320faf2861e53", "sha256": "6c5ab5f6bfc5cc862b62f51dd511d498885cd85f19dca79268b1a9add04ddee1" }, "downloads": -1, "filename": "procbridge-1.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "0e83ad32f31b46a54b1320faf2861e53", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5992, "upload_time": "2019-08-20T08:49:12", "url": "https://files.pythonhosted.org/packages/fa/3d/8da3d31f77b3ded2fb4342f99478df73c37709bffcba43aca1b18eec7dbf/procbridge-1.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "96b9674748f551ebccffecbf27cb30fe", "sha256": "ffc93ce5a7f331a2ddd605f7386194e04f3e1078d3e97e695a385660be33854b" }, "downloads": -1, "filename": "procbridge-1.2.0.tar.gz", "has_sig": false, "md5_digest": "96b9674748f551ebccffecbf27cb30fe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4141, "upload_time": "2019-08-20T08:49:14", "url": "https://files.pythonhosted.org/packages/0a/7f/e1079d7c09b997f7164773551c7ef6d7290292765a1fb62a36d598c0105a/procbridge-1.2.0.tar.gz" } ] }