pkgsrc/www/py-aiohttp/Makefile

36 lines
1.4 KiB
Makefile
Raw Normal View History

# $NetBSD: Makefile,v 1.42 2020/10/13 09:05:40 adam Exp $
DISTNAME= aiohttp-3.6.3
PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
CATEGORIES= www python
MASTER_SITES= ${MASTER_SITE_PYPI:=a/aiohttp/}
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= https://github.com/aio-libs/aiohttp
COMMENT= Async http client/server framework
LICENSE= apache-2.0
py-aiohttp: updated to 3.4.0 3.4.0: Features Add type hints Add raise_for_status request parameter Add type hints to HTTP client Minor server optimizations Preserve the cause when HTTPException is raised from another exception. Add close_boundary option in MultipartWriter.write method. Support streaming Added a remove_slash option to the normalize_path_middleware factory. The class AbstractRouteDef is importable from aiohttp.web. Bugfixes Prevent double closing when client connection is released before the last data_received() callback. Make redirect with normalize_path_middleware work when using url encoded paths. Postpone web task creation to connection establishment. Fix sock_read timeout. 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. fix UrlDispatcher has no attribute add_options, add web.options correct filename in content-disposition with multipart body Many HTTP proxies has buggy keepalive support. Let's not reuse connection but close it after processing every response. raise 413 "Payload Too Large" rather than raising ValueError in request.post() Add helpful debug message to 413 responses Fix StreamResponse equality, now that they are MutableMapping objects. Fix server request objects comparison Do not hang on 206 Partial Content response with Content-Encoding: gzip Fix timeout precondition checkers Improved Documentation Add a new FAQ entry that clarifies that you should not reuse response objects in middleware functions. Add FAQ section "Why is creating a ClientSession outside of an event loop dangerous?" Fix link to Rambler Fix TCPSite documentation on the Server Reference page. Fix documentation build configuration file for Windows. Remove no longer existing lingering_timeout parameter of Application.make_handler from documentation. Mention that app.make_handler is deprecated, recommend to use runners API instead. Deprecations and Removals Drop loop.current_task() from helpers.current_task() Drop reader parameter from request.multipart().
2018-08-27 13:16:01 +02:00
DEPENDS+= ${PYPKGPREFIX}-async-timeout>=3.0:../../devel/py-async-timeout
DEPENDS+= ${PYPKGPREFIX}-attrs>=17.4.0:../../devel/py-attrs
DEPENDS+= ${PYPKGPREFIX}-chardet>=2.0:../../converters/py-chardet
DEPENDS+= ${PYPKGPREFIX}-multidict>=4.5:../../databases/py-multidict
DEPENDS+= ${PYPKGPREFIX}-yarl>=1.0:../../www/py-yarl
TEST_DEPENDS+= ${PYPKGPREFIX}-async_generator-[0-9]*:../../devel/py-async_generator
py-aiohttp: updated to 3.1.0 3.1.0: Features - Relax JSON content-type checking in the ClientResponse.json() to allow "application/xxx+json" instead of strict "application/json". - Bump C HTTP parser to version 2.8 - Accept a coroutine as an application factory in web.run_app and gunicorn worker. - Implement application cleanup context - Make writer.write_headers a coroutine. - Add tracking signals for getting request/response bodies. - Deprecate ClientResponseError.code in favor of .status to keep similarity with response classes. - Implement app.add_routes() method. - Implement web.static() and RouteTableDef.static() API. - 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. - Refactor ClientResponse constructor: make logically required constructor arguments mandatory, drop _post_init() method. - Use app.add_routes() in server docs everywhere - Websockets refactoring, all websocket writer methods are converted into coroutines. - Provide Content-Range header for Range requests Bugfixes - Fix websocket client return EofStream. - Fix websocket demo. - 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 - Close a connection if an unexpected exception occurs while sending a request - Fix firing DNS tracing events. Improved Documentation - Change ClientResponse.json() documentation to reflect that it now allows "application/xxx+json" content-types - Document behavior when cchardet detects encodings that are unknown to Python. - Add diagrams for tracing request life style. - Drop removed functionality for passing StreamReader as data at client side.
2018-03-22 09:02:35 +01:00
TEST_DEPENDS+= ${PYPKGPREFIX}-gunicorn-[0-9]*:../../www/py-gunicorn
TEST_DEPENDS+= ${PYPKGPREFIX}-test-[0-9]*:../../devel/py-test
TEST_DEPENDS+= ${PYPKGPREFIX}-test-cov-[0-9]*:../../devel/py-test-cov
py-aiohttp: updated to 3.1.0 3.1.0: Features - Relax JSON content-type checking in the ClientResponse.json() to allow "application/xxx+json" instead of strict "application/json". - Bump C HTTP parser to version 2.8 - Accept a coroutine as an application factory in web.run_app and gunicorn worker. - Implement application cleanup context - Make writer.write_headers a coroutine. - Add tracking signals for getting request/response bodies. - Deprecate ClientResponseError.code in favor of .status to keep similarity with response classes. - Implement app.add_routes() method. - Implement web.static() and RouteTableDef.static() API. - 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. - Refactor ClientResponse constructor: make logically required constructor arguments mandatory, drop _post_init() method. - Use app.add_routes() in server docs everywhere - Websockets refactoring, all websocket writer methods are converted into coroutines. - Provide Content-Range header for Range requests Bugfixes - Fix websocket client return EofStream. - Fix websocket demo. - 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 - Close a connection if an unexpected exception occurs while sending a request - Fix firing DNS tracing events. Improved Documentation - Change ClientResponse.json() documentation to reflect that it now allows "application/xxx+json" content-types - Document behavior when cchardet detects encodings that are unknown to Python. - Add diagrams for tracing request life style. - Drop removed functionality for passing StreamReader as data at client side.
2018-03-22 09:02:35 +01:00
TEST_DEPENDS+= ${PYPKGPREFIX}-test-timeout-[0-9]*:../../devel/py-test-timeout
TEST_DEPENDS+= ${PYPKGPREFIX}-test-xdist-[0-9]*:../../devel/py-test-xdist
PYTHON_VERSIONS_INCOMPATIBLE= 27
py-aiohttp: updated to 3.4.0 3.4.0: Features Add type hints Add raise_for_status request parameter Add type hints to HTTP client Minor server optimizations Preserve the cause when HTTPException is raised from another exception. Add close_boundary option in MultipartWriter.write method. Support streaming Added a remove_slash option to the normalize_path_middleware factory. The class AbstractRouteDef is importable from aiohttp.web. Bugfixes Prevent double closing when client connection is released before the last data_received() callback. Make redirect with normalize_path_middleware work when using url encoded paths. Postpone web task creation to connection establishment. Fix sock_read timeout. 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. fix UrlDispatcher has no attribute add_options, add web.options correct filename in content-disposition with multipart body Many HTTP proxies has buggy keepalive support. Let's not reuse connection but close it after processing every response. raise 413 "Payload Too Large" rather than raising ValueError in request.post() Add helpful debug message to 413 responses Fix StreamResponse equality, now that they are MutableMapping objects. Fix server request objects comparison Do not hang on 206 Partial Content response with Content-Encoding: gzip Fix timeout precondition checkers Improved Documentation Add a new FAQ entry that clarifies that you should not reuse response objects in middleware functions. Add FAQ section "Why is creating a ClientSession outside of an event loop dangerous?" Fix link to Rambler Fix TCPSite documentation on the Server Reference page. Fix documentation build configuration file for Windows. Remove no longer existing lingering_timeout parameter of Application.make_handler from documentation. Mention that app.make_handler is deprecated, recommend to use runners API instead. Deprecations and Removals Drop loop.current_task() from helpers.current_task() Drop reader parameter from request.multipart().
2018-08-27 13:16:01 +02:00
.include "../../lang/python/pyversion.mk"
.if ${_PYTHON_VERSION} == 36
py-aiohttp: updated to 3.4.0 3.4.0: Features Add type hints Add raise_for_status request parameter Add type hints to HTTP client Minor server optimizations Preserve the cause when HTTPException is raised from another exception. Add close_boundary option in MultipartWriter.write method. Support streaming Added a remove_slash option to the normalize_path_middleware factory. The class AbstractRouteDef is importable from aiohttp.web. Bugfixes Prevent double closing when client connection is released before the last data_received() callback. Make redirect with normalize_path_middleware work when using url encoded paths. Postpone web task creation to connection establishment. Fix sock_read timeout. 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. fix UrlDispatcher has no attribute add_options, add web.options correct filename in content-disposition with multipart body Many HTTP proxies has buggy keepalive support. Let's not reuse connection but close it after processing every response. raise 413 "Payload Too Large" rather than raising ValueError in request.post() Add helpful debug message to 413 responses Fix StreamResponse equality, now that they are MutableMapping objects. Fix server request objects comparison Do not hang on 206 Partial Content response with Content-Encoding: gzip Fix timeout precondition checkers Improved Documentation Add a new FAQ entry that clarifies that you should not reuse response objects in middleware functions. Add FAQ section "Why is creating a ClientSession outside of an event loop dangerous?" Fix link to Rambler Fix TCPSite documentation on the Server Reference page. Fix documentation build configuration file for Windows. Remove no longer existing lingering_timeout parameter of Application.make_handler from documentation. Mention that app.make_handler is deprecated, recommend to use runners API instead. Deprecations and Removals Drop loop.current_task() from helpers.current_task() Drop reader parameter from request.multipart().
2018-08-27 13:16:01 +02:00
DEPENDS+= ${PYPKGPREFIX}-idna-ssl>=1.0:../../www/py-idna_ssl
py-aiohttp: updated to 3.5.0 3.5.0 (2018-12-22) Features The library type annotations are checked in strict mode now. Add support for setting cookies for individual request Application.add_domain implementation 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. Make request.url accessible when transport is closed. 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. Enable users to set ClientTimeout in aiohttp.request Don’t raise a warning if NETRC environment variable is not set and ~/.netrc file doesn’t exist. 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. 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. Create a task per request handling. Bugfixes Enable passing access_log_class via handler_args Return empty bytes with end-of-chunk marker in empty stream reader. Accept CIMultiDictProxy instances for headers argument in web.Response constructor. Don’t uppercase HTTP method in parser Make method match regexp RFC-7230 compliant Add app.pre_frozen state to properly handle startup signals in sub-applications. Enhanced parsing and validation of helpers.BasicAuth.decode. Change imports from collections module in preparation for 3.8. Ensure Host header is added first to ClientRequest to better replicate browser Fix forward compatibility with Python 3.8: importing ABCs directly from the collections module will not be supported anymore. Keep the query string by normalize_path_middleware. Fix missing parameter raise_for_status for aiohttp.request() Bracket IPv6 addresses in the HOST header Fix default message for server ping and pong frames. Fix tests/test_connector.py typo and tests/autobahn/server.py duplicate loop def. Fix false-negative indicator end_of_HTTP_chunk in StreamReader.readchunk function Release HTTP response before raising status exception Fix task cancellation when sendfile() syscall is used by static file handling. Fix stack trace for asyncio.TimeoutError which was not logged, when it is caught in the handler. Improved Documentation Improve documentation of Application.make_handler parameters. Fix BaseRequest.raw_headers doc. Fix typo in TypeError exception reason in web.Application._handle Make server access log format placeholder %b documentation reflect behavior and docstring. Deprecations and Removals Deprecate modification of session.requote_redirect_url Deprecate stream.unread_data() Deprecated use of boolean in resp.enable_compression() Encourage creation of aiohttp public objects inside a coroutine Drop dead Connection.detach() and Connection.writer. Both methods were broken for more than 2 years. Deprecate app.loop, request.loop, client.loop and connector.loop properties. Deprecate explicit debug argument. Use asyncio debug mode instead. Deprecate body parameter in HTTPException (and derived classes) constructor. Deprecate bare connector close, use async with connector: and await connector.close() instead. Deprecate obsolete read_timeout and conn_timeout in ClientSession constructor.
2018-12-22 23:45:47 +01:00
DEPENDS+= ${PYPKGPREFIX}-typing-extensions>=3.6.5:../../devel/py-typing-extensions
py-aiohttp: updated to 3.4.0 3.4.0: Features Add type hints Add raise_for_status request parameter Add type hints to HTTP client Minor server optimizations Preserve the cause when HTTPException is raised from another exception. Add close_boundary option in MultipartWriter.write method. Support streaming Added a remove_slash option to the normalize_path_middleware factory. The class AbstractRouteDef is importable from aiohttp.web. Bugfixes Prevent double closing when client connection is released before the last data_received() callback. Make redirect with normalize_path_middleware work when using url encoded paths. Postpone web task creation to connection establishment. Fix sock_read timeout. 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. fix UrlDispatcher has no attribute add_options, add web.options correct filename in content-disposition with multipart body Many HTTP proxies has buggy keepalive support. Let's not reuse connection but close it after processing every response. raise 413 "Payload Too Large" rather than raising ValueError in request.post() Add helpful debug message to 413 responses Fix StreamResponse equality, now that they are MutableMapping objects. Fix server request objects comparison Do not hang on 206 Partial Content response with Content-Encoding: gzip Fix timeout precondition checkers Improved Documentation Add a new FAQ entry that clarifies that you should not reuse response objects in middleware functions. Add FAQ section "Why is creating a ClientSession outside of an event loop dangerous?" Fix link to Rambler Fix TCPSite documentation on the Server Reference page. Fix documentation build configuration file for Windows. Remove no longer existing lingering_timeout parameter of Application.make_handler from documentation. Mention that app.make_handler is deprecated, recommend to use runners API instead. Deprecations and Removals Drop loop.current_task() from helpers.current_task() Drop reader parameter from request.multipart().
2018-08-27 13:16:01 +02:00
.endif
py-aiohttp: updated to 3.5.0 3.5.0 (2018-12-22) Features The library type annotations are checked in strict mode now. Add support for setting cookies for individual request Application.add_domain implementation 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. Make request.url accessible when transport is closed. 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. Enable users to set ClientTimeout in aiohttp.request Don’t raise a warning if NETRC environment variable is not set and ~/.netrc file doesn’t exist. 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. 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. Create a task per request handling. Bugfixes Enable passing access_log_class via handler_args Return empty bytes with end-of-chunk marker in empty stream reader. Accept CIMultiDictProxy instances for headers argument in web.Response constructor. Don’t uppercase HTTP method in parser Make method match regexp RFC-7230 compliant Add app.pre_frozen state to properly handle startup signals in sub-applications. Enhanced parsing and validation of helpers.BasicAuth.decode. Change imports from collections module in preparation for 3.8. Ensure Host header is added first to ClientRequest to better replicate browser Fix forward compatibility with Python 3.8: importing ABCs directly from the collections module will not be supported anymore. Keep the query string by normalize_path_middleware. Fix missing parameter raise_for_status for aiohttp.request() Bracket IPv6 addresses in the HOST header Fix default message for server ping and pong frames. Fix tests/test_connector.py typo and tests/autobahn/server.py duplicate loop def. Fix false-negative indicator end_of_HTTP_chunk in StreamReader.readchunk function Release HTTP response before raising status exception Fix task cancellation when sendfile() syscall is used by static file handling. Fix stack trace for asyncio.TimeoutError which was not logged, when it is caught in the handler. Improved Documentation Improve documentation of Application.make_handler parameters. Fix BaseRequest.raw_headers doc. Fix typo in TypeError exception reason in web.Application._handle Make server access log format placeholder %b documentation reflect behavior and docstring. Deprecations and Removals Deprecate modification of session.requote_redirect_url Deprecate stream.unread_data() Deprecated use of boolean in resp.enable_compression() Encourage creation of aiohttp public objects inside a coroutine Drop dead Connection.detach() and Connection.writer. Both methods were broken for more than 2 years. Deprecate app.loop, request.loop, client.loop and connector.loop properties. Deprecate explicit debug argument. Use asyncio debug mode instead. Deprecate body parameter in HTTPException (and derived classes) constructor. Deprecate bare connector close, use async with connector: and await connector.close() instead. Deprecate obsolete read_timeout and conn_timeout in ClientSession constructor.
2018-12-22 23:45:47 +01:00
.include "../../devel/py-cython/buildlink3.mk"
.include "../../lang/python/egg.mk"
.include "../../mk/bsd.pkg.mk"