Releases: aio-libs/aiohttp
aiohttp 0.18.4
Bugfix release.
Changes
- Relax rule for router names again by adding dash to allowed
characters: they may contain identifiers, dashes, dots and columns
aiohttp 0.18.3 bugfix release
Changes
- Fix formatting for _RequestContextManager helper #590
aiohttp 0.18.2
Bugfix release, fixes regression with usage OpenSSL < 1.0.0 #584
aiohttp 0.18.1
0.18.1 bugfix release
Changes
- Relax rule for router names: they may contain dots and columns
starting from now
aiohttp 0.18.0
Major aiohttp release.
Added support for async for and async with, e.g.
async with client.get(url) as resp:
async for line in resp.content:
print(line)
auto-closes response object and iterates over response's content.
Server-side signals added (allows, for example, setup http headers for long-living responses in signal hook).
Python 3.3 support dropped.
Full list of changes is pretty huge:
Changes
-
Use errors.HttpProcessingError.message as HTTP error reason and
message #459 -
Optimize cythonized multidict a bit
-
Change repr's of multidicts and multidict views
-
default headers in ClientSession are now case-insensitive
-
Make '=' char and 'wss://' schema safe in urls #477
-
ClientResponse.close()forces connection closing by default from now #479
N.B. Backward incompatible change: was.close(force=False) Usingforceparameter for the method is deprecated: use.release()` instead. -
Properly requote URL's path #480
-
add
skip_auto_headersparameter for client API #486 -
Properly parse URL path in aiohttp.web.Request #489
-
Raise RuntimeError when chunked enabled and HTTP is 1.0 #488
-
Fix a bug with processing io.BytesIO as data parameter for client API #500
-
Skip auto-generation of Content-Type header #507
-
Use sendfile facility for static file handling #503
-
Default
response_factoryinapp.router.add_staticnow is
StreamResponse, notNone. The functionality is not changed if
default is not specified. -
Drop
ClientResponse.messageattribute, it was always implementation detail. -
Streams are optimized for speed and mostly memory in case of a big
HTTP message sizes #496 -
Fix a bug for server-side cookies for dropping cookie and setting it
again without Max-Age parameter. -
Don't trim redirect URL in client API #499
-
Extend precision of access log "D" to milliseconds #527
-
Deprecate
StreamResponse.start()method in favor of
StreamResponse.prepare()coroutine #525.start()is still supported but responses begun with.start()
doesn't call signal for response preparing to be sent. -
Add
StreamReader.__repr__ -
Drop Python 3.3 support, from now minimal required version is Python
3.4.1 #541 -
Add
async withsupport forClientSession.request()and family #536 -
Ignore message body on 204 and 304 responses #505
-
TCPConnectorprocessed both IPv4 and IPv6 by default #559 -
Add
.routes()view for urldispatcher #519 -
Route name should be a valid identifier name from now #567
-
Implement server signals #562
-
Drop an year-old deprecated files parameter from client API.
-
Added
async forsupport for aiohttp stream #542
aiohttp 0.17.4 release
Minor aiohttp release.
The main change is making code pep-492 compatible.
So you can use await in client API, e.g.:
async def getter(url):
resp = await aiohttp.get(url)
try:
text = await resp.read()
return text
finally:
await resp.release()
Changes
- Properly parse URL path in aiohttp.web.Request #489
- Add missing coroutine decorator, the code is await-compatible now
aiohttp 0.17.3
aiohttp 0.17.2 release
aiohttp 0.17.1 release
Bugfix release
Fixed multidict comparison (c727d25)
Major aiohttp 0.17.0 release
Major release
Actually it doesn't introduce many new features but has a lot of bug fixes.
New features are
- slightly improve client API by adding toplevel
get(),post(),put(),head(),delete(),options(),
patch()coroutines - Add context manager support to
ClientSessionfor session closing. - Make
StaticRoutesupportingLast-ModifiedandIf-Modified-Sinceheaders - Pass SSL context through proxy connector
Also please take a look on documentation: http://aiohttp.readthedocs.org/en/stable/ now has a comment section (powered by disqus) on the bottom of every page. We hope your comments will increase docs quality very well.
Full list of changes
- Make StaticRoute support Last-Modified and If-Modified-Since headers #386
- Add Request.if_modified_since and Stream.Response.last_modified properties
- Fix deflate compression when writing a chunked response #395
- Request`s content-length header is cleared now after redirect from
POST method #391 - Return a 400 if server received a non HTTP content #405
- Fix keep-alive support for aiohttp clients #406
- Allow gzip compression in high-level server response interface #403
- Rename TCPConnector.resolve and family to dns_cache #415
- Make UrlDispatcher ignore quoted characters during url matching #414
Backward-compatibility warning: this may change the url matched by
your queries if they send quoted character (like %2F for /) #414 - Use optional cchardet accelerator if present #418
- Borrow loop from Connector in ClientSession if loop is not set
- Add context manager support to ClientSession for session closing.
- Add toplevel get(), post(), put(), head(), delete(), options(),
patch() coroutines. - Fix IPv6 support for client API #425
- Pass SSL context through proxy connector #421
- Make the rule: path for add_route should start with slash
- Don't process request finishing by low-level server on closed event loop
- Don't override data if multiple files are uploaded with same key #433
- Ensure multipart.BodyPartReader.read_chunk read all the necessary data
to avoid false assertions about malformed multipart payload - Dont sent body for 204, 205 and 304 http exceptions #442
- Correctly skip Cython compilation in MSVC not found #453
- Add response factory to StaticRoute #456
- Don't append trailing CRLF for multipart.BodyPartReader #454