{ "info": { "author": "CloudZero", "author_email": "support@cloudzero.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6" ], "description": "\n# pyfaaster\n\n[![Build Status](https://semaphoreci.com/api/v1/projects/0234f02a-6a7c-443d-ac66-7c2a17c1922a/1756352/badge.svg)](https://semaphoreci.com/cloudzero/pyfaaster)\n\nUseful Utilities for Python Functions as a Service (starting with AWS Lambda).\n\n## Problem\n\nFunctions as a Service can be joyful. When paired with a concise language like Python, you start to\nrethink the need for a \"web framework\" like Rails, Django, etc: couple your functions with your\nFaaS provider's API Gateway and you are off an running with minimal code. Of course, there is still some boilerplate code around injecting environment, formatting responses, checking arguments, etc. \n\n## Concept\n\nThe goal of [pyfaaster](https://github.com/Cloudzero/pyfaaster) is to cut\nthrough the cruft and get you humming along with your Python FaaS. `pyfaaster` accomplishes\nthis goal by providing you with useful middleware (i.e. decorators) for your lambda functions. Additionally, `pyfaaster` can be used for its excellent `Makefile` and `serverless.yml` examples.\n\nCheers!\n\n\n## Usage\n\nThe following is a non-exhaustive list and details of the useful middleware. More can be found in `pyfaaster.aws.handler_decorators`.\n\n### Environment Variables\n\nYou don't want to sprinkle `os.environ` throughout your code. Let us do that for you.\n\n```\nimport pyfaaster as faas\n\n@faas.environ_aware(['REQUIRED_ENV'], ['OPTIONAL_ENV'])\ndef handler(event, context, REQUIRED_ENV=None, OPTIONAL_ENV=None):\n assert REQUIRED_ENV == os.environ['REQUIRED_ENV'] # <- faas.environ_aware will return early with a useful message if this is not set\n assert OPTIONAL_ENV == os.environ.get('OPTIONAL_ENV')\n```\n\n\n### Configuration Files\n\nSimilarly, don't worry about injecting those S3 Configuration files.\n\n```\nimport pyfaaster as faas\n\n@faas.configuration_aware('config.json', True) # S3 key to a config file, create if not there\ndef handler(event, context, configuration=None):\n assert configuration == < { \n 'load': lambda : {contents of config bucket},\n 'save': lambda d : save d into config bucket,\n }\n```\n\n\n### Response Format\n\nSigh, you have to manually convert your lambda return values to API Gateway's expected dictionary? Don't forget to serialize all your json into the `body` element! Oh wait ... just use\n\n\n```\nimport pyfaaster as faas\n\n@faas.http_response(default_error_message='Failed to handle something.\")\ndef handler(event, context, **kwargs):\n return { 'my': 'important', 'json': 'data'} # <- will end up as the json serialized `body` in an API Gateway compatible dict with statusCode.\n```\n\n\n### Authorization\n\nYou gotta confirm your token scopes, friend!\n\n\n```\nimport pyfaaster as faas\n\n# Checks the event.requestContext.authorizer for the given scopes. This works nicely with AWS custom\n# authorizers. An example one is coming to this library soon.\n\n@faas.scopes('read:profile', 'update:email')\ndef handler(event, context, **kwargs):\n return 'Hello, Secure World!'\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/Cloudzero/pyfaaster", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "pyfaaster", "package_url": "https://pypi.org/project/pyfaaster/", "platform": "", "project_url": "https://pypi.org/project/pyfaaster/", "project_urls": { "Homepage": "https://github.com/Cloudzero/pyfaaster" }, "release_url": "https://pypi.org/project/pyfaaster/0.2.2/", "requires_dist": [ "boto3 (<=1.9.99,>=1.9.39)", "simplejson (<=3.16.99,>=3.16.0)", "cachetools (<=3.0.99,>=3.0.0)" ], "requires_python": "", "summary": "Useful Utilities for Unbelievable AWS Lambdas", "version": "0.2.2" }, "last_serial": 5923544, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "fc563c8da466db57bd400598563172ee", "sha256": "37294f13ec7bac3c5995d1a33c08c4f9f522d8440462fd4ee3519c5ae0c15e2c" }, "downloads": -1, "filename": "pyfaaster-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fc563c8da466db57bd400598563172ee", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4715, "upload_time": "2018-01-16T13:37:02", "url": "https://files.pythonhosted.org/packages/dc/9c/6f3c761747ad5bd03d2ba7cbe0ecc7c12c04d09312cc5af710f1454f397a/pyfaaster-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e8fd1fbca14dd3ae051d514471add476", "sha256": "87172ef12f5d0e9f6fdc5e47718de95e86797880b300fb2223acc19435e98942" }, "downloads": -1, "filename": "pyfaaster-0.1.0.tar.gz", "has_sig": false, "md5_digest": "e8fd1fbca14dd3ae051d514471add476", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4326, "upload_time": "2018-01-16T13:37:03", "url": "https://files.pythonhosted.org/packages/04/3a/e940c2ece258ee4e2e5c73e97dc71d3898ea00d550324220311a8e844930/pyfaaster-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "93edaf48fb5453236d47f76985c3a8b8", "sha256": "70918f0d7dde6b863f7bde388c11167d3eb35506a33e91c1896478280208efb1" }, "downloads": -1, "filename": "pyfaaster-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "93edaf48fb5453236d47f76985c3a8b8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12144, "upload_time": "2018-01-16T14:12:48", "url": "https://files.pythonhosted.org/packages/69/f4/2f585e3a665b13a017f1f883dadedfe7fa28b05c60e550a7559dd5fd0d6c/pyfaaster-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5f9f4af242ff47981edf9e9551a0e79c", "sha256": "c9c6f79bc06f9c3ef979b8722a69caac0d12d1233d1fe0da87efdbb8c0ed8b49" }, "downloads": -1, "filename": "pyfaaster-0.1.1.tar.gz", "has_sig": false, "md5_digest": "5f9f4af242ff47981edf9e9551a0e79c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13296, "upload_time": "2018-01-16T14:12:50", "url": "https://files.pythonhosted.org/packages/00/a0/8d5a19bf4a8d1505ac34b91ab956b9ddfe406a6e9a0434b21c3239cda47f/pyfaaster-0.1.1.tar.gz" } ], "0.1.10": [ { "comment_text": "", "digests": { "md5": "e5cea343e3f4cf5bc2019bf4a15eb63e", "sha256": "c3b08bc2a5e195ec6d7cbb7fb3ba807644758abd8c6a80b6d94585e250ba5c8b" }, "downloads": -1, "filename": "pyfaaster-0.1.10-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e5cea343e3f4cf5bc2019bf4a15eb63e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 14579, "upload_time": "2018-03-21T19:43:19", "url": "https://files.pythonhosted.org/packages/76/c4/0acbd7cd651314b0742cc2b013a291d282e2f66afa106a6042be70c073fd/pyfaaster-0.1.10-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1d35a7470edea0a7d8ba739b97fb184c", "sha256": "3c2782d011b1fc4d6969a1d58d928521c3d561aa5b19dbb38ac42f531c98db58" }, "downloads": -1, "filename": "pyfaaster-0.1.10.tar.gz", "has_sig": false, "md5_digest": "1d35a7470edea0a7d8ba739b97fb184c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10638, "upload_time": "2018-03-21T19:43:20", "url": "https://files.pythonhosted.org/packages/4e/10/fb8d01b8d8c4322f00799a81a46aeb6da8043d6bd5c226adb3d936fa1dad/pyfaaster-0.1.10.tar.gz" } ], "0.1.11": [ { "comment_text": "", "digests": { "md5": "eb04c0a9dca452448b8b60d57d10e399", "sha256": "7590779cc5dba901911244bfb5e11435269bec73cdc4351943469d44bed742ee" }, "downloads": -1, "filename": "pyfaaster-0.1.11-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "eb04c0a9dca452448b8b60d57d10e399", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17757, "upload_time": "2018-03-22T15:14:21", "url": "https://files.pythonhosted.org/packages/9a/fc/067b7a687888c01dade5294c5380e6a00028e8c685acf57d807a30554038/pyfaaster-0.1.11-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8ded118c6256aec344c38c7b7ae2278e", "sha256": "60ac60624aa6184cf895e9e265a1d977de50105038e69f14f9dc206821ad0085" }, "downloads": -1, "filename": "pyfaaster-0.1.11.tar.gz", "has_sig": false, "md5_digest": "8ded118c6256aec344c38c7b7ae2278e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12495, "upload_time": "2018-03-22T15:14:23", "url": "https://files.pythonhosted.org/packages/4d/e0/b18e550e0631022b0939162b4440546a36e3c39b3361cc7e76ef3a79e5c4/pyfaaster-0.1.11.tar.gz" } ], "0.1.12": [ { "comment_text": "", "digests": { "md5": "8f1121378882a9872355f15c4c69da71", "sha256": "e2ba8225c64c51fe3e6ba2922337e98a7e8c7f5ce428dd477321deae1e6ec952" }, "downloads": -1, "filename": "pyfaaster-0.1.12-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8f1121378882a9872355f15c4c69da71", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17835, "upload_time": "2018-03-23T15:29:48", "url": "https://files.pythonhosted.org/packages/3b/71/7ee4d2641eda69269d92bd8b9112943482950e0c4156429b029aba95a340/pyfaaster-0.1.12-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "df895658fbc1211facfae13995940809", "sha256": "c3b1237b0aa22a74db7e0711a241e577c8872296a1a4999354608b24e2df127e" }, "downloads": -1, "filename": "pyfaaster-0.1.12.tar.gz", "has_sig": false, "md5_digest": "df895658fbc1211facfae13995940809", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12543, "upload_time": "2018-03-23T15:29:49", "url": "https://files.pythonhosted.org/packages/b9/12/5890107ae8f4c2a7406e92b7bc1cdf1ebf7246be06ee7bd295adbdc20f56/pyfaaster-0.1.12.tar.gz" } ], "0.1.13": [ { "comment_text": "", "digests": { "md5": "bed6f9ed59d9267734a794a1352e473c", "sha256": "98ff627ecb61c469ec72276a62e5104d4176a3414f60238963e1835695ffd14d" }, "downloads": -1, "filename": "pyfaaster-0.1.13-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bed6f9ed59d9267734a794a1352e473c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17872, "upload_time": "2018-03-23T18:48:29", "url": "https://files.pythonhosted.org/packages/df/00/1c846761de8a22b88a2cfc0bd15ece36bf46b0e64b84cab632a01ef3a288/pyfaaster-0.1.13-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d1b0efe28a1431fa26126b681c9340fc", "sha256": "1a402026b82fd81088ef027a79879c4c2e3cf6af522d20b70dd1b4c29b4c8aaa" }, "downloads": -1, "filename": "pyfaaster-0.1.13.tar.gz", "has_sig": false, "md5_digest": "d1b0efe28a1431fa26126b681c9340fc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12549, "upload_time": "2018-03-23T18:48:31", "url": "https://files.pythonhosted.org/packages/54/a3/463000a6901c2ee04d13ab99a3cbaad72b4e65a1e44057fcb9ada5c2f297/pyfaaster-0.1.13.tar.gz" } ], "0.1.15": [ { "comment_text": "", "digests": { "md5": "2c7af06ad4fde9e0fc50ffe1885daedf", "sha256": "8b90f349c6d4dc9e5b5f5bd660a5a550e303973869ddccc4e46b478c64ee2806" }, "downloads": -1, "filename": "pyfaaster-0.1.15-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2c7af06ad4fde9e0fc50ffe1885daedf", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 18112, "upload_time": "2018-03-28T17:37:26", "url": "https://files.pythonhosted.org/packages/c0/98/06fb2517e65b02adb7fe551bcb58fc8d448170dfa903f6cca42a04c7409a/pyfaaster-0.1.15-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e6fe9941a5e443200ff19ea35fb6be09", "sha256": "23245164c6282a6d1a0bfa7e2d10d9ceaed7af1c7da37b8b40c587ea69b7ee0c" }, "downloads": -1, "filename": "pyfaaster-0.1.15.tar.gz", "has_sig": false, "md5_digest": "e6fe9941a5e443200ff19ea35fb6be09", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12785, "upload_time": "2018-03-28T17:37:27", "url": "https://files.pythonhosted.org/packages/67/13/bd611e59b60474842c1ae2c06277bcf4ae7f930c41f8903eecd36d0b1a8c/pyfaaster-0.1.15.tar.gz" } ], "0.1.16": [ { "comment_text": "", "digests": { "md5": "bb3480cdd0c309c2e6bfbdbdb09f4572", "sha256": "3664c601196b6b9240bdf05a7331e9cea7e7c01d19409d40df4ab16a732f5cc2" }, "downloads": -1, "filename": "pyfaaster-0.1.16-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bb3480cdd0c309c2e6bfbdbdb09f4572", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 18312, "upload_time": "2018-05-02T16:28:55", "url": "https://files.pythonhosted.org/packages/62/8c/757210d8428e59eadc6cf166d5d2bcf624f20d157fc15f9c56fd93bd19c8/pyfaaster-0.1.16-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d25130c1f26cd4ff226a0d2fc75db0e2", "sha256": "ed9722fbc660bc86f9dd8e01cb63d65fa80e09feafb35be5bc26cadaf2741c55" }, "downloads": -1, "filename": "pyfaaster-0.1.16.tar.gz", "has_sig": false, "md5_digest": "d25130c1f26cd4ff226a0d2fc75db0e2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12975, "upload_time": "2018-05-02T16:28:58", "url": "https://files.pythonhosted.org/packages/78/a3/a7b02099dbf62650a524c960e5d67dcd077d59b605122eb3b5374f65473d/pyfaaster-0.1.16.tar.gz" } ], "0.1.17": [ { "comment_text": "", "digests": { "md5": "78df4215fe9cf7148c190c787744b605", "sha256": "8000232e09fdde19b7c03f1b6716771f1f82470f93e5cbab13f07f4b51f0142d" }, "downloads": -1, "filename": "pyfaaster-0.1.17-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "78df4215fe9cf7148c190c787744b605", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 18815, "upload_time": "2018-05-02T20:20:05", "url": "https://files.pythonhosted.org/packages/f0/99/eb49798cffe9ddd2abe2c5e5a940c8e468eea4c89022574b28e250503a67/pyfaaster-0.1.17-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6afa6333d5df0b1706d3b39f5e071218", "sha256": "0f62d5cbc75c4aa7e73efe8d33845d4c7bbf69cfa2914c307ec9e0e1cac5b7b3" }, "downloads": -1, "filename": "pyfaaster-0.1.17.tar.gz", "has_sig": false, "md5_digest": "6afa6333d5df0b1706d3b39f5e071218", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13195, "upload_time": "2018-05-02T20:20:06", "url": "https://files.pythonhosted.org/packages/70/ed/42083978be6fe6035237a99233f3b1070a89a3d7a9723568600d017d6fa8/pyfaaster-0.1.17.tar.gz" } ], "0.1.18": [ { "comment_text": "", "digests": { "md5": "35689600f3c1702121ff77ef2145a5bf", "sha256": "3a932b9d02d4090df4aa176d97dca0e4a61ee61fb22dd839d0fef7e8d25ea734" }, "downloads": -1, "filename": "pyfaaster-0.1.18-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "35689600f3c1702121ff77ef2145a5bf", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 18793, "upload_time": "2018-05-07T23:09:26", "url": "https://files.pythonhosted.org/packages/0b/71/9194cd2dbafea8cf21a25e1f4e71a8de5e543b5a7684588a6bbe41300398/pyfaaster-0.1.18-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "18072aba245163add8fefe595788f65d", "sha256": "ea8f986327b74d2e2988e9fd56d8cca75e736e1094421e588b59696ba36f416c" }, "downloads": -1, "filename": "pyfaaster-0.1.18.tar.gz", "has_sig": false, "md5_digest": "18072aba245163add8fefe595788f65d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13168, "upload_time": "2018-05-07T23:09:27", "url": "https://files.pythonhosted.org/packages/ef/b1/00926d04c650d69b84a2a98d79688735b944a5dabcf8f043ee329a501d3f/pyfaaster-0.1.18.tar.gz" } ], "0.1.19": [ { "comment_text": "", "digests": { "md5": "b8fb4d541f6910352b9f4d62399384c8", "sha256": "8e7cee3270351a39573df5f516ed1027330195aef84a9c424e6c134c115cd695" }, "downloads": -1, "filename": "pyfaaster-0.1.19-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b8fb4d541f6910352b9f4d62399384c8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 18809, "upload_time": "2018-05-08T20:28:59", "url": "https://files.pythonhosted.org/packages/9f/b7/4e9bf921373234fa0ccd9c2120bd04699bc1a182ae8076ef103742a8212f/pyfaaster-0.1.19-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c29f8a91952c2468a2424b7762c7f4f1", "sha256": "e6adb2cbefa083d5be9e9fd706c0cea43569fcedd89966b45d4f515b663a55bb" }, "downloads": -1, "filename": "pyfaaster-0.1.19.tar.gz", "has_sig": false, "md5_digest": "c29f8a91952c2468a2424b7762c7f4f1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13184, "upload_time": "2018-05-08T20:29:00", "url": "https://files.pythonhosted.org/packages/08/09/cd5c0436b28b4d82bc297ca913d5813be48eceed76e3e96c5a633d90cd4c/pyfaaster-0.1.19.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "b9eb071227d4d73ea5591ec5897ce9ac", "sha256": "16eb72974f20b192f1357094f7cf5181d9a5ab5682359119bc1f08b3a7c38d25" }, "downloads": -1, "filename": "pyfaaster-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b9eb071227d4d73ea5591ec5897ce9ac", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12167, "upload_time": "2018-01-16T15:43:46", "url": "https://files.pythonhosted.org/packages/40/15/39bb34ec8971441de282e7ef6b8a8a654b1dc6c8949f43ebb1439ef4005a/pyfaaster-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d7391b360a1a43e0bb8c9b30ad67c4bd", "sha256": "4af1f949bd0170a8d5b4204193c59ddab753a86e8ead6b1475af74a05b3275d0" }, "downloads": -1, "filename": "pyfaaster-0.1.2.tar.gz", "has_sig": false, "md5_digest": "d7391b360a1a43e0bb8c9b30ad67c4bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13328, "upload_time": "2018-01-16T15:43:48", "url": "https://files.pythonhosted.org/packages/c1/22/0037dcafa1197d1511e797b0ae234d64c7f8a1c2257ed1e42da88241d514/pyfaaster-0.1.2.tar.gz" } ], "0.1.20": [ { "comment_text": "", "digests": { "md5": "fd6992d88a08dffdb035278cf9d1fb73", "sha256": "7d73e0bb21e20aee3e170b91b850bde18e9f90681c17b2c8df7e1fd6d146612d" }, "downloads": -1, "filename": "pyfaaster-0.1.20-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fd6992d88a08dffdb035278cf9d1fb73", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16463, "upload_time": "2018-05-10T14:12:45", "url": "https://files.pythonhosted.org/packages/16/bf/32a5f6a3961ee5640bf31e70913ade2699575ebb8d6a39d1d43efc916702/pyfaaster-0.1.20-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d037ad0b39ed94153354e548146b522c", "sha256": "3e6a4a6387a70ce68263f562d670be3f85d299e6518ff46c177e8ea7d5484dc3" }, "downloads": -1, "filename": "pyfaaster-0.1.20.tar.gz", "has_sig": false, "md5_digest": "d037ad0b39ed94153354e548146b522c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13205, "upload_time": "2018-05-10T14:12:46", "url": "https://files.pythonhosted.org/packages/31/05/227c04dc0b3d43a5ac6b0ea7afb1cee08436364d1682ddaf7266894a9238/pyfaaster-0.1.20.tar.gz" } ], "0.1.21": [ { "comment_text": "", "digests": { "md5": "69909857175d40bb5d1ee49a93463c07", "sha256": "108739223951139e8b6ab8f8d6f3f50b1ef6f2f555367c9428bcae6384d40319" }, "downloads": -1, "filename": "pyfaaster-0.1.21-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "69909857175d40bb5d1ee49a93463c07", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17085, "upload_time": "2018-09-19T15:00:11", "url": "https://files.pythonhosted.org/packages/c9/b2/6592b1252002744aa94d4fac9f9a9103c38fc7c3c6f9f2533530ed8d79cf/pyfaaster-0.1.21-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b93745678707cb973c1c5b3616135ad7", "sha256": "8db9764e426da695c4bb6b7b21f6151ea29ab2840cef3423f748432feeb28d89" }, "downloads": -1, "filename": "pyfaaster-0.1.21.tar.gz", "has_sig": false, "md5_digest": "b93745678707cb973c1c5b3616135ad7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13484, "upload_time": "2018-09-19T15:00:13", "url": "https://files.pythonhosted.org/packages/d5/7c/2b89c41c70122c614ef96e3f2887f95517ef446740384f37f8cb085f0fbf/pyfaaster-0.1.21.tar.gz" } ], "0.1.22": [ { "comment_text": "", "digests": { "md5": "0809c089c4ad346fce46d39776b91f30", "sha256": "a7e130bb11235e869caaafc2383790b1024e9152418708f95c551406648e697c" }, "downloads": -1, "filename": "pyfaaster-0.1.22-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0809c089c4ad346fce46d39776b91f30", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17108, "upload_time": "2018-09-19T15:52:40", "url": "https://files.pythonhosted.org/packages/8b/90/e6a4fd7777133458045d700694f3e9904d7064be8f658e6459f46c34bb82/pyfaaster-0.1.22-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ea99b1c3203575dee0024adb87b36403", "sha256": "dd5f284eaa77b4dbf78d6a10bc353feb2f103e600fa5eaa0be61b71ecc89133c" }, "downloads": -1, "filename": "pyfaaster-0.1.22.tar.gz", "has_sig": false, "md5_digest": "ea99b1c3203575dee0024adb87b36403", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13499, "upload_time": "2018-09-19T15:52:41", "url": "https://files.pythonhosted.org/packages/d7/42/47b23c34ecdc9edbfb3092cc28a6a776070399211cc8ca3dc2f96d0e58f5/pyfaaster-0.1.22.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "b7decc9a813d46f54fec18eb6c8911b7", "sha256": "427a3171d57c03225ce113c595567613def168c7a630b8b05cad295fed9c5f8c" }, "downloads": -1, "filename": "pyfaaster-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b7decc9a813d46f54fec18eb6c8911b7", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12347, "upload_time": "2018-01-19T19:10:14", "url": "https://files.pythonhosted.org/packages/a4/e1/7050a67b5b5187543625d4a1dd437e4a7d199754bd54c7dacf636116052e/pyfaaster-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4eae8ae5b6ec24c25f7b6b031dd352fa", "sha256": "2459f3c028bac835bd96567de410182ddac691b8a2d86f5877ca76d53a95dd89" }, "downloads": -1, "filename": "pyfaaster-0.1.3.tar.gz", "has_sig": false, "md5_digest": "4eae8ae5b6ec24c25f7b6b031dd352fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13541, "upload_time": "2018-01-19T19:10:15", "url": "https://files.pythonhosted.org/packages/1d/cf/8379789de0a22bf7601e4823066cbb53eeb8e741f4b5cdc4bd744a4ab866/pyfaaster-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "2c6bed8bbcd8aa47b3736b7a17b122e2", "sha256": "7ee0d8a4969e6efc9be66a70945ae383d2fb3bdc5a9fd8dcafa7796cdc899299" }, "downloads": -1, "filename": "pyfaaster-0.1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2c6bed8bbcd8aa47b3736b7a17b122e2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13560, "upload_time": "2018-01-24T19:50:04", "url": "https://files.pythonhosted.org/packages/ee/ab/9b90228312322a5f0bc2c58c4252cfcc2a14eb19d8858d1ff239176f6cda/pyfaaster-0.1.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2ba6d3b5f2216dca5b4a360486f57677", "sha256": "bd83dc9440706718a46ab6b17170672858bfac45bf1c21987f6e3a4cdae0c193" }, "downloads": -1, "filename": "pyfaaster-0.1.4.tar.gz", "has_sig": false, "md5_digest": "2ba6d3b5f2216dca5b4a360486f57677", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14599, "upload_time": "2018-01-24T19:50:05", "url": "https://files.pythonhosted.org/packages/19/ab/8bdd4ba8df0133a26b0e67e7ad828128d6e834a17f6b3f08772d8a70d58b/pyfaaster-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "a3227ded16665634d41807ac762a1824", "sha256": "3225881ca32b66c2042c69b4dc6c174c92ff5b92dc8851189f22a90c32371a4b" }, "downloads": -1, "filename": "pyfaaster-0.1.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a3227ded16665634d41807ac762a1824", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13220, "upload_time": "2018-01-25T21:00:11", "url": "https://files.pythonhosted.org/packages/65/5a/e39c980db62a2ab47ad77d7bad0bedcb20e5224a9065ffb2bf96260ed4bb/pyfaaster-0.1.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "434467432fe07ab31418ab458d4857f7", "sha256": "335aa750ebfd40efd8ca659e0a6c1a3849fca8c25ca70c017c83aa4bc8fa4b4a" }, "downloads": -1, "filename": "pyfaaster-0.1.5.tar.gz", "has_sig": false, "md5_digest": "434467432fe07ab31418ab458d4857f7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14257, "upload_time": "2018-01-25T21:00:12", "url": "https://files.pythonhosted.org/packages/eb/a2/58dc5e5a6075c9f980d25f0aa85aef07256c0410bf11d4bb4386d3354d20/pyfaaster-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "5b189c4b18d01ad9d98b428f0f7e4d69", "sha256": "9f25a8b853a0565856d0be4cc957b688ad39c6c68a8ae7afba8e1b4c07701c48" }, "downloads": -1, "filename": "pyfaaster-0.1.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5b189c4b18d01ad9d98b428f0f7e4d69", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13432, "upload_time": "2018-02-02T14:39:41", "url": "https://files.pythonhosted.org/packages/6f/69/d8fe49c65beac8a159c782ecbdf4518366e2532eb537255e628e1bcc3035/pyfaaster-0.1.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8d70bccad67f0a6a1460bda63dbd44bf", "sha256": "200934167d6cef24c145e1056fadb355062d68103071be4308e227d81963405d" }, "downloads": -1, "filename": "pyfaaster-0.1.6.tar.gz", "has_sig": false, "md5_digest": "8d70bccad67f0a6a1460bda63dbd44bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9867, "upload_time": "2018-02-02T14:39:43", "url": "https://files.pythonhosted.org/packages/08/d0/b8effa540ac8a4e0a9ea2d4029c4bbaf1d3d1e99aa0ab0c838fef39c7e26/pyfaaster-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "bf4b545c5accd565806f36a807cadc5c", "sha256": "55933432a585affaef03e514ddf0f163fb1beb67602ccda58ec3be0888e8a2c4" }, "downloads": -1, "filename": "pyfaaster-0.1.7-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bf4b545c5accd565806f36a807cadc5c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 14063, "upload_time": "2018-02-12T16:23:55", "url": "https://files.pythonhosted.org/packages/a8/6f/ad381e8ebfe4f5732e1c84c99b18ee5d9c6d393d761a24bc87b6f6c5ac83/pyfaaster-0.1.7-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bd7210188096eb3d0ae38d266bb414d4", "sha256": "618fbdea1d41d397f460f3ce350dd95046f01ca26a514b3161563aebdd6c3d43" }, "downloads": -1, "filename": "pyfaaster-0.1.7.tar.gz", "has_sig": false, "md5_digest": "bd7210188096eb3d0ae38d266bb414d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10086, "upload_time": "2018-02-12T16:23:58", "url": "https://files.pythonhosted.org/packages/fb/a6/1a9988bd6e2ddbd143c38e8e8cc0bebe1bbe612a6c33a75e98bf3d374fb7/pyfaaster-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "b29aabcbfb9096b3ced3d25b83313aec", "sha256": "1d0e5f377c856ef9a5bdcc26acf84234ff63382d0c01997ebd0878da898d8701" }, "downloads": -1, "filename": "pyfaaster-0.1.8-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b29aabcbfb9096b3ced3d25b83313aec", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 14310, "upload_time": "2018-03-05T13:35:16", "url": "https://files.pythonhosted.org/packages/4f/05/e799dd7502a4ce9451df49bf1fbdb3d1bddeb4a5dec5386feb0b01ef13f9/pyfaaster-0.1.8-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ecca57202bbf23ba4ce3c37f520311be", "sha256": "75c417c87b2759a248d7b4dd52cd17bd2a689c567bac62a39288d65f833dfae6" }, "downloads": -1, "filename": "pyfaaster-0.1.8.tar.gz", "has_sig": false, "md5_digest": "ecca57202bbf23ba4ce3c37f520311be", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10331, "upload_time": "2018-03-05T13:35:18", "url": "https://files.pythonhosted.org/packages/cc/c5/5fb14b453efff395ee7600ae5874bb87caa3d4c4197879fc23c0480adfd7/pyfaaster-0.1.8.tar.gz" } ], "0.1.9": [ { "comment_text": "", "digests": { "md5": "b5a10dbad1cca25a1327d97ba3cfd31e", "sha256": "37ea8b0854d17c7194bce242c22dc5251083bedb75ee25e0d539feef84747ee2" }, "downloads": -1, "filename": "pyfaaster-0.1.9-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b5a10dbad1cca25a1327d97ba3cfd31e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 14542, "upload_time": "2018-03-07T13:35:21", "url": "https://files.pythonhosted.org/packages/e8/67/4a50275a9459939d628effceb2caecc0c004d5cb76db7298eb3cd198b0ad/pyfaaster-0.1.9-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f1790ecf058e7b1ef03cdefb3f9d3e5f", "sha256": "372017d89433b04b0f3aac5aae52ae6079e4f5ce3f7fe7933656f6b2a8743311" }, "downloads": -1, "filename": "pyfaaster-0.1.9.tar.gz", "has_sig": false, "md5_digest": "f1790ecf058e7b1ef03cdefb3f9d3e5f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10601, "upload_time": "2018-03-07T13:35:23", "url": "https://files.pythonhosted.org/packages/6d/bf/9d6a5023731b5230142460ef11ffdb6bda6531140ab325ff266aeb341ed2/pyfaaster-0.1.9.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "14af250d80ed2dc235c8eb2cf08547b2", "sha256": "39e3fb16f9274d5c0d76be533520893082a888745341b5812a7448253b4a8ae9" }, "downloads": -1, "filename": "pyfaaster-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "14af250d80ed2dc235c8eb2cf08547b2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 18547, "upload_time": "2018-12-27T14:34:15", "url": "https://files.pythonhosted.org/packages/df/ab/2defc9ba44ae912cc2cedec8236b27fad2423dcc397f56edc76e71d62030/pyfaaster-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e745871da3cf26d8b2c75ef87589d0d0", "sha256": "7136a5f30cb8da09edf1c8b559999fc2d285755f03729a63df59468149905981" }, "downloads": -1, "filename": "pyfaaster-0.2.0.tar.gz", "has_sig": false, "md5_digest": "e745871da3cf26d8b2c75ef87589d0d0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14781, "upload_time": "2018-12-27T14:34:17", "url": "https://files.pythonhosted.org/packages/77/88/cc9e95011bc361d016fe6fd4a8ba0f785c9c6515afeefb4c0db4cb4462c8/pyfaaster-0.2.0.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "95b32a129e29834c521bfc78ce170c86", "sha256": "28edf828a72467490c21804a7ac84bd64fbdfd48a3d96d070c1a6bb877d03604" }, "downloads": -1, "filename": "pyfaaster-0.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "95b32a129e29834c521bfc78ce170c86", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 19587, "upload_time": "2019-10-03T13:46:33", "url": "https://files.pythonhosted.org/packages/71/86/a9e2429d978be8e66991e7c0507855a9c6e253cf24d1c4eb3f8d3360f4db/pyfaaster-0.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "72f39d6bb99c6826c113e552e0b174ee", "sha256": "966437b4ba1be4c2c3958910e5991d656aa0f6c760736942a79ce68cd5fe94fc" }, "downloads": -1, "filename": "pyfaaster-0.2.2.tar.gz", "has_sig": false, "md5_digest": "72f39d6bb99c6826c113e552e0b174ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14900, "upload_time": "2019-10-03T13:46:35", "url": "https://files.pythonhosted.org/packages/f9/0d/f6e6427ca79f51ffa120cbac0a45d8e52820d8450a1bffb9e2c5be367ec5/pyfaaster-0.2.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "95b32a129e29834c521bfc78ce170c86", "sha256": "28edf828a72467490c21804a7ac84bd64fbdfd48a3d96d070c1a6bb877d03604" }, "downloads": -1, "filename": "pyfaaster-0.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "95b32a129e29834c521bfc78ce170c86", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 19587, "upload_time": "2019-10-03T13:46:33", "url": "https://files.pythonhosted.org/packages/71/86/a9e2429d978be8e66991e7c0507855a9c6e253cf24d1c4eb3f8d3360f4db/pyfaaster-0.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "72f39d6bb99c6826c113e552e0b174ee", "sha256": "966437b4ba1be4c2c3958910e5991d656aa0f6c760736942a79ce68cd5fe94fc" }, "downloads": -1, "filename": "pyfaaster-0.2.2.tar.gz", "has_sig": false, "md5_digest": "72f39d6bb99c6826c113e552e0b174ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14900, "upload_time": "2019-10-03T13:46:35", "url": "https://files.pythonhosted.org/packages/f9/0d/f6e6427ca79f51ffa120cbac0a45d8e52820d8450a1bffb9e2c5be367ec5/pyfaaster-0.2.2.tar.gz" } ] }