[Python-modules-commits] [python-aiohttp] 01/05: Import python-aiohttp_2.3.6.orig.tar.gz
Piotr Ożarowski
piotr at moszumanska.debian.org
Wed Dec 20 11:37:24 UTC 2017
This is an automated email from the git hooks/post-receive script.
piotr pushed a commit to branch master
in repository python-aiohttp.
commit d3a157b0cb3c3a101e8efb1d2480a925bc2a640f
Author: Piotr Ożarowski <piotr at debian.org>
Date: Wed Dec 20 12:01:32 2017 +0100
Import python-aiohttp_2.3.6.orig.tar.gz
---
appveyor.yml => .appveyor.yml | 15 +-
ISSUE_TEMPLATE.md => .github/ISSUE_TEMPLATE.md | 0
.../PULL_REQUEST_TEMPLATE.md | 21 +-
.gitignore | 4 +-
.pyup.yml | 2 +
.travis.yml | 368 +-
CHANGES.rst | 416 +-
CHANGES/.gitignore | 1 +
CONTRIBUTING.rst | 66 +-
CONTRIBUTORS.txt | 19 +
HISTORY.rst | 901 +--
MANIFEST.in | 4 +
Makefile | 29 +-
PKG-INFO | 1202 ++--
README.rst | 86 +-
aiohttp.egg-info/PKG-INFO | 1202 ++--
aiohttp.egg-info/SOURCES.txt | 38 +-
aiohttp.egg-info/requires.txt | 2 +-
aiohttp/__init__.py | 7 +-
aiohttp/_frozenlist.c | 2407 ++++++--
aiohttp/_frozenlist.pyx | 5 +-
aiohttp/_http_parser.c | 6473 +++++++++++++-------
aiohttp/_http_parser.pyx | 113 +-
aiohttp/_websocket.c | 603 +-
aiohttp/abc.py | 11 +
aiohttp/client.py | 163 +-
aiohttp/client_exceptions.py | 123 +-
aiohttp/client_proto.py | 6 +-
aiohttp/client_reqrep.py | 111 +-
aiohttp/client_ws.py | 13 +-
aiohttp/connector.py | 301 +-
aiohttp/cookiejar.py | 32 +-
aiohttp/formdata.py | 2 +-
aiohttp/hdrs.py | 2 +
aiohttp/helpers.py | 283 +-
aiohttp/http_exceptions.py | 6 +-
aiohttp/http_parser.py | 68 +-
aiohttp/http_websocket.py | 184 +-
aiohttp/http_writer.py | 32 -
aiohttp/locks.py | 41 +
aiohttp/payload.py | 37 +-
aiohttp/pytest_plugin.py | 175 +-
aiohttp/resolver.py | 26 +-
aiohttp/streams.py | 65 +-
aiohttp/test_utils.py | 83 +-
aiohttp/web.py | 69 +-
aiohttp/web_fileresponse.py | 15 +-
aiohttp/web_middlewares.py | 62 +-
aiohttp/web_protocol.py | 51 +-
aiohttp/web_request.py | 236 +-
aiohttp/web_response.py | 73 +-
aiohttp/web_server.py | 8 +-
aiohttp/web_urldispatcher.py | 266 +-
aiohttp/web_ws.py | 19 +-
aiohttp/worker.py | 14 +-
build-wheels.sh | 23 -
codecov.yml | 3 +
demos/polls/aiohttpdemo_polls/utils.py | 4 +-
demos/polls/requirements.txt | 1 +
demos/polls/sql/install.sh | 21 +-
docs/abc.rst | 24 +-
docs/api.rst | 55 +-
docs/built_with.rst | 22 +
docs/changes.rst | 4 -
docs/client.rst | 211 +-
docs/client_reference.rst | 593 +-
docs/conf.py | 7 +-
docs/contributing.rst | 4 -
docs/deployment.rst | 13 +-
docs/essays.rst | 1 +
docs/external.rst | 11 +
docs/faq.rst | 53 +-
docs/glossary.rst | 27 +-
docs/index.rst | 77 +-
docs/logging.rst | 24 +-
docs/make.bat | 0
docs/{migration.rst => migration_to_2xx.rst} | 78 +-
docs/multipart.rst | 4 -
docs/new_router.rst | 4 -
docs/powered_by.rst | 21 +
docs/spelling_wordlist.txt | 72 +-
docs/streams.rst | 34 +-
docs/testing.rst | 55 +-
docs/third_party.rst | 132 +-
docs/toc.rst | 35 +
docs/tutorial.rst | 3 -
docs/web.rst | 511 +-
docs/web_lowlevel.rst | 4 -
docs/web_reference.rst | 423 +-
examples/background_tasks.py | 0
examples/basic_srv.py | 0
examples/cli_app.py | 0
examples/client_auth.py | 0
examples/client_json.py | 0
examples/client_ws.py | 0
examples/curl.py | 0
examples/fake_server.py | 51 +-
examples/legacy/crawl.py | 0
examples/legacy/srv.py | 0
examples/legacy/tcp_protocol_parser.py | 0
examples/static_files.py | 0
examples/web_classview1.py | 0
examples/web_cookies.py | 0
examples/web_rewrite_headers_middleware.py | 0
examples/web_srv.py | 0
examples/{web_srv.py => web_srv_route_deco.py} | 32 +-
examples/{web_srv.py => web_srv_route_table.py} | 31 +-
examples/web_ws.py | 0
pyproject.toml | 5 +
requirements-ci.txt | 24 -
requirements-dev.txt | 5 -
requirements-wheel.txt | 3 -
requirements/ci-wheel.txt | 23 +
requirements/ci.txt | 5 +
requirements/dev.txt | 5 +
requirements/doc-spelling.txt | 1 +
requirements/doc.txt | 3 +
requirements/wheel.txt | 3 +
run_docker.sh | 25 -
setup.cfg | 72 +-
setup.py | 12 +-
tests/autobahn/server.py | 2 +-
tests/conftest.py | 2 +-
tests/test_client_exceptions.py | 10 +
tests/test_client_functional.py | 254 +-
tests/test_client_request.py | 62 +-
tests/test_client_response.py | 13 +-
tests/test_client_session.py | 22 +-
tests/test_client_ws.py | 136 +
tests/test_client_ws_functional.py | 81 +-
tests/test_connector.py | 476 +-
tests/test_cookiejar.py | 33 +-
tests/test_flowcontrol_streams.py | 6 +-
tests/test_helpers.py | 211 +-
tests/test_http_parser.py | 105 +-
tests/test_locks.py | 62 +
tests/test_loop.py | 36 +
tests/test_multipart.py | 2 +-
tests/test_payload.py | 9 +
tests/test_proxy.py | 427 +-
tests/test_proxy_functional.py | 140 +-
tests/test_py35/test_client.py | 24 +-
tests/test_py35/test_streams_35.py | 21 +
tests/test_py35/test_test_utils_35.py | 2 +-
tests/test_pytest_plugin.py | 131 +-
tests/test_resolver.py | 25 +-
tests/test_route_def.py | 286 +
tests/test_run_app.py | 39 +-
tests/test_streams.py | 145 +-
tests/test_test_utils.py | 106 +-
tests/test_urldispatch.py | 127 +
tests/test_web_application.py | 48 +-
tests/test_web_functional.py | 88 +-
tests/test_web_middleware.py | 292 +-
tests/test_web_request.py | 367 +-
tests/test_web_request_handler.py | 8 +-
tests/test_web_response.py | 151 +-
tests/test_web_sendfile_functional.py | 54 +
tests/test_web_server.py | 32 +-
tests/test_web_websocket.py | 3 +-
tests/test_web_websocket_functional.py | 2 -
tests/test_websocket_handshake.py | 136 +-
tests/test_websocket_parser.py | 128 +-
tests/test_websocket_writer.py | 16 +
tests/test_worker.py | 16 +-
tools/build-wheels.sh | 65 +
build.cmd => tools/build.cmd | 0
tools/check_changes.py | 48 +
tools/drop_merged_branches.sh | 3 +
tools/run_docker.sh | 37 +
tox.ini | 9 +-
171 files changed, 17299 insertions(+), 6614 deletions(-)
diff --git a/appveyor.yml b/.appveyor.yml
similarity index 60%
rename from appveyor.yml
rename to .appveyor.yml
index d7e1ab0..b0294bb 100644
--- a/appveyor.yml
+++ b/.appveyor.yml
@@ -1,8 +1,6 @@
-version: 2.0-{build}
-
environment:
PYPI_PASSWD:
- secure: syNUF3e8AEPY327rWBkKag==
+ secure: u+K6dKi7+CXXVFEUG4V7zUyV3w7Ntg0Ork/RGVV0eSQ=
matrix:
- PYTHON: "C:\\Python34"
- PYTHON: "C:\\Python34-x64"
@@ -13,17 +11,16 @@ environment:
- PYTHON: "C:\\Python36-x64"
install:
- - "build.cmd %PYTHON%\\python.exe -m pip install wheel"
- - "build.cmd %PYTHON%\\python.exe -m pip install twine"
- - "build.cmd %PYTHON%\\python.exe -m pip install -r requirements-ci.txt"
+ - "tools/build.cmd %PYTHON%\\python.exe -m pip install -U wheel setuptools"
+ - "tools/build.cmd %PYTHON%\\python.exe -m pip install -r requirements/ci.txt"
build: false
test_script:
- - "build.cmd %PYTHON%\\python.exe setup.py test"
+ - "tools/build.cmd %PYTHON%\\python.exe setup.py test"
after_test:
- - "build.cmd %PYTHON%\\python.exe setup.py bdist_wheel"
+ - "tools/build.cmd %PYTHON%\\python.exe setup.py sdist bdist_wheel"
artifacts:
- path: dist\*
@@ -31,7 +28,7 @@ artifacts:
deploy_script:
- ps: >-
if($env:appveyor_repo_tag -eq 'True') {
- Invoke-Expression "$env:PYTHON\\python.exe -m twine upload dist/* --username fafhrd --password $env:PYPI_PASSWD"
+ Invoke-Expression "$env:PYTHON\\python.exe -m twine upload dist/* --username andrew.svetlov --password $env:PYPI_PASSWD"
}
#notifications:
diff --git a/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md
similarity index 100%
rename from ISSUE_TEMPLATE.md
rename to .github/ISSUE_TEMPLATE.md
diff --git a/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
similarity index 50%
rename from PULL_REQUEST_TEMPLATE.md
rename to .github/PULL_REQUEST_TEMPLATE.md
index 084e7ad..b1362dd 100644
--- a/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -1,13 +1,5 @@
<!-- Thank you for your contribution!
- Before submit your Pull Request, make sure you picked
- the right branch:
-
- - If you propose a new feature or improvement, select "master"
- as a target branch;
- - If this is a bug fix or documentation amendment, select
- the latest release branch (which looks like "0.xx") -->
-
## What do these changes do?
<!-- Please give a short brief about these changes. -->
@@ -28,6 +20,13 @@
- [ ] If you provide code modification, please add yourself to `CONTRIBUTORS.txt`
* The format is <Name> <Surname>.
* Please keep alphabetical order, the file is sorted by names.
-- [ ] Add a new entry to `CHANGES.rst`
- * Choose any open position to avoid merge conflicts with other PRs.
- * Add a link to the issue you are fixing (if any) using `#issue_number` format at the end of changelog message. Use Pull Request number if there are no issues for PR or PR covers the issue only partially.
+- [ ] Add a new news fragment into the `changes` folder
+ * name it `<issue_id>.<type>` for example (588.bug)
+ * if you don't have an `issue_id` change it to the pr id after creating the pr
+ * ensure type is one of the following:
+ * `.feature`: Signifying a new feature.
+ * `.bugfix`: Signifying a bug fix.
+ * `.doc`: Signifying a documentation improvement.
+ * `.removal`: Signifying a deprecation or removal of public API.
+ * `.misc`: A ticket has been closed, but it is not of interest to users.
+ * Make sure to use full sentences with correct case and punctuation, for example: "Fix issue with non-ascii contents in doctest text files."
diff --git a/.gitignore b/.gitignore
index 6a2f331..9d27f04 100644
--- a/.gitignore
+++ b/.gitignore
@@ -26,8 +26,7 @@ aiohttp/_websocket.html
aiohttp/_http_parser.c
bin
build
-cover
-coverage
+htmlcov
develop-eggs
dist
docs/_build/
@@ -46,3 +45,4 @@ virtualenv.py
.develop
.gitconfig
.flake
+.python-version
diff --git a/.pyup.yml b/.pyup.yml
index fd44d31..75f9711 100644
--- a/.pyup.yml
+++ b/.pyup.yml
@@ -1,2 +1,4 @@
# Label PRs with `deps-update` label
label_prs: deps-update
+
+schedule: every week
diff --git a/.travis.yml b/.travis.yml
index 1b45d4a..e213bf5 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,69 +1,321 @@
-sudo: required
-services:
- - docker
+sudo: false
language: python
python:
- # python3.4.2 has bug in http.cookies module, aiohttp provides fix
- - 3.4.2
- - 3.4.3
- - 3.5.2
- # - 3.5.3
- - 3.5
- - 3.6
- # - 3.7-dev
- # - 'nightly'
-
-os:
- - linux
-# - osx # doesn't work on MacOSX -- the system has no Python installed
-
-matrix:
- allow_failures:
- - python: '3.6-dev'
- - python: 'nightly'
- - os: osx
-
-cache:
- directories:
- - $HOME/.cache/pip
-
-before_cache:
- - rm -f $HOME/.cache/pip/log/debug.log
+# python3.4.2 has bug in http.cookies module, aiohttp provides fix for it
+- 3.4.2
+- 3.4.3
+- 3.5.2
+- 3.5
+- &mainstream_python 3.6
+- 3.6-dev
+- nightly
+- &pypy3 pypy3.5-5.8.0
install:
- - sudo apt-get install enchant
- - pip install --upgrade pip wheel
- - pip install --upgrade setuptools
- - pip install --upgrade setuptools-git
- - pip install -r requirements-ci.txt
- - pip install aiodns
- - pip install codecov
- - if python -c "import sys; sys.exit(sys.version_info < (3,5))"; then
- pip install uvloop;
- fi
- - pip install sphinxcontrib-spelling
+- &upgrade_python_toolset pip install --upgrade pip wheel setuptools
+- pip install -r requirements/ci.txt
script:
- - make cov-dev-full
+- make cov-ci-no-ext
+- make cov-ci-aio-debug
+- make cov-ci-run
- - if python -c "import sys; sys.exit(sys.version_info < (3,5))"; then
- make doc;
- make doc-spelling;
+after_success:
+- codecov
+
+_helpers:
+- &_mainstream_python_base
+ python: *mainstream_python
+- &_reset_steps
+ env: []
+ before_install: skip
+ install: skip
+ script: skip
+ after_success: []
+- &_lint_base
+ stage: &doc_stage_name docs, linting and pre-test checks
+ <<: *_mainstream_python_base
+ <<: *_reset_steps
+ install:
+ - *upgrade_python_toolset
+ - pip install -U -r requirements/dev.txt
+- &_doc_base
+ <<: *_lint_base
+ install:
+ - *upgrade_python_toolset
+ - pip install -U -r requirements/dev.txt -r requirements/doc.txt -r requirements/doc-spelling.txt
+ after_failure: cat docs/_build/spelling/output.txt
+ addons:
+ apt:
+ packages:
+ - libenchant-dev
+- &osx_python_base
+ stage: &stage_test_osx_name test under OS X (last chance to fail before deploy available)
+ os: osx
+ language: generic
+ python: *pypy3
+ env:
+ - &env_pypy3 PYTHON_VERSION=pypy3.5-5.8.0
+ - &env_pyenv PYENV_ROOT="$HOME/.pyenv"
+ - &env_path PATH="$PYENV_ROOT/bin:$PATH"
+ before_install:
+ - brew update
+ - brew install readline xz
+ - &ensure_pyenv_installed |
+ if [ ! -f "$PYENV_ROOT/bin/pyenv" ]
+ then
+ rm -rf "$PYENV_ROOT"
+ curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash
fi
+ pyenv update
+ eval "$(pyenv init -)"
+ eval "$(pyenv virtualenv-init -)"
+ - &install_python pyenv install --skip-existing --keep --verbose "$PYTHON_VERSION"
+ - &switch_python pyenv shell "$PYTHON_VERSION"
+ - &python_version python --version
+ before_cache:
+ - brew --cache
+- &generic_deploy_base
+ stage: &deploy_stage_name deploy (PYPI upload itself runs only for tagged commits)
+ <<: *_mainstream_python_base
+ deploy: &deploy_step
+ provider: pypi
+ # `skip_cleanup: true` is required to preserve binary wheels, built
+ # inside of manylinux1 docker container during `script` step above.
+ skip_cleanup: true
+ user: andrew.svetlov
+ password:
+ secure: ZQKbdPT9BlNqP5CTbWRQyeyig7Bpf7wsnYVQIQPOZc9Ec74A+dsbagstR1sPkAO+d+5PN0pZMovvmU7OQhSVPAnJ74nsN90/fL4ux3kqYecMbevv0rJg20hMXSSkwMEIpjUsMdMjJvZAcaKytGWmKL0qAlOJHhixd1pBbWyuIUE=
+ # Although Travis CI instructs `setup.py` to build source distribution,
+ # which is default value for distribution option (`distribution: sdist`),
+ # it will also upload all wheels we've previously built in manylinux1
+ # docker container using `twine upload -r pypi dist/*` command.
+ # Also since commit https://github.com/travis-ci/dpl/commit/90b5e39
+ # it is default that Travis PYPI provider has `skip_upload_docs: true`
+ # set by default.
+ # Besides above, we don't do cleanup of `dist/*`, because it's being done
+ # by Travis CI PYPI deployment provider after upload, unconditionally.
+ on:
+ tags: true
+ all_branches: true
+- &osx_pypi_deploy_base_1011
+ <<: *osx_python_base
+ <<: *generic_deploy_base
+ osx_image: xcode7.3
+ script: skip
+ after_success: []
+ env:
+ - &env_os1011_msg Build and deploy to PYPI of OS X 10.11 binary wheel
+ - *env_py36
+ - *env_pyenv
+ - *env_path
+ deploy:
+ <<: *deploy_step
+ skip_cleanup: false
+ distributions: bdist_wheel
+- &osx_pypi_deploy_base_1012
+ <<: *osx_pypi_deploy_base_1011
+ osx_image: xcode8.1
+ env:
+ - &env_os1012_msg Build and deploy to PYPI of OS X 10.12 binary wheel
+ - *env_py36
+ - *env_pyenv
+ - *env_path
+- &osx_pypi_deploy_base_1010
+ <<: *osx_pypi_deploy_base_1011
+ osx_image: xcode6.4
+ env:
+ - &env_os1010_msg Build and deploy to PYPI of OS X 10.10 binary wheel
+ - *env_py36
+ - *env_pyenv
+ - *env_path
-after_success:
- - codecov
- - ./run_docker.sh
-
-deploy:
- provider: pypi
- user: andrew.svetlov
- password:
- secure: ZQKbdPT9BlNqP5CTbWRQyeyig7Bpf7wsnYVQIQPOZc9Ec74A+dsbagstR1sPkAO+d+5PN0pZMovvmU7OQhSVPAnJ74nsN90/fL4ux3kqYecMbevv0rJg20hMXSSkwMEIpjUsMdMjJvZAcaKytGWmKL0qAlOJHhixd1pBbWyuIUE=
- distributions: "sdist"
- on:
- tags: true
- all_branches: true
- python: 3.6
+# doesn't work on MacOSX out of the box -- the system has no Python installed
+# there's a workaround to use `language: generic` and install it, but it's slow
+os: linux
+
+jobs:
+ fast_finish: true
+ allow_failures:
+ - python: nightly
+ - python: *pypy3
+
+ include:
+ - <<: *_doc_base
+ env:
+ - docs
+ script:
+ - make doc-spelling
+
+ - <<: *_lint_base
+ env:
+ - flake8
+ script:
+ - flake8 aiohttp --exclude=aiohttp/backport_cookies.py examples tests demos
+
+ - <<: *_lint_base
+ env:
+ - dist setup check
+ install:
+ - *upgrade_python_toolset
+ - pip install -r requirements/doc.txt
+ script:
+ - python setup.py check --metadata --restructuredtext --strict --verbose
+
+ - <<: *osx_python_base
+ python: 3.4.2
+ env:
+ - &env_py34 PYTHON_VERSION=3.4.2
+ - *env_pyenv
+ - *env_path
+ - <<: *osx_python_base
+ python: 3.4.3
+ env:
+ - &env_py34 PYTHON_VERSION=3.4.3
+ - *env_pyenv
+ - *env_path
+ - <<: *osx_python_base
+ python: 3.5.3
+ env:
+ - &env_py35 PYTHON_VERSION=3.5.3
+ - *env_pyenv
+ - *env_path
+ - <<: *osx_python_base
+ python: *mainstream_python
+ env:
+ - &env_py36 PYTHON_VERSION=3.6.3
+ - *env_pyenv
+ - *env_path
+ - <<: *osx_python_base
+ python: *mainstream_python
+ env:
+ - PYTHON_VERSION=3.6-dev
+ - *env_pyenv
+ - *env_path
+ - <<: *osx_python_base
+ python: nightly
+ env:
+ - PYTHON_VERSION=3.7-dev
+ - *env_pyenv
+ - *env_path
+ # pypy3.5-5.8.0 fails under OS X because it's unsupported
+
+ # Build and deploy manylinux1 binary wheels and source distribution
+ - <<: *generic_deploy_base
+ <<: *_reset_steps
+ env: Build and deploy to PYPI of manylinux1 binary wheels for all supported Pythons and source distribution
+ dist: trusty
+ group: edge
+ services:
+ - docker
+ script:
+ - ./tools/run_docker.sh "aiohttp"
+ - pip install -r requirements/ci.txt # to compile *.c files by Cython
+ deploy:
+ provider: pypi
+ # `skip_cleanup: true` is required to preserve binary wheels, built
+ # inside of manylinux1 docker container during `script` step above.
+ skip_cleanup: true
+ user: andrew.svetlov
+ password:
+ secure: ZQKbdPT9BlNqP5CTbWRQyeyig7Bpf7wsnYVQIQPOZc9Ec74A+dsbagstR1sPkAO+d+5PN0pZMovvmU7OQhSVPAnJ74nsN90/fL4ux3kqYecMbevv0rJg20hMXSSkwMEIpjUsMdMjJvZAcaKytGWmKL0qAlOJHhixd1pBbWyuIUE=
+ # Although Travis CI instructs `setup.py` to build source distribution,
+ # which is default value for distribution option (`distribution: sdist`),
+ # it will also upload all wheels we've previously built in manylinux1
+ # docker container using `twine upload -r pypi dist/*` command.
+ # Also since commit https://github.com/travis-ci/dpl/commit/90b5e39
+ # it is default that Travis PYPI provider has `skip_upload_docs: true`
+ # set by default.
+ # Besides above, we don't do cleanup of `dist/*`, because it's being done
+ # by Travis CI PYPI deployment provider after upload, unconditionally.
+ on:
+ tags: true
+ all_branches: true
+
+ # Build and deploy MacOS binary wheels for each OSX+Python combo possible
+ # OS X 10.10, Python 3.4
+ - <<: *osx_pypi_deploy_base_1010
+ python: 3.4
+ env:
+ - *env_os1010_msg
+ - *env_py34
+ - *env_pyenv
+ - *env_path
+ # OS X 10.10, Python 3.5
+ - <<: *osx_pypi_deploy_base_1010
+ python: 3.5
+ env:
+ - *env_os1010_msg
+ - *env_py35
+ - *env_pyenv
+ - *env_path
+ # OS X 10.10, Python 3.6
+ - <<: *osx_pypi_deploy_base_1010
+ env:
+ - *env_os1010_msg
+ - *env_py36
+ - *env_pyenv
+ - *env_path
+ # OS X 10.11, Python 3.4
+ - <<: *osx_pypi_deploy_base_1011
+ python: 3.4
+ env:
+ - *env_os1011_msg
+ - *env_py34
+ - *env_pyenv
+ - *env_path
+ # OS X 10.11, Python 3.5
+ - <<: *osx_pypi_deploy_base_1011
+ python: 3.5
+ env:
+ - *env_os1011_msg
+ - *env_py35
+ - *env_pyenv
+ - *env_path
+ # OS X 10.11, Python 3.6
+ - <<: *osx_pypi_deploy_base_1011
+ env:
+ - *env_os1011_msg
+ - *env_py36
+ - *env_pyenv
+ - *env_path
+ # OS X 10.12, Python 3.4
+ - <<: *osx_pypi_deploy_base_1012
+ python: 3.4
+ env:
+ - *env_os1012_msg
+ - *env_py34
+ - *env_pyenv
+ - *env_path
+ # OS X 10.12, Python 3.5
+ - <<: *osx_pypi_deploy_base_1012
+ python: 3.5
+ env:
+ - *env_os1012_msg
+ - *env_py35
+ - *env_pyenv
+ - *env_path
+ # OS X 10.12, Python 3.6
+ - <<: *osx_pypi_deploy_base_1012
+ env:
+ - *env_os1012_msg
+ - *env_py36
+ - *env_pyenv
+ - *env_path
+
+stages:
+- *doc_stage_name
+- test
+- name: *stage_test_osx_name
+ if: type IN (api, cron)
+- name: *deploy_stage_name
+ # This will prevent deploy unless it's a tagged commit:
+ if: tag IS present
+
+
+cache: pip
+
+before_cache:
+- rm -f $HOME/.cache/pip/log/debug.log
diff --git a/CHANGES.rst b/CHANGES.rst
index d8e2cb7..91397c4 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -1,5 +1,234 @@
-Changes
-=======
+=========
+Changelog
+=========
+
+..
+ You should *NOT* be adding new change log entries to this file, this
+ file is managed by towncrier. You *may* edit previous change logs to
+ fix problems like typo corrections or such.
+ To add a new change log entry, please see
+ https://pip.pypa.io/en/latest/development/#adding-a-news-entry
+ we named the news folder "changes".
+
+ WARNING: Don't drop the next directive!
+
+.. towncrier release notes start
+
+2.3.6 (2017-12-04)
+==================
+
+- Correct `request.app` context (for handlers not just middlewares). (#2577)
+
+
+2.3.5 (2017-11-30)
+==================
+
+- Fix compatibility with `pytest` 3.3+ (#2565)
+
+
+2.3.4 (2017-11-29)
+==================
+
+- Make `request.app` point to proper application instance when using nested
+ applications (with middlewares). (#2550)
+- Change base class of ClientConnectorSSLError to ClientSSLError from
+ ClientConnectorError. (#2563)
+- Return client connection back to free pool on error in `connector.connect()`.
+ (#2567)
+
+
+2.3.3 (2017-11-17)
+==================
+
+- Having a `;` in Response content type does not assume it contains a charset
+ anymore. (#2197)
+- Use `getattr(asyncio, 'async')` for keeping compatibility with Python 3.7.
+ (#2476)
+- Ignore `NotImplementedError` raised by `set_child_watcher` from `uvloop`.
+ (#2491)
+- Fix warning in `ClientSession.__del__` by stopping to try to close it.
+ (#2523)
+- Fixed typo's in Third-party libraries page. And added async-v20 to the list
+ (#2510)
+
+
+2.3.2 (2017-11-01)
+==================
+
+- Fix passing client max size on cloning request obj. (#2385)
+- Fix ClientConnectorSSLError and ClientProxyConnectionError for proxy
+ connector. (#2408)
+- Drop generated `_http_parser` shared object from tarball distribution. (#2414)
+- Fix connector convert OSError to ClientConnectorError. (#2423)
+- Fix connection attempts for multiple dns hosts. (#2424)
+- Fix ValueError for AF_INET6 sockets if a preexisting INET6 socket to the
+ `aiohttp.web.run_app` function. (#2431)
+- `_SessionRequestContextManager` closes the session properly now. (#2441)
+- Rename `from_env` to `trust_env` in client reference. (#2451)
+
+
+2.3.1 (2017-10-18)
+==================
+
+- Relax attribute lookup in warning about old-styled middleware (#2340)
+
+
+2.3.0 (2017-10-18)
+==================
+
+Features
+--------
+
+- Add SSL related params to `ClientSession.request` (#1128)
+- Make enable_compression work on HTTP/1.0 (#1828)
+- Deprecate registering synchronous web handlers (#1993)
+- Switch to `multidict 3.0`. All HTTP headers preserve casing now but compared
+ in case-insensitive way. (#1994)
+- Improvement for `normalize_path_middleware`. Added possibility to handle URLs
+ with query string. (#1995)
+- Use towncrier for CHANGES.txt build (#1997)
+- Implement `trust_env=True` param in `ClientSession`. (#1998)
+- Added variable to customize proxy headers (#2001)
+- Implement `router.add_routes` and router decorators. (#2004)
+- Deprecated `BaseRequest.has_body` in favor of
+ `BaseRequest.can_read_body` Added `BaseRequest.body_exists`
+ attribute that stays static for the lifetime of the request (#2005)
+- Provide `BaseRequest.loop` attribute (#2024)
+- Make `_CoroGuard` awaitable and fix `ClientSession.close` warning message
+ (#2026)
+- Responses to redirects without Location header are returned instead of
+ raising a RuntimeError (#2030)
+- Added `get_client`, `get_server`, `setUpAsync` and `tearDownAsync` methods to
+ AioHTTPTestCase (#2032)
+- Add automatically a SafeChildWatcher to the test loop (#2058)
+- add ability to disable automatic response decompression (#2110)
+- Add support for throttling DNS request, avoiding the requests saturation when
+ there is a miss in the DNS cache and many requests getting into the connector
+ at the same time. (#2111)
+- Use request for getting access log information instead of message/transport
+ pair. Add `RequestBase.remote` property for accessing to IP of client
+ initiated HTTP request. (#2123)
+- json() raises a ContentTypeError exception if the content-type does not meet
+ the requirements instead of raising a generic ClientResponseError. (#2136)
+- Make the HTTP client able to return HTTP chunks when chunked transfer
+ encoding is used. (#2150)
+- add `append_version` arg into `StaticResource.url` and
+ `StaticResource.url_for` methods for getting an url with hash (version) of
+ the file. (#2157)
+- Fix parsing the Forwarded header. * commas and semicolons are allowed inside
+ quoted-strings; * empty forwarded-pairs (as in for=_1;;by=_2) are allowed; *
+ non-standard parameters are allowed (although this alone could be easily done
+ in the previous parser). (#2173)
+- Don't require ssl module to run. aiohttp does not require SSL to function.
+ The code paths involved with SSL will only be hit upon SSL usage. Raise
+ `RuntimeError` if HTTPS protocol is required but ssl module is not present.
+ (#2221)
+- Accept coroutine fixtures in pytest plugin (#2223)
+- Call `shutdown_asyncgens` before event loop closing on Python 3.6. (#2227)
+- Speed up Signals when there are no receivers (#2229)
+- Raise `InvalidURL` instead of `ValueError` on fetches with invalid URL.
+ (#2241)
+- Move `DummyCookieJar` into `cookiejar.py` (#2242)
+- `run_app`: Make `print=None` disable printing (#2260)
+- Support `brotli` encoding (generic-purpose lossless compression algorithm)
+ (#2270)
+- Add server support for WebSockets Per-Message Deflate. Add client option to
+ add deflate compress header in WebSockets request header. If calling
+ ClientSession.ws_connect() with `compress=15` the client will support deflate
+ compress negotiation. (#2273)
+- Support `verify_ssl`, `fingerprint`, `ssl_context` and `proxy_headers` by
+ `client.ws_connect`. (#2292)
+- Added `aiohttp.ClientConnectorSSLError` when connection fails due
+ `ssl.SSLError` (#2294)
+- `aiohttp.web.Application.make_handler` support `access_log_class` (#2315)
+- Build HTTP parser extension in non-strict mode by default. (#2332)
+
+
+Bugfixes
+--------
+
+- Clear auth information on redirecting to other domain (#1699)
+- Fix missing app.loop on startup hooks during tests (#2060)
+- Fix issue with synchronous session closing when using `ClientSession` as an
+ asynchronous context manager. (#2063)
+- Fix issue with `CookieJar` incorrectly expiring cookies in some edge cases.
+ (#2084)
+- Force use of IPv4 during test, this will make tests run in a Docker container
+ (#2104)
+- Warnings about unawaited coroutines now correctly point to the user's code.
+ (#2106)
+- Fix issue with `IndexError` being raised by the `StreamReader.iter_chunks()`
+ generator. (#2112)
+- Support HTTP 308 Permanent redirect in client class. (#2114)
+- Fix `FileResponse` sending empty chunked body on 304. (#2143)
+- Do not add `Content-Length: 0` to GET/HEAD/TRACE/OPTIONS requests by default.
+ (#2167)
+- Fix parsing the Forwarded header according to RFC 7239. (#2170)
+- Securely determining remote/scheme/host #2171 (#2171)
+- Fix header name parsing, if name is split into multiple lines (#2183)
+- Handle session close during connection, `KeyError:
+ <aiohttp.connector._TransportPlaceholder>` (#2193)
+- Fixes uncaught `TypeError` in `helpers.guess_filename` if `name` is not a
+ string (#2201)
+- Raise OSError on async DNS lookup if resolved domain is an alias for another
+ one, which does not have an A or CNAME record. (#2231)
+- Fix incorrect warning in `StreamReader`. (#2251)
+- Properly clone state of web request (#2284)
+- Fix C HTTP parser for cases when status line is split into different TCP
+ packets. (#2311)
+- Fix `web.FileResponse` overriding user supplied Content-Type (#2317)
+
+
+Improved Documentation
+----------------------
+
+- Add a note about possible performance degradation in `await resp.text()` if
+ charset was not provided by `Content-Type` HTTP header. Pass explicit
+ encoding to solve it. (#1811)
+- Drop `disqus` widget from documentation pages. (#2018)
+- Add a graceful shutdown section to the client usage documentation. (#2039)
+- Document `connector_owner` parameter. (#2072)
+- Update the doc of web.Application (#2081)
+- Fix mistake about access log disabling. (#2085)
+- Add example usage of on_startup and on_shutdown signals by creating and
+ disposing an aiopg connection engine. (#2131)
+- Document `encoded=True` for `yarl.URL`, it disables all yarl transformations.
+ (#2198)
+- Document that all app's middleware factories are run for every request.
+ (#2225)
+- Reflect the fact that default resolver is threaded one starting from aiohttp
+ 1.1 (#2228)
+
+
+Deprecations and Removals
+-------------------------
+
+- Drop deprecated `Server.finish_connections` (#2006)
+- Drop %O format from logging, use %b instead. Drop %e format from logging,
+ environment variables are not supported anymore. (#2123)
+- Drop deprecated secure_proxy_ssl_header support (#2171)
+- Removed TimeService in favor of simple caching. TimeService also had a bug
+ where it lost about 0.5 seconds per second. (#2176)
+- Drop unused response_factory from static files API (#2290)
+
+
+Misc
+----
+
+- #2013, #2014, #2048, #2094, #2149, #2187, #2214, #2225, #2243, #2248
+
+
+2.2.5 (2017-08-03)
+==================
+
+- Don't raise deprecation warning on
+ `loop.run_until_complete(client.close())` (#2065)
+
+2.2.4 (2017-08-02)
+==================
+
+- Fix issue with synchronous session closing when using ClientSession
+ as an asynchronous context manager. (#2063)
2.2.3 (2017-07-04)
==================
@@ -7,196 +236,199 @@ Changes
- Fix `_CoroGuard` for python 3.4
2.2.2 (2017-07-03)
-------------------
+==================
- Allow `await session.close()` along with `yield from session.close()`
+
2.2.1 (2017-07-02)
-------------------
+==================
- Relax `yarl` requirement to 0.11+
- Backport #2026: `session.close` *is* a coroutine (#2029)
+
2.2.0 (2017-06-20)
-------------------
+==================
-- Add doc for add_head, update doc for add_get. #1944
+- Add doc for add_head, update doc for add_get. (#1944)
- Fixed consecutive calls for `Response.write_eof`.
- Retain method attributes (e.g. :code:`__doc__`) when registering synchronous
- handlers for resources. #1953
+ handlers for resources. (#1953)
-- Added signal TERM handling in `run_app` to gracefully exit #1932
+- Added signal TERM handling in `run_app` to gracefully exit (#1932)
-- Fix websocket issues caused by frame fragmentation. #1962
+- Fix websocket issues caused by frame fragmentation. (#1962)
- Raise RuntimeError is you try to set the Content Length and enable
- chunked encoding at the same time #1941
+ chunked encoding at the same time (#1941)
- Small update for `unittest_run_loop`
-- Use CIMultiDict for ClientRequest.skip_auto_headers #1970
+- Use CIMultiDict for ClientRequest.skip_auto_headers (#1970)
- Fix wrong startup sequence: test server and `run_app()` are not raise
- `DeprecationWarning` now #1947
+ `DeprecationWarning` now (#1947)
-- Make sure cleanup signal is sent if startup signal has been sent #1959
+- Make sure cleanup signal is sent if startup signal has been sent (#1959)
-- Fixed server keep-alive handler, could cause 100% cpu utilization #1955
+- Fixed server keep-alive handler, could cause 100% cpu utilization (#1955)
- Connection can be destroyed before response get processed if
- `await aiohttp.request(..)` is used #1981
+ `await aiohttp.request(..)` is used (#1981)
-- MultipartReader does not work with -OO #1969
+- MultipartReader does not work with -OO (#1969)
-- Fixed `ClientPayloadError` with blank `Content-Encoding` header #1931
+- Fixed `ClientPayloadError` with blank `Content-Encoding` header (#1931)
-- Support `deflate` encoding implemented in `httpbin.org/deflate` #1918
+- Support `deflate` encoding implemented in `httpbin.org/deflate` (#1918)
-- Fix BadStatusLine caused by extra `CRLF` after `POST` data #1792
+- Fix BadStatusLine caused by extra `CRLF` after `POST` data (#1792)
-- Keep a reference to `ClientSession` in response object #1985
+- Keep a reference to `ClientSession` in response object (#1985)
-- Deprecate undocumented `app.on_loop_available` signal #1978
+- Deprecate undocumented `app.on_loop_available` signal (#1978)
... 39349 lines suppressed ...
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-aiohttp.git
More information about the Python-modules-commits
mailing list