{ "info": { "author": "Mourad Mourafiq", "author_email": "mourad@polyaxon.com", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "Intended Audience :: Science/Research", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Scientific/Engineering :: Artificial Intelligence" ], "description": "[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)\n[![Build Status](https://travis-ci.com/polyaxon/ocular.svg?branch=master)](https://travis-ci.com/polyaxon/ocular)\n[![PyPI version](https://badge.fury.io/py/ocular.svg)](https://badge.fury.io/py/ocular)\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/a33947d729f94f5da7f7390dfeef7f94)](https://www.codacy.com/app/polyaxon/ocular?utm_source=github.com&utm_medium=referral&utm_content=polyaxon/ocular&utm_campaign=Badge_Grade)\n[![Slack](https://img.shields.io/badge/chat-on%20slack-aadada.svg?logo=slack&longCache=true)](https://join.slack.com/t/polyaxon/shared_invite/enQtMzQ0ODc2MDg1ODc0LWY2ZTdkMTNmZjBlZmRmNjQxYmYwMTBiMDZiMWJhODI2ZTk0MDU4Mjg5YzA5M2NhYzc5ZjhiMjczMDllYmQ2MDg)\n\n\n# ocular\nA tool for observing Kubernetes pods' statuses in real time.\n\n## Description\n\nOften times it's very hard to translate a Kubernetes event to a concrete state, \nand that's the gap that ocular tries fill, i.e. return one of the following statuses:\n\n```\ncreated\nbuilding\nunschedulable\nscheduled\nrunning\nsucceeded\nfailed\nstopped\nunknown\n``` \n\nocular returns as well a condensed information about the reason of that status.\n\n## Install\n\n```bash\n$ pip install -U ocular\n```\n\n## Usage\n\n```python\nimport ocular\nfrom kubernetes import client\n\napi_client = client.api_client.ApiClient(configuration=...)\n\nfor pod_state in ocular.monitor(api_client, \n namespace='polyaxon', \n container_names=('polyaxon-experiment-job',), \n label_selector='app in (workers,dashboard),type=runner'):\n print(pod_state)\n```\n\nResults\n\n```\n...\n>> {'status': 'unknown', 'message': 'Unknown pod conditions', 'details': {'event_type': 'ADDED', 'labels': ...\n>> {'status': 'building', 'message': None, 'details': {'event_type': 'MODIFIED', 'labels': ...\n>> {'status': 'building', 'message': 'PodInitializing', 'details': {'event_type': 'MODIFIED', 'labels': ...\n>> {'status': 'building', 'message': 'PodInitializing', 'details': {'event_type': 'MODIFIED', 'labels': ...\n>> {'status': 'running', 'message': None, 'details': {'event_type': 'MODIFIED', 'labels': ...\n>> {'status': 'running', 'message': None, 'details': {'event_type': 'MODIFIED', 'labels': ...\n>> {'status': 'succeeded', 'message': None, 'details': {'event_type': 'MODIFIED', 'labels': ...\n...\n```\n\n\n## License\n\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fpolyaxon%2Focular.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Fpolyaxon%2Focular?ref=badge_large)\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/polyaxon/ocular", "keywords": "polyaxon,aws,azure,google cloud storage,k8s,kubernetes,docker", "license": "MIT", "maintainer": "Mourad Mourafiq", "maintainer_email": "mourad@polyaxon.com", "name": "ocular", "package_url": "https://pypi.org/project/ocular/", "platform": "any", "project_url": "https://pypi.org/project/ocular/", "project_urls": { "Homepage": "https://github.com/polyaxon/ocular" }, "release_url": "https://pypi.org/project/ocular/0.1.6/", "requires_dist": [ "hestia (>=0.2.4)", "kubernetes (>=8.0.1)", "six (==1.12.0)" ], "requires_python": "", "summary": "A tool for observing Kubernetes pods' statuses in real time.", "version": "0.1.6" }, "last_serial": 4967354, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "35f5fe3937e3ce81f7dae72898219c71", "sha256": "a208ff4909aa8553fdbef1116148845c6a8ae0dce481aec6dae295adc26c9ceb" }, "downloads": -1, "filename": "ocular-0.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "35f5fe3937e3ce81f7dae72898219c71", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5587, "upload_time": "2018-12-14T21:29:34", "url": "https://files.pythonhosted.org/packages/18/2a/48ae0cc84c2697afae14568f6f519dcf0a8f3372505fff4dcd4c23ad8192/ocular-0.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "33778d554149f0908c5f52e7c7546688", "sha256": "b145c16e45044c8cfaa16e2bbe8dda18b994c439ad98798af672dfed4b1a8820" }, "downloads": -1, "filename": "ocular-0.0.1.tar.gz", "has_sig": false, "md5_digest": "33778d554149f0908c5f52e7c7546688", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4532, "upload_time": "2018-12-14T21:29:36", "url": "https://files.pythonhosted.org/packages/d0/dc/1ea878c7912021dc71680217a0f8857c049c93b20e71eed3dc1f19ee4689/ocular-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "f37ac4c6c4ef4f3a0628d0cc2a0a1484", "sha256": "aaaa35e557face2dff7a60627f09b3ddf999893607f5639716eed04a6a70842f" }, "downloads": -1, "filename": "ocular-0.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f37ac4c6c4ef4f3a0628d0cc2a0a1484", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5617, "upload_time": "2018-12-15T11:47:29", "url": "https://files.pythonhosted.org/packages/04/7e/805a47b3024c1e7de8fcfe9048925e0c141407fa8d1626640c6c0e7da63d/ocular-0.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2a47458d8d722396bc91f3d7dd8d5e17", "sha256": "e7ad2e05ef0e8b2da6bc16e3e73b79d29c6511a039ea043380f1648be2b7543b" }, "downloads": -1, "filename": "ocular-0.0.2.tar.gz", "has_sig": false, "md5_digest": "2a47458d8d722396bc91f3d7dd8d5e17", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4557, "upload_time": "2018-12-15T11:47:30", "url": "https://files.pythonhosted.org/packages/69/da/c3756d6b3b0d73582217f865d3970c10d05cbdeb3d1ac1eee4a3456ac2f4/ocular-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "824715792eea8bb687409ae257825d2d", "sha256": "7492708ce21534e77647d7202798480792e407eb32b919cf08a367f2adaa19b5" }, "downloads": -1, "filename": "ocular-0.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "824715792eea8bb687409ae257825d2d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5939, "upload_time": "2019-01-06T13:16:12", "url": "https://files.pythonhosted.org/packages/e0/1b/251bb9c2d180dfe9b658680cfa646493cb9b5dbde6f0cc99e6d6c3f4507f/ocular-0.0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0bce2a3117d7e7dd15787cd25e1e187f", "sha256": "0c2f6bfae62233a1e068c6ef7e01d515f8e7412c4a26975b6a8163cefb8c03b1" }, "downloads": -1, "filename": "ocular-0.0.3.tar.gz", "has_sig": false, "md5_digest": "0bce2a3117d7e7dd15787cd25e1e187f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4906, "upload_time": "2019-01-06T13:16:14", "url": "https://files.pythonhosted.org/packages/57/e4/074a7c78174479f5d28ae5f58c009838da87913b2693d0b83a9078e5f1df/ocular-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "ff4377081208b1155d10c42deb24cb0d", "sha256": "7c9acfb952e54655a66a438375ee8c1487b777effe89dfc00e7e095588c5d8ae" }, "downloads": -1, "filename": "ocular-0.0.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ff4377081208b1155d10c42deb24cb0d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5951, "upload_time": "2019-01-06T15:24:50", "url": "https://files.pythonhosted.org/packages/f1/38/5af397f3bc21ae2cd00d5695540c2aafaa7695e40956dd91c075a35054fa/ocular-0.0.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dec92382c103f16191fff73e69e344c5", "sha256": "e73098944695162942ff36c1ac738abe940f6d2fa8c575c6fd43d0822203750f" }, "downloads": -1, "filename": "ocular-0.0.4.tar.gz", "has_sig": false, "md5_digest": "dec92382c103f16191fff73e69e344c5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4926, "upload_time": "2019-01-06T15:24:52", "url": "https://files.pythonhosted.org/packages/da/e6/14a542197428b68e9c9e20d68cf2c2d1f856a767a574b190d4a318b7ad11/ocular-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "03defb80e20a155c93e91a0ceca73f94", "sha256": "5854196eff9f2e4faf22d1e1ae42e37743306bb45636dd40fa507403a5b040b7" }, "downloads": -1, "filename": "ocular-0.0.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "03defb80e20a155c93e91a0ceca73f94", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5952, "upload_time": "2019-01-10T20:38:13", "url": "https://files.pythonhosted.org/packages/82/7a/f519cb28ada2c6e1e0c06b640bf4a92907f53a70d86b2c9088a82356507f/ocular-0.0.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f1eb2eaae8a03e38af50ef42e71d816b", "sha256": "58cd5b259d5335ccf49d6a83a81cb1a67b5e01e1b0f2b16222164d24d2ded238" }, "downloads": -1, "filename": "ocular-0.0.5.tar.gz", "has_sig": false, "md5_digest": "f1eb2eaae8a03e38af50ef42e71d816b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7059, "upload_time": "2019-01-10T20:38:14", "url": "https://files.pythonhosted.org/packages/01/2d/c70626211f9075e6945e6396197c74526eb1abe0a4eae699220c1fd1ce1b/ocular-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "695d4f72b97d7b28a276b6db75aa3f7d", "sha256": "fa16649df2d799bb78e1fbc9bedcc31e2412dd26d99f11fdbcd2e0dd6762a9bf" }, "downloads": -1, "filename": "ocular-0.0.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "695d4f72b97d7b28a276b6db75aa3f7d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6935, "upload_time": "2019-01-13T17:24:01", "url": "https://files.pythonhosted.org/packages/d4/48/d36216c3df9733cdec30b7f6c65d555d34a6e7ca66a54912678973963e15/ocular-0.0.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6d4e6879761d5819a2d904b4c0f624f8", "sha256": "16190bf9069e01f399bc1ead19f7fa5d16d884144aea5d9bfe31da334544c152" }, "downloads": -1, "filename": "ocular-0.0.6.tar.gz", "has_sig": false, "md5_digest": "6d4e6879761d5819a2d904b4c0f624f8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7355, "upload_time": "2019-01-13T17:24:03", "url": "https://files.pythonhosted.org/packages/d9/5c/a519a9d1d2337dfc7b649eb8cec4427a3572f03dcfc813467b01b4954482/ocular-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "7680bbb87ec06679e798b066f4c01fac", "sha256": "82dc768019c3de9d81515da6b8279a4967ddc9e98918139b5f86de478a79bab9" }, "downloads": -1, "filename": "ocular-0.0.7-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7680bbb87ec06679e798b066f4c01fac", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7172, "upload_time": "2019-02-16T13:08:58", "url": "https://files.pythonhosted.org/packages/ab/e6/33f5e71bb5b7dfe72f490d5a814b6c9d04913a78ab7a7f520872aa4db017/ocular-0.0.7-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5f77a5d56638ca0d36a5ac08aa4bafb1", "sha256": "09d3f558b49968d7ba6d59c402351d8f12265e8098538ac4068754afca255769" }, "downloads": -1, "filename": "ocular-0.0.7.tar.gz", "has_sig": false, "md5_digest": "5f77a5d56638ca0d36a5ac08aa4bafb1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7428, "upload_time": "2019-02-16T13:09:00", "url": "https://files.pythonhosted.org/packages/69/fd/ec7d9ce359242e7627c7fc39ce76121867c9bd76dfe5ee4d0a650d36c3a6/ocular-0.0.7.tar.gz" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "dba59f3fc8da6dec5fbd37d4b9da5f29", "sha256": "59ad9048584da8134eff025703259ae98b70306f7af8371fc60bb621d4f1e677" }, "downloads": -1, "filename": "ocular-0.0.8-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "dba59f3fc8da6dec5fbd37d4b9da5f29", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7204, "upload_time": "2019-02-16T13:36:09", "url": "https://files.pythonhosted.org/packages/be/dc/6b4233dda139e7e1b29bde17f8ac01ef153d9063ef5e482e7128b1113902/ocular-0.0.8-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1a53e779fdf0db06a7f9cfe43c53947f", "sha256": "1f0d6b45e829da7f899abaaca4414c0fd128db761377b74cd8973e478cc30bdc" }, "downloads": -1, "filename": "ocular-0.0.8.tar.gz", "has_sig": false, "md5_digest": "1a53e779fdf0db06a7f9cfe43c53947f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7445, "upload_time": "2019-02-16T13:36:10", "url": "https://files.pythonhosted.org/packages/23/5f/1033d728ac79869b438ebd72bcc7f9a85e69fa74bb30d473725a983d0016/ocular-0.0.8.tar.gz" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "5838b9a0ef7201e981c5d01a53baa195", "sha256": "e1660a2d9056c79c628af0f7780a94265dd37ff8479b413fb95d85615b7bf319" }, "downloads": -1, "filename": "ocular-0.0.9-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5838b9a0ef7201e981c5d01a53baa195", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7210, "upload_time": "2019-02-16T13:53:01", "url": "https://files.pythonhosted.org/packages/96/5e/6e24066470726f4c5e62166eb32e4207112216b3c20a5d2e396ffe3ba096/ocular-0.0.9-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "643cc4e5fd8ef88c59ddfacbfcdcef7e", "sha256": "2fbd20453a851d309feace341b6797bd3aebb54b5fca4fa26e888468d32081cd" }, "downloads": -1, "filename": "ocular-0.0.9.tar.gz", "has_sig": false, "md5_digest": "643cc4e5fd8ef88c59ddfacbfcdcef7e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7452, "upload_time": "2019-02-16T13:53:02", "url": "https://files.pythonhosted.org/packages/01/7f/f523c25d53fa5b40530d6c212a380fec61fa70d2ae4758775d24a37ea008/ocular-0.0.9.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "3ef01b2dcf5562568048b9acd6505fa2", "sha256": "49bb7a8ebfb9080be188178b746565429829291eb029117608e2caf8ff314d35" }, "downloads": -1, "filename": "ocular-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3ef01b2dcf5562568048b9acd6505fa2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7219, "upload_time": "2019-02-17T22:01:09", "url": "https://files.pythonhosted.org/packages/57/61/f33cf398fa7fc8418d0f44cd0ce3f509170e8cfe621755a7ef1b5f457a6c/ocular-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cee689fb97727a76b74f9affa3e32c5c", "sha256": "2c949734cea9e9db62e2ab568fbf8a846108d708470c34717f666657be876f86" }, "downloads": -1, "filename": "ocular-0.1.0.tar.gz", "has_sig": false, "md5_digest": "cee689fb97727a76b74f9affa3e32c5c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7457, "upload_time": "2019-02-17T22:01:10", "url": "https://files.pythonhosted.org/packages/53/35/22f2471314504e663bd7349e1f27138bf15d3f91c65de41830dcf4506ca5/ocular-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "9babf040b28f909d10929ad769520504", "sha256": "eb4dc4cfc47a2ae927aa17a66eac5c8347dc11562a1f99a086885b1653f9ef5f" }, "downloads": -1, "filename": "ocular-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9babf040b28f909d10929ad769520504", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7215, "upload_time": "2019-02-18T00:58:24", "url": "https://files.pythonhosted.org/packages/1f/bb/2739a59de5ca6f14601e70fd6aae5d993dc5ed8306729676ee14ee0cebc5/ocular-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4d283d00d7c4d11589c3fda2338e1391", "sha256": "0de521b8ec9e7f07c71b3ef0de74bef1b2012002d15e846f49e056e3f3b6cb1d" }, "downloads": -1, "filename": "ocular-0.1.1.tar.gz", "has_sig": false, "md5_digest": "4d283d00d7c4d11589c3fda2338e1391", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7464, "upload_time": "2019-02-18T00:58:25", "url": "https://files.pythonhosted.org/packages/68/04/2a4304e78d8bf13155f876ab9ff67fe77b6ebd93eba50859aa35428f4295/ocular-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "702658e8234aaf78d92bedea127b7c21", "sha256": "57e8da4b69d04f009085f12275791b2b989241bfbde72350ce2d943e9498ef56" }, "downloads": -1, "filename": "ocular-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "702658e8234aaf78d92bedea127b7c21", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7204, "upload_time": "2019-02-28T13:54:49", "url": "https://files.pythonhosted.org/packages/64/65/4c4272b41f25f71283afcd0a6afeaa46061d7152d299af0fa070c03c6caf/ocular-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0c591e693e13e46705b16023fe9277a2", "sha256": "949fca992b9e5d980033e78ed4172786cbb3b3a1f9997d52396e7e81e9f8aa86" }, "downloads": -1, "filename": "ocular-0.1.2.tar.gz", "has_sig": false, "md5_digest": "0c591e693e13e46705b16023fe9277a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7450, "upload_time": "2019-02-28T13:54:52", "url": "https://files.pythonhosted.org/packages/24/fb/18ea83b82d23ae9a0e12b1101268d09c94b4f93b007f44d6746398173e55/ocular-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "bab0b1eb10c3c9e4920abc07a151730b", "sha256": "ffe279e348c19f673a3c302563d6fff8ed7a72fc3b94c010fcadf50ebad225a8" }, "downloads": -1, "filename": "ocular-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bab0b1eb10c3c9e4920abc07a151730b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7206, "upload_time": "2019-03-03T14:25:02", "url": "https://files.pythonhosted.org/packages/97/cb/3c3e61781abf2b926a0cfcb65b8076055a95ee1b68555c6bc65dd5ebc546/ocular-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "14e696514264a9f7959e51a7e9575f12", "sha256": "4a18f8faa22a5a248cf6af372d89551576c75e8023435fa4ce46e098aed218e9" }, "downloads": -1, "filename": "ocular-0.1.3.tar.gz", "has_sig": false, "md5_digest": "14e696514264a9f7959e51a7e9575f12", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7458, "upload_time": "2019-03-03T14:25:04", "url": "https://files.pythonhosted.org/packages/d9/bb/ca51e704e22cd45cb8ae3b040fe510902be98f4189065c79176f502de0a6/ocular-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "8d27bf0c6990c500e706b2a1ac8f3dc7", "sha256": "7cf469584893dea5ddf1d8b99c162cf7d2ab224edb3d7afbcf016c1845c66ac9" }, "downloads": -1, "filename": "ocular-0.1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8d27bf0c6990c500e706b2a1ac8f3dc7", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7234, "upload_time": "2019-03-07T14:27:30", "url": "https://files.pythonhosted.org/packages/6d/c1/96f0ed632eed807ee80cd1314395d0f4a9b4f42c653d97478eba503a27b3/ocular-0.1.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "205e7d794c76e30d807c108e89d84249", "sha256": "a63d81eff1890e9b91006dffa4dd02d3eb89865a57848b55be773fc7d67ad3df" }, "downloads": -1, "filename": "ocular-0.1.4.tar.gz", "has_sig": false, "md5_digest": "205e7d794c76e30d807c108e89d84249", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7481, "upload_time": "2019-03-07T14:27:32", "url": "https://files.pythonhosted.org/packages/a7/9c/4f7b7c70ac2bb76e69198a3c011759ec4432d8990ff262e6a3f8f9c860e7/ocular-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "7b19e87f4f72673a70f6bb141b573593", "sha256": "e075512df2b466af067576146a53f1286715d21e7b3f43cfa64aa2f77284b604" }, "downloads": -1, "filename": "ocular-0.1.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7b19e87f4f72673a70f6bb141b573593", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7245, "upload_time": "2019-03-12T21:49:06", "url": "https://files.pythonhosted.org/packages/75/b5/a36e5b200b25048fa78068a5aa02322f9cc214c8d3ed56711dfa6aebf2fc/ocular-0.1.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ace5d6772d0d282f0b873aeeda018083", "sha256": "9c7416b3efc249d8c8ca934bb8f1aa665bd8d6acea6e0265ce2593aeda01682d" }, "downloads": -1, "filename": "ocular-0.1.5.tar.gz", "has_sig": false, "md5_digest": "ace5d6772d0d282f0b873aeeda018083", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7498, "upload_time": "2019-03-12T21:49:07", "url": "https://files.pythonhosted.org/packages/73/b4/4b24a41300c61dc42d9f8c1ebff813d4dc9c796f0a02a91979d1b842b24a/ocular-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "eb1caeb3a752a33f0beff018c2ebb89f", "sha256": "f52f421138ad1e85548b974c13d7fc6249b4e8b53060132884aecd9b2b5a7902" }, "downloads": -1, "filename": "ocular-0.1.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "eb1caeb3a752a33f0beff018c2ebb89f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7272, "upload_time": "2019-03-21T09:40:49", "url": "https://files.pythonhosted.org/packages/49/e3/698ea435f40f256589e4ce9c82502ca5f91adabecf51bcc9dc545174557d/ocular-0.1.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "aec296f96c1f0cdf3df1e16027c06b43", "sha256": "2700cf13a4102c3aa97deb632ea6193c10b8ff488463f4aa14aa0c1b44c430d8" }, "downloads": -1, "filename": "ocular-0.1.6.tar.gz", "has_sig": false, "md5_digest": "aec296f96c1f0cdf3df1e16027c06b43", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7523, "upload_time": "2019-03-21T09:40:50", "url": "https://files.pythonhosted.org/packages/b2/56/c0b0e325ca05d46bc88847b4072aab586bac37f48e577f6457cebf7d979a/ocular-0.1.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "eb1caeb3a752a33f0beff018c2ebb89f", "sha256": "f52f421138ad1e85548b974c13d7fc6249b4e8b53060132884aecd9b2b5a7902" }, "downloads": -1, "filename": "ocular-0.1.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "eb1caeb3a752a33f0beff018c2ebb89f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7272, "upload_time": "2019-03-21T09:40:49", "url": "https://files.pythonhosted.org/packages/49/e3/698ea435f40f256589e4ce9c82502ca5f91adabecf51bcc9dc545174557d/ocular-0.1.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "aec296f96c1f0cdf3df1e16027c06b43", "sha256": "2700cf13a4102c3aa97deb632ea6193c10b8ff488463f4aa14aa0c1b44c430d8" }, "downloads": -1, "filename": "ocular-0.1.6.tar.gz", "has_sig": false, "md5_digest": "aec296f96c1f0cdf3df1e16027c06b43", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7523, "upload_time": "2019-03-21T09:40:50", "url": "https://files.pythonhosted.org/packages/b2/56/c0b0e325ca05d46bc88847b4072aab586bac37f48e577f6457cebf7d979a/ocular-0.1.6.tar.gz" } ] }