{ "info": { "author": "Vasek Dohnal", "author_email": "vaclav.dohnal@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Framework :: Django", "Framework :: Django :: 1.11", "Framework :: Django :: 2.0", "Framework :: Django :: 2.1", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy" ], "description": "===========================================================================\nDjango Brotli: *Middleware that compresses response using brotli algorithm*\n===========================================================================\n\n.. image:: https://img.shields.io/pypi/v/django-brotli.svg\n :target: https://pypi.python.org/pypi/django-brotli\n :alt: PyPi\n\n.. image:: https://img.shields.io/badge/license-MIT-blue.svg\n :target: https://pypi.python.org/pypi/django-brotli/\n :alt: MIT\n\n.. image:: https://img.shields.io/travis/illagrenan/django-brotli.svg\n :target: https://travis-ci.org/illagrenan/django-brotli\n :alt: TravisCI\n\n.. image:: https://img.shields.io/coveralls/illagrenan/django-brotli.svg\n :target: https://coveralls.io/github/illagrenan/django-brotli?branch=master\n :alt: Coverage\n\n.. image:: https://pyup.io/repos/github/illagrenan/django-brotli/shield.svg\n :target: https://pyup.io/repos/github/illagrenan/django-brotli/\n :alt: Updates\n\n.. image:: https://img.shields.io/pypi/implementation/django-brotli.svg\n :target: https://pypi.python.org/pypi/django_brotli/\n :alt: Supported Python implementations\n\n.. image:: https://img.shields.io/pypi/pyversions/django-brotli.svg\n :target: https://pypi.python.org/pypi/django_brotli/\n :alt: Supported Python versions\n\nIntroduction\n------------\n\nThis project consists of ``BrotliMiddleware`` which works the same as Django ``GZipMiddleware`` (`Docs`_/`Source`_). ``BrotliMiddleware`` will compress content of HTTP response using brotli algorithm (Brotli Compressed Data Format is defined in `RFC 7932`_).\n\nIn November 2016 is brotli supported by Firefox, Chrome, Android Browser and Opera (detailed stats on `caniuse`_). Brotli is applied only when client has sent ``Accept-Encoding`` header containing ``br``.\n\n.. _`Docs`: https://docs.djangoproject.com/en/dev/ref/middleware/#module-django.middleware.gzip\n.. _`Source`: https://github.com/django/django/blob/master/django/middleware/gzip.py#L10-L52\n.. _`RFC 7932`: https://www.ietf.org/rfc/rfc7932.txt\n.. _`caniuse`: http://caniuse.com/#search=brotli\n\nInstallation\n------------\n\n**This software is in alpha version and should not be used in production.**\n\n- Supported Python versions are: ``3.5``, ``3.6`` and ``3.7``.\n- Supported Django versions are: ``1.11.x`` (LTS), ``2.0.x`` and ``2.1.x`` (LTS).\n\n.. code:: shell\n\n pip install --upgrade django-brotli\n\n\nAdd ``django_brotli.middleware.BrotliMiddleware`` to ``MIDDLEWARE``:\n\n.. code:: python\n\n MIDDLEWARE = [\n 'django_brotli.middleware.BrotliMiddleware',\n # ...\n ]\n\n\nCredits and Resources\n---------------------\n\n- `Brotli on Wikipedia (https://en.wikipedia.org/wiki/Brotli) `_\n- `Brotli compression format repository by Google (https://github.com/google/brotli) `_\n\n\nContributing\n------------\n\n1. Clone this repository (``git clone ...``)\n2. Create virtualenv\n3. Install package dependencies: ``pip install --upgrade -r requirements.txt``\n4. Change some code\n5. Run tests: in project root simply execute ``pytest``\n6. Submit PR :)\n\nLicense\n-------\n\nThe MIT License (MIT)\n\nCopyright (c) 2016\u20132019 Va\u0161ek Dohnal (@illagrenan)\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/illagrenan/django-brotli", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "django-brotli", "package_url": "https://pypi.org/project/django-brotli/", "platform": "", "project_url": "https://pypi.org/project/django-brotli/", "project_urls": { "Homepage": "https://github.com/illagrenan/django-brotli" }, "release_url": "https://pypi.org/project/django-brotli/0.2.0/", "requires_dist": [ "django", "brotli" ], "requires_python": "~=3.5", "summary": "Middleware that compresses response using brotli algorithm.", "version": "0.2.0" }, "last_serial": 4737236, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "8a24e75d8ef8690dcf0c4a3d9b9de668", "sha256": "698e97a740ae2a4ad388ef168ad08868a776d51fd566eda5a64d902e54c456b3" }, "downloads": -1, "filename": "django_brotli-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8a24e75d8ef8690dcf0c4a3d9b9de668", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 6819, "upload_time": "2016-11-01T17:48:15", "url": "https://files.pythonhosted.org/packages/74/38/6f773be904c18873cfdd2302aac172e84aeeda2083983095665e61165ee0/django_brotli-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a0860768b0ba2bdd601b4e5b243131c5", "sha256": "649a4a5748301d7030eb7006a6bc87df8dc439cfffd75d86b959ace69fd15d96" }, "downloads": -1, "filename": "django-brotli-0.1.0.tar.gz", "has_sig": false, "md5_digest": "a0860768b0ba2bdd601b4e5b243131c5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4319, "upload_time": "2016-11-01T17:48:12", "url": "https://files.pythonhosted.org/packages/b0/e3/b3c93fa7428e5b5380f889d132ec6e5e197d6aabdc6654326a1a2bff3a0b/django-brotli-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "b9a1f267a434245fa97960ea8f98affe", "sha256": "64533569a3f90de610ddca0c20057c6b5efd558895c5d1769ece5717d44af1b3" }, "downloads": -1, "filename": "django_brotli-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b9a1f267a434245fa97960ea8f98affe", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 6977, "upload_time": "2016-12-04T20:54:30", "url": "https://files.pythonhosted.org/packages/70/d8/5c9392b393587e073ca89e9a6463a8bd38d0cd83d0022987f5a3c0b67f19/django_brotli-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5787909d677db31b7528bc61fa72ea2c", "sha256": "778bea3be7897adbfbaf4ad252d7ca7183c145c5c8503b703f7e3bbe040b0695" }, "downloads": -1, "filename": "django-brotli-0.1.1.tar.gz", "has_sig": false, "md5_digest": "5787909d677db31b7528bc61fa72ea2c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4466, "upload_time": "2016-12-04T20:54:27", "url": "https://files.pythonhosted.org/packages/3e/b2/0a00d5b2a75bc060c42bdedcf3e97bfd952ac077aa4a38541214d5a144ff/django-brotli-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "12858ff9dda90f8addb16fe605d82046", "sha256": "5d3c1e846e5722e55d113781a1ca35bdbb1bb4204c5997ee2a43205db4c4828e" }, "downloads": -1, "filename": "django_brotli-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "12858ff9dda90f8addb16fe605d82046", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 7092, "upload_time": "2016-12-05T21:23:45", "url": "https://files.pythonhosted.org/packages/cb/97/ef22ae72ad39f1d99aa80ba1d9d0da851b51cae89f7cbaca7cf1e44459f5/django_brotli-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4a8618813a7cfe007f00436d8479f123", "sha256": "73839893cdd7ab209c426966d270ecaa9c644d852b3f20452858bb0478656dfb" }, "downloads": -1, "filename": "django-brotli-0.1.2.tar.gz", "has_sig": false, "md5_digest": "4a8618813a7cfe007f00436d8479f123", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4569, "upload_time": "2016-12-05T21:23:41", "url": "https://files.pythonhosted.org/packages/d4/17/2d1579ab384c56d6731093b7c6c078e7b897359a5791191233d0106bcfd6/django-brotli-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "6b43fc0b97b6cb055230eb8ce90d30af", "sha256": "76da44ed7f8473794c370fbf455489c7c91986cd248ae7aff588bb3ecd8b46fe" }, "downloads": -1, "filename": "django_brotli-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6b43fc0b97b6cb055230eb8ce90d30af", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 7475, "upload_time": "2017-04-05T15:54:55", "url": "https://files.pythonhosted.org/packages/bb/9e/50986389dc5e80546c9519b5dad01b1d709c875f30e8488084771d108c7d/django_brotli-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1ff4f129914e96de692303b90a23f8a4", "sha256": "3aa42fc17dcb4a14507e470de51e67e6a8db87312124864d74ccddf9ec1c48aa" }, "downloads": -1, "filename": "django-brotli-0.1.3.tar.gz", "has_sig": false, "md5_digest": "1ff4f129914e96de692303b90a23f8a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4774, "upload_time": "2017-04-05T15:54:52", "url": "https://files.pythonhosted.org/packages/9d/b0/7be0d9473402ebe03df3da81a771f30e2b41856d55bf79a297a3f7f89e99/django-brotli-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "83602160b2bff60f64ca7efc4ba77c7d", "sha256": "10665f07183d1246e93d534665613308b940f9254466bb9d7cecce6dff93ecdb" }, "downloads": -1, "filename": "django_brotli-0.1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "83602160b2bff60f64ca7efc4ba77c7d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": "~=3.4", "size": 5040, "upload_time": "2018-11-07T10:14:14", "url": "https://files.pythonhosted.org/packages/2b/39/645e66704ddf4f75fbd420cf19eea2a8f4df9cdb80bd6810ee50e5bec292/django_brotli-0.1.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8468137c4125d98fd1cb48fc1d479778", "sha256": "576e6d9533b3ba73537e9bfbc92c99bd7ad4d8dba06fcae74e2d2e31357e322d" }, "downloads": -1, "filename": "django-brotli-0.1.4.tar.gz", "has_sig": false, "md5_digest": "8468137c4125d98fd1cb48fc1d479778", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.4", "size": 4704, "upload_time": "2018-11-07T10:14:15", "url": "https://files.pythonhosted.org/packages/9d/76/e7b3f3ab320581005bbb155d3f062952b8b8b7e76f42d968769c7a71b7f2/django-brotli-0.1.4.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "c1fa5ca9d7980d3de26361f4bca6b25e", "sha256": "ee45ac889e13ad1df21e55d2d18cf1db4c6e385938d78ade3168e17be65d4331" }, "downloads": -1, "filename": "django_brotli-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c1fa5ca9d7980d3de26361f4bca6b25e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": "~=3.5", "size": 4930, "upload_time": "2019-01-24T19:00:26", "url": "https://files.pythonhosted.org/packages/6f/63/c3911faf7913ef856f358ee3d308f2bdf3a51e863dbdbe6b89ff29ab1b4e/django_brotli-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b19ecafbd6174346fb86270d996ecfd5", "sha256": "a57e9f9350d78b60d95e59faf4c5c5e2c9d34aef50c12b95dd19a92cb67810e0" }, "downloads": -1, "filename": "django_brotli-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b19ecafbd6174346fb86270d996ecfd5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.5", "size": 4926, "upload_time": "2019-01-24T20:17:18", "url": "https://files.pythonhosted.org/packages/81/5b/14a26354beb430ce994fa121ed947e794e43d276378f4da8a8d0164b8261/django_brotli-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "001df256e7fe5d85975e9a54ad92905d", "sha256": "f98067814c6265d3d8c9edf43a30dde5e13fca274b887f2145f5ff1da4adeeab" }, "downloads": -1, "filename": "django-brotli-0.2.0.tar.gz", "has_sig": false, "md5_digest": "001df256e7fe5d85975e9a54ad92905d", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.5", "size": 4575, "upload_time": "2019-01-24T19:00:28", "url": "https://files.pythonhosted.org/packages/84/25/fc9bb82f85302980b5640be51cdf78a34bba4025865f651a865463045c0d/django-brotli-0.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c1fa5ca9d7980d3de26361f4bca6b25e", "sha256": "ee45ac889e13ad1df21e55d2d18cf1db4c6e385938d78ade3168e17be65d4331" }, "downloads": -1, "filename": "django_brotli-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c1fa5ca9d7980d3de26361f4bca6b25e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": "~=3.5", "size": 4930, "upload_time": "2019-01-24T19:00:26", "url": "https://files.pythonhosted.org/packages/6f/63/c3911faf7913ef856f358ee3d308f2bdf3a51e863dbdbe6b89ff29ab1b4e/django_brotli-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b19ecafbd6174346fb86270d996ecfd5", "sha256": "a57e9f9350d78b60d95e59faf4c5c5e2c9d34aef50c12b95dd19a92cb67810e0" }, "downloads": -1, "filename": "django_brotli-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b19ecafbd6174346fb86270d996ecfd5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.5", "size": 4926, "upload_time": "2019-01-24T20:17:18", "url": "https://files.pythonhosted.org/packages/81/5b/14a26354beb430ce994fa121ed947e794e43d276378f4da8a8d0164b8261/django_brotli-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "001df256e7fe5d85975e9a54ad92905d", "sha256": "f98067814c6265d3d8c9edf43a30dde5e13fca274b887f2145f5ff1da4adeeab" }, "downloads": -1, "filename": "django-brotli-0.2.0.tar.gz", "has_sig": false, "md5_digest": "001df256e7fe5d85975e9a54ad92905d", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.5", "size": 4575, "upload_time": "2019-01-24T19:00:28", "url": "https://files.pythonhosted.org/packages/84/25/fc9bb82f85302980b5640be51cdf78a34bba4025865f651a865463045c0d/django-brotli-0.2.0.tar.gz" } ] }