|
|
|
[tox]
|
|
|
|
envlist = {py26,py27,pypy}-{lowest,release,devel}{,-simplejson}, {py33,py34,py35,py36}-{release,devel}{,-simplejson}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[testenv]
|
|
|
|
passenv = LANG
|
|
|
|
usedevelop=true
|
|
|
|
commands =
|
|
|
|
# We need to install those after Flask is installed.
|
|
|
|
pip install -e examples/flaskr
|
|
|
|
pip install -e examples/minitwit
|
|
|
|
pip install -e examples/patterns/largerapp
|
|
|
|
pytest --cov=flask --cov-report html []
|
|
|
|
deps=
|
|
|
|
pytest
|
|
|
|
pytest-cov
|
|
|
|
greenlet
|
|
|
|
|
|
|
|
lowest: Werkzeug==0.7
|
|
|
|
lowest: Jinja2==2.4
|
|
|
|
lowest: itsdangerous==0.21
|
|
|
|
lowest: blinker==1.0
|
|
|
|
release: blinker
|
|
|
|
devel: git+https://github.com/pallets/werkzeug.git
|
|
|
|
devel: git+https://github.com/pallets/jinja.git
|
|
|
|
devel: git+https://github.com/pallets/itsdangerous.git
|
|
|
|
devel: git+https://github.com/jek/blinker.git
|
|
|
|
simplejson: simplejson
|
Fix send_file to work with non-ascii filenames
This commit implements https://tools.ietf.org/html/rfc2231#section-4 in
order to support sending unicode characters. Tested on both Firefox and
Chromium under Linux.
This adds unidecode as a dependency, which might be relaxed by using
.encode('latin-1', 'ignore') but wouldn't be as useful.
Also, added a test for the correct headers to be added.
Previously, using a filename parameter to send_file with unicode characters, it
failed with the next error since HTTP headers don't allow non latin-1 characters.
Error on request:
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/werkzeug/serving.py", line 193, in run_wsgi
execute(self.server.app)
File "/usr/lib/python3.6/site-packages/werkzeug/serving.py", line 186, in execute
write(b'')
File "/usr/lib/python3.6/site-packages/werkzeug/serving.py", line 152, in write
self.send_header(key, value)
File "/usr/lib64/python3.6/http/server.py", line 509, in send_header
("%s: %s\r\n" % (keyword, value)).encode('latin-1', 'strict'))
UnicodeEncodeError: 'latin-1' codec can't encode character '\uff0f' in position 58: ordinal not in range(256)
Fixes #1286
8 years ago
|
|
|
unidecode
|
|
|
|
|
|
|
|
[testenv:docs]
|
|
|
|
deps = sphinx
|
|
|
|
commands = sphinx-build -W -b linkcheck -d {envtmpdir}/doctrees docs docs/_build/linkcheck
|