{ "info": { "author": "Corentin Chary", "author_email": "c.chary@criteo.com", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "gourde\n======\n\n\n.. image:: https://travis-ci.org/criteo/gourde.svg?branch=master\n :target: https://travis-ci.org/criteo/gourde\n :alt: Build Status\n\n\n.. image:: https://coveralls.io/repos/github/criteo/gourde/badge.svg\n :target: https://coveralls.io/github/criteo/gourde?branch=master\n :alt: Coverage Status\n\n\n.. image:: https://badge.fury.io/py/gourde.svg\n :target: https://badge.fury.io/py/gourde\n :alt: PyPI version\n\n\n.. image:: https://img.shields.io/pypi/pyversions/gourde.svg\n :target: https://pypi.python.org/pypi/gourde/\n :alt: Supported Python versions\n\n\nFlask(-Twisted/Gunicorn) microframework for microservices with Prometheus and Sentry support.\n\nThe goal is to remove most of the boilerplate necessary to start a simple HTTP application.\nThis provides:\n\n\n* Sane arguments (\\ ``--host``\\ , ``--port``\\ , ``--debug``\\ , ``--log-level``\\ )\n* Support to have a production ready uwsgi container (\\ ``--twisted`` or ``--gunicorn``\\ )\n* Prometheus support with default metrics (`gourde.metrics`: See [prometheus_flask_exporter](https://github.com/rycus86/prometheus_flask_exporter))\n* Optional sentry support if the ``SENTRY_DSN`` env var is set.\n* If you have a 'static' directory in your module, just put a favicon.ico inside!\n\nInstallation\n------------\n\n.. code-block:: bash\n\n pip install gourde\n\n # To use a production ready wsgi server install one of the following extra requirements\n pip install gourde[twisted]\n pip install gourde[gunicorn]\n\nQuick-start\n-----------\n\n.. code-block:: python\n\n from gourde import Gourde\n\n gourde = Gourde(__name__)\n app = gourde.app # This is a flask.Flask() app.\n\n @app.route('/example')\n def index():\n return 'Example'\n\n def main():\n gourde.run()\n\n if __name__ == '__main__':\n main()\n\nWant to know more? Look at `example/app.py `_\\ , you can run it with ``gourde-example``.", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/criteo/gourde/", "keywords": "flask twisted gunicorn microframework microservice prometheus sentry", "license": "Apache 2", "maintainer": "", "maintainer_email": "", "name": "gourde", "package_url": "https://pypi.org/project/gourde/", "platform": "", "project_url": "https://pypi.org/project/gourde/", "project_urls": { "Homepage": "https://github.com/criteo/gourde/", "Source Code": "https://github.com/criteo/gourde/" }, "release_url": "https://pypi.org/project/gourde/0.4.0/", "requires_dist": null, "requires_python": "", "summary": "Flask(-Twisted) microframework for microservices with Prometheus and Sentry support.", "version": "0.4.0" }, "last_serial": 5835991, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "6b1f952d0ff90c30b767354cf1741923", "sha256": "4721e74d26d3d82fcbb7b18b42e1fad2544b60b461bc86938486f56b74965b8b" }, "downloads": -1, "filename": "gourde-0.0.1.tar.gz", "has_sig": false, "md5_digest": "6b1f952d0ff90c30b767354cf1741923", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5745, "upload_time": "2018-03-30T09:56:35", "url": "https://files.pythonhosted.org/packages/e3/fb/d380d9de6e126577faef31fc76b9f42509e4487482c661ea5949b3028d16/gourde-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "0bb5795f202ae84142b6fe7050a53b8f", "sha256": "865c81ad0b61ad106ac0c27f0331f91481fdee62beb3b74e221904e13db3086a" }, "downloads": -1, "filename": "gourde-0.0.2.tar.gz", "has_sig": false, "md5_digest": "0bb5795f202ae84142b6fe7050a53b8f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5776, "upload_time": "2018-04-03T14:20:22", "url": "https://files.pythonhosted.org/packages/a6/fd/50aa62e6f185f47b9add066a59ca8b7ec72bb45d3a3d7a647bbc10c52bdf/gourde-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "ca34e945f6529ed7fe999dfea5e4c163", "sha256": "ba29844a95b9bd4973c8a3e460afeb1665a7ee7bc8359e94ec7da01cb2fd614d" }, "downloads": -1, "filename": "gourde-0.0.3.tar.gz", "has_sig": false, "md5_digest": "ca34e945f6529ed7fe999dfea5e4c163", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5783, "upload_time": "2018-04-13T08:56:47", "url": "https://files.pythonhosted.org/packages/89/12/8b10f0e3418e3ed75c88fd84ca749751c4ae233694e92082ae18cc0d5e00/gourde-0.0.3.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "0a819b3f2f75c58e23a7884349cd6b68", "sha256": "8f1651542f524492afb8d65727831185b3fc10cc1579d04cc4880e8c9ddc1427" }, "downloads": -1, "filename": "gourde-0.1.0.tar.gz", "has_sig": false, "md5_digest": "0a819b3f2f75c58e23a7884349cd6b68", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13603, "upload_time": "2018-04-23T18:06:46", "url": "https://files.pythonhosted.org/packages/72/41/ce89fedd9fdfc8be4be6a7b60d12e54f76a8aa6be4a6ab3c4cf0fcdd05c0/gourde-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "878689e9588a9c43b5090881334648aa", "sha256": "14930b34b70b8e073475f19b5fe358450b4254daad6ebef16724453a6285a284" }, "downloads": -1, "filename": "gourde-0.1.1.tar.gz", "has_sig": false, "md5_digest": "878689e9588a9c43b5090881334648aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13613, "upload_time": "2018-04-24T21:03:09", "url": "https://files.pythonhosted.org/packages/6a/87/97ffe024897f69d88ebbce121ab58b0c571348f135e22740429cd4e84085/gourde-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "360a441052f6dde87d7201dd0e645726", "sha256": "cf7accf4935dbfb7ebceb4da1863999d1e3240076f97f09511ba24d41f3f23c3" }, "downloads": -1, "filename": "gourde-0.1.2.tar.gz", "has_sig": false, "md5_digest": "360a441052f6dde87d7201dd0e645726", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13774, "upload_time": "2018-04-27T19:09:13", "url": "https://files.pythonhosted.org/packages/3a/3b/bf76e865127447f5bac0fb98b0afdb559ffdfa0267ef8d145ac218f6b9a0/gourde-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "a3b38f8c8f8c4997b970226bcd280a6d", "sha256": "dbdbd12e318b7a9f0d534094be4d729346d221eb75bb456a1e2e9f5d6e3ceb58" }, "downloads": -1, "filename": "gourde-0.1.3.tar.gz", "has_sig": false, "md5_digest": "a3b38f8c8f8c4997b970226bcd280a6d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8360, "upload_time": "2018-05-03T07:01:22", "url": "https://files.pythonhosted.org/packages/85/61/a74bfcc70417483416432398d734b42426109bbc056ee65436eac0d9b383/gourde-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "6061b40ea312e40f1aa8486bf17843de", "sha256": "2d4f0433517e3652aa1066a29f2da4b4d31201ea9b92c93fe2842fbf932774cd" }, "downloads": -1, "filename": "gourde-0.1.4.tar.gz", "has_sig": false, "md5_digest": "6061b40ea312e40f1aa8486bf17843de", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8360, "upload_time": "2018-07-25T12:09:37", "url": "https://files.pythonhosted.org/packages/3c/9e/d217e5f0b27ba53762268df1af5b6ca200dc7b4ec30934ab0ba61e67cb2d/gourde-0.1.4.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "76e47fc78a37eab1b5916e61d6d7c8fd", "sha256": "01dd4c121a632c45207e84459ebb76a22feeaf7c01de5bae4f25cb320032112e" }, "downloads": -1, "filename": "gourde-0.1.6.tar.gz", "has_sig": false, "md5_digest": "76e47fc78a37eab1b5916e61d6d7c8fd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8466, "upload_time": "2018-08-21T11:55:56", "url": "https://files.pythonhosted.org/packages/51/52/704403d5f926d8858fce33b27d9faa919e0905c3599ce823590c37424405/gourde-0.1.6.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "123a4ede2bfa384af2b2f2a44e99fd49", "sha256": "2024f200e768d6e0d6482517ffc11ed63a130c60d25526a8770e806132d37fc6" }, "downloads": -1, "filename": "gourde-0.2.0.tar.gz", "has_sig": false, "md5_digest": "123a4ede2bfa384af2b2f2a44e99fd49", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8523, "upload_time": "2018-08-28T14:12:59", "url": "https://files.pythonhosted.org/packages/a1/5d/0fa99f2b0067cd9e0cfaa702cf5eb93b660488f0d83e7a43a15b494f26ea/gourde-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "37394c02f7a0cb31a8bc46eccc477263", "sha256": "ad6dd11e9a0e68a30eca58df79d5ca8152f0d4a07ccdcd82fbc57c5877442db0" }, "downloads": -1, "filename": "gourde-0.2.1-py2-none-any.whl", "has_sig": false, "md5_digest": "37394c02f7a0cb31a8bc46eccc477263", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 13197, "upload_time": "2019-01-07T09:14:12", "url": "https://files.pythonhosted.org/packages/99/a3/398093c1791ac930f5e90b1a69f4d363816d25ef225a89c2ca4f1562ceb7/gourde-0.2.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c6bafb552bf4f8236e9e4922f023a1b6", "sha256": "5a1568224471e803e7b1e62621739861618b528f18dddced0d8317237b9b7a7d" }, "downloads": -1, "filename": "gourde-0.2.1.tar.gz", "has_sig": false, "md5_digest": "c6bafb552bf4f8236e9e4922f023a1b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9309, "upload_time": "2019-01-07T09:14:13", "url": "https://files.pythonhosted.org/packages/cb/56/3cce3615313b40c247007260851e3b3366327bdb3698c5be7ac3dd6a20e7/gourde-0.2.1.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "58b8899ccf96aaf0a8f2b33f0493140a", "sha256": "42d100aea3af35870c368673d2c6ce21796774a8fb44a92de777f4586cb29bf8" }, "downloads": -1, "filename": "gourde-0.3.0.tar.gz", "has_sig": false, "md5_digest": "58b8899ccf96aaf0a8f2b33f0493140a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9181, "upload_time": "2019-04-05T13:00:38", "url": "https://files.pythonhosted.org/packages/4e/ad/7a42a6dfea4db4e96979b26542e215f11e36d563bc8ec36a9061bee2ac80/gourde-0.3.0.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "60e6eacb562dd17f3a3dae39c8f77086", "sha256": "01b3d60713cee4101382f0a81ddba723ac6f2e0846914efb88137ad8d31efeba" }, "downloads": -1, "filename": "gourde-0.4.0.tar.gz", "has_sig": false, "md5_digest": "60e6eacb562dd17f3a3dae39c8f77086", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10404, "upload_time": "2019-08-08T13:51:03", "url": "https://files.pythonhosted.org/packages/ae/68/57f6e7755a6938c795641bfebe21be8449d1c86e636d2bc3d7dfb764c661/gourde-0.4.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "60e6eacb562dd17f3a3dae39c8f77086", "sha256": "01b3d60713cee4101382f0a81ddba723ac6f2e0846914efb88137ad8d31efeba" }, "downloads": -1, "filename": "gourde-0.4.0.tar.gz", "has_sig": false, "md5_digest": "60e6eacb562dd17f3a3dae39c8f77086", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10404, "upload_time": "2019-08-08T13:51:03", "url": "https://files.pythonhosted.org/packages/ae/68/57f6e7755a6938c795641bfebe21be8449d1c86e636d2bc3d7dfb764c661/gourde-0.4.0.tar.gz" } ] }