{ "info": { "author": "Michael Ortali", "author_email": "hello@xethorn.net", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4" ], "description": "|Build Status| |Coverage Status|\n\nLightweight library for AWS SWF.\n\n Garcon deals with easy going clients and kitchens. It takes orders\n from clients (deciders), and send them to the kitchen (activities).\n Difficult clients and kitchens can be handled directly by the\n restaurant manager.\n\nRequirements\n~~~~~~~~~~~~\n\n- Python 2.7, 3.4 (tested)\n- Boto 2.34.0 (tested)\n\nGoal\n~~~~\n\nThe goal of this library is to allow the creation of Amazon Simple\nWorkflow without the need to worry about the orchestration of the\ndifferent activities and building out the different workers. This\nframework aims to help simple workflows. If you have a more complex\ncase, you might want to use directly boto.\n\nCode sample\n~~~~~~~~~~~\n\nThe code sample shows a workflow that has 4 activities. It starts with\nactivity\\_1, which after being completed schedule activity\\_2 and\nactivity\\_3 to be ran in parallel. The workflow ends after the\ncompletion of activity\\_4 which requires activity\\_2 and activity\\_3 to\nbe completed.\n\n.. code:: python\n\n from __future__ import print_function\n\n from garcon import activity\n from garcon import runner\n\n\n domain = 'dev'\n name = 'workflow_sample'\n create = activity.create(domain, name)\n\n test_activity_1 = create(\n name='activity_1',\n run=runner.Sync(\n lambda activity, context: print('activity_1')))\n\n test_activity_2 = create(\n name='activity_2',\n requires=[test_activity_1],\n run=runner.Async(\n lambda activity, context: print('activity_2_task_1'),\n lambda activity, context: print('activity_2_task_2')))\n\n test_activity_3 = create(\n name='activity_3',\n requires=[test_activity_1],\n run=runner.Sync(\n lambda activity, context: print('activity_3')))\n\n test_activity_4 = create(\n name='activity_4',\n requires=[test_activity_3, test_activity_2],\n run=runner.Sync(\n lambda activity, context: print('activity_4')))\n\nApplication architecture\n~~~~~~~~~~~~~~~~~~~~~~~~\n\n::\n\n .\n \u251c\u2500\u2500 cli.py # Instantiate the workers\n \u251c\u2500\u2500 flows # All your application flows.\n \u2502 \u251c\u2500\u2500 __init__.py\n \u2502 \u2514\u2500\u2500 example.py # Should contain a structure similar to the code sample.\n \u251c\u2500\u2500 tasks # All your tasks\n \u2502 \u251c\u2500\u2500 __init__.py\n \u2502 \u2514\u2500\u2500 s3.py # Task that focuses on s3 files.\n \u2514\u2500\u2500 task_example.py # Your different tasks.\n\nContributors\n~~~~~~~~~~~~\n\n- Michael Ortali\n- Adam Griffiths\n- Raphael Antonmattei\n- John Penner\n\n.. _xethorn: github.com/xethorn\n.. _rantonmattei: github.com/rantonmattei\n.. _someboredkiddo: github.com/someboredkiddo\n\n.. |Build Status| image:: https://travis-ci.org/xethorn/garcon.svg\n :target: https://travis-ci.org/xethorn/garcon\n.. |Coverage Status| image:: https://coveralls.io/repos/xethorn/garcon/badge.svg?branch=master\n :target: https://coveralls.io/r/xethorn/garcon?branch=master", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/xethorn/garcon/", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "Garcon", "package_url": "https://pypi.org/project/Garcon/", "platform": "", "project_url": "https://pypi.org/project/Garcon/", "project_urls": { "Homepage": "https://github.com/xethorn/garcon/" }, "release_url": "https://pypi.org/project/Garcon/0.4.0/", "requires_dist": null, "requires_python": "", "summary": "Lightweight library for AWS SWF.", "version": "0.4.0" }, "last_serial": 3467465, "releases": { "0.0.2": [ { "comment_text": "", "digests": { "md5": "e6db36070cc572daae54cd45138d35c4", "sha256": "c1458d6c789e38e3331dcc6c94e499893d572e55bc12aa4c63966622a3b0c5a8" }, "downloads": -1, "filename": "Garcon-0.0.2.tar.gz", "has_sig": false, "md5_digest": "e6db36070cc572daae54cd45138d35c4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17757, "upload_time": "2015-04-13T20:24:05", "url": "https://files.pythonhosted.org/packages/58/96/d011a4f2044aa94a3f7994062dfc4d5234030d096d4d12de5fe6f161a866/Garcon-0.0.2.tar.gz" } ], "0.0.2a1": [ { "comment_text": "Initial upload", "digests": { "md5": "68c4c5b908018721f9625d05c1bbc452", "sha256": "910bba7a80984f573c4609aac026df698c755e42b46a096b89e1ca18870477f2" }, "downloads": -1, "filename": "Garcon-0.0.2a1.tar.gz", "has_sig": false, "md5_digest": "68c4c5b908018721f9625d05c1bbc452", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8838, "upload_time": "2015-01-05T18:17:29", "url": "https://files.pythonhosted.org/packages/e7/79/d2738447bd3aea5e4e6af9a180178dc17cc42336e1b89e8b5b086a3517da/Garcon-0.0.2a1.tar.gz" } ], "0.0.2a10": [ { "comment_text": "", "digests": { "md5": "a434c9e097441e87d02d5310c40e26d0", "sha256": "8bf56f3e2e98dd50c5f1bea7ad8eadcb409bebdba8a7de5649b16d7a75fdb736" }, "downloads": -1, "filename": "Garcon-0.0.2a10.tar.gz", "has_sig": false, "md5_digest": "a434c9e097441e87d02d5310c40e26d0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17050, "upload_time": "2015-03-05T19:04:39", "url": "https://files.pythonhosted.org/packages/cc/df/761eba80526e213494c5694037f3c4d6a045cfab94cf75024e650680f887/Garcon-0.0.2a10.tar.gz" } ], "0.0.2a2": [ { "comment_text": "", "digests": { "md5": "f1b5c3d225b61da9072f5f4ce2689314", "sha256": "7c0cb690b3dfef79911ca39ba71be52b988c397a712cbfd5a6fa7f57d6b38d31" }, "downloads": -1, "filename": "Garcon-0.0.2a2.tar.gz", "has_sig": false, "md5_digest": "f1b5c3d225b61da9072f5f4ce2689314", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8888, "upload_time": "2015-01-05T19:59:07", "url": "https://files.pythonhosted.org/packages/75/4c/418e3162c593c5eddb13af617fba3211888687d81725845e3d752441b545/Garcon-0.0.2a2.tar.gz" } ], "0.0.2a3": [ { "comment_text": "", "digests": { "md5": "4cb0b7382f9b02f9be5f1a50a0e7d284", "sha256": "82e05b587e912ce1765ee98ca15f3f41e731844b0519eaa8901497f24221d1ca" }, "downloads": -1, "filename": "Garcon-0.0.2a3.tar.gz", "has_sig": false, "md5_digest": "4cb0b7382f9b02f9be5f1a50a0e7d284", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9122, "upload_time": "2015-01-07T22:40:28", "url": "https://files.pythonhosted.org/packages/21/5f/9160b75baa7612dbb181d181fbf738a2dc403a373ba40fc0f5a90ffd514f/Garcon-0.0.2a3.tar.gz" } ], "0.0.2a4": [ { "comment_text": "", "digests": { "md5": "d718f32b23c30db9599a432d69d9827e", "sha256": "ad37961453356b6ea00b609da514ec5d97f19b832a1b2b53ba3257ad9b5bf1c7" }, "downloads": -1, "filename": "Garcon-0.0.2a4.tar.gz", "has_sig": false, "md5_digest": "d718f32b23c30db9599a432d69d9827e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9115, "upload_time": "2015-01-08T20:36:23", "url": "https://files.pythonhosted.org/packages/fb/24/a8d4f1a97c2e24b7b276bb109f89a76fdf2d62476bf89c6c6826b427a59a/Garcon-0.0.2a4.tar.gz" } ], "0.0.2a5": [ { "comment_text": "", "digests": { "md5": "cfc22aff56bd28058b181a61175821e7", "sha256": "082a55106771b57dfbe6458821fb147af2ac0315b3d59e0d88fce72a00dbaa7b" }, "downloads": -1, "filename": "Garcon-0.0.2a5.tar.gz", "has_sig": false, "md5_digest": "cfc22aff56bd28058b181a61175821e7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9423, "upload_time": "2015-01-14T21:50:57", "url": "https://files.pythonhosted.org/packages/a0/f0/6e9179766bbc80a2b8532cc5c166837d2e9b3df7edebfffebc8ab4c0f0e1/Garcon-0.0.2a5.tar.gz" } ], "0.0.2a6": [ { "comment_text": "", "digests": { "md5": "9bd05fe4104f7f9f1a70078d68692839", "sha256": "d4f664b3162e922bb8b6eba5501e8c4ec134ebeb3d6bfe14d6e75ee3745d95e7" }, "downloads": -1, "filename": "Garcon-0.0.2a6.tar.gz", "has_sig": false, "md5_digest": "9bd05fe4104f7f9f1a70078d68692839", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11102, "upload_time": "2015-01-23T15:27:26", "url": "https://files.pythonhosted.org/packages/35/16/376b1a9a59bea0e8f02c2a06aa2910c310e4ff431e996747f070303648d0/Garcon-0.0.2a6.tar.gz" } ], "0.0.2a7": [ { "comment_text": "", "digests": { "md5": "728c65caa75e2bec13ec99a6716d1ed1", "sha256": "ad6a52351cd0f457679e7d25ad3645af8f0df86d77e95584141e3fdcf5c16b66" }, "downloads": -1, "filename": "Garcon-0.0.2a7.tar.gz", "has_sig": false, "md5_digest": "728c65caa75e2bec13ec99a6716d1ed1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13373, "upload_time": "2015-02-10T18:43:53", "url": "https://files.pythonhosted.org/packages/71/f0/db753f2227156efad780d34d02be8c4a9993ac4456ae940254a7d9759c23/Garcon-0.0.2a7.tar.gz" } ], "0.0.2a8": [ { "comment_text": "", "digests": { "md5": "11050e8782e5ab35fd5031401a58a48f", "sha256": "b957f336d4f0fcad3cc0d1d9adc3c6a064cf40810140da72f99d6e7b3e11e37d" }, "downloads": -1, "filename": "Garcon-0.0.2a8.tar.gz", "has_sig": false, "md5_digest": "11050e8782e5ab35fd5031401a58a48f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16661, "upload_time": "2015-02-19T20:42:09", "url": "https://files.pythonhosted.org/packages/bd/9f/0c7f388b604de9677722e3c9593ba49126af4ee59b575f7bd841d14e9cd4/Garcon-0.0.2a8.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "728b20d70c567119f111fee993a224be", "sha256": "bb1f50c1659914d367d76d8b5d5e25738c2deb325d8672c4715533589e240e9a" }, "downloads": -1, "filename": "Garcon-0.0.3.tar.gz", "has_sig": false, "md5_digest": "728b20d70c567119f111fee993a224be", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19191, "upload_time": "2015-04-29T14:31:22", "url": "https://files.pythonhosted.org/packages/fe/87/20ce2e37d2355e159c2a804a19965b2320ca5b8d99d3cca3b5d14e4610ca/Garcon-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "8069063d6fe388721cb72e126e5f310a", "sha256": "4a7093a3bf1a0021cc498e3166c218a360c525373243edeb78fbe6c193121008" }, "downloads": -1, "filename": "Garcon-0.0.4.tar.gz", "has_sig": false, "md5_digest": "8069063d6fe388721cb72e126e5f310a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19999, "upload_time": "2015-05-12T13:26:27", "url": "https://files.pythonhosted.org/packages/a3/a4/578946885069c6c16f6473f322268ff61b9434615c8a57de8a741fbbc808/Garcon-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "8539a3bcff1c77463b590c7332a15961", "sha256": "5863fc06fd2548741eba5284e5efb87aa20c8972476814244d6de1adb8c577ab" }, "downloads": -1, "filename": "Garcon-0.0.5.tar.gz", "has_sig": false, "md5_digest": "8539a3bcff1c77463b590c7332a15961", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20042, "upload_time": "2015-06-01T21:20:34", "url": "https://files.pythonhosted.org/packages/4a/2e/33ea81eedf2887bba2088079b814fbf56027905573ddade910b2b61ce3dc/Garcon-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "c38caa36133c4e33aae49c09cebe554b", "sha256": "b8ec88c39a36babe7ecd3d0442f1c0e8bd8450b3b2b8a85f59cd879f3af03a2a" }, "downloads": -1, "filename": "Garcon-0.0.6.tar.gz", "has_sig": false, "md5_digest": "c38caa36133c4e33aae49c09cebe554b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21288, "upload_time": "2015-06-04T13:26:01", "url": "https://files.pythonhosted.org/packages/63/b6/3fe3bb95eb080a1a74fbbce4241947d5a6ae8c2f44218c2a77afcb837e20/Garcon-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "414f92e41654e228fc8a5200ff1fb2e4", "sha256": "bfff0642f1f89f4cf3cd48c7ac202d22a5c801ec233b3f5fdd92f406d92129a5" }, "downloads": -1, "filename": "Garcon-0.0.7.tar.gz", "has_sig": false, "md5_digest": "414f92e41654e228fc8a5200ff1fb2e4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21330, "upload_time": "2015-06-15T21:50:45", "url": "https://files.pythonhosted.org/packages/ca/cc/1af13a06651e45e43704706f573de2e279dc4b52c0c40baed84dac04c450/Garcon-0.0.7.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "5e4bdba8cd0b8e5a428c8bb1836c7574", "sha256": "5f831064a805ca0e3ac2f6e2251ed3c88b717dbe5cb1d1ee121b5f44149e50b8" }, "downloads": -1, "filename": "Garcon-0.1.0.tar.gz", "has_sig": false, "md5_digest": "5e4bdba8cd0b8e5a428c8bb1836c7574", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24301, "upload_time": "2015-07-01T20:30:46", "url": "https://files.pythonhosted.org/packages/f1/42/ecc5b6491fc7228bfea42ffcadb0c23a8719f59a7e7a34a7caececc0223f/Garcon-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "82081dcbfe3e11dcf46855989f1985b1", "sha256": "75f76b68fd8b8474479dd2217aa3f31c4e5cc494ac85d5f5efae299d8597ff95" }, "downloads": -1, "filename": "Garcon-0.2.0.tar.gz", "has_sig": false, "md5_digest": "82081dcbfe3e11dcf46855989f1985b1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24583, "upload_time": "2015-07-14T20:22:17", "url": "https://files.pythonhosted.org/packages/48/3f/d2f7bf6bef05af781c165eca937b7dd437a2d899fb198fe30de1c3b4c631/Garcon-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "97db9f473146acf3d68edcd8fcc48e01", "sha256": "961ddb039837c4fa036db214bd2820f6c78417d42ebf4f5db8a05c3f4f8b6a93" }, "downloads": -1, "filename": "Garcon-0.2.1.tar.gz", "has_sig": false, "md5_digest": "97db9f473146acf3d68edcd8fcc48e01", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24595, "upload_time": "2015-09-28T12:56:28", "url": "https://files.pythonhosted.org/packages/96/08/918eaf300006f5a782e74c32e8f5bd2b720fc4bb883b5ed9b34d04225152/Garcon-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "c85ae99cad0f876e1e1a37f6f063855d", "sha256": "de97e10e5762bf59016956b1114a541f662bf2b71875c02f8f1c982463431af0" }, "downloads": -1, "filename": "Garcon-0.2.2.tar.gz", "has_sig": false, "md5_digest": "c85ae99cad0f876e1e1a37f6f063855d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24679, "upload_time": "2015-09-29T18:41:39", "url": "https://files.pythonhosted.org/packages/c0/3b/e89f27f42e366876875584ffb8c22cd67b50f528d98daa9c7be8ce72063a/Garcon-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "fb194fd570cf0de918bcb7862a0b13a1", "sha256": "69f3a79d7cf5cd8bda92d5ddab6bef9cb16e4a1714f17e74c89edb08ecfa518a" }, "downloads": -1, "filename": "Garcon-0.2.3.tar.gz", "has_sig": false, "md5_digest": "fb194fd570cf0de918bcb7862a0b13a1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24682, "upload_time": "2015-10-07T21:16:41", "url": "https://files.pythonhosted.org/packages/d3/88/1f39991e51c6d5b537009b3079b6b33f48e984d2cf2dd3b567ab87daf0a2/Garcon-0.2.3.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "ed7938f70085dc0d858205a5d76f706e", "sha256": "b92601d436d7ec094eb4a346209bf7d0d21e131b36ee019be08eb038fbd80447" }, "downloads": -1, "filename": "Garcon-0.3.0.tar.gz", "has_sig": false, "md5_digest": "ed7938f70085dc0d858205a5d76f706e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25578, "upload_time": "2015-10-20T21:18:56", "url": "https://files.pythonhosted.org/packages/51/ee/530ca55e5c9e853bb56382e569ebae9fb5298256acfa735df51d67a51bad/Garcon-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "08df08cc7b1ddfb292767a7f40939e38", "sha256": "60637157131846a49ce1f559d620cdb15bad4a12702f1da491fd6067a2f8eb79" }, "downloads": -1, "filename": "Garcon-0.3.1.tar.gz", "has_sig": false, "md5_digest": "08df08cc7b1ddfb292767a7f40939e38", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25544, "upload_time": "2016-05-02T17:52:32", "url": "https://files.pythonhosted.org/packages/6f/97/89f08488856fa61cad6b1fb57260fc2edab86e460f3269ed8e3582942e99/Garcon-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "ec60b363818c03283fe9fa507bde79d1", "sha256": "b55b51f919364aa6a3b91e61652747f8a8c098941a73623ca6fe620f36b6964a" }, "downloads": -1, "filename": "Garcon-0.3.2.tar.gz", "has_sig": false, "md5_digest": "ec60b363818c03283fe9fa507bde79d1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26043, "upload_time": "2017-08-06T21:29:42", "url": "https://files.pythonhosted.org/packages/00/7e/17511d20f60fe9069898d504cf6ff27b68dd51d042d9eae7dd5e15b9a413/Garcon-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "fa0e2bfbe769a108fe3089c33551e000", "sha256": "fbb001751ca5b6311b7d30b8642e8410e5f9779892aa367d10ba25316aa518a5" }, "downloads": -1, "filename": "Garcon-0.3.3.tar.gz", "has_sig": false, "md5_digest": "fa0e2bfbe769a108fe3089c33551e000", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26957, "upload_time": "2017-08-06T21:41:40", "url": "https://files.pythonhosted.org/packages/04/32/5d4f6768c041b6f5b399665b839fbc9234c5d00b0ab4f75bce737bafb1ae/Garcon-0.3.3.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "0509613b500ffc1f516f65db010ef15d", "sha256": "e2193b571ef515c6e264fc7faf4035ed6c10f25ec017e9d591ffa7dc674a7b8a" }, "downloads": -1, "filename": "Garcon-0.3.4.tar.gz", "has_sig": false, "md5_digest": "0509613b500ffc1f516f65db010ef15d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27406, "upload_time": "2017-08-06T21:48:58", "url": "https://files.pythonhosted.org/packages/cf/6c/aa1ea4ac4ce5bce33d4897e8833dee14fe5969535a8eb2a50a76ae492bfc/Garcon-0.3.4.tar.gz" } ], "0.3.5": [ { "comment_text": "", "digests": { "md5": "8a52786d2c65ff3168a10d881256268e", "sha256": "059895896e055cb64ca9270e2750b8e0ac98f8aa3e87b0e025ea76c8cf0172e7" }, "downloads": -1, "filename": "Garcon-0.3.5.tar.gz", "has_sig": false, "md5_digest": "8a52786d2c65ff3168a10d881256268e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28842, "upload_time": "2017-08-22T02:59:04", "url": "https://files.pythonhosted.org/packages/61/38/1d628ef8443e468a2098804352c97a4219cf96d1e5ea0c1b2266bcf0edee/Garcon-0.3.5.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "a6a2ceba33f844928ba13213d69df57e", "sha256": "406049a3248d00f70d035d80504f40f4c706795abb91e01912447fdd375eaec2" }, "downloads": -1, "filename": "Garcon-0.4.0.tar.gz", "has_sig": false, "md5_digest": "a6a2ceba33f844928ba13213d69df57e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29301, "upload_time": "2018-01-06T19:20:08", "url": "https://files.pythonhosted.org/packages/33/2a/fb325d1f5d9ba0eec77a4fde4350752d1d82a3e8263aa0fc7b2408b4e756/Garcon-0.4.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a6a2ceba33f844928ba13213d69df57e", "sha256": "406049a3248d00f70d035d80504f40f4c706795abb91e01912447fdd375eaec2" }, "downloads": -1, "filename": "Garcon-0.4.0.tar.gz", "has_sig": false, "md5_digest": "a6a2ceba33f844928ba13213d69df57e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29301, "upload_time": "2018-01-06T19:20:08", "url": "https://files.pythonhosted.org/packages/33/2a/fb325d1f5d9ba0eec77a4fde4350752d1d82a3e8263aa0fc7b2408b4e756/Garcon-0.4.0.tar.gz" } ] }