{ "info": { "author": "Tyler Brown", "author_email": "brown.tyler@husky.neu.edu", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: MacOS :: MacOS X", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX :: Linux", "Programming Language :: Python", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "# Okra\n\n[![image](https://travis-ci.org/okrahealth/okra.svg?branch=master)](https://travis-ci.com/)\n[![image](https://img.shields.io/pypi/l/okra.svg)](https://pypi.org/project/okra/)\n[![image](https://img.shields.io/pypi/pyversions/okra.svg)](https://pypi.org/project/okra/)\n\n## Diagnose git health. \n\nHow healthy is our software? Okra is a tool that diagnoses the health of\nprojects which use git version control. Okra uses the 'bus factor' to\nunderstand project health.\n\n### What is the bus factor?\n\nThe bus factor is the smallest sized set of developers which own at least \n50% of project files. Ownership of a file is determined by the author who\nhas contributed the most lines of code in a file.\n\n## Setup and Installation (for development)\n\nWe use [GNU make](https://www.gnu.org/software/make/manual/make.html#Introduction) to \norganize our build. It allows us to break our our package and development dependencies.\nIt also allows us to automate common tasks like running tests or building documentation.\n\n### Step 1: Install and Configure a virtual environment\n\nThe recommended virtual environment for a statistical package is [Miniconda](https://docs.conda.io/en/latest/miniconda.html). Once you have correctly installed\nMiniconda, you can create an environment for Okra by executing the following commands\nin your terminal\n\n```\n$ conda create -n myenv python=3.6\n$ conda activate myenv\n```\n\nYou can call `myenv` whatever is memorable for you. I've been using `ok` for mine.\n\n### Step 2: Configuring your Development environment\n\nAssuming that your virtual environment is activated, clone the Okra\nrepository and install the required development dependencies:\n\n```\n$ git clone https://github.com/okrahealth/okra.git\n$ cd okra\n$ make dev\n```\n\n### Step 3: Validate your development environment by getting tests passing\n\nAssuming successful completion of steps (1) and (2), there should be no issue\ngetting tests passing.\n\n```\n$ make test\n```\n\nYou should see a message similar to\n\n```\n...\n========================== 27 passed, 2 warnings in 0.45 seconds ===========================\n```\n\nIf tests are not passing for some reason, please open a ticket using\nGitHub issues [okrahealth/okra/issues](https://github.com/okrahealth/okra/issues). \nYou can also request membership to our slack channel, [https://okrahealth.slack.com](https://okrahealth.slack.com).\n\n### Static Type Checking\n\nWe use a static type analyzer, [google/pytype](https://github.com/google/pytype),\nto catch preventable bugs before they come out at runtime:\n\n* Lint plain Python code, flagging common mistakes such as mispelled attribute names,\n incorrect function calls, and [many other errors](https://github.com/google/pytype/blob/master/docs/errors.md), even across file boundaries.\n* Enforce user-provided [type annotations](https://www.python.org/dev/peps/pep-0484/). \n While annotations are optional for pytype, it will check and apply them where \n present.\n \nMore information can be found in the [pytype user guide](https://github.com/google/pytype/blob/master/docs/user_guide.md) or [pytype FAQ](https://github.com/google/pytype/blob/master/docs/faq.md). We use static type checking in Okra via the makefile:\n\n```\n$ make fpath=okra/be_nice.py check\n```\n\nwhere `okra/be_nice.py` can be any relative filepath that you've been\ndeveloping.\n\n### Protocol Buffers\n\nWe use protocol buffers to define an interface between this package and the \nother Okra projects like [okrahealth/okra-api](https://github.com/okrahealth/okra-api). If new to protocol buffers, review [developers.google.com/protocol-buffers](https://developers.google.com/protocol-buffers/). Make sure you\nhave the [protocol buffer compiler](https://github.com/protocolbuffers/protobuf) installed. Protobuf files can be generated for the Okra Python\npackage:\n\n```\n$ make proto\n```\n\nPlease contact a core developer before making any changes to the\n`*.proto` files in `okra/protos/`.\n\n## Documentation\n\n- [Okra Documentation](https://okrahealth.github.io/okra/)\n- [OkraHealth Website](https://okrahealth.github.io/)\n\n## Usage\n\nThis statistical library is currently being used to compute batch jobs to populate\nthe database in [github.com/okrahealth/okra-api](https://github.com/okrahealth/okra-api).\nWe are not supporting other use cases at this time.", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://okrahealth.github.io/", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "okra", "package_url": "https://pypi.org/project/okra/", "platform": "", "project_url": "https://pypi.org/project/okra/", "project_urls": { "Bug Tracker": "https://github.com/okrahealth/okra/issues", "Documentation": "https://okrahealth.github.io/okra/", "Homepage": "https://okrahealth.github.io/", "Source Code": "https://github.com/okrahealth/okra" }, "release_url": "https://pypi.org/project/okra/1.3.2/", "requires_dist": null, "requires_python": ">=3.6", "summary": "", "version": "1.3.2" }, "last_serial": 5346684, "releases": { "0.5.dev1": [ { "comment_text": "", "digests": { "md5": "e699466daa3d635bf8d4019a80998add", "sha256": "991480f9cc86affae4367607003430e43ec91e31a57438cb41e16fa919f7b7f9" }, "downloads": -1, "filename": "okra-0.5.dev1-py3.7.egg", "has_sig": false, "md5_digest": "e699466daa3d635bf8d4019a80998add", "packagetype": "bdist_egg", "python_version": "3.7", "requires_python": null, "size": 15115, "upload_time": "2019-02-20T15:02:28", "url": "https://files.pythonhosted.org/packages/79/de/f9fb781cd26f8e937288032bb7f8c0ec577e6481259ae58fee22069d6633/okra-0.5.dev1-py3.7.egg" }, { "comment_text": "", "digests": { "md5": "4fa7f0287bc03de34dd78adf43d347c1", "sha256": "d4085deaccec5f598a4f917a65c17ad412aad5110f277c743b7bbc83d26efb09" }, "downloads": -1, "filename": "okra-0.5.dev1.tar.gz", "has_sig": false, "md5_digest": "4fa7f0287bc03de34dd78adf43d347c1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5715, "upload_time": "2019-02-20T15:02:30", "url": "https://files.pythonhosted.org/packages/df/8f/5732fb5bacd7263cd13793fbc7361face02e0f0a8bce15064c7960d16f30/okra-0.5.dev1.tar.gz" } ], "0.6.dev0": [ { "comment_text": "", "digests": { "md5": "2543d960c3a0dda5ddac9170f29ebc09", "sha256": "57a74cc43b2d447e762edb9e236d4b0658279508abfbd82387e10fc62034964d" }, "downloads": -1, "filename": "okra-0.6.dev0-py3.6.egg", "has_sig": false, "md5_digest": "2543d960c3a0dda5ddac9170f29ebc09", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": null, "size": 29681, "upload_time": "2019-02-20T15:02:31", "url": "https://files.pythonhosted.org/packages/13/a0/f69cf4425e661467d078faaf379dd207cf1f1f5db686a8910e63a56b6b55/okra-0.6.dev0-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "61f70a422f2ff90aeed228ded969cc8d", "sha256": "9fb898c6f0ed45db7964a8da2058171a94e8acdab2f3c204d0dbbf8e1341834b" }, "downloads": -1, "filename": "okra-0.6.dev0-py3.7.egg", "has_sig": false, "md5_digest": "61f70a422f2ff90aeed228ded969cc8d", "packagetype": "bdist_egg", "python_version": "3.7", "requires_python": null, "size": 28663, "upload_time": "2019-02-20T15:02:33", "url": "https://files.pythonhosted.org/packages/27/0c/c54c822958bcf4b19455267a1334f5cfd933b59574aa804e39db41394cc3/okra-0.6.dev0-py3.7.egg" } ], "0.7.dev0": [ { "comment_text": "", "digests": { "md5": "d67328accd8d816d1c1fe5fcb44e9cc5", "sha256": "0f66f46a7ef708e4a0a18031968a973788bc4aefb29b5f1623f824cd5185a979" }, "downloads": -1, "filename": "okra-0.7.dev0.tar.gz", "has_sig": false, "md5_digest": "d67328accd8d816d1c1fe5fcb44e9cc5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10491, "upload_time": "2019-02-20T15:02:34", "url": "https://files.pythonhosted.org/packages/ed/4f/033fc8b4ab13eccc8e2cb09e2d2601c0c54ebf9ff48bf75de6122d442a5f/okra-0.7.dev0.tar.gz" } ], "0.8.dev0": [ { "comment_text": "", "digests": { "md5": "034b5f4dea385355076f8ef09c8a5e9b", "sha256": "fa536d80efc0ed20e603fe1d04b792648bc4badaa9031eb151f6cef87f75e5a6" }, "downloads": -1, "filename": "okra-0.8.dev0.tar.gz", "has_sig": false, "md5_digest": "034b5f4dea385355076f8ef09c8a5e9b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10328, "upload_time": "2019-02-20T15:27:05", "url": "https://files.pythonhosted.org/packages/f2/e3/76291c4dc0211be9ac9c727d5a94ba6e57da4f674dad2d57c8c9158722f7/okra-0.8.dev0.tar.gz" } ], "0.8.dev1": [ { "comment_text": "", "digests": { "md5": "8b6a5888f625ac507d47c5a32865fb8d", "sha256": "411f3da8e5cea33a5a2aff69acd51f42a31472afc0e577c050941fd1ed62e13d" }, "downloads": -1, "filename": "okra-0.8.dev1.tar.gz", "has_sig": false, "md5_digest": "8b6a5888f625ac507d47c5a32865fb8d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10341, "upload_time": "2019-02-20T15:34:53", "url": "https://files.pythonhosted.org/packages/dc/0f/643c43128e8d021e47aff3aafa3ac40c5c69e1a77d47fee9b9bbffeab574/okra-0.8.dev1.tar.gz" } ], "0.8.dev2": [ { "comment_text": "", "digests": { "md5": "689342de4d276611ca20ed912692f621", "sha256": "fb3d5b3af4674dd158a499aef88ba0fdc6cf9c842294076fe0e4500bd29fa1a3" }, "downloads": -1, "filename": "okra-0.8.dev2.tar.gz", "has_sig": false, "md5_digest": "689342de4d276611ca20ed912692f621", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10341, "upload_time": "2019-02-20T15:40:03", "url": "https://files.pythonhosted.org/packages/62/ce/02b1766dcaa269839534c656ccc6c4294c76269a0b7ba2c460c33ca724a6/okra-0.8.dev2.tar.gz" } ], "0.8.dev3": [ { "comment_text": "", "digests": { "md5": "57b560aca902ef68ece87882858d7efc", "sha256": "82be66212ec9e0552fe3a5a6000367aaffa3abaccaa678b60f67366e0df230dc" }, "downloads": -1, "filename": "okra-0.8.dev3-py3.7.egg", "has_sig": false, "md5_digest": "57b560aca902ef68ece87882858d7efc", "packagetype": "bdist_egg", "python_version": "3.7", "requires_python": null, "size": 31679, "upload_time": "2019-02-20T15:48:56", "url": "https://files.pythonhosted.org/packages/25/ef/bc43b931f130515eb8d45341c60f3eae89dd338b58cf7eb6d215c07c12a7/okra-0.8.dev3-py3.7.egg" }, { "comment_text": "", "digests": { "md5": "c498859a0b898e8a44263cecb4cacf1e", "sha256": "fd0cc77c2985f62a86027a6e41a981cc96c7d55976ffcf6301682aa34a7b35d4" }, "downloads": -1, "filename": "okra-0.8.dev3.tar.gz", "has_sig": false, "md5_digest": "c498859a0b898e8a44263cecb4cacf1e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10350, "upload_time": "2019-02-20T15:44:54", "url": "https://files.pythonhosted.org/packages/6c/29/1d34cd31b257755412e94fd943395e2219ea52ff11d033707d4663b269ad/okra-0.8.dev3.tar.gz" } ], "0.8.dev4": [ { "comment_text": "", "digests": { "md5": "cc9359a5fc905dce5f1fa08397cf561e", "sha256": "67de7b74af5f86dd78bfa3493b7743988838c1e18aea353ee66d516a41b1db0c" }, "downloads": -1, "filename": "okra-0.8.dev4.tar.gz", "has_sig": false, "md5_digest": "cc9359a5fc905dce5f1fa08397cf561e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10349, "upload_time": "2019-02-20T15:52:25", "url": "https://files.pythonhosted.org/packages/72/37/f0b79aa60cdebbf9ff3d52c51aa48e4fdb04761d2265eb0842ad23251a4c/okra-0.8.dev4.tar.gz" } ], "0.9.dev0": [ { "comment_text": "", "digests": { "md5": "f6a6d242b12815f25d7d78432f931b55", "sha256": "e853ab831921378d31967753fc762f89eaf00420dfd921db1a6f83ccec3eda4d" }, "downloads": -1, "filename": "okra-0.9.dev0.tar.gz", "has_sig": false, "md5_digest": "f6a6d242b12815f25d7d78432f931b55", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15992, "upload_time": "2019-02-27T19:23:15", "url": "https://files.pythonhosted.org/packages/d7/57/d26fd139155f4036cd62b26ee6b73fe1437884c7bd61d54d43cb54f531a3/okra-0.9.dev0.tar.gz" } ], "0.9.dev1": [ { "comment_text": "", "digests": { "md5": "8786778eb24a993ef2d5c96c74e49fa4", "sha256": "cdf383df9ab2b7c57383f2954860de002ce44b47c280788b4383af5609968a21" }, "downloads": -1, "filename": "okra-0.9.dev1.tar.gz", "has_sig": false, "md5_digest": "8786778eb24a993ef2d5c96c74e49fa4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15528, "upload_time": "2019-03-01T19:05:59", "url": "https://files.pythonhosted.org/packages/04/0a/59014b67892f9827f1e63815b76507286601768403505e6b099c368d8cfc/okra-0.9.dev1.tar.gz" } ], "0.9.dev10": [ { "comment_text": "", "digests": { "md5": "0b8ab806ba77232a2f59c766b1692fee", "sha256": "f6bb60fcefd049ae05827c637fd942b03daaa19b4aa4c61b6d4a450a8cc51551" }, "downloads": -1, "filename": "okra-0.9.dev10.tar.gz", "has_sig": false, "md5_digest": "0b8ab806ba77232a2f59c766b1692fee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17758, "upload_time": "2019-03-04T20:22:58", "url": "https://files.pythonhosted.org/packages/a4/fb/df068d682c23a6bd480a12d32c6901e92438df489567f8310f3c12463f87/okra-0.9.dev10.tar.gz" } ], "0.9.dev2": [ { "comment_text": "", "digests": { "md5": "f3ea08ddf783919c86dd696dc36caa59", "sha256": "17b1075164177e69b284323c73644fda50ae98b37d14148c627602d701aa3233" }, "downloads": -1, "filename": "okra-0.9.dev2.tar.gz", "has_sig": false, "md5_digest": "f3ea08ddf783919c86dd696dc36caa59", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16309, "upload_time": "2019-03-02T19:51:11", "url": "https://files.pythonhosted.org/packages/6c/28/42ae915b48da40d13f7602f384a776a27d71edc5fe591a3ce0580e89e80e/okra-0.9.dev2.tar.gz" } ], "0.9.dev3": [ { "comment_text": "", "digests": { "md5": "39a3a7e748cd4a1bc416e24b0e971050", "sha256": "273343e745f01580f17d325bd5942595ec4f40f98a0aab49417926447461297e" }, "downloads": -1, "filename": "okra-0.9.dev3.tar.gz", "has_sig": false, "md5_digest": "39a3a7e748cd4a1bc416e24b0e971050", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16367, "upload_time": "2019-03-02T20:56:08", "url": "https://files.pythonhosted.org/packages/7f/73/d497b2a791ae990b8fb89199f57f00922e99a3ad81bdfd3613b3328a75c8/okra-0.9.dev3.tar.gz" } ], "0.9.dev4": [ { "comment_text": "", "digests": { "md5": "231471c82a8327b98d83ea5ed46f310e", "sha256": "df951b9ab1c63f71b304ec12a270d527b5168aead2fb49d1bfcaf2c4b58c26d4" }, "downloads": -1, "filename": "okra-0.9.dev4.tar.gz", "has_sig": false, "md5_digest": "231471c82a8327b98d83ea5ed46f310e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17717, "upload_time": "2019-03-04T13:46:43", "url": "https://files.pythonhosted.org/packages/68/a7/26ba2e7788533e6aaa1859bb3794c8ab707311f76d533a0e767a3576801b/okra-0.9.dev4.tar.gz" } ], "0.9.dev5": [ { "comment_text": "", "digests": { "md5": "f4ea6d8f3c518e4b3adad14a45960fcb", "sha256": "e21961af09372b18c362e9927621136aa5849097bc19dc9071deac4ceb68542a" }, "downloads": -1, "filename": "okra-0.9.dev5.tar.gz", "has_sig": false, "md5_digest": "f4ea6d8f3c518e4b3adad14a45960fcb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17739, "upload_time": "2019-03-04T15:00:46", "url": "https://files.pythonhosted.org/packages/ff/18/53d320ab797bd6c293983505ac7c1be9e7d8e2cc400dfd3b8ac79e71f8b8/okra-0.9.dev5.tar.gz" } ], "0.9.dev6": [ { "comment_text": "", "digests": { "md5": "24fb7b79a3fffc7526c024a0c4422c40", "sha256": "745b09b9ed5d9b8e052d05412470a64f6486de3a8e80f0a4b842692851c25d7c" }, "downloads": -1, "filename": "okra-0.9.dev6.tar.gz", "has_sig": false, "md5_digest": "24fb7b79a3fffc7526c024a0c4422c40", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17746, "upload_time": "2019-03-04T19:17:28", "url": "https://files.pythonhosted.org/packages/4a/95/9de7a3cd5795cb027b0123c21054a3eb49d775bd2af431c1898fdea550bd/okra-0.9.dev6.tar.gz" } ], "0.9.dev7": [ { "comment_text": "", "digests": { "md5": "7f6afcda1764dc5d311d0f83033dcfe8", "sha256": "d21b424e076a8635cb8ee09fb052b6fb4ff0301e657439b798432d9bd8e74b41" }, "downloads": -1, "filename": "okra-0.9.dev7.tar.gz", "has_sig": false, "md5_digest": "7f6afcda1764dc5d311d0f83033dcfe8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17742, "upload_time": "2019-03-04T19:36:48", "url": "https://files.pythonhosted.org/packages/5e/09/6ab868c95ad9530ed735e1502f5b14ca4efa87825b436a753cb70914cd18/okra-0.9.dev7.tar.gz" } ], "0.9.dev8": [ { "comment_text": "", "digests": { "md5": "a189bef66e1a0b81523255f02ad737cc", "sha256": "39b068221897f4f7e358c20586a4a9e882df534a244cf24ac17c95978370b436" }, "downloads": -1, "filename": "okra-0.9.dev8.tar.gz", "has_sig": false, "md5_digest": "a189bef66e1a0b81523255f02ad737cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17750, "upload_time": "2019-03-04T19:57:11", "url": "https://files.pythonhosted.org/packages/cb/b3/2ef9c9105413cd2fc098f5ee4057b6a2bcbc80922c82eebee0c71a09b481/okra-0.9.dev8.tar.gz" } ], "0.9.dev9": [ { "comment_text": "", "digests": { "md5": "4ce8f5c83303c6df694a19f1135fe668", "sha256": "df2f00a0d1a09a816a8daa5093f0398eef0ebe701f3b9f386bea5a1bf35c8fa3" }, "downloads": -1, "filename": "okra-0.9.dev9.tar.gz", "has_sig": false, "md5_digest": "4ce8f5c83303c6df694a19f1135fe668", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17751, "upload_time": "2019-03-04T20:11:34", "url": "https://files.pythonhosted.org/packages/18/b9/2991d81eba52079866757c14b0a7e48a13d39d2fb163bbef91df9bcedad6/okra-0.9.dev9.tar.gz" } ], "1.0.dev0": [ { "comment_text": "", "digests": { "md5": "97a4d540da2bed755307bd422fd0ebd9", "sha256": "67f8cd3c89de363d80d218ac6ca80bc9cbcf7e5f6ee021f4c78b8de4f9434ccb" }, "downloads": -1, "filename": "okra-1.0.dev0.tar.gz", "has_sig": false, "md5_digest": "97a4d540da2bed755307bd422fd0ebd9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18109, "upload_time": "2019-03-05T01:35:52", "url": "https://files.pythonhosted.org/packages/14/bf/99fb744c7dfc98b15e91e8849218ac67068c7f685b38184733c10efdf194/okra-1.0.dev0.tar.gz" } ], "1.0.dev1": [ { "comment_text": "", "digests": { "md5": "9b6d597546596b48816e2fa04e763169", "sha256": "1a89f7e50ea76fdaf60e6ece9480191e81d6421eb127fbfebba7f5b722260344" }, "downloads": -1, "filename": "okra-1.0.dev1.tar.gz", "has_sig": false, "md5_digest": "9b6d597546596b48816e2fa04e763169", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18159, "upload_time": "2019-03-05T02:02:17", "url": "https://files.pythonhosted.org/packages/7f/7c/2cf3506995ea5fa5b54f0e76f5649572536cfdeb3dcfc62d22e36b602f1b/okra-1.0.dev1.tar.gz" } ], "1.0.dev10": [ { "comment_text": "", "digests": { "md5": "d57f1bb8a591195cacf8402ee7759a4d", "sha256": "0e0dda4e62efec03bd179319e23e0572607c450cbbfd64562511835b2cd47076" }, "downloads": -1, "filename": "okra-1.0.dev10.tar.gz", "has_sig": false, "md5_digest": "d57f1bb8a591195cacf8402ee7759a4d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18185, "upload_time": "2019-03-05T18:34:48", "url": "https://files.pythonhosted.org/packages/ef/62/06adcb3ef077a390c2f2e90dab2262254debc4f08f9adc77f9b479fe4c8f/okra-1.0.dev10.tar.gz" } ], "1.0.dev11": [ { "comment_text": "", "digests": { "md5": "db19e7026c4ae765815b7e47f43acd04", "sha256": "6909b5b261f5c35d37a8be45884232ab369fdaf4be01f150b97b807de0c6f29e" }, "downloads": -1, "filename": "okra-1.0.dev11.tar.gz", "has_sig": false, "md5_digest": "db19e7026c4ae765815b7e47f43acd04", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18224, "upload_time": "2019-03-05T18:57:32", "url": "https://files.pythonhosted.org/packages/ad/a9/0f6506bbeb35fb2577d5e2803f1378db3d51b7a1dcf8bf4c5f3106fddf64/okra-1.0.dev11.tar.gz" } ], "1.0.dev12": [ { "comment_text": "", "digests": { "md5": "bbf8bdfc0a739ba64a707e6c7b43fc7e", "sha256": "ca6ec2c87ef91babfe83bdb714723e2c130aff5db1de6f1fbe8e13a2d7a8d2d9" }, "downloads": -1, "filename": "okra-1.0.dev12.tar.gz", "has_sig": false, "md5_digest": "bbf8bdfc0a739ba64a707e6c7b43fc7e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18194, "upload_time": "2019-03-05T19:13:51", "url": "https://files.pythonhosted.org/packages/ad/e0/4f66e75f66c49deb3b3e8011455ed7ea0189f08d3516da8d7e7e8bf61e3c/okra-1.0.dev12.tar.gz" } ], "1.0.dev13": [ { "comment_text": "", "digests": { "md5": "aa5c51af0bacc44de7e39e316e3592d4", "sha256": "3be61a8d8ddddf4972133f113940f3f5ccb0b2a80f603fcf077107224e9e7b42" }, "downloads": -1, "filename": "okra-1.0.dev13.tar.gz", "has_sig": false, "md5_digest": "aa5c51af0bacc44de7e39e316e3592d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18204, "upload_time": "2019-03-05T19:26:55", "url": "https://files.pythonhosted.org/packages/e7/6a/3cff841307677994798772e4f499b4f06dec3e5536522c22890ccaae6fca/okra-1.0.dev13.tar.gz" } ], "1.0.dev14": [ { "comment_text": "", "digests": { "md5": "8a7e2e3f47e99ac7c517f00f2d040ad4", "sha256": "380adf544416c2016bc7e0891a474cacb57577705dbd6e7022845a0c4bc947fc" }, "downloads": -1, "filename": "okra-1.0.dev14.tar.gz", "has_sig": false, "md5_digest": "8a7e2e3f47e99ac7c517f00f2d040ad4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17726, "upload_time": "2019-03-05T19:50:06", "url": "https://files.pythonhosted.org/packages/3a/53/4af20d4c7296ef12297bdf57cfc7bfcc5eade0bf447f8c679e432cd28525/okra-1.0.dev14.tar.gz" } ], "1.0.dev15": [ { "comment_text": "", "digests": { "md5": "f6f6ab160737896dff67533a5658f412", "sha256": "cb65dc49ec3f474e4a2f877ed0bbe703c67482186adf53b23db055d7cfec5ecf" }, "downloads": -1, "filename": "okra-1.0.dev15.tar.gz", "has_sig": false, "md5_digest": "f6f6ab160737896dff67533a5658f412", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17615, "upload_time": "2019-03-05T20:02:15", "url": "https://files.pythonhosted.org/packages/8d/52/9ffe803d0d51476ccf4b18f92690f4c4cd02dea3a5cf4426c6176361b707/okra-1.0.dev15.tar.gz" } ], "1.0.dev16": [ { "comment_text": "", "digests": { "md5": "60ae55f45d9895285a36fd9282d06539", "sha256": "be3d4e59c22ec5734efdf6aa2d95e21569bcd9e88741936c46f0815a0fc793b9" }, "downloads": -1, "filename": "okra-1.0.dev16.tar.gz", "has_sig": false, "md5_digest": "60ae55f45d9895285a36fd9282d06539", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17633, "upload_time": "2019-03-05T20:15:13", "url": "https://files.pythonhosted.org/packages/c9/75/ffc7a3a1339b8885a1887c1ecb526705c1b759eb79c398b32b7bf47cfc94/okra-1.0.dev16.tar.gz" } ], "1.0.dev17": [ { "comment_text": "", "digests": { "md5": "d085c55511142be38cf3ffbf284034e5", "sha256": "7bebeedb1752206a4c83f94eb6cc65d1f8a3099d4e56e2537af3acbd00c8e260" }, "downloads": -1, "filename": "okra-1.0.dev17.tar.gz", "has_sig": false, "md5_digest": "d085c55511142be38cf3ffbf284034e5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17676, "upload_time": "2019-03-05T20:33:48", "url": "https://files.pythonhosted.org/packages/6f/33/2a818ca9e6df543f6600d6840615fdaa80a416a98ccef3a469a4fb00c29c/okra-1.0.dev17.tar.gz" } ], "1.0.dev19": [ { "comment_text": "", "digests": { "md5": "a916e74115547e23001177b8b5b7e2fe", "sha256": "b8bece8abfd68402b1c3dba055bf87b835b9ce14229ba001cd0fd85e6b7302ec" }, "downloads": -1, "filename": "okra-1.0.dev19.tar.gz", "has_sig": false, "md5_digest": "a916e74115547e23001177b8b5b7e2fe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17755, "upload_time": "2019-03-06T00:25:39", "url": "https://files.pythonhosted.org/packages/9a/00/91ad4166c9c59fda8bcd9451002ee78d962a05fcc036c85fc60708a9ee8f/okra-1.0.dev19.tar.gz" } ], "1.0.dev2": [ { "comment_text": "", "digests": { "md5": "25ea13f3d334ef682d4a9a9455f80083", "sha256": "6d3d91b8c8dfefa54e392942abdc22b48c26cc25acad37bd066f088b621dbc71" }, "downloads": -1, "filename": "okra-1.0.dev2.tar.gz", "has_sig": false, "md5_digest": "25ea13f3d334ef682d4a9a9455f80083", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18190, "upload_time": "2019-03-05T14:02:19", "url": "https://files.pythonhosted.org/packages/97/50/26e5de154b3efdf3f74c355c52fca797a580d9d0f1f7f4ac57c2310c0037/okra-1.0.dev2.tar.gz" } ], "1.0.dev20": [ { "comment_text": "", "digests": { "md5": "ef0f8ace7cbd7d6a5ea1f2047b18662e", "sha256": "9d94fd0267434189146ef54da27d07523f2e39057d5c82e19147dfcc260df4ab" }, "downloads": -1, "filename": "okra-1.0.dev20.tar.gz", "has_sig": false, "md5_digest": "ef0f8ace7cbd7d6a5ea1f2047b18662e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17744, "upload_time": "2019-03-06T00:45:56", "url": "https://files.pythonhosted.org/packages/e1/5a/b4b5a85f13a6f7f0328990c434f6e2b0e863f81454733b0cd387286c2edb/okra-1.0.dev20.tar.gz" } ], "1.0.dev21": [ { "comment_text": "", "digests": { "md5": "0e525c16a7cccd07df83dd02203689d3", "sha256": "983f9487b417f9a98a97eecd05192fa713ec5648c5ff38156c39cbd5c3bc52f4" }, "downloads": -1, "filename": "okra-1.0.dev21.tar.gz", "has_sig": false, "md5_digest": "0e525c16a7cccd07df83dd02203689d3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17745, "upload_time": "2019-03-06T00:54:57", "url": "https://files.pythonhosted.org/packages/95/54/a6aaf6208243d2d7157658cd220fab362b5b244bfffad945069fb878e9e8/okra-1.0.dev21.tar.gz" } ], "1.0.dev22": [ { "comment_text": "", "digests": { "md5": "71ace43aa130bfdf8da6d35d10c03819", "sha256": "ae43f1c53c34d85be377ea60135d5717c925b67c1fa58bdcb125d376a7ada5c5" }, "downloads": -1, "filename": "okra-1.0.dev22.tar.gz", "has_sig": false, "md5_digest": "71ace43aa130bfdf8da6d35d10c03819", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17748, "upload_time": "2019-03-06T01:05:58", "url": "https://files.pythonhosted.org/packages/9d/27/fedb0f06656984e4ca187739351463ba69a5f7e3d22a8b5612776161e3a7/okra-1.0.dev22.tar.gz" } ], "1.0.dev23": [ { "comment_text": "", "digests": { "md5": "9e8bc7fa19812de71adf6a705426d78d", "sha256": "edd0c2482ca193b06e8f57dcfcdf238d3550ff42460676aff2e62a01b1a693ea" }, "downloads": -1, "filename": "okra-1.0.dev23.tar.gz", "has_sig": false, "md5_digest": "9e8bc7fa19812de71adf6a705426d78d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17751, "upload_time": "2019-03-06T01:19:14", "url": "https://files.pythonhosted.org/packages/c4/c4/05c39ce0e8da6e2b1eeccfda8831673f54083c22645fb135ccf46dd18c34/okra-1.0.dev23.tar.gz" } ], "1.0.dev3": [ { "comment_text": "", "digests": { "md5": "f698c7208b447d9a5b4d5a7cfc076443", "sha256": "15597557d1fbdab78c65d49a1a0f2ec7e8e64a3197c0fc0772ef968a2a5cb991" }, "downloads": -1, "filename": "okra-1.0.dev3.tar.gz", "has_sig": false, "md5_digest": "f698c7208b447d9a5b4d5a7cfc076443", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18150, "upload_time": "2019-03-05T14:17:59", "url": "https://files.pythonhosted.org/packages/86/2f/4045874cb13a86f211581238f2d0acefbe9210630a823ab1c5e76d85e809/okra-1.0.dev3.tar.gz" } ], "1.0.dev4": [ { "comment_text": "", "digests": { "md5": "653722690c50c09c687c32ec622447e6", "sha256": "8c0eca946578d8d89b384837fe224c8aa5ddfa84790d9b54dfea4cbffa7d8498" }, "downloads": -1, "filename": "okra-1.0.dev4.tar.gz", "has_sig": false, "md5_digest": "653722690c50c09c687c32ec622447e6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18151, "upload_time": "2019-03-05T14:46:04", "url": "https://files.pythonhosted.org/packages/f1/b5/57d7bcd8a9df2ea3fde295718db9a4d705331407a22c91dd14fced509a62/okra-1.0.dev4.tar.gz" } ], "1.0.dev5": [ { "comment_text": "", "digests": { "md5": "68a9e35e72fe7ea8953c2cbc3484775c", "sha256": "f7707a8110c04d72b07467dccf6ab863e542b041e68b97c5552c8af3db156ec5" }, "downloads": -1, "filename": "okra-1.0.dev5.tar.gz", "has_sig": false, "md5_digest": "68a9e35e72fe7ea8953c2cbc3484775c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18149, "upload_time": "2019-03-05T15:03:54", "url": "https://files.pythonhosted.org/packages/95/ef/ce8fcf816a8d5cce62dd8370b04324027c88d1f9d2226ef7fadc848b86aa/okra-1.0.dev5.tar.gz" } ], "1.0.dev6": [ { "comment_text": "", "digests": { "md5": "d8a35beeca6b77a4912501275388d790", "sha256": "01baba5c4ece4aa27f77b1dfdd1560cdee6e716c192da258e898cec7f507f569" }, "downloads": -1, "filename": "okra-1.0.dev6.tar.gz", "has_sig": false, "md5_digest": "d8a35beeca6b77a4912501275388d790", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18102, "upload_time": "2019-03-05T15:30:34", "url": "https://files.pythonhosted.org/packages/72/6a/6af76f47eda29f191f001f7101b8376927f565ce0e1f9b8155dde45c0c26/okra-1.0.dev6.tar.gz" } ], "1.0.dev7": [ { "comment_text": "", "digests": { "md5": "3ee59c82e7bf79678ec5c12611cc4f5c", "sha256": "ff590ca18316b7423d96326566e4215f9bf648397f44d2a70c7b82e56add3e5e" }, "downloads": -1, "filename": "okra-1.0.dev7.tar.gz", "has_sig": false, "md5_digest": "3ee59c82e7bf79678ec5c12611cc4f5c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18110, "upload_time": "2019-03-05T17:11:04", "url": "https://files.pythonhosted.org/packages/cd/4a/0036f9ffeda99823649c1f30ff0d136e3185437d807b1c8e1d142517ac3a/okra-1.0.dev7.tar.gz" } ], "1.0.dev8": [ { "comment_text": "", "digests": { "md5": "8f9b1a7ceda89f3aa84721f6590ec18a", "sha256": "424b2c69d219e7e71dac43e9540dea75c6c448df68301e5efa7c83ec8839eef9" }, "downloads": -1, "filename": "okra-1.0.dev8.tar.gz", "has_sig": false, "md5_digest": "8f9b1a7ceda89f3aa84721f6590ec18a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18145, "upload_time": "2019-03-05T17:29:57", "url": "https://files.pythonhosted.org/packages/83/ec/92a0fce84aa73b699cca49e4fb2afaa93ca1561026271e8aed92bf4fe392/okra-1.0.dev8.tar.gz" } ], "1.0.dev9": [ { "comment_text": "", "digests": { "md5": "5cdcd2e0c298ad5d1b2ffc83870cd0d5", "sha256": "9f67b60710349524f50f780ad1f3156b5d0681f53e584efde44b8dc1690ca601" }, "downloads": -1, "filename": "okra-1.0.dev9.tar.gz", "has_sig": false, "md5_digest": "5cdcd2e0c298ad5d1b2ffc83870cd0d5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18148, "upload_time": "2019-03-05T18:11:43", "url": "https://files.pythonhosted.org/packages/87/7f/7b4d58b6db86dcaa3552e781d7d4e94e2130ca2436dd52830d3e4d9c15f0/okra-1.0.dev9.tar.gz" } ], "1.2.dev0": [ { "comment_text": "", "digests": { "md5": "c47030dad82c4d6287637e113cca383c", "sha256": "689bffe5c86bb10ac5f6d0391fafce17f4d0c77904e0ecd17b626551d198bb1f" }, "downloads": -1, "filename": "okra-1.2.dev0.tar.gz", "has_sig": false, "md5_digest": "c47030dad82c4d6287637e113cca383c", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 19302, "upload_time": "2019-05-09T13:12:49", "url": "https://files.pythonhosted.org/packages/0f/17/55842dd8fd3aee522b6c3ae770457ffa5c73caf6912092b43fda01d62e98/okra-1.2.dev0.tar.gz" } ], "1.2.dev1": [ { "comment_text": "", "digests": { "md5": "4c1a647ffa462a70fe24f96b72b2a948", "sha256": "e7d1df24697e3b26c3e8ac7d09660660b7e9961b198ae477561441d7d8da134a" }, "downloads": -1, "filename": "okra-1.2.dev1.tar.gz", "has_sig": false, "md5_digest": "4c1a647ffa462a70fe24f96b72b2a948", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 19672, "upload_time": "2019-05-09T13:37:19", "url": "https://files.pythonhosted.org/packages/47/cb/5e362fe67c1468fafe599ec9a1aacdd96d7a71ec3ba5a30c68ce3484ca37/okra-1.2.dev1.tar.gz" } ], "1.3.2": [ { "comment_text": "", "digests": { "md5": "9fe3c31c95532daea9139b88b64a099f", "sha256": "f3d40df890947d38abc51f43ca3278a9f8babe95738783963d9feb2df1cd7b3b" }, "downloads": -1, "filename": "okra-1.3.2.tar.gz", "has_sig": false, "md5_digest": "9fe3c31c95532daea9139b88b64a099f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 23762, "upload_time": "2019-06-01T16:02:14", "url": "https://files.pythonhosted.org/packages/99/49/6622f163f01d72b159fb24b3c3ac6f36de6da1262797e39e5bc3c2d15ebb/okra-1.3.2.tar.gz" } ], "1.3.dev0": [ { "comment_text": "", "digests": { "md5": "538ef3623357205a2af0443699914d9e", "sha256": "7dd82896a788dc41f13998ad88eff4146aca1af462bd8c60cc27fe27aa2725d9" }, "downloads": -1, "filename": "okra-1.3.dev0.tar.gz", "has_sig": false, "md5_digest": "538ef3623357205a2af0443699914d9e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 23760, "upload_time": "2019-06-01T15:31:26", "url": "https://files.pythonhosted.org/packages/93/4d/07add3ba491af80abbd5fd40e280e991642672f93b45c85ed220f6bd955d/okra-1.3.dev0.tar.gz" } ], "1.3.dev1": [ { "comment_text": "", "digests": { "md5": "574463358077b62637917f6c2157fd66", "sha256": "e6b8dcd842e2afc62407a25fc8c66231c09d37b862c5dbe0e352b5e5244ae506" }, "downloads": -1, "filename": "okra-1.3.dev1.tar.gz", "has_sig": false, "md5_digest": "574463358077b62637917f6c2157fd66", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 23755, "upload_time": "2019-06-01T15:55:36", "url": "https://files.pythonhosted.org/packages/9b/5b/a9a7eed12ed89559f58dfcf3fdb2e3c9250504f78e8446dba2bee391a13c/okra-1.3.dev1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9fe3c31c95532daea9139b88b64a099f", "sha256": "f3d40df890947d38abc51f43ca3278a9f8babe95738783963d9feb2df1cd7b3b" }, "downloads": -1, "filename": "okra-1.3.2.tar.gz", "has_sig": false, "md5_digest": "9fe3c31c95532daea9139b88b64a099f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 23762, "upload_time": "2019-06-01T16:02:14", "url": "https://files.pythonhosted.org/packages/99/49/6622f163f01d72b159fb24b3c3ac6f36de6da1262797e39e5bc3c2d15ebb/okra-1.3.2.tar.gz" } ] }