GeekMasher / GMCoinBot

GeekMasher's Cryptocurrency Bot
GNU General Public License v3.0
0 stars 4 forks source link

Update dependency aiohttp to v3.6.2 #44

Open renovate[bot] opened 5 years ago

renovate[bot] commented 5 years ago

This PR contains the following updates:

Package Update Change
aiohttp minor ==3.0.1 -> ==3.6.2

Release Notes

aio-libs/aiohttp ### [`v3.6.2`](https://togithub.com/aio-libs/aiohttp/blob/master/CHANGES.rst#​362-2019-10-09) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.6.1...v3.6.2) ================== ## Features - Made exceptions pickleable. Also changed the repr of some exceptions. `#​4077 `\_ - Use `Iterable` type hint instead of `Sequence` for `Application` _middleware_ parameter. `#​4125 `\_ ## Bugfixes - Reset the `sock_read` timeout each time data is received for a `aiohttp.ClientResponse`. `#​3808 `\_ - Fix handling of expired cookies so they are not stored in CookieJar. `#​4063 `\_ - Fix misleading message in the string representation of `ClientConnectorError`; `self.ssl == None` means default SSL context, not SSL disabled `#​4097 `\_ - Don't clobber HTTP status when using FileResponse. `#​4106 `\_ ## Improved Documentation - Added minimal required logging configuration to logging documentation. `#​2469 `\_ - Update docs to reflect proxy support. `#​4100 `\_ - Fix typo in code example in testing docs. `#​4108 `\_ ## Misc - `#​4102 `\_ * * * ### [`v3.6.1`](https://togithub.com/aio-libs/aiohttp/blob/master/CHANGES.rst#​361-2019-09-19) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.6.0...v3.6.1) ================== ## Features - Compatibility with Python 3.8. `#​4056 `\_ ## Bugfixes - correct some exception string format `#​4068 `\_ - Emit a warning when `ssl.OP_NO_COMPRESSION` is unavailable because the runtime is built against an outdated OpenSSL. `#​4052 `\_ - Update multidict requirement to >= 4.5 `#​4057 `\_ ## Improved Documentation - Provide pytest-aiohttp namespace for pytest fixtures in docs. `#​3723 `\_ * * * ### [`v3.6.0`](https://togithub.com/aio-libs/aiohttp/blob/master/CHANGES.rst#​360-2019-09-06) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.5.4...v3.6.0) ================== ## Features - Add support for Named Pipes (Site and Connector) under Windows. This feature requires Proactor event loop to work. `#​3629 `\_ - Removed `Transfer-Encoding: chunked` header from websocket responses to be compatible with more http proxy servers. `#​3798 `\_ - Accept non-GET request for starting websocket handshake on server side. `#​3980 `\_ ## Bugfixes - Raise a ClientResponseError instead of an AssertionError for a blank HTTP Reason Phrase. `#​3532 `\_ - Fix an issue where cookies would sometimes not be set during a redirect. `#​3576 `\_ - Change normalize_path_middleware to use 308 redirect instead of 301. This behavior should prevent clients from being unable to use PUT/POST methods on endpoints that are redirected because of a trailing slash. `#​3579 `\_ - Drop the processed task from `all_tasks()` list early. It prevents logging about a task with unhandled exception when the server is used in conjunction with `asyncio.run()`. `#​3587 `\_ - `Signal` type annotation changed from `Signal[Callable[['TraceConfig'], Awaitable[None]]]` to `Signal[Callable[ClientSession, SimpleNamespace, ...]`. `#​3595 `\_ - Use sanitized URL as Location header in redirects `#​3614 `\_ - Improve typing annotations for multipart.py along with changes required by mypy in files that references multipart.py. `#​3621 `\_ - Close session created inside `aiohttp.request` when unhandled exception occurs `#​3628 `\_ - Cleanup per-chunk data in generic data read. Memory leak fixed. `#​3631 `\_ - Use correct type for add_view and family `#​3633 `_ - Fix _keepalive field in **slots** of `RequestHandler`. `#​3644 `_ - Properly handle ConnectionResetError, to silence the "Cannot write to closing transport" exception when clients disconnect uncleanly. `#​3648 `\_ - Suppress pytest warnings due to `test_utils` classes `#​3660 `\_ - Fix overshadowing of overlapped sub-application prefixes. `#​3701 `\_ - Fixed return type annotation for WSMessage.json() `#​3720 `\_ - Properly expose TooManyRedirects publicly as documented. `#​3818 `\_ - Fix missing brackets for IPv6 in proxy CONNECT request `#​3841 `\_ - Make the signature of `aiohttp.test_utils.TestClient.request` match `asyncio.ClientSession.request` according to the docs `#​3852 `\_ - Use correct style for re-exported imports, makes mypy `--strict` mode happy. `#​3868 `\_ - Fixed type annotation for add_view method of UrlDispatcher to accept any subclass of View `#​3880 `_ - Made cython HTTP parser set Reason-Phrase of the response to an empty string if it is missing. `#​3906 `\_ - Add URL to the string representation of ClientResponseError. `#​3959 `\_ - Accept `istr` keys in `LooseHeaders` type hints. `#​3976 `\_ - Fixed race conditions in _resolve_host caching and throttling when tracing is enabled. `#​4013 `_ - For URLs like "unix://localhost/..." set Host HTTP header to "localhost" instead of "localhost:None". `#​4039 `\_ ## Improved Documentation - Modify documentation for Background Tasks to remove deprecated usage of event loop. `#​3526 `\_ - use `if __name__ == '__main__':` in server examples. `#​3775 `\_ - Update documentation reference to the default access logger. `#​3783 `\_ - Improve documentation for `web.BaseRequest.path` and `web.BaseRequest.raw_path`. `#​3791 `\_ - Removed deprecation warning in tracing example docs `#​3964 `\_ * * * ### [`v3.5.4`](https://togithub.com/aio-libs/aiohttp/blob/master/CHANGES.rst#​354-2019-01-12) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.5.3...v3.5.4) ================== ## Bugfixes - Fix stream `.read()` / `.readany()` / `.iter_any()` which used to return a partial content only in case of compressed content `#​3525 `\_ ### [`v3.5.3`](https://togithub.com/aio-libs/aiohttp/blob/master/CHANGES.rst#​353-2019-01-10) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.5.2...v3.5.3) ================== ## Bugfixes - Fix type stubs for `aiohttp.web.run_app(access_log=True)` and fix edge case of `access_log=True` and the event loop being in debug mode. `#​3504 `\_ - Fix `aiohttp.ClientTimeout` type annotations to accept `None` for fields `#​3511 `\_ - Send custom per-request cookies even if session jar is empty `#​3515 `\_ - Restore Linux binary wheels publishing on PyPI * * * ### [`v3.5.2`](https://togithub.com/aio-libs/aiohttp/blob/master/CHANGES.rst#​352-2019-01-08) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.5.1...v3.5.2) ================== ## Features - `FileResponse` from `web_fileresponse.py` uses a `ThreadPoolExecutor` to work with files asynchronously. I/O based payloads from `payload.py` uses a `ThreadPoolExecutor` to work with I/O objects asynchronously. `#​3313 `\_ - Internal Server Errors in plain text if the browser does not support HTML. `#​3483 `\_ ## Bugfixes - Preserve MultipartWriter parts headers on write. Refactor the way how `Payload.headers` are handled. Payload instances now always have headers and Content-Type defined. Fix Payload Content-Disposition header reset after initial creation. `#​3035 `\_ - Log suppressed exceptions in `GunicornWebWorker`. `#​3464 `\_ - Remove wildcard imports. `#​3468 `\_ - Use the same task for app initialization and web server handling in gunicorn workers. It allows to use Python3.7 context vars smoothly. `#​3471 `\_ - Fix handling of chunked+gzipped response when first chunk does not give uncompressed data `#​3477 `\_ - Replace `collections.MutableMapping` with `collections.abc.MutableMapping` to avoid a deprecation warning. `#​3480 `\_ - `Payload.size` type annotation changed from `Optional[float]` to `Optional[int]`. `#​3484 `\_ - Ignore done tasks when cancels pending activities on `web.run_app` finalization. `#​3497 `\_ ## Improved Documentation - Add documentation for `aiohttp.web.HTTPException`. `#​3490 `\_ ## Misc - `#​3487 `\_ * * * ### [`v3.5.1`](https://togithub.com/aio-libs/aiohttp/blob/master/CHANGES.rst#​351-2018-12-24) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.5.0...v3.5.1) ==================== - Fix a regression about `ClientSession._requote_redirect_url` modification in debug mode. ### [`v3.5.0`](https://togithub.com/aio-libs/aiohttp/blob/master/CHANGES.rst#​350-2018-12-22) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.4.4...v3.5.0) ==================== ## Features - The library type annotations are checked in strict mode now. - Add support for setting cookies for individual request (`#​2387 `\_) - Application.add_domain implementation (`#​2809 `_) - The default `app` in the request returned by `test_utils.make_mocked_request` can now have objects assigned to it and retrieved using the `[]` operator. (`#​3174 `\_) - Make `request.url` accessible when transport is closed. (`#​3177 `\_) - Add `zlib_executor_size` argument to `Response` constructor to allow compression to run in a background executor to avoid blocking the main thread and potentially triggering health check failures. (`#​3205 `\_) - Enable users to set `ClientTimeout` in `aiohttp.request` (`#​3213 `\_) - Don't raise a warning if `NETRC` environment variable is not set and `~/.netrc` file doesn't exist. (`#​3267 `\_) - Add default logging handler to web.run_app If the ````Application.debug``` flag is set and the default logger````aiohttp.access`is used, access logs will now be output using a *stderr*`StreamHandler`if no handlers are attached. Furthermore, if the default logger has no log level set, the log level will be set to`DEBUG``. (`#​3324 `_) - Add method argument to `session.ws_connect()`. Sometimes server API requires a different HTTP method for WebSocket connection establishment. For example, `Docker exec` needs POST. (`#​3378 `\_) - Create a task per request handling. (`#​3406 `\_) ## Bugfixes - Enable passing `access_log_class` via `handler_args` (`#​3158 `\_) - Return empty bytes with end-of-chunk marker in empty stream reader. (`#​3186 `\_) - Accept `CIMultiDictProxy` instances for `headers` argument in `web.Response` constructor. (`#​3207 `\_) - Don't uppercase HTTP method in parser (`#​3233 `\_) - Make method match regexp RFC-7230 compliant (`#​3235 `\_) - Add `app.pre_frozen` state to properly handle startup signals in sub-applications. (`#​3237 `\_) - Enhanced parsing and validation of helpers.BasicAuth.decode. (`#​3239 `\_) - Change imports from collections module in preparation for 3.8. (`#​3258 `\_) - Ensure Host header is added first to ClientRequest to better replicate browser (`#​3265 `\_) - Fix forward compatibility with Python 3.8: importing ABCs directly from the collections module will not be supported anymore. (`#​3273 `\_) - Keep the query string by `normalize_path_middleware`. (`#​3278 `\_) - Fix missing parameter `raise_for_status` for aiohttp.request() (`#​3290 `\_) - Bracket IPv6 addresses in the HOST header (`#​3304 `\_) - Fix default message for server ping and pong frames. (`#​3308 `\_) - Fix tests/test_connector.py typo and tests/autobahn/server.py duplicate loop def. (`#​3337 `_) - Fix false-negative indicator end_of_HTTP_chunk in StreamReader.readchunk function (`#​3361 `_) - Release HTTP response before raising status exception (`#​3364 `\_) - Fix task cancellation when `sendfile()` syscall is used by static file handling. (`#​3383 `\_) - Fix stack trace for `asyncio.TimeoutError` which was not logged, when it is caught in the handler. (`#​3414 `\_) ## Improved Documentation - Improve documentation of `Application.make_handler` parameters. (`#​3152 `\_) - Fix BaseRequest.raw_headers doc. (`#​3215 `_) - Fix typo in TypeError exception reason in `web.Application._handle` (`#​3229 `\_) - Make server access log format placeholder %b documentation reflect behavior and docstring. (`#​3307 `\_) ## Deprecations and Removals - Deprecate modification of `session.requote_redirect_url` (`#​2278 `\_) - Deprecate `stream.unread_data()` (`#​3260 `\_) - Deprecated use of boolean in `resp.enable_compression()` (`#​3318 `\_) - Encourage creation of aiohttp public objects inside a coroutine (`#​3331 `\_) - Drop dead `Connection.detach()` and `Connection.writer`. Both methods were broken for more than 2 years. (`#​3358 `\_) - Deprecate `app.loop`, `request.loop`, `client.loop` and `connector.loop` properties. (`#​3374 `\_) - Deprecate explicit debug argument. Use asyncio debug mode instead. (`#​3381 `\_) - Deprecate body parameter in HTTPException (and derived classes) constructor. (`#​3385 `\_) - Deprecate bare connector close, use `async with connector:` and `await connector.close()` instead. (`#​3417 `\_) - Deprecate obsolete `read_timeout` and `conn_timeout` in `ClientSession` constructor. (`#​3438 `\_) ## Misc - [#​3341](https://togithub.com/aio-libs/aiohttp/issues/3341), [#​3351](https://togithub.com/aio-libs/aiohttp/issues/3351) ### [`v3.4.4`](https://togithub.com/aio-libs/aiohttp/releases/v3.4.4) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.4.3...v3.4.4) ## Changes - Fix installation from sources when compiling toolkit is not available (`#​3241 `\_) ### [`v3.4.3`](https://togithub.com/aio-libs/aiohttp/releases/v3.4.3) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.4.2...v3.4.3) ## Changes - Add `app.pre_frozen` state to properly handle startup signals in sub-applications. (`#​3237 `\_) ### [`v3.4.2`](https://togithub.com/aio-libs/aiohttp/releases/v3.4.2) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.4.1...v3.4.2) ## Changes - Fix `iter_chunks` type annotation (`#​3230 `\_) ### [`v3.4.1`](https://togithub.com/aio-libs/aiohttp/releases/v3.4.1) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.4.0...v3.4.1) Fixed regressions for HTTP headers processing and documentation publishing # Changes - Fix empty header parsing regression. (`#​3218 `\_) - Fix BaseRequest.raw_headers doc. (`#​3215 `_) - Fix documentation building on ReadTheDocs (`#​3221 `\_) ### [`v3.4.0`](https://togithub.com/aio-libs/aiohttp/releases/v3.4.0) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.3.2...v3.4.0) # Changes ## Features - Add type hints (`#​3049 `\_) - Add `raise_for_status` request parameter (`#​3073 `\_) - Add type hints to HTTP client (`#​3092 `\_) - Minor server optimizations (`#​3095 `\_) - Preserve the cause when `HTTPException` is raised from another exception. (`#​3096 `\_) - Add `close_boundary` option in `MultipartWriter.write` method. Support streaming (`#​3104 `\_) - Added a `remove_slash` option to the `normalize_path_middleware` factory. (`#​3173 `\_) - The class `AbstractRouteDef` is importable from `aiohttp.web`. (`#​3183 `\_) ## Bugfixes - Prevent double closing when client connection is released before the last `data_received()` callback. (`#​3031 `\_) - Make redirect with `normalize_path_middleware` work when using url encoded paths. (`#​3051 `\_) - Postpone web task creation to connection establishment. (`#​3052 `\_) - Fix `sock_read` timeout. (`#​3053 `\_) - When using a server-request body as the `data=` argument of a client request, iterate over the content with `readany` instead of `readline` to avoid `Line too long` errors. (`#​3054 `\_) - fix `UrlDispatcher` has no attribute `add_options`, add `web.options` (`#​3062 `\_) - correct filename in content-disposition with multipart body (`#​3064 `\_) - Many HTTP proxies has buggy keepalive support. Let's not reuse connection but close it after processing every response. (`#​3070 `\_) - raise 413 "Payload Too Large" rather than raising ValueError in request.post() Add helpful debug message to 413 responses (`#​3087 `\_) - Fix `StreamResponse` equality, now that they are `MutableMapping` objects. (`#​3100 `\_) - Fix server request objects comparison (`#​3116 `\_) - Do not hang on `206 Partial Content` response with `Content-Encoding: gzip` (`#​3123 `\_) - Fix timeout precondition checkers (`#​3145 `\_) ## Improved Documentation - Add a new FAQ entry that clarifies that you should not reuse response objects in middleware functions. (`#​3020 `\_) - Add FAQ section "Why is creating a ClientSession outside of an event loop dangerous?" (`#​3072 `\_) - Fix link to Rambler (`#​3115 `\_) - Fix TCPSite documentation on the Server Reference page. (`#​3146 `\_) - Fix documentation build configuration file for Windows. (`#​3147 `\_) - Remove no longer existing lingering_timeout parameter of Application.make_handler from documentation. (`#​3151 `_) - Mention that `app.make_handler` is deprecated, recommend to use runners API instead. (`#​3157 `\_) ## Deprecations and Removals - Drop `loop.current_task()` from `helpers.current_task()` (`#​2826 `\_) - Drop `reader` parameter from `request.multipart()`. (`#​3090 `\_) ### [`v3.3.2`](https://togithub.com/aio-libs/aiohttp/releases/v3.3.2) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.3.1...v3.3.2) Bugfix release ## Changes - Many HTTP proxies has buggy keepalive support. Let's not reuse connection but close it after processing every response. ([#​3070](https://togithub.com/aio-libs/aiohttp/issues/3070)) - Provide vendor source files in tarball ([#​3076](https://togithub.com/aio-libs/aiohttp/issues/3076)) ### [`v3.3.1`](https://togithub.com/aio-libs/aiohttp/releases/v3.3.1) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.3.0...v3.3.1) Bugfix release. ## Changes - Fix `sock_read` timeout. ([#​3053](https://togithub.com/aio-libs/aiohttp/issues/3053)) - When using a server-request body as the `data=` argument of a client request, iterate over the content with `readany` instead of `readline` to avoid `Line too long` errors. ([#​3054](https://togithub.com/aio-libs/aiohttp/issues/3054)) ### [`v3.3.0`](https://togithub.com/aio-libs/aiohttp/releases/v3.3.0) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.2.1...v3.3.0) The main change is introducing new client timeouts. The release has many new improvements and bugfixes as well. # Changes ## Features - Raise `ConnectionResetError` instead of `CancelledError` on trying to write to a closed stream. [#​2499](https://togithub.com/aio-libs/aiohttp/issues/2499) - Implement `ClientTimeout` class and support socket read timeout. [#​2768](https://togithub.com/aio-libs/aiohttp/issues/2768) - Enable logging when `aiohttp.web` is used as a program [#​2956](https://togithub.com/aio-libs/aiohttp/issues/2956) - Add canonical property to resources [#​2968](https://togithub.com/aio-libs/aiohttp/issues/2968) - Forbid reading response BODY after release [#​2983](https://togithub.com/aio-libs/aiohttp/issues/2983) - Implement base protocol class to avoid a dependency from internal `asyncio.streams.FlowControlMixin` [#​2986](https://togithub.com/aio-libs/aiohttp/issues/2986) - Cythonize `@helpers.reify`, 5% boost on macro benchmark [#​2995](https://togithub.com/aio-libs/aiohttp/issues/2995) - Optimize HTTP parser [#​3015](https://togithub.com/aio-libs/aiohttp/issues/3015) - Implement `runner.addresses` property. [#​3036](https://togithub.com/aio-libs/aiohttp/issues/3036) - Use `bytearray` instead of a list of `bytes` in websocket reader. It improves websocket message reading a little. [#​3039](https://togithub.com/aio-libs/aiohttp/issues/3039) - Remove heartbeat on closing connection on keepalive timeout. The used hack violates HTTP protocol. [#​3041](https://togithub.com/aio-libs/aiohttp/issues/3041) - Limit websocket message size on reading to 4 MB by default. [#​3045](https://togithub.com/aio-libs/aiohttp/issues/3045) ## Bugfixes - Don't reuse a connection with the same URL but different proxy/TLS settings [#​2981](https://togithub.com/aio-libs/aiohttp/issues/2981) - When parsing the Forwarded header, the optional port number is now preserved. [#​3009](https://togithub.com/aio-libs/aiohttp/issues/3009) ## Improved Documentation - Make Change Log more visible in docs [#​3029](https://togithub.com/aio-libs/aiohttp/issues/3029) - Make style and grammar improvements on the FAQ page. [#​3030](https://togithub.com/aio-libs/aiohttp/issues/3030)- Document that signal handlers should be async functions since aiohttp 3.0 [#​3032](https://togithub.com/aio-libs/aiohttp/issues/3032) ## Deprecations and Removals - Deprecate custom application's router. [#​3021](https://togithub.com/aio-libs/aiohttp/issues/3021) ### [`v3.2.1`](https://togithub.com/aio-libs/aiohttp/releases/v3.2.1) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.2.0...v3.2.1) ## Changes - Don't reuse a connection with the same URL but different proxy/TLS settings ([#​2981](https://togithub.com/aio-libs/aiohttp/issues/2981)) ### [`v3.2.0`](https://togithub.com/aio-libs/aiohttp/releases/v3.2.0) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.1.3...v3.2.0) ## Changes ## Features - Raise `TooManyRedirects` exception when client gets redirected too many times instead of returning last response. (`#​2631 `\_) - Extract route definitions into separate `web_routedef.py` file (`#​2876 `\_) - Raise an exception on request body reading after sending response. (`#​2895 `\_) - ClientResponse and RequestInfo now have real_url property, which is request url without fragment part being stripped (`#​2925 `_) - Speed up connector limiting (`#​2937 `\_) - Added and links property for ClientResponse object (`#​2948 `\_) - Add `request.config_dict` for exposing nested applications data. (`#​2949 `\_) - Speed up HTTP headers serialization, server micro-benchmark runs 5% faster now. (`#​2957 `\_) - Apply assertions in debug mode only (`#​2966 `\_) ## Bugfixes - expose property `app` for TestClient (`#​2891 `\_) - Call on_chunk_sent when write_eof takes as a param the last chunk (`#​2909 `_) - A closing bracket was added to **repr** of resources (`#​2935 `\_) - Fix compression of FileResponse (`#​2942 `\_) - Fixes some bugs in the limit connection feature (`#​2964 `\_) ## Improved Documentation - Drop `async_timeout` usage from documentation for client API in favor of `timeout` parameter. (`#​2865 `\_) - Improve Gunicorn logging documentation (`#​2921 `\_) - Replace multipart writer `.serialize()` method with `.write()` in documentation. (`#​2965 `\_) ## Deprecations and Removals - Deprecate Application.make_handler() (`#​2938 `_) ## Misc - [#​2958](https://togithub.com/aio-libs/aiohttp/issues/2958) ### [`v3.1.3`](https://togithub.com/aio-libs/aiohttp/releases/v3.1.3) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.1.2...v3.1.3) Bugfix release ## Changes - Fix cancellation broadcast during DNS resolve (`#​2910 `\_) ### [`v3.1.2`](https://togithub.com/aio-libs/aiohttp/releases/v3.1.2) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.1.1...v3.1.2) Bugfix release, no new features against 3.1.0 # Changes - Make `LineTooLong` exception more detailed about actual data size ([#​2863](https://togithub.com/aio-libs/aiohttp/issues/2863)) - Call `on_chunk_sent` when `write_eof()` takes as a param the last chunk ([#​2909](https://togithub.com/aio-libs/aiohttp/issues/2909)) ### [`v3.1.1`](https://togithub.com/aio-libs/aiohttp/releases/v3.1.1) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.1.0...v3.1.1) # Changes - Support _asynchronous iterators_ (and _asynchronous generators_ as well) in both client and server API as request / response BODY payloads. ([#​2802](https://togithub.com/aio-libs/aiohttp/issues/2802)) ### [`v3.1.0`](https://togithub.com/aio-libs/aiohttp/releases/v3.1.0) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.0.9...v3.1.0) Welcome to aiohttp 3.1 release. This is an _incremental_ release, fully backward compatible with _aiohttp 3.0_. But we have added several new features. The most visible one is `app.add_routes()` (an alias for existing `app.router.add_routes()`. The addition is very important because all _aiohttp_ docs now uses `app.add_routes()` call in code snippets. All your existing code still do register routes / resource without any warning but you've got the idea for a favorite way: noisy `app.router.add_get()` is replaced by `app.add_routes()`. The library does not make a preference between decorators:: routes = web.RouteTableDef() [@​routes](https://togithub.com/routes).get('/') async def hello(request): return web.Response(text="Hello, world") app.add_routes(routes) and route tables as a list:: async def hello(request): return web.Response(text="Hello, world") app.add_routes([web.get('/', hello)]) Both ways are equal, user may decide basing on own code taste. Also we have a lot of minor features, bug fixes and documentation updates, see below. ## Features - Relax JSON content-type checking in the `ClientResponse.json()` to allow "application/xxx+json" instead of strict "application/json". ([#​2206](https://togithub.com/aio-libs/aiohttp/issues/2206)) - Bump C HTTP parser to version 2.8 ([#​2730](https://togithub.com/aio-libs/aiohttp/issues/2730)) - Accept a coroutine as an application factory in `web.run_app` and gunicorn worker. ([#​2739](https://togithub.com/aio-libs/aiohttp/issues/2739)) - Implement application cleanup context (`app.cleanup_ctx` property). ([#​2747](https://togithub.com/aio-libs/aiohttp/issues/2747)) - Make `writer.write_headers` a coroutine. ([#​2762](https://togithub.com/aio-libs/aiohttp/issues/2762)) - Add tracking signals for getting request/response bodies. ([#​2767](https://togithub.com/aio-libs/aiohttp/issues/2767)) - Deprecate ClientResponseError.code in favor of .status to keep similarity with response classes. ([#​2781](https://togithub.com/aio-libs/aiohttp/issues/2781)) - Implement `app.add_routes()` method. ([#​2787](https://togithub.com/aio-libs/aiohttp/issues/2787)) - Implement `web.static()` and `RouteTableDef.static()` API. ([#​2795](https://togithub.com/aio-libs/aiohttp/issues/2795)) - Install a test event loop as default by `asyncio.set_event_loop()`. The change affects aiohttp test utils but backward compatibility is not broken for 99.99% of use cases. ([#​2804](https://togithub.com/aio-libs/aiohttp/issues/2804)) - Refactor `ClientResponse` constructor: make logically required constructor arguments mandatory, drop `_post_init()` method. ([#​2820](https://togithub.com/aio-libs/aiohttp/issues/2820)) - Use `app.add_routes()` in server docs everywhere ([#​2830](https://togithub.com/aio-libs/aiohttp/issues/2830)) - Websockets refactoring, all websocket writer methods are converted into coroutines. ([#​2836](https://togithub.com/aio-libs/aiohttp/issues/2836)) - Provide `Content-Range` header for `Range` requests ([#​2844](https://togithub.com/aio-libs/aiohttp/issues/2844)) ## Bugfixes - Fix websocket client return EofStream. ([#​2784](https://togithub.com/aio-libs/aiohttp/issues/2784)) - Fix websocket demo. ([#​2789](https://togithub.com/aio-libs/aiohttp/issues/2789)) - Property `BaseRequest.http_range` now returns a python-like slice when requesting the tail of the range. It's now indicated by a negative value in `range.start` rather then in `range.stop` ([#​2805](https://togithub.com/aio-libs/aiohttp/issues/2805)) - Close a connection if an unexpected exception occurs while sending a request ([#​2827](https://togithub.com/aio-libs/aiohttp/issues/2827)) - Fix firing DNS tracing events. ([#​2841](https://togithub.com/aio-libs/aiohttp/issues/2841)) ## Improved Documentation - Change `ClientResponse.json()` documentation to reflect that it now allows "application/xxx+json" content-types ([#​2206](https://togithub.com/aio-libs/aiohttp/issues/2206)) - Document behavior when cchardet detects encodings that are unknown to Python. ([#​2732](https://togithub.com/aio-libs/aiohttp/issues/2732)) - Add diagrams for tracing request life style. ([#​2748](https://togithub.com/aio-libs/aiohttp/issues/2748)) - Drop removed functionality for passing `StreamReader` as data at client side. ([#​2793](https://togithub.com/aio-libs/aiohttp/issues/2793)) ### [`v3.0.9`](https://togithub.com/aio-libs/aiohttp/releases/v3.0.9) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.0.8...v3.0.9) ## Changes - Close a connection if an unexpected exception occurs while sending a request ([#​2827](https://togithub.com/aio-libs/aiohttp/issues/2827)) ### [`v3.0.8`](https://togithub.com/aio-libs/aiohttp/releases/v3.0.8) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.0.7...v3.0.8) ## Changes - Use `asyncio.current_task()` on Python 3.7 ([#​2825](https://togithub.com/aio-libs/aiohttp/issues/2825)) ### [`v3.0.7`](https://togithub.com/aio-libs/aiohttp/releases/v3.0.7) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.0.6...v3.0.7) Fixed previously broken SSL proxies (http proxies with upgrade to HTTPS by CONNECT method). ## Changes - Fix SSL proxy support by client. ([#​2810](https://togithub.com/aio-libs/aiohttp/issues/2810)) - Restore a imperative check in `setup.py` for python version. The check works in parallel to environment marker. As effect a error about unsupported Python versions is raised even on outdated systems with very old `setuptools` version installed. ([#​2813](https://togithub.com/aio-libs/aiohttp/issues/2813)) ### [`v3.0.6`](https://togithub.com/aio-libs/aiohttp/releases/v3.0.6) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.0.5...v3.0.6) ## Changes - Add `_reuse_address` and `_reuse_port` to `web_runner.TCPSite.__slots__`. ([#​2792](https://togithub.com/aio-libs/aiohttp/issues/2792)) ### [`v3.0.5`](https://togithub.com/aio-libs/aiohttp/releases/v3.0.5) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.0.4...v3.0.5) The release is pretty important, as well as bug fixes for aiohttp 3.0.4 Update to aiohttp 3.0.5 is highly recommended for aiohttp server code. ## Changes - Fix `InvalidStateError` on processing a sequence of two `RequestHandler.data_received` calls on web server. ([#​2773](https://togithub.com/aio-libs/aiohttp/issues/2773)) ### [`v3.0.4`](https://togithub.com/aio-libs/aiohttp/releases/v3.0.4) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.0.3...v3.0.4) ## Changes - Fix `IndexError` in HTTP request handling by server. ([#​2752](https://togithub.com/aio-libs/aiohttp/issues/2752)) - Fix MultipartWriter.append\* no longer returning part/payload. ([#​2759](https://togithub.com/aio-libs/aiohttp/issues/2759)) ### [`v3.0.3`](https://togithub.com/aio-libs/aiohttp/releases/v3.0.3) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.0.2...v3.0.3) ## Changes - Relax `attrs` dependency to minimal actually supported version 17.0.3 The change allows to avoid version conflicts with currently existing test tools. ### [`v3.0.2`](https://togithub.com/aio-libs/aiohttp/releases/v3.0.2) [Compare Source](https://togithub.com/aio-libs/aiohttp/compare/v3.0.1...v3.0.2) Upgrade is highly recommended for Windows users. ## Changes - Prevent Windows absolute URLs in static files. Paths like `/static/D:\path` and `/static/\\hostname\drive\path` are forbidden.

Renovate configuration

:date: Schedule: At any time (no schedule defined).

:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.

:recycle: Rebasing: Whenever PR becomes conflicted, or if you tick the rebase/retry checkbox below.

:no_bell: Ignore: Close this PR and you won't be reminded about this update again.



This PR has been generated by WhiteSource Renovate. View repository job log here.