diff options
author | CoprDistGit <infra@openeuler.org> | 2023-03-09 11:07:19 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-03-09 11:07:19 +0000 |
commit | 5a22207c46fd43061e20fd4cbf1faaface44aea4 (patch) | |
tree | 55a0b6eda8ee1f146809454e4684d0c35efe1047 | |
parent | d8ef6fdd10b9525f38d2bc9df1352debbc96ff97 (diff) |
automatic import of python-flask-compress
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-flask-compress.spec | 425 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 427 insertions, 0 deletions
@@ -0,0 +1 @@ +/Flask-Compress-1.13.tar.gz diff --git a/python-flask-compress.spec b/python-flask-compress.spec new file mode 100644 index 0000000..e4fc2b8 --- /dev/null +++ b/python-flask-compress.spec @@ -0,0 +1,425 @@ +%global _empty_manifest_terminate_build 0 +Name: python-Flask-Compress +Version: 1.13 +Release: 1 +Summary: Compress responses in your Flask app with gzip, deflate or brotli. +License: MIT +URL: https://github.com/colour-science/flask-compress +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/4d/07/d2a0a1adc4111000519b9beca7cea1ac7a6065f3b121bb0280eca79f2edb/Flask-Compress-1.13.tar.gz +BuildArch: noarch + +Requires: python3-flask +Requires: python3-brotli + +%description +# Flask-Compress + +[](https://github.com/colour-science/flask-compress/actions/workflows/ci.yaml) +[](https://pypi.python.org/pypi/Flask-Compress) +[](https://pypi.python.org/pypi/Flask-Compress) + +Flask-Compress allows you to easily compress your [Flask](http://flask.pocoo.org/) application's responses with gzip, deflate or brotli. It originally started as a fork of [Flask-gzip](https://github.com/closeio/Flask-gzip). + +The preferred solution is to have a server (like [Nginx](http://wiki.nginx.org/Main)) automatically compress the static files for you. If you don't have that option Flask-Compress will solve the problem for you. + + +## How it works + +Flask-Compress both adds the various headers required for a compressed response and compresses the response data. +This makes serving compressed static files extremely easy. + +Internally, every time a request is made the extension will check if it matches one of the compressible MIME types +and whether the client and the server use some common compression algorithm, and will automatically attach the +appropriate headers. + +To determine the compression algorithm, the `Accept-Encoding` request header is inspected, respecting the +quality factor as described in [MDN docs](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding). +If no requested compression algorithm is supported by the server, we don't compress the response. If, on the other +hand, multiple suitable algorithms are found and are requested with the same quality factor, we choose the first one +defined in the `COMPRESS_ALGORITHM` option (see below). + + +## Installation + +If you use pip then installation is simply: + +```shell +$ pip install --user flask-compress +``` + +or, if you want the latest github version: + +```shell +$ pip install --user git+git://github.com/colour-science/flask-compress.git +``` + +You can also install Flask-Compress via Easy Install: + +```shell +$ easy_install flask-compress +``` + + +## Using Flask-Compress + +### Globally + +Flask-Compress is incredibly simple to use. In order to start compressing your Flask application's assets, the first thing to do is let Flask-Compress know about your [`flask.Flask`](http://flask.pocoo.org/docs/latest/api/#flask.Flask) application object. + +```python +from flask import Flask +from flask_compress import Compress + +app = Flask(__name__) +Compress(app) +``` + +In many cases, however, one cannot expect a Flask instance to be ready at import time, and a common pattern is to return a Flask instance from within a function only after other configuration details have been taken care of. In these cases, Flask-Compress provides a simple function, `flask_compress.Compress.init_app`, which takes your application as an argument. + +```python +from flask import Flask +from flask_compress import Compress + +compress = Compress() + +def start_app(): + app = Flask(__name__) + compress.init_app(app) + return app +``` + +In terms of automatically compressing your assets, passing your [`flask.Flask`](http://flask.pocoo.org/docs/latest/api/#flask.Flask) object to the `flask_compress.Compress` object is all that needs to be done. + +### Per-view compression + +Compression is possible per view using the `@compress.compressed()` decorator. Make sure to disable global compression first. + +```python +from flask import Flask +from flask_compress import Compress + +app = Flask(__name__) +app.config["COMPRESS_REGISTER"] = False # disable default compression of all eligible requests +compress = Compress() +compress.init_app(app) + +# Compress this view specifically +@app.route("/test") +@compress.compressed() +def view(): + pass +``` + +## Options + +Within your Flask application's settings you can provide the following settings to control the behavior of Flask-Compress. None of the settings are required. + +| Option | Description | Default | +| ------ | ----------- | ------- | +| `COMPRESS_MIMETYPES` | Set the list of mimetypes to compress here. | `[`<br>`'text/html',`<br>`'text/css',`<br>`'text/xml',`<br>`'application/json',`<br>`'application/javascript'`<br>`]` | +| `COMPRESS_LEVEL` | Specifies the gzip compression level. | `6` | +| `COMPRESS_BR_LEVEL` | Specifies the Brotli compression level. Ranges from 0 to 11. | `4` | +| `COMPRESS_BR_MODE` | For Brotli, the compression mode. The options are 0, 1, or 2. These correspond to "generic", "text" (for UTF-8 input), and "font" (for WOFF 2.0). | `0` | +| `COMPRESS_BR_WINDOW` | For Brotli, this specifies the base-2 logarithm of the sliding window size. Ranges from 10 to 24. | `22` | +| `COMPRESS_BR_BLOCK` | For Brotli, this provides the base-2 logarithm of the maximum input block size. If zero is provided, value will be determined based on the quality. Ranges from 16 to 24. | `0` | +| `COMPRESS_DEFLATE_LEVEL` | Specifies the deflate compression level. | `-1` | +| `COMPRESS_MIN_SIZE` | Specifies the minimum file size threshold for compressing files. | `500` | +| `COMPRESS_CACHE_KEY` | Specifies the cache key method for lookup/storage of response data. | `None` | +| `COMPRESS_CACHE_BACKEND` | Specified the backend for storing the cached response data. | `None` | +| `COMPRESS_REGISTER` | Specifies if compression should be automatically registered. | `True` | +| `COMPRESS_ALGORITHM` | Supported compression algorithms. | `['br', 'gzip', 'deflate']` | +| `COMPRESS_STREAMS` | Compress content streams. | `True` | + + +%package -n python3-Flask-Compress +Summary: Compress responses in your Flask app with gzip, deflate or brotli. +Provides: python-Flask-Compress +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-Flask-Compress +# Flask-Compress + +[](https://github.com/colour-science/flask-compress/actions/workflows/ci.yaml) +[](https://pypi.python.org/pypi/Flask-Compress) +[](https://pypi.python.org/pypi/Flask-Compress) + +Flask-Compress allows you to easily compress your [Flask](http://flask.pocoo.org/) application's responses with gzip, deflate or brotli. It originally started as a fork of [Flask-gzip](https://github.com/closeio/Flask-gzip). + +The preferred solution is to have a server (like [Nginx](http://wiki.nginx.org/Main)) automatically compress the static files for you. If you don't have that option Flask-Compress will solve the problem for you. + + +## How it works + +Flask-Compress both adds the various headers required for a compressed response and compresses the response data. +This makes serving compressed static files extremely easy. + +Internally, every time a request is made the extension will check if it matches one of the compressible MIME types +and whether the client and the server use some common compression algorithm, and will automatically attach the +appropriate headers. + +To determine the compression algorithm, the `Accept-Encoding` request header is inspected, respecting the +quality factor as described in [MDN docs](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding). +If no requested compression algorithm is supported by the server, we don't compress the response. If, on the other +hand, multiple suitable algorithms are found and are requested with the same quality factor, we choose the first one +defined in the `COMPRESS_ALGORITHM` option (see below). + + +## Installation + +If you use pip then installation is simply: + +```shell +$ pip install --user flask-compress +``` + +or, if you want the latest github version: + +```shell +$ pip install --user git+git://github.com/colour-science/flask-compress.git +``` + +You can also install Flask-Compress via Easy Install: + +```shell +$ easy_install flask-compress +``` + + +## Using Flask-Compress + +### Globally + +Flask-Compress is incredibly simple to use. In order to start compressing your Flask application's assets, the first thing to do is let Flask-Compress know about your [`flask.Flask`](http://flask.pocoo.org/docs/latest/api/#flask.Flask) application object. + +```python +from flask import Flask +from flask_compress import Compress + +app = Flask(__name__) +Compress(app) +``` + +In many cases, however, one cannot expect a Flask instance to be ready at import time, and a common pattern is to return a Flask instance from within a function only after other configuration details have been taken care of. In these cases, Flask-Compress provides a simple function, `flask_compress.Compress.init_app`, which takes your application as an argument. + +```python +from flask import Flask +from flask_compress import Compress + +compress = Compress() + +def start_app(): + app = Flask(__name__) + compress.init_app(app) + return app +``` + +In terms of automatically compressing your assets, passing your [`flask.Flask`](http://flask.pocoo.org/docs/latest/api/#flask.Flask) object to the `flask_compress.Compress` object is all that needs to be done. + +### Per-view compression + +Compression is possible per view using the `@compress.compressed()` decorator. Make sure to disable global compression first. + +```python +from flask import Flask +from flask_compress import Compress + +app = Flask(__name__) +app.config["COMPRESS_REGISTER"] = False # disable default compression of all eligible requests +compress = Compress() +compress.init_app(app) + +# Compress this view specifically +@app.route("/test") +@compress.compressed() +def view(): + pass +``` + +## Options + +Within your Flask application's settings you can provide the following settings to control the behavior of Flask-Compress. None of the settings are required. + +| Option | Description | Default | +| ------ | ----------- | ------- | +| `COMPRESS_MIMETYPES` | Set the list of mimetypes to compress here. | `[`<br>`'text/html',`<br>`'text/css',`<br>`'text/xml',`<br>`'application/json',`<br>`'application/javascript'`<br>`]` | +| `COMPRESS_LEVEL` | Specifies the gzip compression level. | `6` | +| `COMPRESS_BR_LEVEL` | Specifies the Brotli compression level. Ranges from 0 to 11. | `4` | +| `COMPRESS_BR_MODE` | For Brotli, the compression mode. The options are 0, 1, or 2. These correspond to "generic", "text" (for UTF-8 input), and "font" (for WOFF 2.0). | `0` | +| `COMPRESS_BR_WINDOW` | For Brotli, this specifies the base-2 logarithm of the sliding window size. Ranges from 10 to 24. | `22` | +| `COMPRESS_BR_BLOCK` | For Brotli, this provides the base-2 logarithm of the maximum input block size. If zero is provided, value will be determined based on the quality. Ranges from 16 to 24. | `0` | +| `COMPRESS_DEFLATE_LEVEL` | Specifies the deflate compression level. | `-1` | +| `COMPRESS_MIN_SIZE` | Specifies the minimum file size threshold for compressing files. | `500` | +| `COMPRESS_CACHE_KEY` | Specifies the cache key method for lookup/storage of response data. | `None` | +| `COMPRESS_CACHE_BACKEND` | Specified the backend for storing the cached response data. | `None` | +| `COMPRESS_REGISTER` | Specifies if compression should be automatically registered. | `True` | +| `COMPRESS_ALGORITHM` | Supported compression algorithms. | `['br', 'gzip', 'deflate']` | +| `COMPRESS_STREAMS` | Compress content streams. | `True` | + + +%package help +Summary: Development documents and examples for Flask-Compress +Provides: python3-Flask-Compress-doc +%description help +# Flask-Compress + +[](https://github.com/colour-science/flask-compress/actions/workflows/ci.yaml) +[](https://pypi.python.org/pypi/Flask-Compress) +[](https://pypi.python.org/pypi/Flask-Compress) + +Flask-Compress allows you to easily compress your [Flask](http://flask.pocoo.org/) application's responses with gzip, deflate or brotli. It originally started as a fork of [Flask-gzip](https://github.com/closeio/Flask-gzip). + +The preferred solution is to have a server (like [Nginx](http://wiki.nginx.org/Main)) automatically compress the static files for you. If you don't have that option Flask-Compress will solve the problem for you. + + +## How it works + +Flask-Compress both adds the various headers required for a compressed response and compresses the response data. +This makes serving compressed static files extremely easy. + +Internally, every time a request is made the extension will check if it matches one of the compressible MIME types +and whether the client and the server use some common compression algorithm, and will automatically attach the +appropriate headers. + +To determine the compression algorithm, the `Accept-Encoding` request header is inspected, respecting the +quality factor as described in [MDN docs](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding). +If no requested compression algorithm is supported by the server, we don't compress the response. If, on the other +hand, multiple suitable algorithms are found and are requested with the same quality factor, we choose the first one +defined in the `COMPRESS_ALGORITHM` option (see below). + + +## Installation + +If you use pip then installation is simply: + +```shell +$ pip install --user flask-compress +``` + +or, if you want the latest github version: + +```shell +$ pip install --user git+git://github.com/colour-science/flask-compress.git +``` + +You can also install Flask-Compress via Easy Install: + +```shell +$ easy_install flask-compress +``` + + +## Using Flask-Compress + +### Globally + +Flask-Compress is incredibly simple to use. In order to start compressing your Flask application's assets, the first thing to do is let Flask-Compress know about your [`flask.Flask`](http://flask.pocoo.org/docs/latest/api/#flask.Flask) application object. + +```python +from flask import Flask +from flask_compress import Compress + +app = Flask(__name__) +Compress(app) +``` + +In many cases, however, one cannot expect a Flask instance to be ready at import time, and a common pattern is to return a Flask instance from within a function only after other configuration details have been taken care of. In these cases, Flask-Compress provides a simple function, `flask_compress.Compress.init_app`, which takes your application as an argument. + +```python +from flask import Flask +from flask_compress import Compress + +compress = Compress() + +def start_app(): + app = Flask(__name__) + compress.init_app(app) + return app +``` + +In terms of automatically compressing your assets, passing your [`flask.Flask`](http://flask.pocoo.org/docs/latest/api/#flask.Flask) object to the `flask_compress.Compress` object is all that needs to be done. + +### Per-view compression + +Compression is possible per view using the `@compress.compressed()` decorator. Make sure to disable global compression first. + +```python +from flask import Flask +from flask_compress import Compress + +app = Flask(__name__) +app.config["COMPRESS_REGISTER"] = False # disable default compression of all eligible requests +compress = Compress() +compress.init_app(app) + +# Compress this view specifically +@app.route("/test") +@compress.compressed() +def view(): + pass +``` + +## Options + +Within your Flask application's settings you can provide the following settings to control the behavior of Flask-Compress. None of the settings are required. + +| Option | Description | Default | +| ------ | ----------- | ------- | +| `COMPRESS_MIMETYPES` | Set the list of mimetypes to compress here. | `[`<br>`'text/html',`<br>`'text/css',`<br>`'text/xml',`<br>`'application/json',`<br>`'application/javascript'`<br>`]` | +| `COMPRESS_LEVEL` | Specifies the gzip compression level. | `6` | +| `COMPRESS_BR_LEVEL` | Specifies the Brotli compression level. Ranges from 0 to 11. | `4` | +| `COMPRESS_BR_MODE` | For Brotli, the compression mode. The options are 0, 1, or 2. These correspond to "generic", "text" (for UTF-8 input), and "font" (for WOFF 2.0). | `0` | +| `COMPRESS_BR_WINDOW` | For Brotli, this specifies the base-2 logarithm of the sliding window size. Ranges from 10 to 24. | `22` | +| `COMPRESS_BR_BLOCK` | For Brotli, this provides the base-2 logarithm of the maximum input block size. If zero is provided, value will be determined based on the quality. Ranges from 16 to 24. | `0` | +| `COMPRESS_DEFLATE_LEVEL` | Specifies the deflate compression level. | `-1` | +| `COMPRESS_MIN_SIZE` | Specifies the minimum file size threshold for compressing files. | `500` | +| `COMPRESS_CACHE_KEY` | Specifies the cache key method for lookup/storage of response data. | `None` | +| `COMPRESS_CACHE_BACKEND` | Specified the backend for storing the cached response data. | `None` | +| `COMPRESS_REGISTER` | Specifies if compression should be automatically registered. | `True` | +| `COMPRESS_ALGORITHM` | Supported compression algorithms. | `['br', 'gzip', 'deflate']` | +| `COMPRESS_STREAMS` | Compress content streams. | `True` | + + +%prep +%autosetup -n Flask-Compress-1.13 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-Flask-Compress -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Thu Mar 09 2023 Python_Bot <Python_Bot@openeuler.org> - 1.13-1 +- Package Spec generated @@ -0,0 +1 @@ +6a0fa8586964b97f0c6aa418f45760f0 Flask-Compress-1.13.tar.gz |