{ "info": { "author": "Stephen Moore", "author_email": "delfick755@gmail.com", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "Programming Language :: Python", "Topic :: Software Development :: Documentation", "Topic :: Software Development :: Testing" ], "description": "Nose of Yeti\n============\n\nThis is a project to provide a Behaviour Driven Development style DSL (domain specific language) for python tests.\n\nIt uses the fact that you can register a codec that is able to modify a python file before executing it.\n\nhttp://docs.python.org/library/codecs.html\n\nUsing this we can make it so that when python imports a file with a particular encoding as the first line of the file (noseOfYeti looks for ``# coding: spec``), it will be intercepted and the tokens in the file will be translated to something else before the import continues.\n\nNoseOfYeti uses this technique to translate from the DSL it defines into python classes and functions that may be recognised by the Python Nose testing framework.\n\nhttps://readthedocs.org/docs/nose/\n\nIt was originally developed by Stephen Moore after borrowing the idea from a project by Fernando Meyer called Yeti\n\nhttps://github.com/fmeyer/yeti\n\nChangelog\n=========\n\nNote that it is recommended you remove .pyc of your noseOfYeti specs when you upgrade noseOfYeti.\nThe python interpreter skips the translation process if it sees a .pyc file (unless the .py file has changed since the .pyc file was created).\nThis means that any changes in the translation process won't happen untill either the .pyc files are removed or all the .py files have been changed.\n\n``1.9.1``\n Turns out the incremental decoder does get used for the whole file, so I've\n fixed that. But I was still able to make read the file as is if I've only\n got part of the file\n\n``1.9.0``\n Made the incremental decoder just utf8 so that pdb inside a spec file is able\n to show lines from the test. This works because the import time translation\n doesn't use the incremental decoder. And this is necessary because the\n incremental decoder would often get confused by the indentation and return\n nothing\n\n Also, noseOfYeti will now detect bracket mismatches and tell you where you've\n made a mistake. I.e. if you close the wrong type of bracket, or have a\n mismatched bracket, or have a hanging open bracket, it will tell you line\n and column numbers of where this is happening\n\n``1.8.3``\n Make pytest support __only_run_tests_in_children__ property on describes\n\n You can now translate a string by doing::\n\n from noseOfYeti.tokeniser.spec_codec import codec_from_options\n spec_codec = codec_from_options()\n translated = spec_codec.translate(src_str_or_bytes)\n\n``1.8.2``\n Made pytest support play nicer when running against a unittest suite\n\n``1.8.1``\n Added support for pytest.\n\n The support means the spec codec is registered for you and nested describes\n will not run inherited tests.\n\n``1.8``\n Changed the license to MIT from GPL\n\n``1.7``\n NoseOfYeti now understands and respects the async keyword.\n\n Only really useful if you use something like https://asynctest.readthedocs.io/en/latest/\n\n``1.6``\n Nose2 support!\n\n``1.5.2``\n Python3 Compatibility with the plugins\n\n``1.5.1``\n Fixed a problem with repeating tests in sub-describes\n\n``1.5.0``\n Added python3 support (based off the work by cwacek)\n\n Use tox to run tests in python2 and python3 now\n\n Updated pylint plugin - Unfortunately seems to cause a lot of \"Final newline missing\" however....\n\n``1.4.9``\n Added __only_run_tests_in_children__ functionality\n\n``1.4.8``\n Fixed ignore tests so they don't inject a nose.SkipTest\n\n Removed all reference to should_dsl (Except for the tests, I'll change those another day)\n\n``1.4.7``\n No injected imports by default\n\n And changed --noy-without-should-dsl and --noy-without-default-imports to --noy-with-should-dsl and --noy-with-default-imports\n\n``1.4.6``\n Can now set common settings in a config json file.\n\n``1.4.4`` and ``1.4.5``\n Minor fixes\n\n``1.4.3``\n Added wrapped-setup option to allow decorating before_each and after_each functions instead of inserting a super call into them.\n\n``pre 1.4.3``\n No Changelog was maintained.\n\nDocs\n====\n\nDocs can now be found using the wonderful readthedocs.org\nhttp://readthedocs.org/docs/noseofyeti/en/latest/\n\nTests\n=====\n\nAlways use a virtualenv!::\n\n # http://virtualenvwrapper.readthedocs.org/en/latest/\n $ mkvirtualenv noseOfYeti\n\n $ cd /root/of/noseOfYeti\n $ pip install -e .\n $ pip install \"noseOfYeti[tests]\"\n $ ./test.sh\n\nOr just run tox::\n\n $ tox", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/delfick/nose-of-yeti", "keywords": "bdd rspec spec", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "noseOfYeti", "package_url": "https://pypi.org/project/noseOfYeti/", "platform": "", "project_url": "https://pypi.org/project/noseOfYeti/", "project_urls": { "Homepage": "https://github.com/delfick/nose-of-yeti" }, "release_url": "https://pypi.org/project/noseOfYeti/1.9.1/", "requires_dist": null, "requires_python": "", "summary": "Nose plugin providing BDD dsl for python", "version": "1.9.1" }, "last_serial": 5868127, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "44c70712ef49d18d4d0b4d44a2a48b4f", "sha256": "718f336b4c76cacc0cb92b08663a4d970352fb5dfb02d527f9a4fc6597c0f348" }, "downloads": -1, "filename": "noseOfYeti-1.0.tar.gz", "has_sig": false, "md5_digest": "44c70712ef49d18d4d0b4d44a2a48b4f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11971, "upload_time": "2012-03-05T00:43:19", "url": "https://files.pythonhosted.org/packages/19/e1/ee337523be89fa00ca4d6322c36135dd7211943c15e4e4f0e4084ee5c44b/noseOfYeti-1.0.tar.gz" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "8ed1959ad390eaa365c008a9b5b5bbfb", "sha256": "410a0fdef48e631f20801300cda584a79484320ba459cdc1b13d27dc28fdeab0" }, "downloads": -1, "filename": "noseOfYeti-1.1.tar.gz", "has_sig": false, "md5_digest": "8ed1959ad390eaa365c008a9b5b5bbfb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12301, "upload_time": "2012-03-05T12:13:27", "url": "https://files.pythonhosted.org/packages/f9/05/f0bd80710cc81c9c365163d332024d35c674f408befbfd063b68d9ce4159/noseOfYeti-1.1.tar.gz" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "e0f28afa73ec44141c06435dcb5fa9be", "sha256": "2611d68a1ef650932eebd0f21f69b0e67e827f8df81a3a4bd6a71c256e897cd2" }, "downloads": -1, "filename": "noseOfYeti-1.2.tar.gz", "has_sig": false, "md5_digest": "e0f28afa73ec44141c06435dcb5fa9be", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18190, "upload_time": "2012-03-10T10:16:26", "url": "https://files.pythonhosted.org/packages/fa/8e/4127651ef5753eb925d5626cd7228ecfe148a5bf19d1d3170e1681f1d9eb/noseOfYeti-1.2.tar.gz" } ], "1.3": [ { "comment_text": "", "digests": { "md5": "96ae41752f3e5fbdb4af188468be69d2", "sha256": "bff8ca0bd039ae33e30a35580fe816ed54efd7917e98ec4735154a6eac0a7c0c" }, "downloads": -1, "filename": "noseOfYeti-1.3.tar.gz", "has_sig": false, "md5_digest": "96ae41752f3e5fbdb4af188468be69d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17165, "upload_time": "2012-03-11T02:16:14", "url": "https://files.pythonhosted.org/packages/fb/47/0045b86839629563f57531e36104e7b6d895436841189c90b9e5fd4c1f85/noseOfYeti-1.3.tar.gz" } ], "1.4": [ { "comment_text": "", "digests": { "md5": "15d8373aba370163119e7cf8151dbe89", "sha256": "ab361797dad4665ec8933c1db490809f3eb84176b5bcb9a83fea44ef93f0ce95" }, "downloads": -1, "filename": "noseOfYeti-1.4.tar.gz", "has_sig": false, "md5_digest": "15d8373aba370163119e7cf8151dbe89", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18422, "upload_time": "2012-03-12T09:40:37", "url": "https://files.pythonhosted.org/packages/c1/cb/94a32e7609d47852c4204af95c518b8359aee510a9fc4f98dbaf4d7f4b66/noseOfYeti-1.4.tar.gz" } ], "1.4.1": [ { "comment_text": "", "digests": { "md5": "5a233ab4e1d8257be411286ce8f4b2cf", "sha256": "708f201a3033e85fc3ac9fceb59de2c84bb6875ed6b505b8fa46157acea3e547" }, "downloads": -1, "filename": "noseOfYeti-1.4.1.tar.gz", "has_sig": false, "md5_digest": "5a233ab4e1d8257be411286ce8f4b2cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18745, "upload_time": "2012-03-15T06:17:39", "url": "https://files.pythonhosted.org/packages/cc/36/028842ace64f9e17a985fea2ae45de58998f768f1b349673197eaeb91fbd/noseOfYeti-1.4.1.tar.gz" } ], "1.4.2": [ { "comment_text": "", "digests": { "md5": "a9cac5b9bbd7d4f75ab232040760ff3b", "sha256": "f6be39eb7d4ca0833d70418fbd07789d85a6657fef7d3f26ce90f2f44ad09855" }, "downloads": -1, "filename": "noseOfYeti-1.4.2.tar.gz", "has_sig": false, "md5_digest": "a9cac5b9bbd7d4f75ab232040760ff3b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18750, "upload_time": "2012-03-15T06:26:25", "url": "https://files.pythonhosted.org/packages/89/0a/3b4c796fc051f7a89c76829309be8efdac4e93f12e44370a5f826ec673de/noseOfYeti-1.4.2.tar.gz" } ], "1.4.3": [ { "comment_text": "", "digests": { "md5": "a1fe92cc7d894ec2b17191606d11de91", "sha256": "f9c97b52335c076018da57b8f0572102821544d88e8acdb277bb75bc8247f4e1" }, "downloads": -1, "filename": "noseOfYeti-1.4.3.tar.gz", "has_sig": false, "md5_digest": "a1fe92cc7d894ec2b17191606d11de91", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19441, "upload_time": "2012-05-12T08:22:59", "url": "https://files.pythonhosted.org/packages/3f/cd/0d2b6320993917631ec9678e6a34abea3a5a26c8a338f56485824f95b2dd/noseOfYeti-1.4.3.tar.gz" } ], "1.4.4": [ { "comment_text": "", "digests": { "md5": "f70f5dcd768309dc10eb8869f9a43b8b", "sha256": "3fbab1e0d05c06c87f73a4c7f2b943c0b7c00da88a536530c6d48562c046dcd5" }, "downloads": -1, "filename": "noseOfYeti-1.4.4.tar.gz", "has_sig": false, "md5_digest": "f70f5dcd768309dc10eb8869f9a43b8b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19796, "upload_time": "2012-08-29T04:04:50", "url": "https://files.pythonhosted.org/packages/28/f5/3a1f536ab38850225989e523729fc31216946b7179abe0947005e759bd12/noseOfYeti-1.4.4.tar.gz" } ], "1.4.5": [ { "comment_text": "", "digests": { "md5": "c6d9a2727abdcf8197f7611f0f1e5f3e", "sha256": "3a8166e29c4c95e91f50ebfd7f5a77b2fd2e46163e4e5ef92cddbd59cc167bb7" }, "downloads": -1, "filename": "noseOfYeti-1.4.5.tar.gz", "has_sig": false, "md5_digest": "c6d9a2727abdcf8197f7611f0f1e5f3e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20052, "upload_time": "2013-03-29T02:59:16", "url": "https://files.pythonhosted.org/packages/32/de/05ea73758965cdc1935c00e6698e1c09efd942e2bd3ae3801d442023e397/noseOfYeti-1.4.5.tar.gz" } ], "1.4.6": [ { "comment_text": "", "digests": { "md5": "0f21e187418cff23ce16cbff7e295f41", "sha256": "760f2407e6a0dc42b2ae8886c24b8e7599f66a6dc784052632538046e9e7fef7" }, "downloads": -1, "filename": "noseOfYeti-1.4.6.tar.gz", "has_sig": false, "md5_digest": "0f21e187418cff23ce16cbff7e295f41", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24057, "upload_time": "2013-05-03T12:20:24", "url": "https://files.pythonhosted.org/packages/e7/5d/29e9ef0ba71fb4203208c3d5cdcdf50a2c8372e953d0c77a14065f9df903/noseOfYeti-1.4.6.tar.gz" } ], "1.4.7": [ { "comment_text": "", "digests": { "md5": "2c07ec80cabe160785f5962b1a404975", "sha256": "58e9157659e9746492e9e5d80901997e78d5698dd8cb41ce16dbd81e976ec356" }, "downloads": -1, "filename": "noseOfYeti-1.4.7.tar.gz", "has_sig": false, "md5_digest": "2c07ec80cabe160785f5962b1a404975", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24082, "upload_time": "2013-05-03T12:47:01", "url": "https://files.pythonhosted.org/packages/a0/70/a82613d9ec9bfe2d1998a7f5a094354886233a0b28d7153cd7109da5bdfd/noseOfYeti-1.4.7.tar.gz" } ], "1.4.8": [ { "comment_text": "", "digests": { "md5": "4472f7492d5e7207035db7ef356ca010", "sha256": "835ea9bcd5dd206b6f139b8a6b3b22031bc42c15ad8146060009e97ef7fbab3f" }, "downloads": -1, "filename": "noseOfYeti-1.4.8.tar.gz", "has_sig": false, "md5_digest": "4472f7492d5e7207035db7ef356ca010", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25040, "upload_time": "2013-08-22T13:41:28", "url": "https://files.pythonhosted.org/packages/33/71/158930cc79c4c88534384ef0a58382a9bcc6b681d7c6b06431351ca9cb8f/noseOfYeti-1.4.8.tar.gz" } ], "1.4.9": [ { "comment_text": "", "digests": { "md5": "7cb9f8431adcfe410dbae5cdaf21613c", "sha256": "73806f9b7b8f87f2cc69c2f55448aecc4bb8e4fce277b24495aa92b66bfb3c14" }, "downloads": -1, "filename": "noseOfYeti-1.4.9.tar.gz", "has_sig": false, "md5_digest": "7cb9f8431adcfe410dbae5cdaf21613c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25401, "upload_time": "2014-03-09T05:14:15", "url": "https://files.pythonhosted.org/packages/d7/20/05237ccf6a8a157d5c29afb4c5a5081016ee016fb50fa511e59667c402fc/noseOfYeti-1.4.9.tar.gz" } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "ea4922ac62efb94f9dcbf39fffa8b4d7", "sha256": "7d442a534b694c5c992a870959ae3b602606ecfc9fdf1f9095ae7a0b9be7f23b" }, "downloads": -1, "filename": "noseOfYeti-1.5.0.tar.gz", "has_sig": false, "md5_digest": "ea4922ac62efb94f9dcbf39fffa8b4d7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25957, "upload_time": "2014-05-05T14:37:21", "url": "https://files.pythonhosted.org/packages/86/34/12d16d81e9dc8d91aa8dc0d4232e632a9e7109757ba8a64de239f3dff7ca/noseOfYeti-1.5.0.tar.gz" } ], "1.5.1": [ { "comment_text": "", "digests": { "md5": "9f96ed1c9ad0e3d3af368df30e4a1006", "sha256": "07307e34d210c524aa2edc3f865c4b6b1be8702ad44ce09cd5685e9992cde955" }, "downloads": -1, "filename": "noseOfYeti-1.5.1.tar.gz", "has_sig": false, "md5_digest": "9f96ed1c9ad0e3d3af368df30e4a1006", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26040, "upload_time": "2014-06-01T09:27:42", "url": "https://files.pythonhosted.org/packages/fd/a1/c727f70422bc969c8150e04d3825b7c01eb724b176200aeb34720f6aece9/noseOfYeti-1.5.1.tar.gz" } ], "1.5.2": [ { "comment_text": "", "digests": { "md5": "a126b65ac9ffaa6981fc737a0c2c25c6", "sha256": "15b5a76eb3561076041b377df0293d2fea74ec22a648ca0b2d12e9f014e947bd" }, "downloads": -1, "filename": "noseOfYeti-1.5.2.tar.gz", "has_sig": false, "md5_digest": "a126b65ac9ffaa6981fc737a0c2c25c6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26322, "upload_time": "2016-05-25T23:03:43", "url": "https://files.pythonhosted.org/packages/9d/99/2dd9b413fa709632a8140ccac21aae7143981c64e5d3cc48d3ffd12a0ce0/noseOfYeti-1.5.2.tar.gz" } ], "1.6": [ { "comment_text": "", "digests": { "md5": "4daa9232f749542fafa3b816af55ab41", "sha256": "ee9d76649a491676926b0044a11bbe3b1a560f76845f5e39227ce2caad5418fa" }, "downloads": -1, "filename": "noseOfYeti-1.6.tar.gz", "has_sig": false, "md5_digest": "4daa9232f749542fafa3b816af55ab41", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26890, "upload_time": "2016-07-22T07:13:35", "url": "https://files.pythonhosted.org/packages/7e/40/df1c7e770a5eb5686ea19d66a3399d000d3f75edbb86e0c542e102e6bb79/noseOfYeti-1.6.tar.gz" } ], "1.7": [ { "comment_text": "", "digests": { "md5": "51d3ee1b86861e1222d3969e221c3f60", "sha256": "7432c381fbe94cce00fca6ce644b14122f1846c77d40cc7f5a1cc3362d2b36c2" }, "downloads": -1, "filename": "noseOfYeti-1.7.tar.gz", "has_sig": false, "md5_digest": "51d3ee1b86861e1222d3969e221c3f60", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27751, "upload_time": "2017-04-11T02:58:50", "url": "https://files.pythonhosted.org/packages/f5/fa/ba919b1dce91cc1d2a82c0c8d5e93d4164447e21aa125b18d8d3c5736758/noseOfYeti-1.7.tar.gz" } ], "1.8": [ { "comment_text": "", "digests": { "md5": "5eedac9cfde2e17516e77244315f999d", "sha256": "bc9d1e1648b7f5540d7e4f34c3cbc0647a5748bdad03ce35ebd1fccd10c7b03c" }, "downloads": -1, "filename": "noseOfYeti-1.8.tar.gz", "has_sig": false, "md5_digest": "5eedac9cfde2e17516e77244315f999d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29643, "upload_time": "2018-10-30T11:44:02", "url": "https://files.pythonhosted.org/packages/17/e4/4c176e0b4e3f2783004e5397863b78979bae5209e53245d8591f3c323e3a/noseOfYeti-1.8.tar.gz" } ], "1.8.1": [ { "comment_text": "", "digests": { "md5": "8e429d603edc658bebee73a1cf9aa9ea", "sha256": "844b47d7df475767788b56794061132e37363e42d4368df87f0bd672edc05a22" }, "downloads": -1, "filename": "noseOfYeti-1.8.1.tar.gz", "has_sig": false, "md5_digest": "8e429d603edc658bebee73a1cf9aa9ea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30413, "upload_time": "2019-08-04T09:35:33", "url": "https://files.pythonhosted.org/packages/6b/77/0d9f0ae2267c4156a2a4089ed5910cbe29aa6d6fa8859f5deb3280aa469a/noseOfYeti-1.8.1.tar.gz" } ], "1.8.2": [ { "comment_text": "", "digests": { "md5": "0034502077a2ad0ff44825dea4610909", "sha256": "9dce25cf2a86ded2cc2a0aac154f6d8f7b56b4ebacc4e1c081062fc77da40c8b" }, "downloads": -1, "filename": "noseOfYeti-1.8.2.tar.gz", "has_sig": false, "md5_digest": "0034502077a2ad0ff44825dea4610909", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30686, "upload_time": "2019-08-25T02:09:25", "url": "https://files.pythonhosted.org/packages/da/a9/4fc07a050ba6b65820f844c46b97114dceedc0c407b1a3ddf5e3229d1e73/noseOfYeti-1.8.2.tar.gz" } ], "1.8.3": [ { "comment_text": "", "digests": { "md5": "e2bb102a3406fa2e64e8fe56c156cabb", "sha256": "702c773763047fbc6ec6acf38cf4d669efde0dee19f582fdc8f68b35e7665df9" }, "downloads": -1, "filename": "noseOfYeti-1.8.3.tar.gz", "has_sig": false, "md5_digest": "e2bb102a3406fa2e64e8fe56c156cabb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30895, "upload_time": "2019-08-31T01:58:12", "url": "https://files.pythonhosted.org/packages/6b/4b/002596fc3274681113906e69404a03b5dd512ed4f31e74b39268bed29dfb/noseOfYeti-1.8.3.tar.gz" } ], "1.9.0": [ { "comment_text": "", "digests": { "md5": "93e864fe6ad8c2832dc2a79eaa6d7740", "sha256": "6c67cf22375aad1371157647914e92b5411bc3d4f5c55607c053947d98d37d00" }, "downloads": -1, "filename": "noseOfYeti-1.9.0.tar.gz", "has_sig": false, "md5_digest": "93e864fe6ad8c2832dc2a79eaa6d7740", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32722, "upload_time": "2019-09-22T06:33:15", "url": "https://files.pythonhosted.org/packages/7c/33/6a18521ed0723f3c6ca3e4f592a7beebb72ef46d3ca77ed3fdb33c2d82b4/noseOfYeti-1.9.0.tar.gz" } ], "1.9.1": [ { "comment_text": "", "digests": { "md5": "5a55a11a06da4a2b8458c1df23972aee", "sha256": "bf7df49b92d4d8e50efedd853f54fb87b2eb6fdba245f7ab5b6742a652309941" }, "downloads": -1, "filename": "noseOfYeti-1.9.1.tar.gz", "has_sig": false, "md5_digest": "5a55a11a06da4a2b8458c1df23972aee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32975, "upload_time": "2019-09-22T07:06:33", "url": "https://files.pythonhosted.org/packages/6a/30/cbd04ba0bbff9d66639d6d19105319f2ac47e924462f8040ea68c294dbfc/noseOfYeti-1.9.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5a55a11a06da4a2b8458c1df23972aee", "sha256": "bf7df49b92d4d8e50efedd853f54fb87b2eb6fdba245f7ab5b6742a652309941" }, "downloads": -1, "filename": "noseOfYeti-1.9.1.tar.gz", "has_sig": false, "md5_digest": "5a55a11a06da4a2b8458c1df23972aee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32975, "upload_time": "2019-09-22T07:06:33", "url": "https://files.pythonhosted.org/packages/6a/30/cbd04ba0bbff9d66639d6d19105319f2ac47e924462f8040ea68c294dbfc/noseOfYeti-1.9.1.tar.gz" } ] }