[Python-modules-commits] [python-aiohttp] 01/03: Import python-aiohttp_2.2.0.orig.tar.gz
Piotr Ożarowski
piotr at moszumanska.debian.org
Thu Jun 22 21:10:15 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 1b0538c4464eaa64f4d32b35d9b228ee745e9226
Author: Piotr Ożarowski <piotr at debian.org>
Date: Thu Jun 22 22:51:20 2017 +0200
Import python-aiohttp_2.2.0.orig.tar.gz
---
.gitignore | 48 +
.pyup.yml | 2 +
.travis.yml | 69 +
CHANGES.rst | 268 +-
CONTRIBUTING.rst | 169 +
CONTRIBUTORS.txt | 44 +-
HISTORY.rst | 1647 +++
ISSUE_TEMPLATE.md | 23 +
LICENSE.txt | 2 +-
MANIFEST.in | 8 +-
Makefile | 22 +-
PKG-INFO | 327 +-
PULL_REQUEST_TEMPLATE.md | 33 +
README.rst | 47 +-
aiohttp.egg-info/PKG-INFO | 327 +-
aiohttp.egg-info/SOURCES.txt | 117 +-
aiohttp.egg-info/requires.txt | 4 +-
aiohttp/__init__.py | 44 +-
aiohttp/_cparser.pxd | 140 +
aiohttp/_frozenlist.c | 5525 +++++++++
aiohttp/_frozenlist.pyx | 105 +
aiohttp/_http_parser.c | 12369 +++++++++++++++++++
aiohttp/_http_parser.pyx | 548 +
aiohttp/_websocket.c | 291 +-
aiohttp/_websocket.pyx | 12 +-
aiohttp/_ws_impl.py | 438 -
aiohttp/abc.py | 25 +-
aiohttp/backport_cookies.py | 368 +
aiohttp/client.py | 462 +-
aiohttp/client_exceptions.py | 108 +
aiohttp/client_proto.py | 191 +
aiohttp/client_reqrep.py | 593 +-
aiohttp/client_ws.py | 188 +-
aiohttp/connector.py | 673 +-
aiohttp/cookiejar.py | 15 +-
aiohttp/errors.py | 178 -
aiohttp/file_sender.py | 203 -
aiohttp/formdata.py | 143 +
aiohttp/frozenlist.py | 73 +
aiohttp/hdrs.py | 4 +
aiohttp/helpers.py | 528 +-
aiohttp/http.py | 38 +
aiohttp/http_exceptions.py | 86 +
aiohttp/http_parser.py | 650 +
aiohttp/http_websocket.py | 567 +
aiohttp/http_writer.py | 330 +
aiohttp/log.py | 1 +
aiohttp/multipart.py | 576 +-
aiohttp/parsers.py | 493 -
aiohttp/payload.py | 311 +
aiohttp/payload_streamer.py | 69 +
aiohttp/protocol.py | 924 --
aiohttp/pytest_plugin.py | 176 +-
aiohttp/resolver.py | 1 +
aiohttp/server.py | 392 -
aiohttp/signals.py | 43 +-
aiohttp/streams.py | 295 +-
aiohttp/test_utils.py | 197 +-
aiohttp/web.py | 365 +-
aiohttp/web_exceptions.py | 18 +-
aiohttp/web_fileresponse.py | 241 +
aiohttp/web_middlewares.py | 76 +
aiohttp/web_protocol.py | 564 +
aiohttp/web_reqrep.py | 1018 --
aiohttp/web_request.py | 583 +
aiohttp/web_response.py | 608 +
aiohttp/web_server.py | 139 +-
aiohttp/web_urldispatcher.py | 144 +-
aiohttp/web_ws.py | 292 +-
aiohttp/worker.py | 59 +-
aiohttp/wsgi.py | 235 -
appveyor.yml | 41 +
build-wheels.sh | 23 +
build.cmd | 21 +
codecov.yml | 2 +
demos/README.rst | 2 +
demos/chat/aiohttpdemo_chat/__init__.py | 1 +
demos/chat/aiohttpdemo_chat/main.py | 40 +
demos/chat/aiohttpdemo_chat/templates/index.html | 112 +
demos/chat/aiohttpdemo_chat/views.py | 51 +
demos/chat/setup.py | 32 +
demos/polls/Makefile | 28 +
demos/polls/README.rst | 48 +
demos/polls/aiohttpdemo_polls/__init__.py | 1 +
demos/polls/aiohttpdemo_polls/__main__.py | 6 +
demos/polls/aiohttpdemo_polls/db.py | 83 +
demos/polls/aiohttpdemo_polls/main.py | 62 +
demos/polls/aiohttpdemo_polls/middlewares.py | 42 +
demos/polls/aiohttpdemo_polls/routes.py | 17 +
demos/polls/aiohttpdemo_polls/static/style.css | 7 +
demos/polls/aiohttpdemo_polls/templates/404.html | 3 +
demos/polls/aiohttpdemo_polls/templates/500.html | 3 +
demos/polls/aiohttpdemo_polls/templates/base.html | 17 +
.../polls/aiohttpdemo_polls/templates/detail.html | 15 +
demos/polls/aiohttpdemo_polls/templates/index.html | 15 +
.../polls/aiohttpdemo_polls/templates/results.html | 13 +
demos/polls/aiohttpdemo_polls/utils.py | 19 +
demos/polls/aiohttpdemo_polls/views.py | 63 +
demos/polls/config/polls.yaml | 11 +
demos/polls/images/example.png | Bin 0 -> 64872 bytes
demos/polls/requirements.txt | 3 +
demos/polls/setup.py | 37 +
demos/polls/sql/create_tables.sql | 20 +
demos/polls/sql/install.sh | 8 +
demos/polls/sql/sample_data.sql | 22 +
demos/polls/tests/conftest.py | 30 +
demos/polls/tests/test_integration.py | 17 +
demos/polls/tox.ini | 9 +
docs/api.rst | 32 +-
docs/client.rst | 153 +-
docs/client_reference.rst | 616 +-
docs/conf.py | 10 +-
docs/deployment.rst | 89 +-
docs/faq.rst | 10 +-
docs/index.rst | 16 +-
docs/migration.rst | 203 +
docs/multipart.rst | 10 +-
docs/server.rst | 155 -
docs/spelling_wordlist.txt | 5 +-
docs/streams.rst | 12 +-
docs/testing.rst | 66 +-
docs/third_party.rst | 5 +-
docs/tutorial.rst | 30 +-
docs/web.rst | 116 +-
docs/web_lowlevel.rst | 2 +-
docs/web_reference.rst | 381 +-
docs/whats_new_1_1.rst | 2 +-
examples/background_tasks.py | 4 +-
examples/client_ws.py | 1 +
examples/legacy/srv.py | 1 +
examples/legacy/tcp_protocol_parser.py | 1 +
examples/lowlevel_srv.py | 1 +
examples/static_files.py | 1 +
examples/web_srv.py | 2 +-
examples/web_ws.py | 9 +-
requirements-ci.txt | 24 +
requirements-dev.txt | 5 +
requirements-wheel.txt | 3 +
run_docker.sh | 25 +
setup.cfg | 22 +-
setup.py | 23 +-
tests/aiohttp.jpg | Bin 0 -> 7142 bytes
tests/aiohttp.png | Bin 0 -> 61108 bytes
tests/autobahn/client.py | 10 +-
tests/autobahn/server.py | 8 +-
tests/conftest.py | 1 +
tests/software_development_in_picture.jpg | Bin 73510 -> 0 bytes
tests/test_classbasedview.py | 2 +-
tests/test_client_connection.py | 144 +-
tests/test_client_exceptions.py | 10 +
tests/test_client_functional.py | 812 +-
tests/test_client_functional_oldstyle.py | 267 +-
tests/test_client_proto.py | 89 +
tests/test_client_request.py | 430 +-
tests/test_client_response.py | 316 +-
tests/test_client_session.py | 74 +-
tests/test_client_ws.py | 253 +-
tests/test_client_ws_functional.py | 234 +-
tests/test_connector.py | 914 +-
tests/test_cookiejar.py | 2 +-
tests/test_errors.py | 19 -
tests/test_flowcontrol_streams.py | 261 +-
tests/test_formdata.py | 92 +
tests/test_frozenlist.py | 228 +
tests/test_helpers.py | 223 +-
tests/test_http_exceptions.py | 20 +
tests/test_http_parser.py | 1161 +-
...stream_writer.py => test_http_stream_writer.py} | 179 +-
tests/test_http_writer.py | 157 +
tests/test_multipart.py | 582 +-
tests/test_parser_buffer.py | 252 -
tests/test_payload.py | 58 +
tests/test_protocol.py | 530 -
tests/test_proxy.py | 186 +-
tests/test_proxy_functional.py | 91 +-
tests/test_py35/test_cbv35.py | 2 +-
tests/test_py35/test_client.py | 55 +-
tests/test_py35/test_client_websocket_35.py | 45 +-
tests/test_py35/test_multipart_35.py | 40 +-
tests/test_py35/test_resp.py | 71 +-
tests/test_py35/test_streams_35.py | 1 +
tests/test_py35/test_test_utils_35.py | 8 +-
tests/test_py35/test_web_websocket_35.py | 34 +-
tests/test_pytest_plugin.py | 48 +-
tests/test_resolver.py | 12 +-
tests/test_run_app.py | 521 +-
tests/test_server.py | 644 -
tests/test_signals.py | 8 +-
tests/test_stream_parser.py | 372 -
tests/test_stream_protocol.py | 40 -
tests/test_streams.py | 256 +-
tests/test_test_utils.py | 69 +-
tests/test_urldispatch.py | 136 +-
tests/test_web_application.py | 144 +-
tests/test_web_cli.py | 16 +-
tests/test_web_exceptions.py | 22 +-
tests/test_web_functional.py | 678 +-
tests/test_web_middleware.py | 102 +-
tests/test_web_protocol.py | 791 ++
tests/test_web_request.py | 217 +-
tests/test_web_request_handler.py | 19 +-
tests/test_web_response.py | 349 +-
tests/test_web_sendfile.py | 61 +-
tests/test_web_sendfile_functional.py | 174 +-
tests/test_web_server.py | 56 +-
tests/test_web_urldispatcher.py | 130 +-
tests/test_web_websocket.py | 150 +-
tests/test_web_websocket_functional.py | 301 +-
tests/test_websocket_handshake.py | 26 +-
tests/test_websocket_parser.py | 436 +-
tests/test_websocket_writer.py | 48 +-
tests/test_worker.py | 27 +-
tests/test_wsgi.py | 311 -
tox.ini | 61 +
vendor/http-parser/.gitignore | 30 +
vendor/http-parser/.mailmap | 8 +
vendor/http-parser/.travis.yml | 13 +
vendor/http-parser/AUTHORS | 68 +
vendor/http-parser/LICENSE-MIT | 23 +
vendor/http-parser/Makefile | 149 +
vendor/http-parser/README.md | 246 +
vendor/http-parser/bench.c | 111 +
vendor/http-parser/contrib/parsertrace.c | 160 +
vendor/http-parser/contrib/url_parser.c | 47 +
vendor/http-parser/http_parser.c | 2470 ++++
vendor/http-parser/http_parser.gyp | 111 +
vendor/http-parser/http_parser.h | 362 +
vendor/http-parser/test.c | 4226 +++++++
228 files changed, 47887 insertions(+), 13054 deletions(-)
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..6a2f331
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,48 @@
+*.swp
+*.bak
+*.egg
+*.egg-info
+*.eggs
+*.pyc
+*.pyd
+*.pyo
+*.so
+*.tar.gz
+*~
+.DS_Store
+.Python
+.cache
+.coverage
+.coverage.*
+.idea
+.installed.cfg
+.noseids
+.tox
+.vimrc
+aiohttp/_frozenlist.c
+aiohttp/_frozenlist.html
+aiohttp/_websocket.c
+aiohttp/_websocket.html
+aiohttp/_http_parser.c
+bin
+build
+cover
+coverage
+develop-eggs
+dist
+docs/_build/
+eggs
+include/
+lib/
+man/
+nosetests.xml
+parts
+pyvenv
+sources
+var/*
+venv
+virtualenv.py
+.install-deps
+.develop
+.gitconfig
+.flake
diff --git a/.pyup.yml b/.pyup.yml
new file mode 100644
index 0000000..fd44d31
--- /dev/null
+++ b/.pyup.yml
@@ -0,0 +1,2 @@
+# Label PRs with `deps-update` label
+label_prs: deps-update
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..1b45d4a
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,69 @@
+sudo: required
+services:
+ - docker
+
+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
+
+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
+
+script:
+ - make cov-dev-full
+
+ - if python -c "import sys; sys.exit(sys.version_info < (3,5))"; then
+ make doc;
+ make doc-spelling;
+ fi
+
+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
diff --git a/CHANGES.rst b/CHANGES.rst
index 39b6bd7..97a0279 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -1,60 +1,260 @@
-CHANGES
+Changes
=======
-1.2.0 (2016-12-17)
+2.2.0 (2017-06-20)
------------------
-- Extract `BaseRequest` from `web.Request`, introduce `web.Server`
- (former `RequestHandlerFactory`), introduce new low-level web server
- which is not coupled with `web.Application` and routing #1362
+- Add doc for add_head, update doc for add_get. #1944
-- Make `TestServer.make_url` compatible with `yarl.URL` #1389
+- Fixed consecutive calls for `Response.write_eof`.
-- Implement range requests for static files #1382
+- Retain method attributes (e.g. :code:`__doc__`) when registering synchronous
+ handlers for resources. #1953
-- Support task attribute for StreamResponse #1410
+- Added signal TERM handling in `run_app` to gracefully exit #1932
-- Drop `TestClient.app` property, use `TestClient.server.app` instead
- (BACKWARD INCOMPATIBLE)
+- Fix websocket issues caused by frame fragmentation. #1962
-- Drop `TestClient.handler` property, use `TestClient.server.handler` instead
- (BACKWARD INCOMPATIBLE)
+- Raise RuntimeError is you try to set the Content Length and enable
+ chunked encoding at the same time #1941
-- `TestClient.server` property returns a test server instance, was
- `asyncio.AbstractServer` (BACKWARD INCOMPATIBLE)
+- Small update for `unittest_run_loop`
-- Follow gunicorn's signal semantics in `Gunicorn[UVLoop]WebWorker` #1201
+- Use CIMultiDict for ClientRequest.skip_auto_headers #1970
-- Call worker_int and worker_abort callbacks in
- `Gunicorn[UVLoop]WebWorker` #1202
+- Fix wrong startup sequence: test server and `run_app()` are not raise
+ `DeprecationWarning` now #1947
-- Has functional tests for client proxy #1218
+- Make sure cleanup signal is sent if startup signal has been sent #1959
-- Fix bugs with client proxy target path and proxy host with port #1413
+- Fixed server keep-alive handler, could cause 100% cpu utilization #1955
-- Fix bugs related to the use of unicode hostnames #1444
+- Connection can be destroyed before response get processed if
+ `await aiohttp.request(..)` is used #1981
-- Preserve cookie quoting/escaping #1453
+- MultipartReader does not work with -OO #1969
-- FileSender will send gzipped response if gzip version available #1426
+- Fixed `ClientPayloadError` with blank `Content-Encoding` header #1931
-- Don't override `Content-Length` header in `web.Response` if no body
- was set #1400
+- Support `deflate` encoding implemented in `httpbin.org/deflate` #1918
-- Introduce `router.post_init()` for solving #1373
+- Fix BadStatusLine caused by extra `CRLF` after `POST` data #1792
-- Fix raise error in case of multiple calls of `TimeServive.stop()`
+- Keep a reference to `ClientSession` in response object #1985
-- Allow to raise web exceptions on router resolving stage #1460
+- Deprecate undocumented `app.on_loop_available` signal #1978
-- Add a warning for session creation outside of coroutine #1468
-- Avoid a race when application might start accepting incoming requests
- but startup signals are not processed yet e98e8c6
-- Raise a `RuntimeError` when trying to change the status of the HTTP response
- after the headers have been sent #1480
+2.1.0 (2017-05-26)
+------------------
+
+- Added support for experimental `async-tokio` event loop written in Rust
+ https://github.com/PyO3/tokio
+
+- Write to transport ``\r\n`` before closing after keepalive timeout,
+ otherwise client can not detect socket disconnection. #1883
+
+- Only call `loop.close` in `run_app` if the user did *not* supply a loop.
+ Useful for allowing clients to specify their own cleanup before closing the
+ asyncio loop if they wish to tightly control loop behavior
+
+- Content disposition with semicolon in filename #917
+
+- Added `request_info` to response object and `ClientResponseError`. #1733
+
+- Added `history` to `ClientResponseError`. #1741
+
+- Allow to disable redirect url re-quoting #1474
+
+- Handle RuntimeError from transport #1790
+
+- Dropped "%O" in access logger #1673
+
+- Added `args` and `kwargs` to `unittest_run_loop`. Useful with other
+ decorators, for example `@patch`. #1803
+
+- Added `iter_chunks` to response.content object. #1805
+
+- Avoid creating TimerContext when there is no timeout to allow
+ compatibility with Tornado. #1817 #1180
+
+- Add `proxy_from_env` to `ClientRequest` to read from environment
+ variables. #1791
+
+- Add DummyCookieJar helper. #1830
+
+- Fix assertion errors in Python 3.4 from noop helper. #1847
+
+- Do not unquote `+` in match_info values #1816
+
+- Use Forwarded, X-Forwarded-Scheme and X-Forwarded-Host for better scheme and
+ host resolution. #1134
+
+- Fix sub-application middlewares resolution order #1853
+
+- Fix applications comparison #1866
+
+- Fix static location in index when prefix is used #1662
+
+- Make test server more reliable #1896
+
+- Extend list of web exceptions, add HTTPUnprocessableEntity,
+ HTTPFailedDependency, HTTPInsufficientStorage status codes #1920
+
+
+2.0.7 (2017-04-12)
+------------------
+- Fix *pypi* distribution
+
+- Fix exception description #1807
+
+- Handle socket error in FileResponse #1773
+
+- Cancel websocket heartbeat on close #1793
+
+
+2.0.6 (2017-04-04)
+------------------
+
+- Keeping blank values for `request.post()` and `multipart.form()` #1765
+
+- TypeError in data_received of ResponseHandler #1770
+
+- Fix ``web.run_app`` not to bind to default host-port pair if only socket is
+ passed #1786
+
+
+2.0.5 (2017-03-29)
+------------------
+
+- Memory leak with aiohttp.request #1756
+
+- Disable cleanup closed ssl transports by default.
+
+- Exception in request handling if the server responds before the body
+ is sent #1761
+
+
+2.0.4 (2017-03-27)
+------------------
+
+- Memory leak with aiohttp.request #1756
+
+- Encoding is always UTF-8 in POST data #1750
+
+- Do not add "Content-Disposition" header by default #1755
+
+
+2.0.3 (2017-03-24)
+------------------
+
+- Call https website through proxy will cause error #1745
+
+- Fix exception on multipart/form-data post if content-type is not set #1743
+
+
+2.0.2 (2017-03-21)
+------------------
+
+- Fixed Application.on_loop_available signal #1739
+
+- Remove debug code
+
+
+2.0.1 (2017-03-21)
+------------------
+
+- Fix allow-head to include name on route #1737
+
+- Fixed AttributeError in WebSocketResponse.can_prepare #1736
+
+
+2.0.0 (2017-03-20)
+------------------
+
+- Added `json` to `ClientSession.request()` method #1726
+
+- Added session's `raise_for_status` parameter, automatically calls
+ raise_for_status() on any request. #1724
+
+- `response.json()` raises `ClientReponseError` exception if response's
+ content type does not match #1723
+
+ - Cleanup timer and loop handle on any client exception.
+
+- Deprecate `loop` parameter for Application's constructor
+
+
+`2.0.0rc1` (2017-03-15)
+-----------------------
+
+- Properly handle payload errors #1710
+
+- Added `ClientWebSocketResponse.get_extra_info()` #1717
+
+- It is not possible to combine Transfer-Encoding and chunked parameter,
+ same for compress and Content-Encoding #1655
+
+- Connector's `limit` parameter indicates total concurrent connections.
+ New `limit_per_host` added, indicates total connections per endpoint. #1601
+
+- Use url's `raw_host` for name resolution #1685
+
+- Change `ClientResponse.url` to `yarl.URL` instance #1654
+
+- Add max_size parameter to web.Request reading methods #1133
+
+- Web Request.post() stores data in temp files #1469
+
+- Add the `allow_head=True` keyword argument for `add_get` #1618
+
+- `run_app` and the Command Line Interface now support serving over
+ Unix domain sockets for faster inter-process communication.
+
+- `run_app` now supports passing a preexisting socket object. This can be useful
+ e.g. for socket-based activated applications, when binding of a socket is
+ done by the parent process.
+
+- Implementation for Trailer headers parser is broken #1619
+
+- Fix FileResponse to not fall on bad request (range out of file size)
+
+- Fix FileResponse to correct stream video to Chromes
+
+- Deprecate public low-level api #1657
+
+- Deprecate `encoding` parameter for ClientSession.request() method
+
+- Dropped aiohttp.wsgi #1108
+
+- Dropped `version` from ClientSession.request() method
+
+- Dropped websocket version 76 support #1160
+
+- Dropped: `aiohttp.protocol.HttpPrefixParser` #1590
+
+- Dropped: Servers response's `.started`, `.start()` and
+ `.can_start()` method #1591
+
+- Dropped: Adding `sub app` via `app.router.add_subapp()` is deprecated
+ use `app.add_subapp()` instead #1592
+
+- Dropped: `Application.finish()` and `Application.register_on_finish()` #1602
+
+- Dropped: `web.Request.GET` and `web.Request.POST`
+
+- Dropped: aiohttp.get(), aiohttp.options(), aiohttp.head(),
+ aiohttp.post(), aiohttp.put(), aiohttp.patch(), aiohttp.delete(), and
+ aiohttp.ws_connect() #1593
+
+- Dropped: `aiohttp.web.WebSocketResponse.receive_msg()` #1605
+
+- Dropped: `ServerHttpProtocol.keep_alive_timeout` attribute and
+ `keep-alive`, `keep_alive_on`, `timeout`, `log` constructor parameters #1606
-- Fix bug with https proxy acquired cleanup #1340
+- Dropped: `TCPConnector's`` `.resolve`, `.resolved_hosts`,
+ `.clear_resolved_hosts()` attributes and `resolve` constructor
+ parameter #1607
-- Use UTF-8 as the default encoding for multipart text parts #1484
+- Dropped `ProxyConnector` #1609
diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst
new file mode 100644
index 0000000..38fa8f1
--- /dev/null
+++ b/CONTRIBUTING.rst
@@ -0,0 +1,169 @@
+Contributing
+============
+
+Instructions for contributors
+-----------------------------
+
+
+In order to make a clone of the GitHub_ repo: open the link and press the
+"Fork" button on the upper-right menu of the web page.
+
+I hope everybody knows how to work with git and github nowadays :)
+
+Workflow is pretty straightforward:
+
+ 1. Clone the GitHub_ repo
+
+ 2. Make a change
+
+ 3. Make sure all tests passed
+
+ 4. Commit changes to own aiohttp clone
+
+ 5. Make pull request from github page for your clone against master branch
+
+ .. note::
+ If your PR has long history or many commits
+ please rebase it from main repo before creating PR.
+
+Preconditions for running aiohttp test suite
+--------------------------------------------
+
+We expect you to use a python virtual environment to run our tests.
+
+There are several ways to make a virtual environment.
+
+If you like to use *virtualenv* please run:
+
+.. code-block:: shell
+
+ $ cd aiohttp
+ $ virtualenv --python=`which python3` venv
+ $ . venv/bin/activate
+
+For standard python *venv*:
+
+.. code-block:: shell
+
+ $ cd aiohttp
+ $ python3 -m venv venv
+ $ . venv/bin/activate
+
+For *virtualenvwrapper* (my choice):
+
+.. code-block:: shell
+
+ $ cd aiohttp
+ $ mkvirtualenv --python=`which python3` aiohttp
+
+There are other tools like *pyvenv* but you know the rule of thumb
+now: create a python3 virtual environment and activate it.
+
+After that please install libraries required for development:
+
+.. code-block:: shell
+
+ $ pip install -r requirements-dev.txt
+
+We also recommend to install ipdb_ but it's on your own:
+
+.. code-block:: shell
+
+ $ pip install ipdb
+
+.. note::
+ If you plan to use ``ipdb`` within the test suite, execute:
+
+.. code-block:: shell
+
+ $ py.test tests -s -p no:timeout
+
+ command to run the tests with disabled timeout guard and output
+ capturing.
+
+Congratulations, you are ready to run the test suite
+
+
+Run aiohttp test suite
+----------------------
+
+After all the preconditions are met you can run tests typing the next
+command:
+
+.. code-block:: shell
+
+ $ make test
+
+The command at first will run the *flake8* tool (sorry, we don't accept
+pull requests with pep8 or pyflakes errors).
+
+On *flake8* success the tests will be run.
+
+Please take a look on the produced output.
+
+Any extra texts (print statements and so on) should be removed.
+
+
+Tests coverage
+--------------
+
+We are trying hard to have good test coverage; please don't make it worse.
+
+Use:
+
+.. code-block:: shell
+
+ $ make cov
+
+to run test suite and collect coverage information. Once the command
+has finished check your coverage at the file that appears in the last
+line of the output:
+``open file:///.../aiohttp/coverage/index.html``
+
+Please go to the link and make sure that your code change is covered.
+
+
+Documentation
+-------------
+
+We encourage documentation improvements.
+
+Please before making a Pull Request about documentation changes run:
+
+.. code-block:: shell
+
+ $ make doc
+
+Once it finishes it will output the index html page
+``open file:///.../aiohttp/docs/_build/html/index.html``.
+
+Go to the link and make sure your doc changes looks good.
+
+Spell checking
+--------------
+
+We use ``pyenchant`` and ``sphinxcontrib-spelling`` for running spell
+checker for documentation:
+
+.. code-block:: shell
+
+ $ make doc-spelling
+
+Unfortunately there are problems with running spell checker on MacOS X.
+
+To run spell checker on Linux box you should install it first:
+
+.. code-block:: shell
+
+ $ sudo apt-get install enchant
+ $ pip install sphinxcontrib-spelling
+
+The End
+-------
+
+After finishing all steps make a GitHub_ Pull Request, thanks.
+
+
+.. _GitHub: https://github.com/aio-libs/aiohttp
+
+.. _ipdb: https://pypi.python.org/pypi/ipdb
diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt
index 2d1bac1..c20e0cb 100644
--- a/CONTRIBUTORS.txt
+++ b/CONTRIBUTORS.txt
@@ -1,11 +1,16 @@
Contributors
------------
-
A. Jesse Jiryu Davis
+Adam Mills
+Adrián Chaves
+Alec Hanefeld
Alejandro Gómez
Aleksandr Danshyn
Aleksey Kutepov
Alex Hayes
+Alex Key
+Alex Khomchenko
+Alex Lisovoy
Alexander Bayandin
Alexander Karpinsky
Alexander Koshevoy
@@ -16,9 +21,7 @@ Alexander Travov
Alexandru Mihai
Alexey Firsov
Alexey Popravka
-Alex Key
-Alex Khomchenko
-Alex Lisovoy
+Alexey Stepanov
Amy Boyle
Andrei Ursulenko
Andrej Antonov
@@ -34,12 +37,14 @@ Brett Cannon
Brian C. Lane
Brian Muller
Carl George
+Cecile Tonglet
Chien-Wei Huang
Chih-Yuan Chen
Chris AtLee
Chris Laws
Chris Moore
Christopher Schmitt
+Damien Nadé
Daniel García
Daniel Nelson
Danny Song
@@ -47,15 +52,19 @@ David Michael Brown
Denis Matiychuk
Dima Veselov
Dimitar Dimitrov
+Dmitry Doroshev
Dmitry Shamov
Dmitry Trofimov
Dmytro Kuznetsov
Dustin J. Mitchell
+Eduard Iskandarov
+Eli Ribble
Elizabeth Leddy
Enrique Saez
Erich Healy
Eugene Chernyshov
Eugene Naydenov
+Evert Lammerts
Frederik Gladhorn
Frederik Peter Aalund
Gabriel Tremblay
@@ -64,7 +73,9 @@ Georges Dubus
Greg Holt
Gregory Haynes
Günther Jena
+Hu Bo
Hugo Herter
+Igor Davydenko
Igor Pavlov
Ingmar Steen
Jacob Champion
@@ -72,14 +83,19 @@ Jaesung Lee
Jake Davis
Jakub Wilk
Jashandeep Sohi
+Jeongkyu Shin
Jeroen van der Heijden
Jesus Cea
Jinkyu Yi
Joel Watts
Joongi Kim
+Josep Cugat
+Julia Tsemusheva
Julien Duponchelle
+Jungkook Park
Junjie Tao
Justas Trimailovas
+Justin Turner Arthur
Kay Zheng
Kimmo Parviainen-Jalanko
Kirill Klenov
@@ -87,15 +103,19 @@ Kirill Malovitsa
Kyrylo Perevozchikov
Lars P. Søndergaard
Louis-Philippe Huberdeau
+Lu Gong
Lubomir Gelo
Ludovic Gasc
Lukasz Marcin Dobrzanski
+Makc Belousow
Manuel Miranda
Marco Paolini
Mariano Anaya
+Martin Melka
Martin Richard
Mathias Fröjdman
Matthieu Hauglustaine
+Matthieu Rigal
Michael Ihnatenko
Mikhail Kashkin
Mikhail Lukyanchenko
@@ -106,17 +126,21 @@ Mun Gwan-gyeong
Nicolas Braem
Nikolay Novik
Olaf Conradi
-Pahaz Blinov <pahaz.blinov at gmail.com>
+Pahaz Blinov
Pankaj Pandey
Pau Freixes
Paul Colomiets
Paulus Schoutsen
+Pavel Kamaev
+Pawel Miech
Philipp A.
Rafael Viotti
Raúl Cumplido
-"Required Field" <requiredfield256 at gmail.com>
+Required Field
Robert Lu
+Roman Podoliaka
Samuel Colvin
+Sean Hunt
Sebastian Hanula
Sebastian Hüther
SeongSoo Cho
@@ -129,9 +153,13 @@ Stanislas Plum
Stanislav Prokop
Stephen Granade
Steven Seguin
+Sunghyun Hwang
Sviatoslav Bulbakha
Taha Jahangir
Taras Voinarovskyi
+Terence Honles
+Thanos Lefteris
+Thijs Vermeir
... 73179 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