{ "info": { "author": "Eugene Van den Bulke", "author_email": "eugene.vandenbulke@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: BSD License", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Libraries" ], "description": "A convenient way to work with information streaming from websockets, built\non top of the Python iterator protocol.\n\nWhen subscribing to a stream of qualified data I am usually interested in either\nthe `latest` value i.e. the one I want when I am ready to do something\nwith it or `all` the values since I last checked.\n\n`whereismysock` also has a `most` subscriber which is `all` with an upper bound\nto the number of messages it keeps in memory (deleting the eldest first).\n\n >>> from whereismysock import latest\n >>> usdjpy = latest(\"ws://toplevel/USDJPY\")\n >>> next(usdjpy)\n ...\n\n >>> from whereismysock import all\n >>> nk225 = all(\"ws://trades/NK225\")\n >>> next(nk225)\n ...\n\nI like it because it makes \"synchronising\" different source of information\nsuper easy.\n\n >>> hhi = latest(\"ws://toplevel/HHI\")\n >>> hsi = latest(\"ws://toplevel/HSI\")\n >>> next(zip(hhi, hsi))\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/3kwa/whereismysock", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "whereismysock", "package_url": "https://pypi.org/project/whereismysock/", "platform": "", "project_url": "https://pypi.org/project/whereismysock/", "project_urls": { "Homepage": "https://github.com/3kwa/whereismysock" }, "release_url": "https://pypi.org/project/whereismysock/2019.6.0/", "requires_dist": null, "requires_python": "", "summary": "A convenient way to work with websocket data streams", "version": "2019.6.0" }, "last_serial": 5370997, "releases": { "2019.3.0": [ { "comment_text": "", "digests": { "md5": "caf551fcadfe3b65ace811f0392a9124", "sha256": "9ceee5476bf2aa6d6638acb8b47a17496111398a8aea15b7c1504b2894ec00e2" }, "downloads": -1, "filename": "whereismysock-2019.3.0.tar.gz", "has_sig": false, "md5_digest": "caf551fcadfe3b65ace811f0392a9124", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2395, "upload_time": "2019-03-10T07:00:32", "url": "https://files.pythonhosted.org/packages/a5/09/1c2feb8f53466aea0828bdef6b8bb713e0d88bf5f19e7dc6fa88611e47fd/whereismysock-2019.3.0.tar.gz" } ], "2019.6.0": [ { "comment_text": "", "digests": { "md5": "f24d31772ea1542b0c690d34c322d741", "sha256": "8cafb54343eef1755ae874600eb9a16dde808bcf1dd4545ec03f8beb75f27e58" }, "downloads": -1, "filename": "whereismysock-2019.6.0.tar.gz", "has_sig": false, "md5_digest": "f24d31772ea1542b0c690d34c322d741", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2454, "upload_time": "2019-06-07T10:51:14", "url": "https://files.pythonhosted.org/packages/78/9c/8657e8a4cb8863f0e8213a9e779ca3ca51a413563aa0daaee8345d4dba61/whereismysock-2019.6.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f24d31772ea1542b0c690d34c322d741", "sha256": "8cafb54343eef1755ae874600eb9a16dde808bcf1dd4545ec03f8beb75f27e58" }, "downloads": -1, "filename": "whereismysock-2019.6.0.tar.gz", "has_sig": false, "md5_digest": "f24d31772ea1542b0c690d34c322d741", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2454, "upload_time": "2019-06-07T10:51:14", "url": "https://files.pythonhosted.org/packages/78/9c/8657e8a4cb8863f0e8213a9e779ca3ca51a413563aa0daaee8345d4dba61/whereismysock-2019.6.0.tar.gz" } ] }