head	1.105;
access;
symbols
	pkgsrc-2026Q1:1.103.0.2
	pkgsrc-2026Q1-base:1.103
	pkgsrc-2025Q4:1.102.0.2
	pkgsrc-2025Q4-base:1.102
	pkgsrc-2025Q3:1.98.0.2
	pkgsrc-2025Q3-base:1.98
	pkgsrc-2025Q2:1.95.0.2
	pkgsrc-2025Q2-base:1.95
	pkgsrc-2025Q1:1.84.0.2
	pkgsrc-2025Q1-base:1.84
	pkgsrc-2024Q4:1.81.0.2
	pkgsrc-2024Q4-base:1.81
	pkgsrc-2024Q3:1.71.0.2
	pkgsrc-2024Q3-base:1.71
	pkgsrc-2024Q2:1.66.0.2
	pkgsrc-2024Q2-base:1.66
	pkgsrc-2024Q1:1.64.0.2
	pkgsrc-2024Q1-base:1.64
	pkgsrc-2023Q4:1.62.0.2
	pkgsrc-2023Q4-base:1.62
	pkgsrc-2023Q3:1.58.0.2
	pkgsrc-2023Q3-base:1.58
	pkgsrc-2023Q2:1.57.0.4
	pkgsrc-2023Q2-base:1.57
	pkgsrc-2023Q1:1.57.0.2
	pkgsrc-2023Q1-base:1.57
	pkgsrc-2022Q4:1.56.0.2
	pkgsrc-2022Q4-base:1.56
	pkgsrc-2022Q3:1.54.0.6
	pkgsrc-2022Q3-base:1.54
	pkgsrc-2022Q2:1.54.0.4
	pkgsrc-2022Q2-base:1.54
	pkgsrc-2022Q1:1.54.0.2
	pkgsrc-2022Q1-base:1.54
	pkgsrc-2021Q4:1.50.0.8
	pkgsrc-2021Q4-base:1.50
	pkgsrc-2021Q3:1.50.0.6
	pkgsrc-2021Q3-base:1.50
	pkgsrc-2021Q2:1.50.0.4
	pkgsrc-2021Q2-base:1.50
	pkgsrc-2021Q1:1.50.0.2
	pkgsrc-2021Q1-base:1.50
	pkgsrc-2020Q4:1.47.0.2
	pkgsrc-2020Q4-base:1.47
	pkgsrc-2020Q3:1.41.0.8
	pkgsrc-2020Q3-base:1.41
	pkgsrc-2020Q2:1.41.0.6
	pkgsrc-2020Q2-base:1.41
	pkgsrc-2020Q1:1.41.0.2
	pkgsrc-2020Q1-base:1.41
	pkgsrc-2019Q4:1.41.0.4
	pkgsrc-2019Q4-base:1.41
	pkgsrc-2019Q3:1.39.0.2
	pkgsrc-2019Q3-base:1.39
	pkgsrc-2019Q2:1.38.0.2
	pkgsrc-2019Q2-base:1.38
	pkgsrc-2019Q1:1.37.0.2
	pkgsrc-2019Q1-base:1.37
	pkgsrc-2018Q4:1.33.0.2
	pkgsrc-2018Q4-base:1.33
	pkgsrc-2018Q3:1.32.0.2
	pkgsrc-2018Q3-base:1.32
	pkgsrc-2018Q2:1.27.0.2
	pkgsrc-2018Q2-base:1.27
	pkgsrc-2018Q1:1.21.0.2
	pkgsrc-2018Q1-base:1.21
	pkgsrc-2017Q4:1.8.0.2
	pkgsrc-2017Q4-base:1.8
	pkgsrc-2017Q3:1.3.0.4
	pkgsrc-2017Q3-base:1.3;
locks; strict;
comment	@# @;


1.105
date	2026.04.01.05.57.17;	author adam;	state Exp;
branches;
next	1.104;
commitid	7neV3iFMwvzjCdAG;

1.104
date	2026.03.29.17.37.00;	author wiz;	state Exp;
branches;
next	1.103;
commitid	dADCKCWfPu7aATzG;

1.103
date	2026.01.05.01.36.08;	author wiz;	state Exp;
branches;
next	1.102;
commitid	NZQHcInJPkW0W8pG;

1.102
date	2025.10.29.09.18.30;	author adam;	state Exp;
branches;
next	1.101;
commitid	xeXPw9VVPOSbGrgG;

1.101
date	2025.10.19.18.38.15;	author wiz;	state Exp;
branches;
next	1.100;
commitid	imappVMK2kpj6dfG;

1.100
date	2025.10.12.17.06.26;	author wiz;	state Exp;
branches;
next	1.99;
commitid	fN4IqIIHgnUKOieG;

1.99
date	2025.10.09.07.58.08;	author wiz;	state Exp;
branches;
next	1.98;
commitid	t4nMY0Dt3rBjSRdG;

1.98
date	2025.07.30.10.40.47;	author adam;	state Exp;
branches;
next	1.97;
commitid	ScN7dtNW0uvO3L4G;

1.97
date	2025.07.13.09.11.58;	author wiz;	state Exp;
branches;
next	1.96;
commitid	YykJaYUt4Om67z2G;

1.96
date	2025.07.04.09.08.34;	author wiz;	state Exp;
branches;
next	1.95;
commitid	Zxt9De0pbTy2op1G;

1.95
date	2025.06.15.08.31.09;	author adam;	state Exp;
branches;
next	1.94;
commitid	nvQKFzox1Fc3NXYF;

1.94
date	2025.06.10.14.51.17;	author adam;	state Exp;
branches;
next	1.93;
commitid	KNo4s3H8VTqn3mYF;

1.93
date	2025.06.08.18.09.33;	author adam;	state Exp;
branches;
next	1.92;
commitid	ApscPIeakUuhd7YF;

1.92
date	2025.06.03.18.01.14;	author adam;	state Exp;
branches;
next	1.91;
commitid	C4ZY05UAwk7qktXF;

1.91
date	2025.06.01.05.46.26;	author adam;	state Exp;
branches;
next	1.90;
commitid	yyeh1g0M7sxpk9XF;

1.90
date	2025.05.30.05.31.52;	author adam;	state Exp;
branches;
next	1.89;
commitid	0v62IjJ1ZJHnjTWF;

1.89
date	2025.05.27.08.08.32;	author adam;	state Exp;
branches;
next	1.88;
commitid	UAh1iSCikpl6hwWF;

1.88
date	2025.05.26.09.41.15;	author adam;	state Exp;
branches;
next	1.87;
commitid	GBvYI4YQUKgHOoWF;

1.87
date	2025.04.28.07.30.01;	author adam;	state Exp;
branches;
next	1.86;
commitid	ZQj8JnLKRotHZMSF;

1.86
date	2025.04.20.12.12.09;	author adam;	state Exp;
branches;
next	1.85;
commitid	GiT7Zx5Ywo4qOMRF;

1.85
date	2025.04.13.18.59.47;	author wiz;	state Exp;
branches;
next	1.84;
commitid	PDYE3WNnhPuliVQF;

1.84
date	2025.02.25.13.06.50;	author adam;	state Exp;
branches;
next	1.83;
commitid	zCn0S5Xs2dhKQQKF;

1.83
date	2025.02.06.09.43.33;	author adam;	state Exp;
branches;
next	1.82;
commitid	FVyb20DSjwnCkoIF;

1.82
date	2024.12.25.10.00.50;	author adam;	state Exp;
branches;
next	1.81;
commitid	xEjXCfK4wmguORCF;

1.81
date	2024.12.06.08.08.53;	author adam;	state Exp;
branches;
next	1.80;
commitid	K7jOvYN60nL2OpAF;

1.80
date	2024.12.04.09.26.23;	author adam;	state Exp;
branches;
next	1.79;
commitid	KDEjgtjhePpviaAF;

1.79
date	2024.11.24.07.27.08;	author adam;	state Exp;
branches;
next	1.78;
commitid	szoZhYish0gpXRyF;

1.78
date	2024.11.16.10.18.16;	author adam;	state Exp;
branches;
next	1.77;
commitid	q2Z6g8phWQ7iaRxF;

1.77
date	2024.11.14.18.22.00;	author adam;	state Exp;
branches;
next	1.76;
commitid	wVR7PBf8KaI9TDxF;

1.76
date	2024.11.13.17.35.37;	author adam;	state Exp;
branches;
next	1.75;
commitid	NPpnwbHjm5WZFvxF;

1.75
date	2024.11.11.07.29.15;	author wiz;	state Exp;
branches;
next	1.74;
commitid	1fBDq3LwS98NncxF;

1.74
date	2024.10.14.16.56.43;	author adam;	state Exp;
branches;
next	1.73;
commitid	I3Y5bIH34BlGqEtF;

1.73
date	2024.10.09.13.08.17;	author wiz;	state Exp;
branches;
next	1.72;
commitid	R5P1uNGtgMMrkZsF;

1.72
date	2024.10.01.07.47.23;	author adam;	state Exp;
branches;
next	1.71;
commitid	LOQkyfpKRsxWMVrF;

1.71
date	2024.08.22.12.02.03;	author adam;	state Exp;
branches;
next	1.70;
commitid	hHI3UEW8LeNgvOmF;

1.70
date	2024.08.18.19.31.54;	author adam;	state Exp;
branches;
next	1.69;
commitid	ieLBr5RaRF0p7lmF;

1.69
date	2024.08.11.07.37.34;	author adam;	state Exp;
branches;
next	1.68;
commitid	uAJTxd9CVzC1onlF;

1.68
date	2024.08.05.05.42.09;	author adam;	state Exp;
branches;
next	1.67;
commitid	DJ5ATHxUo70KWAkF;

1.67
date	2024.07.31.09.03.55;	author adam;	state Exp;
branches;
next	1.66;
commitid	AxErKGtpYS4ndYjF;

1.66
date	2024.04.17.14.54.22;	author adam;	state Exp;
branches;
next	1.65;
commitid	cVUaWGZHdCYqxv6F;

1.65
date	2024.04.13.05.13.44;	author adam;	state Exp;
branches;
next	1.64;
commitid	riiZLg4y8hPMrW5F;

1.64
date	2024.01.30.11.22.07;	author adam;	state Exp;
branches;
next	1.63;
commitid	xgZp8nQzWZoaSsWE;

1.63
date	2024.01.29.06.53.52;	author adam;	state Exp;
branches;
next	1.62;
commitid	fzHTSaFoMiGOpjWE;

1.62
date	2023.11.27.06.59.01;	author adam;	state Exp;
branches;
next	1.61;
commitid	UF4cka6OVB3qtdOE;

1.61
date	2023.11.19.13.52.13;	author wiz;	state Exp;
branches;
next	1.60;
commitid	wmMtXcggGjAb1eNE;

1.60
date	2023.10.28.19.57.22;	author wiz;	state Exp;
branches;
next	1.59;
commitid	jP8MYROLWZ3yJqKE;

1.59
date	2023.10.09.12.45.23;	author adam;	state Exp;
branches;
next	1.58;
commitid	8TOQyX6bbmqGXWHE;

1.58
date	2023.07.20.07.47.52;	author adam;	state Exp;
branches;
next	1.57;
commitid	nFXgwkXgL1r9VvxE;

1.57
date	2023.02.13.10.42.54;	author adam;	state Exp;
branches;
next	1.56;
commitid	hcOJ6LEpISKdWldE;

1.56
date	2022.12.06.20.14.34;	author wiz;	state Exp;
branches;
next	1.55;
commitid	ezNPIRlRkrlFjx4E;

1.55
date	2022.09.26.18.55.02;	author adam;	state Exp;
branches;
next	1.54;
commitid	IUzFg1wlnMt2apVD;

1.54
date	2022.01.16.09.05.31;	author adam;	state Exp;
branches;
next	1.53;
commitid	aRNNZtjWPcD62QoD;

1.53
date	2022.01.15.23.35.13;	author js;	state Exp;
branches;
next	1.52;
commitid	TuEXIXqkr5zjSMoD;

1.52
date	2022.01.04.20.55.15;	author wiz;	state Exp;
branches;
next	1.51;
commitid	CYyhdK9qtoffkmnD;

1.51
date	2021.12.30.13.24.01;	author adam;	state Exp;
branches;
next	1.50;
commitid	AwHEZrzh2p7F0GmD;

1.50
date	2021.02.26.06.21.51;	author adam;	state Exp;
branches;
next	1.49;
commitid	LrjOLyRCjvbqxbJC;

1.49
date	2021.02.06.20.41.34;	author leot;	state Exp;
branches;
next	1.48;
commitid	dXnTkRyH0I5VVGGC;

1.48
date	2021.01.04.18.57.47;	author wiz;	state Exp;
branches;
next	1.47;
commitid	EnGcmzsUU7SAqrCC;

1.47
date	2020.11.19.10.19.50;	author adam;	state Exp;
branches;
next	1.46;
commitid	IRnh79Fj4fpj2uwC;

1.46
date	2020.10.27.22.52.05;	author adam;	state Exp;
branches;
next	1.45;
commitid	mbxvIWjVjekpWAtC;

1.45
date	2020.10.26.09.06.20;	author adam;	state Exp;
branches;
next	1.44;
commitid	1fnoTBKXsRC3potC;

1.44
date	2020.10.24.21.48.50;	author js;	state Exp;
branches;
next	1.43;
commitid	Vnsuf3NfoDHkGctC;

1.43
date	2020.10.24.18.49.21;	author js;	state Exp;
branches;
next	1.42;
commitid	jqAfuMYO29GEGbtC;

1.42
date	2020.10.13.09.05.40;	author adam;	state Exp;
branches;
next	1.41;
commitid	I01CEruoDbOOOIrC;

1.41
date	2019.10.10.07.53.06;	author adam;	state Exp;
branches;
next	1.40;
commitid	jDL2PlU9Nqw9hiGB;

1.40
date	2019.10.04.11.17.57;	author adam;	state Exp;
branches;
next	1.39;
commitid	vktwLOgHJUj6BxFB;

1.39
date	2019.09.07.07.09.27;	author adam;	state Exp;
branches;
next	1.38;
commitid	9V6psZJkb9iQ53CB;

1.38
date	2019.04.26.13.14.20;	author maya;	state Exp;
branches;
next	1.37;
commitid	U4pISddzN4WXpRkB;

1.37
date	2019.01.15.22.12.20;	author adam;	state Exp;
branches;
next	1.36;
commitid	mXrLbcBqkUc9EV7B;

1.36
date	2019.01.11.10.11.42;	author adam;	state Exp;
branches;
next	1.35;
commitid	kDTVwxVD7T7QMl7B;

1.35
date	2019.01.08.19.05.55;	author adam;	state Exp;
branches;
next	1.34;
commitid	BtJmFozFUt30Q07B;

1.34
date	2018.12.31.11.19.16;	author adam;	state Exp;
branches;
next	1.33;
commitid	0oySQaaZ0RfZvW5B;

1.33
date	2018.12.22.22.45.47;	author adam;	state Exp;
branches;
next	1.32;
commitid	AualfgeB4XNiBQ4B;

1.32
date	2018.09.06.13.53.16;	author adam;	state Exp;
branches;
next	1.31;
commitid	1nd80BsUqfnZ53RA;

1.31
date	2018.09.03.07.32.35;	author adam;	state Exp;
branches;
next	1.30;
commitid	o3sD8mfDVDmn5DQA;

1.30
date	2018.08.29.07.01.06;	author adam;	state Exp;
branches;
next	1.29;
commitid	ptroc897Dutx4ZPA;

1.29
date	2018.08.28.06.27.09;	author adam;	state Exp;
branches;
next	1.28;
commitid	hHloAeJatDzZUQPA;

1.28
date	2018.08.27.11.16.01;	author adam;	state Exp;
branches;
next	1.27;
commitid	vz0z6inmrxHUvKPA;

1.27
date	2018.06.12.15.28.53;	author adam;	state Exp;
branches;
next	1.26;
commitid	DGYON0pszSuPn0GA;

1.26
date	2018.05.11.10.04.41;	author adam;	state Exp;
branches;
next	1.25;
commitid	geLKgI7rkeNLCRBA;

1.25
date	2018.05.08.04.54.10;	author adam;	state Exp;
branches;
next	1.24;
commitid	8jtYVrvajD860sBA;

1.24
date	2018.04.13.11.14.48;	author adam;	state Exp;
branches;
next	1.23;
commitid	JvpClHnsmGlEUgyA;

1.23
date	2018.04.06.08.18.18;	author adam;	state Exp;
branches;
next	1.22;
commitid	FRp5ijfWaCl0amxA;

1.22
date	2018.04.02.12.58.33;	author adam;	state Exp;
branches;
next	1.21;
commitid	XeRqRnvxhb36QRwA;

1.21
date	2018.03.22.08.02.35;	author adam;	state Exp;
branches;
next	1.20;
commitid	gIuJ9inhAfjmyqvA;

1.20
date	2018.03.15.09.29.09;	author adam;	state Exp;
branches;
next	1.19;
commitid	7wVjeI2dpWjVfxuA;

1.19
date	2018.03.13.11.46.13;	author adam;	state Exp;
branches;
next	1.18;
commitid	fwBoW81dN25c5iuA;

1.18
date	2018.03.09.08.10.35;	author adam;	state Exp;
branches;
next	1.17;
commitid	L0myZmQGJHNa1LtA;

1.17
date	2018.03.05.09.12.20;	author adam;	state Exp;
branches;
next	1.16;
commitid	e56Ruk0GykRhuftA;

1.16
date	2018.02.28.13.38.00;	author adam;	state Exp;
branches;
next	1.15;
commitid	1MGbUFXTAWco7DsA;

1.15
date	2018.02.27.06.35.45;	author adam;	state Exp;
branches;
next	1.14;
commitid	xS70WztIKqNxOssA;

1.14
date	2018.02.25.22.04.55;	author adam;	state Exp;
branches;
next	1.13;
commitid	oU6D9zAw6cng1isA;

1.13
date	2018.02.14.11.31.04;	author adam;	state Exp;
branches;
next	1.12;
commitid	IW92OvQkFYAHROqA;

1.12
date	2018.02.05.16.39.47;	author adam;	state Exp;
branches;
next	1.11;
commitid	K0HjPcBymrvARGpA;

1.11
date	2018.01.18.10.29.54;	author adam;	state Exp;
branches;
next	1.10;
commitid	r59uORHccTEColnA;

1.10
date	2018.01.17.08.37.35;	author adam;	state Exp;
branches;
next	1.9;
commitid	0AkJ7oj0li33OcnA;

1.9
date	2017.12.30.09.16.43;	author adam;	state Exp;
branches;
next	1.8;
commitid	lNXwwpns7rFlBTkA;

1.8
date	2017.12.06.11.44.22;	author adam;	state Exp;
branches;
next	1.7;
commitid	Ouv5n4Ip62tObPhA;

1.7
date	2017.11.30.07.57.59;	author adam;	state Exp;
branches;
next	1.6;
commitid	NpzWPAiZtiM182hA;

1.6
date	2017.11.22.08.48.39;	author adam;	state Exp;
branches;
next	1.5;
commitid	KgQ5kRbsRm8qF0gA;

1.5
date	2017.11.02.13.13.24;	author adam;	state Exp;
branches;
next	1.4;
commitid	fxKLD2xHVnrYKsdA;

1.4
date	2017.10.19.06.54.18;	author adam;	state Exp;
branches;
next	1.3;
commitid	cjDLPGZg92ON7DbA;

1.3
date	2017.08.04.05.24.49;	author adam;	state Exp;
branches;
next	1.2;
commitid	Xkjqc1DmkGkO4R1A;

1.2
date	2017.08.03.07.46.12;	author adam;	state Exp;
branches;
next	1.1;
commitid	GiuPkw69bBojTJ1A;

1.1
date	2017.07.16.19.04.16;	author adam;	state Exp;
branches;
next	;
commitid	YgEVRF6dUEtOduZz;


desc
@@


1.105
log
@py-aiohttp: updated to 3.13.5

3.13.5 (2026-03-31)

Bug fixes

- Skipped the duplicate singleton header check in lax mode (the default for response
  parsing). In strict mode (request parsing, or ``-X dev``), all RFC 9110 singletons
  are still enforced
@
text
@# $NetBSD: Makefile,v 1.104 2026/03/29 17:37:00 wiz Exp $

DISTNAME=	aiohttp-3.13.5
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

TOOL_DEPENDS+=	${PYPKGPREFIX}-cython-[0-9]*:../../devel/py-cython
TOOL_DEPENDS+=	${PYPKGPREFIX}-setuptools>=78:../../devel/py-setuptools
DEPENDS+=	${PYPKGPREFIX}-aiodns>=3.2.0:../../net/py-aiodns
DEPENDS+=	${PYPKGPREFIX}-aiohappyeyeballs>=2.5.0:../../net/py-aiohappyeyeballs
DEPENDS+=	${PYPKGPREFIX}-aiosignal>=1.4.0:../../devel/py-aiosignal
DEPENDS+=	${PYPKGPREFIX}-attrs>=17.3.0:../../devel/py-attrs
DEPENDS+=	${PYPKGPREFIX}-frozenlist>=1.1.1:../../devel/py-frozenlist
DEPENDS+=	${PYPKGPREFIX}-multidict>=4.5:../../databases/py-multidict
DEPENDS+=	${PYPKGPREFIX}-propcache>=0.2.0:../../devel/py-propcache
DEPENDS+=	${PYPKGPREFIX}-yarl>=1.17.0:../../www/py-yarl
TEST_DEPENDS+=	${PYPKGPREFIX}-brotli-[0-9]*:../../archivers/py-brotli
TEST_DEPENDS+=	${PYPKGPREFIX}-freezegun-[0-9]*:../../devel/py-freezegun
TEST_DEPENDS+=	${PYPKGPREFIX}-gunicorn-[0-9]*:../../www/py-gunicorn
TEST_DEPENDS+=	${PYPKGPREFIX}-re-assert-[0-9]*:../../devel/py-re-assert
TEST_DEPENDS+=	${PYPKGPREFIX}-test-cov-[0-9]*:../../devel/py-test-cov
TEST_DEPENDS+=	${PYPKGPREFIX}-test-timeout-[0-9]*:../../devel/py-test-timeout
TEST_DEPENDS+=	${PYPKGPREFIX}-test-xdist-[0-9]*:../../devel/py-test-xdist
#TEST_DEPENDS+=	${PYPKGPREFIX}-isal-[0-9]*:../../wip/py-isal
TEST_DEPENDS+=	${PYPKGPREFIX}-zlib-ng-[0-9]*:../../archivers/py-zlib-ng
#TEST_DEPENDS+=	${PYPKGPREFIX}-blockbuster-[0-9]*:../../wip/py-blockbuster

PYTHON_VERSIONS_INCOMPATIBLE=	310

.include "../../lang/python/wheel.mk"
# need to package: proxy (!?)
# as of 3.13.4
# 8 failed, 3711 passed, 77 skipped, 8 xfailed, 42 errors, 2 subtests passed
pre-test:
	cd ${WRKSRC} && ${RM} -f tests/test_proxy_functional.py tests/autobahn/test_autobahn.py

.include "../../mk/bsd.pkg.mk"
@


1.104
log
@py-aiohttp: update to 3.13.4.

3.13.4 (2026-03-28)
===================

Features
--------

- Added ``max_headers`` parameter to limit the number of headers that should be read from a response -- by :user:`Dreamsorcerer`.

- Added a ``dns_cache_max_size`` parameter to ``TCPConnector`` to limit the size of the cache -- by :user:`Dreamsorcerer`.

Bug fixes
---------

- Fixed server hanging indefinitely when chunked transfer encoding chunk-size
  does not match actual data length. The server now raises
  ``TransferEncodingError`` instead of waiting forever for data that will
  never arrive -- by :user:`Fridayai700`.

- Fixed access log timestamps ignoring daylight saving time (DST) changes. The
  previous implementation used :py:data:`time.timezone` which is a constant and
  does not reflect DST transitions -- by :user:`nightcityblade`.

- Fixed ``RuntimeError: An event loop is running`` error when using ``aiohttp.GunicornWebWorker``
  or ``aiohttp.GunicornUVLoopWebWorker`` on Python >=3.14.
  -- by :user:`Tasssadar`.

- Fixed :exc:`ValueError` when creating a TLS connection with ``ClientTimeout(total=0)`` by converting ``0`` to ``None`` before passing to ``ssl_handshake_timeout`` in :py:meth:`asyncio.loop.start_tls` -- by :user:`veeceey`.

- Restored :py:meth:`~aiohttp.BodyPartReader.decode` as a synchronous method
  for backward compatibility. The method was inadvertently changed to async
  in 3.13.3 as part of the decompression bomb security fix. A new
  :py:meth:`~aiohttp.BodyPartReader.decode_iter` method is now available
  for non-blocking decompression of large payloads using an async generator.
  Internal aiohttp code uses the async variant to maintain security protections.

  Changed multipart processing chunk sizes from 64 KiB to 256KiB, to better
  match aiohttp internals
  -- by :user:`bdraco` and :user:`Dreamsorcerer`.

- Fixed false-positive :py:class:`DeprecationWarning` for passing ``enable_cleanup_closed=True`` to :py:class:`~aiohttp.TCPConnector` specifically on Python 3.12.7.
  -- by :user:`Robsdedude`.

- Fixed _sendfile_fallback over-reading beyond requested count -- by :user:`bysiber`.

- Fixed digest auth dropping challenge fields with empty string values -- by :user:`bysiber`.

- ``ClientConnectorCertificateError.os_error`` no longer raises :exc:`AttributeError`
  -- by :user:`themylogin`.

- Adjusted pure-Python request header value validation to align with RFC 9110 control-character handling, while preserving lax response parser behavior, and added regression tests for Host/header control-character cases.
  -- by :user:`rodrigobnogueira`.

- Rejected duplicate singleton headers (``Host``, ``Content-Type``,
  ``Content-Length``, etc.) in the C extension HTTP parser to match
  the pure Python parser behaviour, preventing potential host-based
  access control bypasses via parser differentials
  -- by :user:`rodrigobnogueira`.

- Aligned the pure-Python HTTP request parser with the C parser by splitting
  comma-separated and repeated ``Connection`` header values for keep-alive,
  close, and upgrade handling -- by :user:`rodrigobnogueira`.


Improved documentation
----------------------

- Documented :exc:`asyncio.TimeoutError` for ``WebSocketResponse.receive()``
  and related methods -- by :user:`veeceey`.


Packaging updates and notes for downstreams
-------------------------------------------

- Upgraded llhttp to 3.9.1 -- by :user:`Dreamsorcerer`.


Miscellaneous internal changes
------------------------------

- Fixed ``test_invalid_idna`` to work with ``idna`` 3.11 by using an invalid character (``\u0080``) that is rejected by ``yarl`` during URL construction -- by :user:`rodrigobnogueira`.

- Fixed race condition in ``test_data_file`` on Python 3.14 free-threaded builds -- by :user:`rodrigobnogueira`.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.103 2026/01/05 01:36:08 wiz Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.13.4
@


1.103
log
@py-aiohttp: update to 3.13.3.

3.13.3 (2026-01-03)
===================

This release contains fixes for several vulnerabilities. It is advised to
upgrade as soon as possible.

Bug fixes
---------

- Fixed proxy authorization headers not being passed when reusing a connection, which caused 407 (Proxy authentication required) errors

- Fixed multipart reading failing when encountering an empty body part

- Fixed a case where the parser wasn't raising an exception for a websocket continuation frame when there was no initial frame in context.

Removals and backward incompatible breaking changes
---------------------------------------------------

- ``Brotli`` and ``brotlicffi`` minimum version is now 1.2.
  Decompression now has a default maximum output size of 32MiB per decompress call

Packaging updates and notes for downstreams
-------------------------------------------

- Moved dependency metadata from :file:`setup.cfg` to :file:`pyproject.toml` per :pep:`621`

Contributor-facing changes
--------------------------

- Removed unused ``update-pre-commit`` github action workflow

Miscellaneous internal changes
------------------------------

- Optimized web server performance when access logging is disabled by reducing time syscalls

- Added regression test for cached logging status
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.102 2025/10/29 09:18:30 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.13.3
d38 2
a39 2
# as of 3.13.3
# 8 failed, 3632 passed, 77 skipped, 8 xfailed, 42 errors, 2 subtests passed
@


1.102
log
@py-aiohttp: updated to 3.13.2

3.13.2 (2025-10-28)

Bug fixes

- Fixed cookie parser to continue parsing subsequent cookies when encountering a malformed cookie that fails regex validation, such as Google's ``g_state`` cookie with unescaped quotes
- Fixed loading netrc credentials from the default :file:`~/.netrc` (:file:`~/_netrc` on Windows) location when the :envvar:`NETRC` environment variable is not set
- Fixed WebSocket compressed sends to be cancellation safe. Tasks are now shielded during compression to prevent compressor state corruption. This ensures that the stateful compressor remains consistent even when send operations are cancelled
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.101 2025/10/19 18:38:15 wiz Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.13.2
d38 2
a39 2
# leads to, as of 3.13.1
# 7 failed, 3587 passed, 75 skipped, 10 xfailed, 42 errors
@


1.101
log
@py-aiohttp: update to 3.13.1.

3.13.1 (2025-10-17)
===================

Features
--------

- Make configuration options in ``AppRunner`` also available in ``run_app()``
  -- by :user:`Cycloctane`.


  *Related issues and pull requests on GitHub:*
  :issue:`11633`.



Bug fixes
---------

- Switched to `backports.zstd` for Python <3.14 and fixed zstd decompression for chunked zstd streams -- by :user:`ZhaoMJ`.

  Note: Users who installed ``zstandard`` for support on Python <3.14 will now need to install
  ``backports.zstd`` instead (installing ``aiohttp[speedups]`` will do this automatically).


  *Related issues and pull requests on GitHub:*
  :issue:`11623`.



- Updated ``Content-Type`` header parsing to return ``application/octet-stream`` when header contains invalid syntax.
  See :rfc:`9110#section-8.3-5`.

  -- by :user:`sgaist`.


  *Related issues and pull requests on GitHub:*
  :issue:`10889`.



- Fixed Python 3.14 support when built without ``zstd`` support -- by :user:`JacobHenner`.


  *Related issues and pull requests on GitHub:*
  :issue:`11603`.



- Fixed blocking I/O in the event loop when using netrc authentication by moving netrc file lookup to an executor -- by :user:`bdraco`.


  *Related issues and pull requests on GitHub:*
  :issue:`11634`.



- Fixed routing to a sub-application added via ``.add_domain()`` not working
  if the same path exists on the parent app. -- by :user:`Dreamsorcerer`.


  *Related issues and pull requests on GitHub:*
  :issue:`11673`.




Packaging updates and notes for downstreams
-------------------------------------------

- Moved core packaging metadata from :file:`setup.cfg` to :file:`pyproject.toml` per :pep:`621`
  -- by :user:`cdce8p`.


  *Related issues and pull requests on GitHub:*
  :issue:`9951`.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.100 2025/10/12 17:06:26 wiz Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.13.1
@


1.100
log
@py-aiohttp: update to 3.13.0.

Features

    Added support for Python 3.14.

    Added support for free-threading in Python 3.14+ -- by :user:kumaraditya303.

    Added support for Zstandard (aka Zstd) compression
    -- by :user:KGuillaume-chaps.

    Added StreamReader.total_raw_bytes to check the number of bytes downloaded
    -- by :user:robpats.

Bug fixes

    Fixed pytest plugin to not use deprecated :py:mod:asyncio policy APIs.

    Updated Content-Disposition header parsing to handle trailing semicolons and empty parts
    -- by :user:PLPeeters.

    Fixed saved CookieJar failing to be loaded if cookies have partitioned flag when
    http.cookie does not have partitioned cookies supports. -- by :user:Cycloctane.

Improved documentation

    Added Wireup to third-party libraries -- by :user:maldoinc.

Packaging updates and notes for downstreams

    The blockbuster test dependency is now optional; the corresponding test fixture is disabled when it is unavailable
    -- by :user:musicinybrain.

    Added riscv64 build to releases -- by :user:eshattow.

Contributor-facing changes

    Fixed test_send_compress_text failing when alternative zlib implementation
    is used. (zlib-ng in python 3.14 windows build) -- by :user:Cycloctane.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.99 2025/10/09 07:58:08 wiz Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.13.0
d38 2
a39 2
# leads to, as of 3.13.0
# 4 failed, 3576 passed, 75 skipped, 9 xfailed, 43 errors
@


1.99
log
@*: remove reference to (removed) Python 3.9
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.98 2025/07/30 10:40:47 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.12.15
d15 1
d38 2
a39 2
# leads to, as of 3.11.16
# 3 failed, 3152 passed, 29 skipped, 22 xfailed, 48 errors
@


1.98
log
@py-aiohttp: updated to 3.12.15

3.12.15 (2025-07-28)

Bug fixes

- Fixed :class:`~aiohttp.DigestAuthMiddleware` to preserve the algorithm case from the server's challenge in the authorization response. This improves compatibility with servers that perform case-sensitive algorithm matching (e.g., servers expecting ``algorithm=MD5-sess`` instead of ``algorithm=MD5-SESS``)

Improved documentation

- Remove outdated contents of ``aiohttp-devtools`` and ``aiohttp-swagger``
  from Web_advanced docs.

Packaging updates and notes for downstreams

- Started including the ``llhttp`` :file:`LICENSE` file in wheels by adding ``vendor/llhttp/LICENSE`` to ``license-files`` in :file:`setup.cfg` -- by :user:`threexc`.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.97 2025/07/13 09:11:58 wiz Exp $
d33 1
a33 1
PYTHON_VERSIONS_INCOMPATIBLE=	39 310
@


1.97
log
@py-aiohttp: update to 3.12.14.

3.12.14 (2025-07-10)
====================

Bug fixes
---------

- Fixed file uploads failing with HTTP 422 errors when encountering 307/308 redirects, and 301/302 redirects for non-POST methods, by preserving the request body when appropriate per :rfc:`9110#section-15.4.3-3.1` -- by :user:`bdraco`.

- Fixed :py:meth:`ClientSession.close() <aiohttp.ClientSession.close>` hanging indefinitely when using HTTPS requests through HTTP proxies -- by :user:`bdraco`.

- Bumped minimum version of aiosignal to 1.4+ to resolve typing issues -- by :user:`Dreamsorcerer`.



Features
--------

- Added initial trailer parsing logic to Python HTTP parser -- by :user:`Dreamsorcerer`.


Improved documentation
----------------------

- Clarified exceptions raised by ``WebSocketResponse.send_frame`` et al.
  -- by :user:`DoctorJohn`.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.96 2025/07/04 09:08:34 wiz Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.12.14
@


1.96
log
@*: mark more py-cython dependencies as needing Python>=3.11
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.95 2025/06/15 08:31:09 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.12.13
d16 1
a16 1
DEPENDS+=	${PYPKGPREFIX}-aiosignal>=1.1.2:../../devel/py-aiosignal
d29 3
@


1.95
log
@py-aiohttp: updated to 3.12.13

3.12.13

Bug fixes
- Fixed auto-created :py:class:`~aiohttp.TCPConnector` not using the session's event loop when :py:class:`~aiohttp.ClientSession` is created without an explicit connector.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.94 2025/06/10 14:51:17 adam Exp $
d30 1
a30 4
.include "../../lang/python/pyversion.mk"
.if ${PYTHON_VERSION} < 311
DEPENDS+=	${PYPKGPREFIX}-async-timeout>=4.0.0:../../devel/py-async-timeout
.endif
@


1.94
log
@py-aiohttp: updated to 3.12.12

3.12.12 (2025-06-09)

Bug fixes

- Fixed cookie unquoting to properly handle octal escape sequences in cookie values (e.g., ``\012`` for newline) by vendoring the correct ``_unquote`` implementation from Python's ``http.cookies`` module
- Fixed ``Cookie`` header parsing to treat attribute names as regular cookies per :rfc:`6265#section-5.4`
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.93 2025/06/08 18:09:33 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.12.12
@


1.93
log
@py-aiohttp: updated to 3.12.11

3.12.11 (2025-06-07)

Features

- Improved SSL connection handling by changing the default ``ssl_shutdown_timeout``
  from ``0.1`` to ``0`` seconds. SSL connections now use Python's default graceful
  shutdown during normal operation but are aborted immediately when the connector
  is closed, providing optimal behavior for both cases. Also added support for
  ``ssl_shutdown_timeout=0`` on all Python versions. Previously, this value was
  rejected on Python 3.11+ and ignored on earlier versions. Non-zero values on
  Python < 3.11 now trigger a ``RuntimeWarning`` -- by :user:`bdraco`.

  The ``ssl_shutdown_timeout`` parameter is now deprecated and will be removed in
  aiohttp 4.0 as there is no clear use case for changing the default.

Deprecations (removal in next major release)

- Improved SSL connection handling by changing the default ``ssl_shutdown_timeout``
  from ``0.1`` to ``0`` seconds. SSL connections now use Python's default graceful
  shutdown during normal operation but are aborted immediately when the connector
  is closed, providing optimal behavior for both cases. Also added support for
  ``ssl_shutdown_timeout=0`` on all Python versions. Previously, this value was
  rejected on Python 3.11+ and ignored on earlier versions. Non-zero values on
  Python < 3.11 now trigger a ``RuntimeWarning`` -- by :user:`bdraco`.

  The ``ssl_shutdown_timeout`` parameter is now deprecated and will be removed in
  aiohttp 4.0 as there is no clear use case for changing the default.


3.12.10 (2025-06-07)

Bug fixes

- Fixed leak of ``aiodns.DNSResolver`` when :py:class:`~aiohttp.TCPConnector` is closed and no resolver was passed when creating the connector -- by :user:`Tasssadar`.

  This was a regression introduced in version 3.12.0 (:pr:`10897`).


3.12.9 (2025-06-04)

Bug fixes

- Fixed ``IOBasePayload`` and ``TextIOPayload`` reading entire files into memory when streaming large files -- by :user:`bdraco`.

  When using file-like objects with the aiohttp client, the entire file would be read into memory if the file size was provided in the ``Content-Length`` header. This could cause out-of-memory errors when uploading large files. The payload classes now correctly read data in chunks of ``READ_SIZE`` (64KB) regardless of the total content length.


3.12.8 (2025-06-04)

Features

- Added preemptive digest authentication to :class:`~aiohttp.DigestAuthMiddleware` -- by :user:`bdraco`.

  The middleware now reuses authentication credentials for subsequent requests to the same
  protection space, improving efficiency by avoiding extra authentication round trips.
  This behavior matches how web browsers handle digest authentication and follows
  :rfc:`7616#section-3.6`.

  Preemptive authentication is enabled by default but can be disabled by passing
  ``preemptive=False`` to the middleware constructor.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.92 2025/06/03 18:01:14 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.12.11
@


1.92
log
@py-aiohttp: updated to 3.12.7

3.12.7 (2025-06-02)

Bug fixes

- Fixed cookie parsing to be more lenient when handling cookies with special characters
  in names or values. Cookies with characters like ``{``, ``}``, and ``/`` in names are now
  accepted instead of causing a :exc:`~http.cookies.CookieError` and 500 errors. Additionally,
  cookies with mismatched quotes in values are now parsed correctly, and quoted cookie
  values are now handled consistently whether or not they include special attributes
  like ``Domain``. Also fixed :class:`~aiohttp.CookieJar` to ensure shared cookies (domain="", path="")
  respect the ``quote_cookie`` parameter, making cookie quoting behavior consistent for
  all cookies

- Fixed an issue where cookies with duplicate names but different domains or paths
  were lost when updating the cookie jar. The :class:`~aiohttp.ClientSession`
  cookie jar now correctly stores all cookies even if they have the same name but
  different domain or path, following the :rfc:`6265#section-5.3` storage model

  Note that :attr:`ClientResponse.cookies <aiohttp.ClientResponse.cookies>` returns
  a :class:`~http.cookies.SimpleCookie` which uses the cookie name as a key, so
  only the last cookie with each name is accessible via this interface. All cookies
  can be accessed via :meth:`ClientResponse.headers.getall('Set-Cookie')
  <multidict.MultiDictProxy.getall>` if needed.

Miscellaneous internal changes

- Avoided creating closed futures in ``ResponseHandler`` that will never be awaited
- Downgraded the logging level for connector close errors from ERROR to DEBUG, as these are expected behavior with TLS 1.3 connections
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.91 2025/06/01 05:46:26 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.12.7
@


1.91
log
@py-aiohttp: updated to 3.12.6

3.12.6 (2025-05-31)

Bug fixes

- Fixed spurious "Future exception was never retrieved" warnings for connection lost errors when the connector is not closed

  When connections are lost, the exception is now marked as retrieved since it is always propagated through other means, preventing unnecessary warnings in logs.


3.12.5 (2025-05-30)

Features

- Added ``ssl_shutdown_timeout`` parameter to :py:class:`~aiohttp.ClientSession` and :py:class:`~aiohttp.TCPConnector` to control the grace period for SSL shutdown handshake on TLS connections. This helps prevent "connection reset" errors on the server side while avoiding excessive delays during connector cleanup. Note: This parameter only takes effect on Python 3.11+
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.90 2025/05/30 05:31:52 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.12.6
@


1.90
log
@py-aiohttp: updated to 3.12.4

3.12.4 (2025-05-28)

Bug fixes

- Fixed connector not waiting for connections to close before returning from :meth:`~aiohttp.BaseConnector.close`


3.12.3 (2025-05-28)

Bug fixes

- Fixed memory leak in :py:meth:`~aiohttp.CookieJar.filter_cookies` that caused unbounded memory growth
  when making requests to different URL paths
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.89 2025/05/27 08:08:32 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.12.4
@


1.89
log
@py-aiohttp: updated to 3.12.2

3.12.2 (2025-05-26)

Bug fixes

- Fixed ``Content-Length`` header not being set to ``0`` for non-GET requests with ``None`` body -- by :user:`bdraco`.

  Non-GET requests (``POST``, ``PUT``, ``PATCH``, ``DELETE``) with ``None`` as the body now correctly set the ``Content-Length`` header to ``0``, matching the behavior of requests with empty bytes (``b""``). This regression was introduced in aiohttp 3.12.1.


3.12.1 (2025-05-26)

Features

- Added support for reusable request bodies to enable retries, redirects, and digest authentication -- by :user:`bdraco` and :user:`GLGDLY`.

  Most payloads can now be safely reused multiple times, fixing long-standing issues where POST requests with form data or file uploads would fail on redirects with errors like "Form data has been processed already" or "I/O operation on closed file". This also enables digest authentication to work with request bodies and allows retry mechanisms to resend requests without consuming the payload. Note that payloads derived from async iterables may still not be reusable in some cases.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.88 2025/05/26 09:41:15 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.12.2
@


1.88
log
@py-aiohttp: updated to 3.12.0

3.12.0 (2025-05-24)

Bug fixes

- Fixed :py:attr:`~aiohttp.web.WebSocketResponse.prepared` property to correctly reflect the prepared state, especially during timeout scenarios -- by :user:`bdraco`
- Response is now always True, instead of using MutableMapping behaviour (False when map is empty)
- Fixed connection reuse for file-like data payloads by ensuring buffer
  truncation respects content-length boundaries and preventing premature
  connection closure race -- by :user:`bdraco`.
- Fixed pytest plugin to not use deprecated :py:mod:`asyncio` policy APIs.

Features

- Added a comprehensive HTTP Digest Authentication client middleware (DigestAuthMiddleware)
  that implements RFC 7616. The middleware supports all standard hash algorithms
  (MD5, SHA, SHA-256, SHA-512) with session variants, handles both 'auth' and
  'auth-int' quality of protection options, and automatically manages the
  authentication flow by intercepting 401 responses and retrying with proper
  credentials -- by :user:`feus4177`, :user:`TimMenninger`, and :user:`bdraco`.
- Added client middleware support -- by :user:`bdraco` and :user:`Dreamsorcerer`.

  This change allows users to add middleware to the client session and requests, enabling features like
  authentication, logging, and request/response modification without modifying the core
  request logic. Additionally, the ``session`` attribute was added to ``ClientRequest``,
  allowing middleware to access the session for making additional requests.

- Allow user setting zlib compression backend -- by :user:`TimMenninger`

  This change allows the user to call :func:`aiohttp.set_zlib_backend()` with the
  zlib compression module of their choice. Default behavior continues to use
  the builtin ``zlib`` library.
- Added support for overriding the base URL with an absolute one in client sessions
- Added ``host`` parameter to ``aiohttp_server`` fixture -- by :user:`christianwbrock`.
- Detect blocking calls in coroutines using BlockBuster -- by :user:`cbornet`.
- Added ``socket_factory`` to :py:class:`aiohttp.TCPConnector` to allow specifying custom socket options
- Started building armv7l manylinux wheels -- by :user:`bdraco`.
- Implemented shared DNS resolver management to fix excessive resolver object creation
  when using multiple client sessions. The new ``_DNSResolverManager`` singleton ensures
  only one ``DNSResolver`` object is created for default configurations, significantly
  reducing resource usage and improving performance for applications using multiple
  client sessions simultaneously -- by :user:`bdraco`.
- Upgraded to LLHTTP 9.3.0 -- by :user:`Dreamsorcerer`.
- Optimized small HTTP requests/responses by coalescing headers and body into a single TCP packet -- by :user:`bdraco`.

  This change enhances network efficiency by reducing the number of packets sent for small HTTP payloads, improving latency and reducing overhead. Most importantly, this fixes compatibility with memory-constrained IoT devices that can only perform a single read operation and expect HTTP requests in one packet. The optimization uses zero-copy ``writelines`` when coalescing data and works with both regular and chunked transfer encoding.

  When ``aiohttp`` uses client middleware to communicate with an ``aiohttp`` server, connection reuse is more likely to occur since complete responses arrive in a single packet for small payloads.

  This aligns ``aiohttp`` with other popular HTTP clients that already coalesce small requests.

Improved documentation

- Improved documentation for middleware by adding warnings and examples about
  request body stream consumption. The documentation now clearly explains that
  request body streams can only be read once and provides best practices for
  sharing parsed request data between middleware and handlers
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.87 2025/04/28 07:30:01 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.12.0
@


1.87
log
@py-aiohttp: updated to 3.11.18

3.11.18 (2025-04-20)

Bug fixes

- Disabled TLS in TLS warning (when using HTTPS proxies) for uvloop and newer Python versions

- Fixed reading fragmented WebSocket messages when the payload was masked
  The problem first appeared in 3.11.17
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.86 2025/04/20 12:12:09 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.11.18
d15 1
a15 1
DEPENDS+=	${PYPKGPREFIX}-aiohappyeyeballs>=2.3.0:../../net/py-aiohappyeyeballs
@


1.86
log
@py-aiohttp: updated to 3.11.17

3.11.17

Miscellaneous internal changes

- Optimized web server performance when access logging is disabled by reducing time syscalls
- Improved web server performance when connection can be reused
- Improved performance of the WebSocket reader
- Improved performance of the WebSocket reader with large messages
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.85 2025/04/13 18:59:47 wiz Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.11.17
@


1.85
log
@py-aiohttp: update to 3.11.16.

3.11.16 (2025-04-01)
====================

Bug fixes
---------

- Replaced deprecated ``asyncio.iscoroutinefunction`` with its counterpart from ``inspect``
  -- by :user:`layday`.


  *Related issues and pull requests on GitHub:*
  :issue:`10634`.



- Fixed :class:`multidict.CIMultiDict` being mutated when passed to :class:`aiohttp.web.Response` -- by :user:`bdraco`.


  *Related issues and pull requests on GitHub:*
  :issue:`10672`.




----


3.11.15 (2025-03-31)
====================

Bug fixes
---------

- Reverted explicitly closing sockets if an exception is raised during ``create_connection`` -- by :user:`bdraco`.

  This change originally appeared in aiohttp 3.11.13


  *Related issues and pull requests on GitHub:*
  :issue:`10464`, :issue:`10617`, :issue:`10656`.




Miscellaneous internal changes
------------------------------

- Improved performance of WebSocket buffer handling -- by :user:`bdraco`.


  *Related issues and pull requests on GitHub:*
  :issue:`10601`.



- Improved performance of serializing headers -- by :user:`bdraco`.


  *Related issues and pull requests on GitHub:*
  :issue:`10625`.




----


3.11.14 (2025-03-16)
====================

Bug fixes
---------

- Fixed an issue where dns queries were delayed indefinitely when an exception occurred in a ``trace.send_dns_cache_miss``
  -- by :user:`logioniz`.


  *Related issues and pull requests on GitHub:*
  :issue:`10529`.



- Fixed DNS resolution on platforms that don't support ``socket.AI_ADDRCONFIG`` -- by :user:`maxbachmann`.


  *Related issues and pull requests on GitHub:*
  :issue:`10542`.



- The connector now raises :exc:`aiohttp.ClientConnectionError` instead of :exc:`OSError` when failing to explicitly close the socket after :py:meth:`asyncio.loop.create_connection` fails -- by :user:`bdraco`.


  *Related issues and pull requests on GitHub:*
  :issue:`10551`.



- Break cyclic references at connection close when there was a traceback -- by :user:`bdraco`.

  Special thanks to :user:`availov` for reporting the issue.


  *Related issues and pull requests on GitHub:*
  :issue:`10556`.



- Break cyclic references when there is an exception handling a request -- by :user:`bdraco`.


  *Related issues and pull requests on GitHub:*
  :issue:`10569`.




Features
--------

- Improved logging on non-overlapping WebSocket client protocols to include the remote address -- by :user:`bdraco`.


  *Related issues and pull requests on GitHub:*
  :issue:`10564`.




Miscellaneous internal changes
------------------------------

- Improved performance of parsing content types by adding a cache in the same manner currently done with mime types -- by :user:`bdraco`.


  *Related issues and pull requests on GitHub:*
  :issue:`10552`.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.84 2025/02/25 13:06:50 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.11.16
@


1.84
log
@py-aiohttp: updated to 3.11.13

3.11.13 (2025-02-24)

Bug fixes

- Removed a break statement inside the finally block in :py:class:`~aiohttp.web.RequestHandler`
- Changed connection creation to explicitly close sockets if an exception is raised in the event loop's ``create_connection`` method -- by :user:`top-oai`.

Packaging updates and notes for downstreams

- Fixed test ``test_write_large_payload_deflate_compression_data_in_eof_writelines`` failing with Python 3.12.9+ or 3.13.2+ -- by :user:`bdraco`.

Miscellaneous internal changes

- Added human-readable error messages to the exceptions for WebSocket disconnects due to PONG not being received -- by :user:`bdraco`.
  Previously, the error messages were empty strings, which made it hard to determine what went wrong.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.83 2025/02/06 09:43:33 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.11.13
d14 1
a14 1
TOOL_DEPENDS+=	${PYPKGPREFIX}-setuptools>=46.4.0:../../devel/py-setuptools
d37 2
a38 2
# leads to, as of 3.10.9:
# 4 failed, 3204 passed, 30 skipped, 6 deselected, 25 xfailed, 37 errors
@


1.83
log
@py-aiohttp: updated to 3.11.12

3.11.12 (2025-02-05)

Bug fixes

- ``MultipartForm.decode()`` now follows RFC1341 7.2.1 with a ``CRLF`` after the boundary
- Restored the missing ``total_bytes`` attribute to ``EmptyStreamReader``

Features

- Updated :py:func:`~aiohttp.request` to make it accept ``_RequestOptions`` kwargs.
- Improved logging of HTTP protocol errors to include the remote address

Improved documentation

- Added ``aiohttp-openmetrics`` to list of third-party libraries

Packaging updates and notes for downstreams

- Added missing files to the source distribution to fix ``Makefile`` targets.
  Added a ``cythonize-nodeps`` target to run Cython without invoking pip to install dependencies.
- Started building armv7l musllinux wheels

Contributor-facing changes

- The CI/CD workflow has been updated to use `upload-artifact` v4 and `download-artifact` v4 GitHub Actions

Miscellaneous internal changes

- Restored support for zero copy writes when using Python 3.12 versions 3.12.9 and later or Python 3.13.2+
  Zero copy writes were previously disabled due to :cve:`2024-12254` which is resolved in these Python versions.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.82 2024/12/25 10:00:50 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.11.12
@


1.82
log
@py-aiohttp: updated to 3.11.11

3.11.11 (2024-12-18)

Bug fixes

- Updated :py:meth:`~aiohttp.ClientSession.request` to reuse the ``quote_cookie`` setting from ``ClientSession._cookie_jar`` when processing cookies parameter.
- Fixed type of ``SSLContext`` for some static type checkers (e.g. pyright).
- Updated :meth:`aiohttp.web.StreamResponse.write` annotation to also allow :class:`bytearray` and :class:`memoryview` as inputs -- by :user:`cdce8p`.
- Fixed a hang where a connection previously used for a streaming
  download could be returned to the pool in a paused state.

Features

- Enabled ALPN on default SSL contexts. This improves compatibility with some
  proxies which don't work without this extension.

Miscellaneous internal changes

- Fixed an infinite loop that can occur when using aiohttp in combination
  with `async-solipsism`_
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.81 2024/12/06 08:08:53 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.11.11
@


1.81
log
@py-aiohttp: updated to 3.11.10

3.11.10 (2024-12-05)

Bug fixes

- Fixed race condition in :class:`aiohttp.web.FileResponse` that could have resulted in an incorrect response if the file was replaced on the file system during ``prepare``
- Replaced deprecated call to :func:`mimetypes.guess_type` with :func:`mimetypes.guess_file_type` when using Python 3.13+
- Disabled zero copy writes in the ``StreamWriter``
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.80 2024/12/04 09:26:23 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.11.10
@


1.80
log
@py-aiohttp: updated to 3.11.9

3.11.9 (2024-12-01)

Bug fixes

- Fixed invalid method logging unexpected being logged at exception level on subsequent connections

Miscellaneous internal changes

- Improved performance of parsing headers when using the C parser


3.11.8 (2024-11-27)

Miscellaneous internal changes

- Improved performance of creating :class:`aiohttp.ClientResponse` objects when there are no cookies
- Improved performance of creating :class:`aiohttp.ClientResponse` objects
- Improved performances of creating objects during the HTTP request lifecycle
- Improved performance of constructing :class:`aiohttp.web.Response` with headers
- Improved performance of making requests when there are no auto headers to skip
- Downgraded logging of invalid HTTP method exceptions on the first request to debug level

  HTTP requests starting with an invalid method are relatively common, especially when connected to the public internet, because browsers or other clients may try to speak SSL to a plain-text server or vice-versa. These exceptions can quickly fill the log with noise when nothing is wrong.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.79 2024/11/24 07:27:08 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.11.9
@


1.79
log
@py-aiohttp: updated to 3.11.7

3.11.7 (2024-11-21)

Bug fixes

- Fixed the HTTP client not considering the connector's ``force_close`` value when setting the ``Connection`` header

Miscellaneous internal changes

- Improved performance of serializing HTTP headers


3.11.6 (2024-11-19)

Bug fixes

- Restored the ``force_close`` method to the ``ResponseHandler``


3.11.5 (2024-11-19)

Bug fixes

- Fixed the ``ANY`` method not appearing in :meth:`~aiohttp.web.UrlDispatcher.routes`


3.11.4 (2024-11-18)

Bug fixes

- Fixed ``StaticResource`` not allowing the ``OPTIONS`` method after calling ``set_options_route``

Miscellaneous internal changes

- Improved performance of creating web responses when there are no cookies


3.11.3 (2024-11-18)

Bug fixes

- Removed non-existing ``__author__`` from ``dir(aiohttp)``
- Restored the ``FlowControlDataQueue`` class
  This class is no longer used internally, and will be permanently removed in the next major version.

Miscellaneous internal changes

- Improved performance of resolving resources when multiple methods are registered for the same route
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.78 2024/11/16 10:18:16 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.11.7
@


1.78
log
@py-aiohttp: updated to 3.11.2

3.11.2 (2024-11-14)

Bug fixes

- Fixed improperly closed WebSocket connections generating an unhandled exception


3.11.1 (2024-11-14)

Bug fixes

- Added a backward compatibility layer to :class:`aiohttp.RequestInfo` to allow creating these objects without a ``real_url``
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.77 2024/11/14 18:22:00 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.11.2
@


1.77
log
@py-aiohttp: updated to 3.11.0

3.11.0 (2024-11-13)

Bug fixes

- Raise :exc:`aiohttp.ServerFingerprintMismatch` exception on client-side if request through http proxy with mismatching server fingerprint digest: `aiohttp.ClientSession(headers=headers, connector=TCPConnector(ssl=aiohttp.Fingerprint(mismatch_digest), trust_env=True).request(...)`
- Modified websocket :meth:`aiohttp.ClientWebSocketResponse.receive_str`, :py:meth:`aiohttp.ClientWebSocketResponse.receive_bytes`, :py:meth:`aiohttp.web.WebSocketResponse.receive_str` & :py:meth:`aiohttp.web.WebSocketResponse.receive_bytes` methods to raise new :py:exc:`aiohttp.WSMessageTypeError` exception, instead of generic :py:exc:`TypeError`, when websocket messages of incorrect types are received
- Made ``TestClient.app`` a ``Generic`` so type checkers will know the correct type (avoiding unneeded ``client.app is not None`` checks)
- Fixed the keep-alive connection pool to be FIFO instead of LIFO
  Keep-alive connections are more likely to be reused before they disconnect.

Features

- Added ``strategy`` parameter to :meth:`aiohttp.web.StreamResponse.enable_compression`
  The value of this parameter is passed to the :func:`zlib.compressobj` function, allowing people
  to use a more sufficient compression algorithm for their data served by :mod:`aiohttp.web`
- Added ``server_hostname`` parameter to ``ws_connect``.
- Exported :py:class:`~aiohttp.ClientWSTimeout` to top-level namespace
- Added ``secure``/``httponly``/``samesite`` parameters to ``.del_cookie()``
- Updated :py:class:`~aiohttp.ClientSession`'s auth logic to include default auth only if the request URL's origin matches _base_url; otherwise, the auth will not be included
- Added ``proxy`` and ``proxy_auth`` parameters to :py:class:`~aiohttp.ClientSession`
- Added ``default_to_multipart`` parameter to ``FormData``.
- Added :py:meth:`~aiohttp.ClientWebSocketResponse.send_frame` and :py:meth:`~aiohttp.web.WebSocketResponse.send_frame` for WebSockets
- Updated :py:class:`~aiohttp.ClientSession` to support paths in ``base_url`` parameter.
- Improved performance of reading WebSocket messages with a Cython implementation
- Added ``writer_limit`` to the :py:class:`~aiohttp.web.WebSocketResponse` to be able to adjust the limit before the writer forces the buffer to be drained
- Added an :attr:`~aiohttp.abc.AbstractAccessLogger.enabled` property to :class:`aiohttp.abc.AbstractAccessLogger` to dynamically check if logging is enabled

Deprecations (removal in next major release)

- Deprecate obsolete `timeout: float` and `receive_timeout: Optional[float]` in :py:meth:`~aiohttp.ClientSession.ws_connect`. Change default websocket receive timeout from `None` to `10.0`.

Removals and backward incompatible breaking changes

- Dropped support for Python 3.8
- Increased minimum yarl version to 1.17.0
- Removed the ``is_ipv6_address`` and ``is_ip4_address`` helpers are they are no longer used
- Changed ``ClientRequest.connection_key`` to be a `NamedTuple` to improve client performance
- ``FlowControlDataQueue`` has been replaced with the ``WebSocketDataQueue``
- Changed ``ClientRequest.request_info`` to be a `NamedTuple` to improve client performance

Packaging updates and notes for downstreams

- Switched to using the :mod:`propcache <propcache.api>` package for property caching
  The :mod:`propcache <propcache.api>` package is derived from the property caching
  code in :mod:`yarl` and has been broken out to avoid maintaining it for multiple
  projects.
- Separated ``aiohttp.http_websocket`` into multiple files to make it easier to maintain

Contributor-facing changes

- Changed diagram images generator from ``blockdiag`` to ``GraphViz``.
  Generating documentation now requires the GraphViz executable to be included in $PATH or sphinx build configuration.

Miscellaneous internal changes

- Added flake8 settings to avoid some forms of implicit concatenation.
- Enabled keep-alive support on proxies (which was originally disabled several years ago)
- Changed web entry point to not listen on TCP when only a Unix path is passed
- Disabled automatic retries of failed requests in :class:`aiohttp.test_utils.TestClient`'s client session
  (which could potentially hide errors in tests)
- Changed web ``keepalive_timeout`` default to around an hour in order to reduce race conditions on reverse proxies
- Reduced memory required for stream objects created during the client request lifecycle
- Improved performance of the internal ``DataQueue``
- Improved performance of calling ``receive`` for WebSockets for the most common message types
- Replace internal helper methods ``method_must_be_empty_body`` and ``status_code_must_be_empty_body`` with simple `set` lookups
- Improved performance of :py:class:`aiohttp.BaseConnector` when there is no ``limit_per_host``
- Improved performance of sending HTTP requests when there is no body
- Improved performance of the ``WebsocketWriter`` when the protocol is not paused
- Implemented zero copy writes for ``StreamWriter``
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.76 2024/11/13 17:35:37 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.11.0
@


1.76
log
@py-aiohttp: updated to 3.10.11

3.10.11 (2024-11-13)

Bug fixes

- Authentication provided by a redirect now takes precedence over provided ``auth`` when making requests with the client
- Fixed :py:meth:`WebSocketResponse.close() <aiohttp.web.WebSocketResponse.close>` to discard non-close messages within its timeout window after sending close
- Fixed a deadlock that could occur while attempting to get a new connection slot after a timeout
  The connector was not cancellation-safe.
- Fixed the WebSocket flow control calculation undercounting with multi-byte data
- Fixed incorrect parsing of chunk extensions with the pure Python parser
- Fixed system routes polluting the middleware cache

Removals and backward incompatible breaking changes

- Improved performance of the connector when a connection can be reused
  If ``BaseConnector.connect`` has been subclassed and replaced with custom logic, the ``ceil_timeout`` must be added.

Miscellaneous internal changes

- Improved performance of the client request lifecycle when there are no cookies
- Improved performance of serializing HTTP headers
- Passing ``enable_cleanup_closed`` to :py:class:`aiohttp.TCPConnector` is now ignored on Python 3.12.7+ and 3.13.1+ since the underlying bug that caused asyncio to leak SSL connections has been fixed upstream
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.75 2024/11/11 07:29:15 wiz Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.10.11
d20 2
a21 1
DEPENDS+=	${PYPKGPREFIX}-yarl>=1.12.0:../../www/py-yarl
@


1.75
log
@py-*: remove unused tool dependency

py-setuptools includes the py-wheel functionality nowadays
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.74 2024/10/14 16:56:43 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.10.10
@


1.74
log
@py-aiohttp: updated to 3.10.10

3.10.10 (2024-10-10)

Bug fixes

- Fixed error messages from :py:class:`~aiohttp.resolver.AsyncResolver` being swallowed

Features

- Added :exc:`aiohttp.ClientConnectorDNSError` for differentiating DNS resolution errors from other connector errors

Miscellaneous internal changes

- Simplified DNS resolution throttling code to reduce chance of race conditions
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.73 2024/10/09 13:08:17 wiz Exp $
a14 1
TOOL_DEPENDS+=	${PYPKGPREFIX}-wheel-[0-9]*:../../devel/py-wheel
@


1.73
log
@py-aiohttp: update to 3.10.9.

3.10.9 (2024-10-04)
===================

Bug fixes
---------

- Fixed proxy headers being used in the ``ConnectionKey`` hash when a proxy was not being used -- by :user:`bdraco`.

  If default headers are used, they are also used for proxy headers. This could have led to creating connections that were not needed when one was already available.


  *Related issues and pull requests on GitHub:*
  :issue:`9368`.



- Widened the type of the ``trace_request_ctx`` parameter of
  :meth:`ClientSession.request() <aiohttp.ClientSession.request>` and friends
  -- by :user:`layday`.


  *Related issues and pull requests on GitHub:*
  :issue:`9397`.




Removals and backward incompatible breaking changes
---------------------------------------------------

- Fixed failure to try next host after single-host connection timeout -- by :user:`brettdh`.

  The default client :class:`aiohttp.ClientTimeout` params has changed to include a ``sock_connect`` timeout of 30 seconds so that this correct behavior happens by default.


  *Related issues and pull requests on GitHub:*
  :issue:`7342`.




Miscellaneous internal changes
------------------------------

- Improved performance of resolving hosts with Python 3.12+ -- by :user:`bdraco`.


  *Related issues and pull requests on GitHub:*
  :issue:`9342`.



- Reduced memory required for timer objects created during the client request lifecycle -- by :user:`bdraco`.


  *Related issues and pull requests on GitHub:*
  :issue:`9406`.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.72 2024/10/01 07:47:23 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.10.9
@


1.72
log
@py-aiohttp: updated to 3.10.8

3.10.8 (2024-09-28)

Bug fixes

- Fixed cancellation leaking upwards on timeout


3.10.7 (2024-09-27)

Bug fixes

- Fixed assembling the :class:`~yarl.URL` for web requests when the host contains a non-default port or IPv6 address

Miscellaneous internal changes

- Improved performance of determining if a URL is absolute
- Replaced code that can now be handled by ``yarl``


3.10.6 (2024-09-24)

Bug fixes

- Added :exc:`aiohttp.ClientConnectionResetError`. Client code that previously threw :exc:`ConnectionResetError`
  will now throw this
- Fixed an unclosed transport ``ResourceWarning`` on web handlers
- Fixed resolve_host() 'Task was destroyed but is pending' errors
- Fixed handling of some file-like objects (e.g. ``tarfile.extractfile()``) which raise ``AttributeError`` instead of ``OSError`` when ``fileno`` fails for streaming payload data
- Fixed web router not matching pre-encoded URLs (requires yarl 1.9.6+)
- Fixed an error when trying to add a route for multiple methods with a path containing a regex pattern
- Fixed ``Response.text`` when body is a ``Payload``
- Fixed compressed requests failing when no body was provided
- Fixed client incorrectly reusing a connection when the previous message had not been fully sent
- Fixed race condition that could cause server to close connection incorrectly at keepalive timeout
- Fixed Python parser chunked handling with multiple Transfer-Encoding values
- Fixed error handling after 100-continue so server sends 500 response instead of disconnecting
- Stopped adding a default Content-Type header when response has no content
- Added support for URL credentials with empty (zero-length) username, e.g. ``https://:password@@host``
- Stopped logging exceptions from ``web.run_app()`` that would be raised regardless
- Implemented binding to IPv6 addresses in the pytest server fixture.
- Fixed the incorrect use of flags for ``getnameinfo()`` in the Resolver
- Fixed StreamResponse.prepared to return True after EOF is sent
- Changed ``make_mocked_request()`` to use empty payload by default
- Used more precise type for ``ClientResponseError.headers``, fixing some type errors when using them
- Changed behavior when returning an invalid response to send a 500 response
- Fixed response reading from closed session to throw an error immediately instead of timing out
- Fixed ``CancelledError`` from one cleanup context stopping other contexts from completing
- Fixed changing scheme/host in ``Response.clone()`` for absolute URLs
- Fixed ``Site.name`` when host is an empty string
- Updated Python parser to reject messages after a close message, matching C parser behaviour
- Fixed creation of ``SSLContext`` inside of :py:class:`aiohttp.TCPConnector` with multiple event loops in different threads
- Fixed (on Python 3.11+) some edge cases where a task cancellation may get incorrectly suppressed
- Fixed exception information getting lost on ``HttpProcessingError``
- Fixed ``If-None-Match`` not using weak comparison
- Fixed badly encoded charset crashing when getting response text instead of falling back to charset detector.
- Rejected `\n` in `reason` values to avoid sending broken HTTP messages
- Changed :py:meth:`ClientResponse.raise_for_status() <aiohttp.ClientResponse.raise_for_status>` to only release the connection when invoked outside an ``async with`` context

Features

- Improved type on ``params`` to match the underlying type allowed by ``yarl``
- Declared Python 3.13 supported

Removals and backward incompatible breaking changes

- Improved middleware performance
- Increased minimum yarl version to 1.12.0

Improved documentation

- Clarified that ``GracefulExit`` needs to be handled in ``AppRunner`` and ``ServerRunner`` when using ``handle_signals=True``.
- Clarified that auth parameter in ClientSession will persist and be included with any request to any origin, even during redirects to different origins.
- Clarified which timeout exceptions happen on which timeouts
- Updated ``ClientSession`` parameters to match current code

Packaging updates and notes for downstreams

- Fixed ``test_client_session_timeout_zero`` to not require internet access

Miscellaneous internal changes

- Improved performance of making requests when there are no auto headers to skip
- Exported ``aiohttp.TraceRequestHeadersSentParams``
- Avoided tracing overhead in the http writer when there are no active traces -- by user:`bdraco`.
- Improved performance of reify Cython implementation
- Use :meth:`URL.extend_query() <yarl.URL.extend_query>` to extend query params (requires yarl 1.11.0+)
- Improved performance of checking if a host is an IP Address
- Significantly improved performance of middlewares
- Improved performance of web requests
- Improved performance of starting web requests when there is no response prepare hook
- Significantly improved performance of expiring cookies
- Significantly sped up filtering cookies
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.71 2024/08/22 12:02:03 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.10.8
d37 2
a38 2
# leads to, as of 3.10.0:
# 5 failed, 3107 passed, 21 skipped, 6 deselected, 33 xfailed, 37 errors
@


1.71
log
@py-aiohttp: updated to 3.10.5

3.10.5 (2024-08-19)

Bug fixes

- Fixed :meth:`aiohttp.ClientResponse.json()` not setting ``status`` when :exc:`aiohttp.ContentTypeError` is raised

Miscellaneous internal changes

- Improved performance of the WebSocket reader
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.70 2024/08/18 19:31:54 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.10.5
d21 1
a21 1
DEPENDS+=	${PYPKGPREFIX}-yarl>=1.0:../../www/py-yarl
@


1.70
log
@py-aiohttp: updated to 3.10.4

3.10.4 (2024-08-17)
===================

Bug fixes
---------

- Fixed decoding base64 chunk in BodyPartReader

- Fixed a race closing the server-side WebSocket where the close code would not reach the client

- Fixed unconsumed exceptions raised by the WebSocket heartbeat

  If the heartbeat ping raised an exception, it would not be consumed and would be logged as an warning.

- Fixed an edge case in the Python parser when chunk separators happen to align with network chunks

Improved documentation
----------------------

- Added ``aiohttp-apischema`` to supported libraries


Miscellaneous internal changes
------------------------------

- Improved performance of starting request handlers with Python 3.12+

  This change is a followup to :issue:`8661` to make the same optimization for Python 3.12+ where the request is connected.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.69 2024/08/11 07:37:34 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.10.4
a29 2
PYTHON_VERSIONS_INCOMPATIBLE=	27

@


1.69
log
@py-aiohttp: updated to 3.10.3

3.10.3 (2024-08-10)

Bug fixes

- Fixed multipart reading when stream buffer splits the boundary over several read() calls
- Fixed :py:class:`aiohttp.TCPConnector` doing blocking I/O in the event loop to create the ``SSLContext``

  The blocking I/O would only happen once per verify mode. However, it could cause the event loop to block for a long time if the ``SSLContext`` creation is slow, which is more likely during startup when the disk cache is not yet present.

Miscellaneous internal changes

- Improved performance of :py:meth:`~aiohttp.ClientWebSocketResponse.receive` and :py:meth:`~aiohttp.web.WebSocketResponse.receive` when there is no timeout.

  The timeout context manager is now avoided when there is no timeout as it accounted for up to 50% of the time spent in the :py:meth:`~aiohttp.ClientWebSocketResponse.receive` and :py:meth:`~aiohttp.web.WebSocketResponse.receive` methods.

- Improved performance of starting request handlers with Python 3.12+
- Improved performance of HTTP keep-alive checks

  Previously, when processing a request for a keep-alive connection, the keep-alive check would happen every second; the check is now rescheduled if it fires too early instead.

- Improved performance of generating random WebSocket mask


3.10.2 (2024-08-08)

Bug fixes

- Fixed server checks for circular symbolic links to be compatible with Python 3.13
- Fixed request body not being read when ignoring an Upgrade request
- Fixed an edge case where shutdown would wait for timeout when the handler was already completed
- Fixed connecting to ``npipe://``, ``tcp://``, and ``unix://`` urls
- Fixed WebSocket ping tasks being prematurely garbage collected

  There was a small risk that WebSocket ping tasks would be prematurely garbage collected because the event loop only holds a weak reference to the task. The garbage collection risk has been fixed by holding a strong reference to the task. Additionally, the task is now scheduled eagerly with Python 3.12+ to increase the chance it can be completed immediately and avoid having to hold any references to the task.

- Fixed incorrectly following symlinks for compressed file variants

Removals and backward incompatible breaking changes

- Removed ``Request.wait_for_disconnection()``, which was mistakenly added briefly in 3.10.0


Contributor-facing changes

- Fixed monkey patches for ``Path.stat()`` and ``Path.is_dir()`` for Python 3.13 compatibility


Miscellaneous internal changes

- Improved WebSocket performance when messages are sent or received frequently

  The WebSocket heartbeat scheduling algorithm was improved to reduce the ``asyncio`` scheduling overhead by decreasing the number of ``asyncio.TimerHandle`` creations and cancellations.

- Minor improvements to various type annotations
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.68 2024/08/05 05:42:09 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.10.3
@


1.68
log
@py-aiohttp: updated to 3.10.1

3.10.1 (2024-08-03)

Bug fixes

- Fixed WebSocket server heartbeat timeout logic to terminate :py:meth:`~aiohttp.ClientWebSocketResponse.receive` and return :py:class:`~aiohttp.ServerTimeoutError` -- by :user:`arcivanov`.

  When a WebSocket pong message was not received, the :py:meth:`~aiohttp.ClientWebSocketResponse.receive` operation did not terminate. This change causes ``_pong_not_received`` to feed the ``reader`` an error message, causing pending :py:meth:`~aiohttp.ClientWebSocketResponse.receive` to terminate and return the error message. The error message contains the exception :py:class:`~aiohttp.ServerTimeoutError`.

- Fixed url dispatcher index not matching when a variable is preceded by a fixed string after a slash -- by :user:`bdraco`.


Removals and backward incompatible breaking changes

- Creating :py:class:`aiohttp.TCPConnector`, :py:class:`aiohttp.ClientSession`, :py:class:`~aiohttp.resolver.ThreadedResolver` :py:class:`aiohttp.web.Server`, or :py:class:`aiohttp.CookieJar` instances without a running event loop now raises a :exc:`RuntimeError` -- by :user:`asvetlov`.

  Creating these objects without a running event loop was deprecated in :issue:`3372` which was released in version 3.5.0.

  This change first appeared in version 3.10.0 as :issue:`6378`.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.67 2024/07/31 09:03:55 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.10.1
@


1.67
log
@py-aiohttp: updated to 3.10.0

3.10.0 (2024-07-30)

Bug fixes

- Fixed server response headers for ``Content-Type`` and ``Content-Encoding`` for
  static compressed files

  Server will now respond with a ``Content-Type`` appropriate for the compressed
  file (e.g. ``"application/gzip"``), and omit the ``Content-Encoding`` header.
  Users should expect that most clients will no longer decompress such responses
  by default.

- Fixed duplicate cookie expiration calls in the CookieJar implementation
- Adjusted ``FileResponse`` to check file existence and access when preparing the response

  The :py:class:`~aiohttp.web.FileResponse` class was modified to respond with
   403 Forbidden or 404 Not Found as appropriate.  Previously, it would cause a
   server error if the path did not exist or could not be accessed.  Checks for
   existence, non-regular files, and permissions were expected to be done in the
   route handler.  For static routes, this now permits a compressed file to exist
   without its uncompressed variant and still be served.  In addition, this
   changes the response status for files without read permission to 403, and for
   non-regular files from 404 to 403 for consistency.

- Fixed ``AsyncResolver`` to match ``ThreadedResolver`` behavior

  On system with IPv6 support, the :py:class:`~aiohttp.resolver.AsyncResolver` would not fallback
  to providing A records when AAAA records were not available.
  Additionally, unlike the :py:class:`~aiohttp.resolver.ThreadedResolver`, the :py:class:`~aiohttp.resolver.AsyncResolver`
  did not handle link-local addresses correctly.

  This change makes the behavior consistent with the :py:class:`~aiohttp.resolver.ThreadedResolver`.

- Fixed ``ws_connect`` not respecting `receive_timeout`` on WS(S) connection.
- Removed blocking I/O in the event loop for static resources and refactored
  exception handling

  File system calls when handling requests for static routes were moved to a
  separate thread to potentially improve performance. Exception handling
  was tightened in order to only return 403 Forbidden or 404 Not Found responses
  for expected scenarios; 500 Internal Server Error would be returned for any
  unknown errors.


Features

- Added a Request.wait_for_disconnection() method, as means of allowing request handlers to be notified of premature client disconnections.
- Added 5 new exceptions: :py:exc:`~aiohttp.InvalidUrlClientError`, :py:exc:`~aiohttp.RedirectClientError`,
  :py:exc:`~aiohttp.NonHttpUrlClientError`, :py:exc:`~aiohttp.InvalidUrlRedirectClientError`,
  :py:exc:`~aiohttp.NonHttpUrlRedirectClientError`

  :py:exc:`~aiohttp.InvalidUrlRedirectClientError`, :py:exc:`~aiohttp.NonHttpUrlRedirectClientError`
  are raised instead of :py:exc:`ValueError` or :py:exc:`~aiohttp.InvalidURL` when the redirect URL is invalid. Classes
  :py:exc:`~aiohttp.InvalidUrlClientError`, :py:exc:`~aiohttp.RedirectClientError`,
  :py:exc:`~aiohttp.NonHttpUrlClientError` are base for them.

  The :py:exc:`~aiohttp.InvalidURL` now exposes a ``description`` property with the text explanation of the error details.

- Added a feature to retry closed connections automatically for idempotent methods.
- Implemented filter_cookies() with domain-matching and path-matching on the keys, instead of testing every single cookie.
  This may break existing cookies that have been saved with `CookieJar.save()`. Cookies can be migrated with this script::

      import pickle
      with file_path.open("rb") as f:
          cookies = pickle.load(f)

      morsels = [(name, m) for c in cookies.values() for name, m in c.items()]
      cookies.clear()
      for name, m in morsels:
          cookies[(m["domain"], m["path"].rstrip("/"))][name] = m

      with file_path.open("wb") as f:
          pickle.dump(cookies, f, pickle.HIGHEST_PROTOCOL)

- Separated connection and socket timeout errors, from ServerTimeoutError.
- Implemented happy eyeballs
- Added server capability to check for static files with Brotli compression via a ``.br`` extension

Removals and backward incompatible breaking changes

- The shutdown logic in 3.9 waited on all tasks, which caused issues with some libraries.
  In 3.10 we've changed this logic to only wait on request handlers. This means that it's
  important for developers to correctly handle the lifecycle of background tasks using a
  library such as ``aiojobs``. If an application is using ``handler_cancellation=True`` then
  it is also a good idea to ensure that any :func:`asyncio.shield` calls are replaced with
  :func:`aiojobs.aiohttp.shield`.

Improved documentation

- Added documentation for ``aiohttp.web.FileResponse``.
- Improved the docs for the `ssl` params.

Contributor-facing changes

- Enabled HTTP parser tests originally intended for 3.9.2 release

Miscellaneous internal changes

- Improved URL handler resolution time by indexing resources in the UrlDispatcher.
  For applications with a large number of handlers, this should increase performance significantly.
- Added `nacl_middleware <https://github.com/CosmicDNA/nacl_middleware>`_ to the list of middlewares in the third party section of the documentation.
- Minor improvements to static typing
- Added a 3.11-specific overloads to ``ClientSession``
- Simplified path checks for ``UrlDispatcher.add_static()`` method
- Avoided creating a future on every websocket receive
- Updated identity checks for all ``WSMsgType`` type compares
- When using Python 3.12 or later, the writer is no longer scheduled on the event loop if it can finish synchronously. Avoiding event loop scheduling reduces latency and improves performance.
- Restored :py:class:`~aiohttp.resolver.AsyncResolver` to be the default resolver.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.66 2024/04/17 14:54:22 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.10.0
@


1.66
log
@py-aiohttp: updated to 3.9.5

3.9.5 (2024-04-16)

Bug fixes

- Fixed "Unclosed client session" when initialization of
  :py:class:`~aiohttp.ClientSession` fails
- Fixed regression (from :pr:`8280`) with adding ``Content-Disposition`` to the ``form-data``
  part after appending to writer
- Added default ``Content-Disposition`` in ``multipart/form-data`` responses to avoid broken
  form-data responses
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.65 2024/04/13 05:13:44 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.9.5
d16 2
a18 1
DEPENDS+=	${PYPKGPREFIX}-aiosignal>=1.1.2:../../devel/py-aiosignal
d20 2
a21 2
DEPENDS+=	${PYPKGPREFIX}-multidict>=4.5<7.0:../../databases/py-multidict
DEPENDS+=	${PYPKGPREFIX}-yarl>=1.0<2.0:../../www/py-yarl
d25 1
a31 8
# need to package: re-assert, python-on-whales, proxy (!?)
# leads to, as of 3.9.0:
# 8 failed, 2112 passed, 31 skipped, 3 deselected, 26 xfailed, 35 errors
pre-test:
	cd ${WRKSRC} && ${RM} -f tests/test_client_session.py tests/test_proxy_functional.py \
		tests/test_streams.py tests/test_urldispatch.py tests/test_web_response.py \
		tests/autobahn/test_autobahn.py

a32 1

d38 6
@


1.65
log
@py-aiohttp: updated to 3.9.4

3.9.4 (2024-04-11)

Bug fixes

- The asynchronous internals now set the underlying causes
  when assigning exceptions to the future objects
- Treated values of ``Accept-Encoding`` header as case-insensitive when checking
  for gzip files
- Improved the DNS resolution performance on cache hit
  This is achieved by avoiding an :mod:`asyncio` task creation in this case.
- Changed the type annotations to allow ``dict`` on :meth:`aiohttp.MultipartWriter.append`,
  :meth:`aiohttp.MultipartWriter.append_json` and
  :meth:`aiohttp.MultipartWriter.append_form`
- Ensure websocket transport is closed when client does not close it
  The transport could remain open if the client did not close it. This
  change ensures the transport is closed when the client does not close
  it.
- Leave websocket transport open if receive times out or is cancelled
  This restores the behavior prior to the change in 7978.
- Fixed content not being read when an upgrade request was not supported with the pure Python implementation.
- Fixed a race condition with incoming connections during server shutdown
- Fixed ``multipart/form-data`` compliance with :rfc:`7578`
- Fixed blocking I/O in the event loop while processing files in a POST request
- Escaped filenames in static view
- Fixed the pure python parser to mark a connection as closing when a
  response has no length

Features

- Upgraded *llhttp* to 9.2.1, and started rejecting obsolete line folding
  in Python parser to match

Deprecations (removal in next major release)

- Deprecated ``content_transfer_encoding`` parameter in :py:meth:`FormData.add_field()
  <aiohttp.FormData.add_field>`

Improved documentation

- Added a note about canceling tasks to avoid delaying server shutdown
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.64 2024/01/30 11:22:07 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.9.4
@


1.64
log
@py-aiohttp: updated to 3.9.3

3.9.3 (2024-01-29)

Bug fixes

- Fixed backwards compatibility breakage (in 3.9.2) of ``ssl`` parameter when set outside
  of ``ClientSession`` (e.g. directly in ``TCPConnector``)
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.63 2024/01/29 06:53:52 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.9.3
d22 1
@


1.63
log
@py-aiohttp: updated to 3.9.2

3.9.2 (2024-01-28)

Bug fixes

- Fixed server-side websocket connection leak.
- Fixed ``web.FileResponse`` doing blocking I/O in the event loop.
- Fixed double compress when compression enabled and compressed file exists in server file responses.
- Added runtime type check for ``ClientSession`` ``timeout`` parameter.
- Fixed an unhandled exception in the Python HTTP parser on header lines starting with a colon

  Invalid request lines with anything but a dot between the HTTP major and minor version are now rejected.
  Invalid header field names containing question mark or slash are now rejected.
  Such requests are incompatible with :rfc:`9110#section-5.6.2` and are not known to be of any legitimate use.

- Improved validation of paths for static resources requests to the server

Features

- Added support for passing :py:data:`True` to ``ssl`` parameter in ``ClientSession`` while
  deprecating :py:data:`None`

Breaking changes

- Fixed an unhandled exception in the Python HTTP parser on header lines starting with a colon

  Invalid request lines with anything but a dot between the HTTP major and minor version are now rejected.
  Invalid header field names containing question mark or slash are now rejected.
  Such requests are incompatible with :rfc:`9110#section-5.6.2` and are not known to be of any legitimate use.

Improved documentation

- Fixed examples of ``fallback_charset_resolver`` function in the :doc:`client_advanced` document.
- The Sphinx setup was updated to avoid showing the empty
  changelog draft section in the tagged release documentation
  builds on Read The Docs
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.62 2023/11/27 06:59:01 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.9.2
d14 1
a14 1
TOOL_DEPENDS+=	${PYPKGPREFIX}-setuptools-[0-9]*:../../devel/py-setuptools
@


1.62
log
@py-aiohttp: updated to 3.9.1

3.9.1 (2023-11-26)

Bugfixes

- Fixed importing aiohttp under PyPy on Windows.
- Fixed async concurrency safety in websocket compressor.
- Fixed ``ClientResponse.close()`` releasing the connection instead of closing.
- Fixed a regression where connection may get closed during upgrade.
- Fixed messages being reported as upgraded without an Upgrade header in Python parser.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.61 2023/11/19 13:52:13 wiz Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.9.1
@


1.61
log
@py-aiohttp: update to 3.9.0.

Bugfixes.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.60 2023/10/28 19:57:22 wiz Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.9.0
@


1.60
log
@python/wheel.mk: simplify a lot, and switch to 'installer' for installation

This follows the recommended bootstrap method (flit_core, build, installer).

However, installer installs different files than pip, so update PLISTs
for all packages using wheel.mk and bump their PKGREVISIONs.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.59 2023/10/09 12:45:23 adam Exp $
d3 2
a4 2
DISTNAME=	aiohttp-3.9.0b0
PKGNAME=	${PYPKGPREFIX}-${DISTNAME:S/b/beta/}
d13 4
a16 1
DEPENDS+=	${PYPKGPREFIX}-async-timeout>=4.0.0:../../devel/py-async-timeout
a17 2
DEPENDS+=	${PYPKGPREFIX}-attrs>=17.3.0:../../devel/py-attrs
DEPENDS+=	${PYPKGPREFIX}-charset-normalizer>=2.0:../../converters/py-charset-normalizer
d21 1
a21 1
TEST_DEPENDS+=	${PYPKGPREFIX}-async_generator-[0-9]*:../../devel/py-async_generator
a22 1
TEST_DEPENDS+=	${PYPKGPREFIX}-test-[0-9]*:../../devel/py-test
d29 15
a43 2
.include "../../devel/py-cython/buildlink3.mk"
.include "../../lang/python/egg.mk"
@


1.59
log
@py-aiohttp: updated to 3.8.6

3.8.6 (2023-10-07)

Security bugfixes

- Upgraded the vendored copy of llhttp_ to v9.1.3
- Updated Python parser to comply with RFCs 9110/9112

Deprecation

- Added ``fallback_charset_resolver`` parameter in ``ClientSession`` to allow a user-supplied
  character set detection function.

  Character set detection will no longer be included in 3.9 as a default. If this feature is needed,
  please use `fallback_charset_resolver <https://docs.aiohttp.org/en/stable/client_advanced.html#character-set-detection>`_.

Features

- Enabled lenient response parsing for more flexible parsing in the client
  (this should resolve some regressions when dealing with badly formatted HTTP responses).

Bugfixes

- Fixed ``PermissionError`` when ``.netrc`` is unreadable due to permissions.
- Fixed output of parsing errors pointing to a ``\n``.
- Fixed ``GunicornWebWorker`` max_requests_jitter not working.
- Fixed sorting in ``filter_cookies`` to use cookie with longest path.
- Fixed display of ``BadStatusLine`` messages from llhttp_.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.58 2023/07/20 07:47:52 adam Exp $
d3 2
a4 2
DISTNAME=	aiohttp-3.8.6
PKGNAME=	${PYPKGPREFIX}-${DISTNAME}
@


1.58
log
@py-aiohttp: updated to 3.8.5

3.8.5 (2023-07-19)

Security bugfixes
- Upgraded the vendored copy of llhttp_ to v8.1.1

Features
- Added information to C parser exceptions to show which character caused the error.

Bugfixes
- Fixed a transport is :data:`None` error
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.57 2023/02/13 10:42:54 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.8.5
@


1.57
log
@py-aiohttp: updated to 3.8.4

3.8.4 (2023-02-12)

Bugfixes
--------
- Fixed incorrectly overwriting cookies with the same name and domain, but different path.
- Fixed ``ConnectionResetError`` not being raised after client disconnection in SSL environments.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.56 2022/12/06 20:14:34 wiz Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.8.4
@


1.56
log
@py-aiohttp: unrestrict charset-normalizer dependency

pkgsrc has a newer version

Bump PKGREVISION.

Fix pkglint while here.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.55 2022/09/26 18:55:02 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.8.3
a4 1
PKGREVISION=	1
a28 6
.include "../../lang/python/pyversion.mk"

.if ${PYPKGPREFIX} == "py37"
DEPENDS+=	${PYPKGPREFIX}-typing-extensions>=3.7.4:../../devel/py-typing-extensions
.endif

@


1.55
log
@py-aiohttp: updated to 3.8.3

3.8.3 (2022-09-21)
==================

   This is the last :doc:`aiohttp <index>` release tested under
   Python 3.6. The 3.9 stream is dropping it from the CI and the
   distribution package metadata.

Bugfixes
--------

- Increased the upper boundary of the :doc:`multidict:index` dependency
  to allow for the version 6 -- by :user:`hugovk`.

  It used to be limited below version 7 in :doc:`aiohttp <index>` v3.8.1 but
  was lowered in v3.8.2 via :pr:`6550` and never brought back, causing
  problems with dependency pins when upgrading. :doc:`aiohttp <index>` v3.8.3
  fixes that by recovering the original boundary of ``< 7``.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.54 2022/01/16 09:05:31 adam Exp $
d5 1
d31 2
a32 1
.if ${_PYTHON_VERSION} < 38
@


1.54
log
@py-aiohttp: add missing DEPENDS
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.53 2022/01/15 23:35:13 js Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.8.1
@


1.53
log
@Update www/py-aiohttp to 3.8.1

Several versions skipped, check https://github.com/aio-libs/aiohttp/releases
for change log.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.52 2022/01/04 20:55:15 wiz Exp $
d13 2
a14 1
DEPENDS+=	${PYPKGPREFIX}-async-timeout>=3.0:../../devel/py-async-timeout
d16 2
a17 1
DEPENDS+=	${PYPKGPREFIX}-chardet>=2.0:../../converters/py-chardet
a19 1
DEPENDS+=	${PYPKGPREFIX}-typing-extensions>=3.6.5:../../devel/py-typing-extensions
d29 5
@


1.52
log
@*: bump PKGREVISION for egg.mk users

They now have a tool dependency on py-setuptools instead of a DEPENDS
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.51 2021/12/30 13:24:01 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.7.4
a4 1
PKGREVISION=	1
@


1.51
log
@Do not mention Python 3.6
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.50 2021/02/26 06:21:51 adam Exp $
d5 1
@


1.50
log
@py-aiohttp: updated to 3.7.4

3.7.4 (2021-02-25)

Bugfixes

(SECURITY BUG) Started preventing open redirects in the aiohttp.web.normalize_path_middleware middleware. For more details, see https://github.com/aio-libs/aiohttp/security/advisories/GHSA-v6wp-4m6f-gcjg.

Thanks to Beast Glatisant for finding the first instance of this issue and Jelmer Vernooĳ for reporting and tracking it down in aiohttp.

Fix interpretation difference of the pure-Python and the Cython-based HTTP parsers construct a yarl.URL object for HTTP request-target.

Before this fix, the Python parser would turn the URI's absolute-path for //some-path into / while the Cython code preserved it as //some-path. Now, both do the latter.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.49 2021/02/06 20:41:34 leot Exp $
a27 5
.include "../../lang/python/pyversion.mk"
.if ${_PYTHON_VERSION} == 36
DEPENDS+=	${PYPKGPREFIX}-idna-ssl>=1.0:../../www/py-idna_ssl
.endif

@


1.49
log
@py-aiohttp: Bump chardet requirements in setup.py too

Previously it was only relaxed in pkgsrc DEPENDS resulting in possible runtime
errors.

PKGREVISION++
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.48 2021/01/04 18:57:47 wiz Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.7.3
a4 1
PKGREVISION=	2
@


1.48
log
@py-aiohttp: remove upper bound in dependency
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.47 2020/11/19 10:19:50 adam Exp $
d5 1
a5 1
PKGREVISION=	1
@


1.47
log
@py-aiohttp: updated to 3.7.3

3.7.3
=====

Features
--------
- Use Brotli instead of brotlipy
- Made exceptions pickleable. Also changed the repr of some exceptions.

Bugfixes
--------
- Raise a ClientResponseError instead of an AssertionError for a blank
  HTTP Reason Phrase.
- Fix ``web_middlewares.normalize_path_middleware`` behavior for patch without slash.
- Fix overshadowing of overlapped sub-applications prefixes.
- Make `BaseConnector.close()` a coroutine and wait until the client closes all connections. Drop deprecated "with Connector():" syntax.
- Reset the ``sock_read`` timeout each time data is received for a ``aiohttp.client`` response.
- Fixed type annotation for add_view method of UrlDispatcher to accept any subclass of View
- Fixed querying the address families from DNS that the current host supports.
- Change return type of MultipartReader.__aiter__() and BodyPartReader.__aiter__() to AsyncIterator.
- Provide x86 Windows wheels.

Improved Documentation
----------------------
- Add documentation for ``aiohttp.web.FileResponse``.
- Removed deprecation warning in tracing example docs
- Fixed wrong "Usage" docstring of ``aiohttp.client.request``.
- Add aiohttp-pydantic to third party libraries
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.46 2020/10/27 22:52:05 adam Exp $
d5 1
d16 1
a16 1
DEPENDS+=	${PYPKGPREFIX}-chardet>=2.0<4.0:../../converters/py-chardet
@


1.46
log
@py-aiohttp: updated to 3.7.2

3.7.2

Bugfixes
- Fixed static files handling for loops without ``.sendfile()`` support
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.45 2020/10/26 09:06:20 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.7.2
@


1.45
log
@py-aiohttp: updated to 3.7.1

3.7.1

Bugfixes
- Fixed a type error caused by the conditional import of `Protocol`.
- Server doesn't send Content-Length for 1xx or 204
- Fix run_app typing
- Always require ``typing_extensions`` library.
- Fix a variable-shadowing bug causing `ThreadedResolver.resolve` to
  return the resolved IP as the ``hostname`` in each record, which prevented
  validation of HTTPS connections.
- Added annotations to all public attributes.
- Fix flaky test_when_timeout_smaller_second
- Ensure sending a zero byte file does not throw an exception
- Fix a bug in ``web.run_app()`` about Python version checking on Windows
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.44 2020/10/24 21:48:50 js Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.7.1
@


1.44
log
@py-aiohttp: Always depends on py-typing-extensions

web_urldispatcher imports it unconditionally.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.43 2020/10/24 18:49:21 js Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.7.0
a4 1
PKGREVISION=	1
@


1.43
log
@Update www/py-aiohttp to 3.7.0

This fixes py-yarl in pkgsrc being too new for py-aiohttp.


3.7.0 (2020-10-24)
==================

Features
--------

- Response headers are now prepared prior to running ``on_response_prepare`` hooks, directly before headers are sent to the client.
  `#1958 <https://github.com/aio-libs/aiohttp/issues/1958>`_
- Add a ``quote_cookie`` option to ``CookieJar``, a way to skip quotation wrapping of cookies containing special characters.
  `#2571 <https://github.com/aio-libs/aiohttp/issues/2571>`_
- Call ``AccessLogger.log`` with the current exception available from ``sys.exc_info()``.
  `#3557 <https://github.com/aio-libs/aiohttp/issues/3557>`_
- `web.UrlDispatcher.add_routes` and `web.Application.add_routes` return a list
  of registered `AbstractRoute` instances. `AbstractRouteDef.register` (and all
  subclasses) return a list of registered resources registered resource.
  `#3866 <https://github.com/aio-libs/aiohttp/issues/3866>`_
- Added properties of default ClientSession params to ClientSession class so it is available for introspection
  `#3882 <https://github.com/aio-libs/aiohttp/issues/3882>`_
- Don't cancel web handler on peer disconnection, raise `OSError` on reading/writing instead.
  `#4080 <https://github.com/aio-libs/aiohttp/issues/4080>`_
- Implement BaseRequest.get_extra_info() to access a protocol transports' extra info.
  `#4189 <https://github.com/aio-libs/aiohttp/issues/4189>`_
- Added `ClientSession.timeout` property.
  `#4191 <https://github.com/aio-libs/aiohttp/issues/4191>`_
- allow use of SameSite in cookies.
  `#4224 <https://github.com/aio-libs/aiohttp/issues/4224>`_
- Use ``loop.sendfile()`` instead of custom implementation if available.
  `#4269 <https://github.com/aio-libs/aiohttp/issues/4269>`_
- Apply SO_REUSEADDR to test server's socket.
  `#4393 <https://github.com/aio-libs/aiohttp/issues/4393>`_
- Use .raw_host instead of slower .host in client API
  `#4402 <https://github.com/aio-libs/aiohttp/issues/4402>`_
- Allow configuring the buffer size of input stream by passing ``read_bufsize`` argument.
  `#4453 <https://github.com/aio-libs/aiohttp/issues/4453>`_
- Pass tests on Python 3.8 for Windows.
  `#4513 <https://github.com/aio-libs/aiohttp/issues/4513>`_
- Add `method` and `url` attributes to `TraceRequestChunkSentParams` and `TraceResponseChunkReceivedParams`.
  `#4674 <https://github.com/aio-libs/aiohttp/issues/4674>`_
- Add ClientResponse.ok property for checking status code under 400.
  `#4711 <https://github.com/aio-libs/aiohttp/issues/4711>`_
- Don't ceil timeouts that are smaller than 5 seconds.
  `#4850 <https://github.com/aio-libs/aiohttp/issues/4850>`_
- TCPSite now listens by default on all interfaces instead of just IPv4 when `None` is passed in as the host.
  `#4894 <https://github.com/aio-libs/aiohttp/issues/4894>`_
- Bump ``http_parser`` to 2.9.4
  `#5070 <https://github.com/aio-libs/aiohttp/issues/5070>`_


Bugfixes
--------

- Fix keepalive connections not being closed in time
  `#3296 <https://github.com/aio-libs/aiohttp/issues/3296>`_
- Fix failed websocket handshake leaving connection hanging.
  `#3380 <https://github.com/aio-libs/aiohttp/issues/3380>`_
- Fix tasks cancellation order on exit. The run_app task needs to be cancelled first for cleanup hooks to run with all tasks intact.
  `#3805 <https://github.com/aio-libs/aiohttp/issues/3805>`_
- Don't start heartbeat until _writer is set
  `#4062 <https://github.com/aio-libs/aiohttp/issues/4062>`_
- Fix handling of multipart file uploads without a content type.
  `#4089 <https://github.com/aio-libs/aiohttp/issues/4089>`_
- Preserve view handler function attributes across middlewares
  `#4174 <https://github.com/aio-libs/aiohttp/issues/4174>`_
- Fix the string representation of ``ServerDisconnectedError``.
  `#4175 <https://github.com/aio-libs/aiohttp/issues/4175>`_
- Raising RuntimeError when trying to get encoding from not read body
  `#4214 <https://github.com/aio-libs/aiohttp/issues/4214>`_
- Remove warning messages from noop.
  `#4282 <https://github.com/aio-libs/aiohttp/issues/4282>`_
- Raise ClientPayloadError if FormData re-processed.
  `#4345 <https://github.com/aio-libs/aiohttp/issues/4345>`_
- Fix a warning about unfinished task in ``web_protocol.py``
  `#4408 <https://github.com/aio-libs/aiohttp/issues/4408>`_
- Fixed 'deflate' compression. According to RFC 2616 now.
  `#4506 <https://github.com/aio-libs/aiohttp/issues/4506>`_
- Fixed OverflowError on platforms with 32-bit time_t
  `#4515 <https://github.com/aio-libs/aiohttp/issues/4515>`_
- Fixed request.body_exists returns wrong value for methods without body.
  `#4528 <https://github.com/aio-libs/aiohttp/issues/4528>`_
- Fix connecting to link-local IPv6 addresses.
  `#4554 <https://github.com/aio-libs/aiohttp/issues/4554>`_
- Fix a problem with connection waiters that are never awaited.
  `#4562 <https://github.com/aio-libs/aiohttp/issues/4562>`_
- Always make sure transport is not closing before reuse a connection.

  Reuse a protocol based on keepalive in headers is unreliable.
  For example, uWSGI will not support keepalive even it serves a
  HTTP 1.1 request, except explicitly configure uWSGI with a
  ``--http-keepalive`` option.

  Servers designed like uWSGI could cause aiohttp intermittently
  raise a ConnectionResetException when the protocol poll runs
  out and some protocol is reused.
  `#4587 <https://github.com/aio-libs/aiohttp/issues/4587>`_
- Handle the last CRLF correctly even if it is received via separate TCP segment.
  `#4630 <https://github.com/aio-libs/aiohttp/issues/4630>`_
- Fix the register_resource function to validate route name before splitting it so that route name can include python keywords.
  `#4691 <https://github.com/aio-libs/aiohttp/issues/4691>`_
- Improve typing annotations for ``web.Request``, ``aiohttp.ClientResponse`` and
  ``multipart`` module.
  `#4736 <https://github.com/aio-libs/aiohttp/issues/4736>`_
- Fix resolver task is not awaited when connector is cancelled
  `#4795 <https://github.com/aio-libs/aiohttp/issues/4795>`_
- Fix a bug "Aiohttp doesn't return any error on invalid request methods"
  `#4798 <https://github.com/aio-libs/aiohttp/issues/4798>`_
- Fix HEAD requests for static content.
  `#4809 <https://github.com/aio-libs/aiohttp/issues/4809>`_
- Fix incorrect size calculation for memoryview
  `#4890 <https://github.com/aio-libs/aiohttp/issues/4890>`_
- Add HTTPMove to _all__.
  `#4897 <https://github.com/aio-libs/aiohttp/issues/4897>`_
- Fixed the type annotations in the ``tracing`` module.
  `#4912 <https://github.com/aio-libs/aiohttp/issues/4912>`_
- Fix typing for multipart ``__aiter__``.
  `#4931 <https://github.com/aio-libs/aiohttp/issues/4931>`_
- Fix for race condition on connections in BaseConnector that leads to exceeding the connection limit.
  `#4936 <https://github.com/aio-libs/aiohttp/issues/4936>`_
- Add forced UTF-8 encoding for ``application/rdap+json`` responses.
  `#4938 <https://github.com/aio-libs/aiohttp/issues/4938>`_
- Fix inconsistency between Python and C http request parsers in parsing pct-encoded URL.
  `#4972 <https://github.com/aio-libs/aiohttp/issues/4972>`_
- Fix connection closing issue in HEAD request.
  `#5012 <https://github.com/aio-libs/aiohttp/issues/5012>`_
- Fix type hint on BaseRunner.addresses (from ``List[str]`` to ``List[Any]``)
  `#5086 <https://github.com/aio-libs/aiohttp/issues/5086>`_
- Make `web.run_app()` more responsive to Ctrl+C on Windows for Python < 3.8. It slightly
  increases CPU load as a side effect.
  `#5098 <https://github.com/aio-libs/aiohttp/issues/5098>`_


Improved Documentation
----------------------

- Fix example code in client quick-start
  `#3376 <https://github.com/aio-libs/aiohttp/issues/3376>`_
- Updated the docs so there is no contradiction in ``ttl_dns_cache`` default value
  `#3512 <https://github.com/aio-libs/aiohttp/issues/3512>`_
- Add 'Deploy with SSL' to docs.
  `#4201 <https://github.com/aio-libs/aiohttp/issues/4201>`_
- Change typing of the secure argument on StreamResponse.set_cookie from ``Optional[str]`` to ``Optional[bool]``
  `#4204 <https://github.com/aio-libs/aiohttp/issues/4204>`_
- Changes ``ttl_dns_cache`` type from int to Optional[int].
  `#4270 <https://github.com/aio-libs/aiohttp/issues/4270>`_
- Simplify README hello word example and add a documentation page for people coming from requests.
  `#4272 <https://github.com/aio-libs/aiohttp/issues/4272>`_
- Improve some code examples in the documentation involving websockets and starting a simple HTTP site with an AppRunner.
  `#4285 <https://github.com/aio-libs/aiohttp/issues/4285>`_
- Fix typo in code example in Multipart docs
  `#4312 <https://github.com/aio-libs/aiohttp/issues/4312>`_
- Fix code example in Multipart section.
  `#4314 <https://github.com/aio-libs/aiohttp/issues/4314>`_
- Update contributing guide so new contributors read the most recent version of that guide. Update command used to create test coverage reporting.
  `#4810 <https://github.com/aio-libs/aiohttp/issues/4810>`_
- Spelling: Change "canonize" to "canonicalize".
  `#4986 <https://github.com/aio-libs/aiohttp/issues/4986>`_
- Add ``aiohttp-sse-client`` library to third party usage list.
  `#5084 <https://github.com/aio-libs/aiohttp/issues/5084>`_


Misc
----

- `#2856 <https://github.com/aio-libs/aiohttp/issues/2856>`_, `#4218 <https://github.com/aio-libs/aiohttp/issues/4218>`_, `#4250 <https://github.com/aio-libs/aiohttp/issues/4250>`_
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.42 2020/10/13 09:05:40 adam Exp $
d5 1
d19 1
a31 1
DEPENDS+=	${PYPKGPREFIX}-typing-extensions>=3.6.5:../../devel/py-typing-extensions
@


1.42
log
@py-aiohttp: updated to 3.6.3

3.6.3:
Bugfixes
- Pin yarl to ``<1.6.0`` to avoid buggy behavior that will be fixed by the next aiohttp
  release.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.41 2019/10/10 07:53:06 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.6.3
d14 4
a17 4
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
@


1.41
log
@py-aiohttp: updated to 3.6.2

3.6.2:
Features
- Made exceptions pickleable. Also changed the repr of some exceptions.
- Use Iterable type hint instead of Sequence for Application *middleware*
  parameter.

Bugfixes
- Reset the sock_read timeout each time data is received for a
  aiohttp.ClientResponse.
- Fix handling of expired cookies so they are not stored in CookieJar.
- Fix misleading message in the string representation of ClientConnectorError;
  self.ssl == None means default SSL context, not SSL disabled
- Don't clobber HTTP status when using FileResponse.

Improved Documentation
- Added minimal required logging configuration to logging documentation.
- Update docs to reflect proxy support.
- Fix typo in code example in testing docs.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.40 2019/10/04 11:17:57 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.6.2
@


1.40
log
@py-aiohttp: updated to 3.6.1

3.6.1:

Features
- Compatibility with Python 3.8.

Bugfixes
- correct some exception string format
- Emit a warning when ``ssl.OP_NO_COMPRESSION`` is
  unavailable because the runtime is built against
  an outdated OpenSSL.
- Update multidict requirement to >= 4.5

Improved Documentation
- Provide pytest-aiohttp namespace for pytest fixtures in docs.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.39 2019/09/07 07:09:27 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.6.1
d28 1
a28 1
.if ${_PYTHON_VERSION} != 37
@


1.39
log
@py-aiohttp: updated to 3.6.0

3.6.0:
Features
- Add support for Named Pipes (Site and Connector) under Windows. This feature requires Proactor event loop to work.
- Removed `Transfer-Encoding: chunked` header from websocket responses to be compatible with more http proxy servers.
- Accept non-GET request for starting websocket handshake on server side.

Bugfixes
- Raise a ClientResponseError instead of an AssertionError for a blank
  HTTP Reason Phrase.
- Fix an issue where cookies would sometimes not be set during a redirect.
- 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.
- 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()``.
- ``Signal`` type annotation changed from `Signal[Callable[['TraceConfig'], Awaitable[None]]]` to `Signal[Callable[ClientSession, SimpleNamespace, ...]`.
- Use sanitized URL as Location header in redirects
- Improve typing annotations for multipart.py along with changes required
  by mypy in files that references multipart.py.
- Close session created inside ``aiohttp.request`` when unhandled exception occurs
- Cleanup per-chunk data in generic data read. Memory leak fixed.
- Use correct type for add_view and family
- Fix _keepalive field in __slots__ of web_protocol.RequestHandler.
- Properly handle ConnectionResetError, to silence the "Cannot write to closing
  transport" exception when clients disconnect uncleanly.
- Suppress pytest warnings due to test util classes
- Fix overshadowing of overlapped subbaps prefixes.
- Fixed return type annotation for WSMessage.json()
- Properly expose TooManyRedirects publicly as documented.
- Fix missing brackets for IPv6 in proxy CONNECT request
- Make the signature of `aiohttp.test_utils.TestClient.request` match `asyncio.ClientSession.request` according to the docs
- Use correct style for re-exported imports, makes mypy ``--strict`` mode happy.
- Fixed type annotation for add_view method of UrlDispatcher to accept any subclass of View
- Made cython HTTP parser set Reason-Phrase of the response to an empty string if it is missing.
- Add URL to the string representation of ClientResponseError.
- Accept istr keys in LooseHeaders type hints.
- Fixed race conditions in _resolve_host caching and throttling when tracing is enabled.
- For URLs like "unix://localhost/..." set Host HTTP header to "localhost" instead of "localhost:None".
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.38 2019/04/26 13:14:20 maya Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.6.0
d16 1
a16 1
DEPENDS+=	${PYPKGPREFIX}-multidict>=4.0:../../databases/py-multidict
@


1.38
log
@Omit mentions of python 34 and 35, after those were removed.

- Includes some whitespace changes, to be handled in a separate commit.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.37 2019/01/15 22:12:20 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.5.4
@


1.37
log
@py-aiohttp: updated to 3.5.4

3.5.4:
Bugfixes
- Fix stream .read() / .readany() / .iter_any() which used to return a
  partial content only in case of compressed content
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.36 2019/01/11 10:11:42 adam Exp $
d25 1
a25 1
PYTHON_VERSIONS_INCOMPATIBLE=	27 34
@


1.36
log
@py-aiohttp: updated to 3.5.3

3.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.
- Fix aiohttp.ClientTimeout type annotations to accept None for fields
- Send custom per-request cookies even if session jar is empty
- Restore Linux binary wheels publishing on PyPI
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.35 2019/01/08 19:05:55 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.5.3
@


1.35
log
@py-aiohttp: updated to 3.5.2

3.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.
- Internal Server Errors in plain text if the browser does not support HTML.

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.
- Log suppressed exceptions in GunicornWebWorker.
- Remove wildcard imports.
- Use the same task for app initialization and web server handling in gunicorn workers.
  It allows to use Python3.7 context vars smoothly.
- Fix handling of chunked+gzipped response when first chunk does not give uncompressed data
- Replace collections.MutableMapping with collections.abc.MutableMapping to avoid a deprecation warning.
- Payload.size type annotation changed from Optional[float] to Optional[int].
- Ignore done tasks when cancels pending activities on web.run_app finalization.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.34 2018/12/31 11:19:16 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.5.2
@


1.34
log
@py-aiohttp: updated to 3.5.1

3.5.1
- Fix a regression about ClientSession._requote_redirect_url modification in debug
  mode.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.33 2018/12/22 22:45:47 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.5.1
@


1.33
log
@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.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.32 2018/09/06 13:53:16 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.5.0
d21 1
d23 1
@


1.32
log
@py-aiohttp: updated to 3.4.4

3.4.4:
Fix installation from sources when compiling toolkit is not available

3.4.3:
Add app.pre_frozen state to properly handle startup signals in sub-applications.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.31 2018/09/03 07:32:35 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.4.4
d28 1
d31 1
@


1.31
log
@py-aiohttp: updated to 3.4.2

3.4.2:
Fix iter_chunks type annotation
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.30 2018/08/29 07:01:06 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.4.2
@


1.30
log
@py-aiohttp: updated to 3.4.1

3.4.1:
- Fix empty header parsing regression.
- Fix BaseRequest.raw_headers doc.
- Fix documentation building on ReadTheDocs
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.29 2018/08/28 06:27:09 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.4.1
d26 1
a26 1
.if ${_PYTHON_VERSION} < 37
@


1.29
log
@py-aiohttp: rearrange PYTHON_VERSIONS_INCOMPATIBLE
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.28 2018/08/27 11:16:01 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.4.0
@


1.28
log
@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().
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.27 2018/06/12 15:28:53 adam Exp $
d23 2
a29 2
PYTHON_VERSIONS_INCOMPATIBLE=	27 34

@


1.27
log
@py-aiohttp: updated to 3.3.2

3.3.2:
- Many HTTP proxies has buggy keepalive support. Let's not reuse connection but
  close it after processing every response.
- Provide vendor source files in tarball


3.3.1:
- 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.


3.3.0:
Features
- Raise ConnectionResetError instead of CancelledError on trying to
  write to a closed stream.
- Implement ClientTimeout class and support socket read timeout.
- Enable logging when aiohttp.web is used as a program
- Add canonical property to resources
- Forbid reading response BODY after release
- Implement base protocol class to avoid a dependency from internal
  asyncio.streams.FlowControlMixin
- Cythonize @@helpers.reify, 5% boost on macro benchmark
- Optimize HTTP parser
- Implement runner.addresses property.
- Use bytearray instead of a list of bytes in websocket reader. It
  improves websocket message reading a little.
- Remove heartbeat on closing connection on keepalive timeout. The used hack
  violates HTTP protocol.
- Limit websocket message size on reading to 4 MB by default.

Bugfixes
- Don't reuse a connection with the same URL but different proxy/TLS settings
- When parsing the Forwarded header, the optional port number is now preserved.

Improved Documentation
- Make Change Log more visible in docs
- Make style and grammar improvements on the FAQ page.
- Document that signal handlers should be async functions since aiohttp 3.0

Deprecations and Removals
- Deprecate custom application's router.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.26 2018/05/11 10:04:41 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.3.2
d13 1
a13 1
DEPENDS+=	${PYPKGPREFIX}-async-timeout>=1.2.0:../../devel/py-async-timeout
a15 1
DEPENDS+=	${PYPKGPREFIX}-idna-ssl>=1.0:../../www/py-idna_ssl
d23 5
@


1.26
log
@py-aiohttp: updated to 3.2.1

3.2.1:
Don’t reuse a connection with the same URL but different proxy/TLS settings
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.25 2018/05/08 04:54:10 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.2.1
@


1.25
log
@py-aiohttp: updated to 3.2.0

3.2.0

Features
Raise TooManyRedirects exception when client gets redirected too many times instead of returning last response.
Extract route definitions into separate web_routedef.py file
Raise an exception on request body reading after sending response.
ClientResponse and RequestInfo now have real_url property, which is request url without fragment part being stripped
Speed up connector limiting
Added and links property for ClientResponse object
Add request.config_dict for exposing nested applications data.
Speed up HTTP headers serialization, server micro-benchmark runs 5% faster now.
Apply assertions in debug mode only

Bugfixes
expose property app for TestClient
Call on_chunk_sent when write_eof takes as a param the last chunk
A closing bracket was added to __repr__ of resources
Fix compression of FileResponse
Fixes some bugs in the limit connection feature

Improved Documentation
Drop async_timeout usage from documentation for client API in favor of timeout parameter.
Improve Gunicorn logging documentation
Replace multipart writer .serialize() method with .write() in documentation.

Deprecations and Removals
Deprecate Application.make_handler()
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.24 2018/04/13 11:14:48 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.2.0
@


1.24
log
@py-aiohttp: updated to 3.1.3

3.1.3:
Fix cancellation broadcast during DNS resolve
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.23 2018/04/06 08:18:18 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.1.3
d19 1
@


1.23
log
@py-aiohttp: updated to 3.1.2

3.1.2:
Make LineTooLong exception more detailed about actual data size
Call on_chunk_sent when write_eof takes as a param the last chunk
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.22 2018/04/02 12:58:33 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.1.2
@


1.22
log
@py-aiohttp: updated to 3.1.1

3.1.1:
Support asynchronous iterators (and asynchronous generators as well) in both client and server API as request / response BODY payloads.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.21 2018/03/22 08:02:35 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.1.1
@


1.21
log
@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.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.20 2018/03/15 09:29:09 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.1.0
@


1.20
log
@py-aiohttp: updated to 3.0.9

3.0.9:
Close a connection if an unexpected exception occurs while sending a request
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.19 2018/03/13 11:46:13 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.0.9
d19 3
a21 3
BUILD_DEPENDS+=	${PYPKGPREFIX}-gunicorn-[0-9]*:../../www/py-gunicorn
BUILD_DEPENDS+=	${PYPKGPREFIX}-test-[0-9]*:../../devel/py-test
BUILD_DEPENDS+=	${PYPKGPREFIX}-test-timeout-[0-9]*:../../devel/py-test-timeout
@


1.19
log
@py-aiohttp: updated to 3.0.8

3.0.8:
Use asyncio.current_task() on Python 3.7
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.18 2018/03/09 08:10:35 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.0.8
@


1.18
log
@py-aiohttp: updated to 3.0.7

3.0.7:
Fix SSL proxy support by client.
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.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.17 2018/03/05 09:12:20 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.0.7
d9 1
a9 1
HOMEPAGE=	https://github.com/aio-libs/aiohttp/
d16 1
a16 1
DEPENDS+=	${PYPKGPREFIX}-idna_ssl>=1.0:../../www/py-idna_ssl
@


1.17
log
@py-aiohttp: updated to 3.0.6

3.0.6:
Add _reuse_address and _reuse_port to web_runner.TCPSite.__slots__.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.16 2018/02/28 13:38:00 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.0.6
@


1.16
log
@py-aiohttp: updated to 3.0.5

3.0.5:
Fix InvalidStateError on processing a sequence of two RequestHandler.data_received calls on web server.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.15 2018/02/27 06:35:45 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.0.5
@


1.15
log
@py-aiohttp: updated to 3.0.4

3.0.4:
Fix IndexError in HTTP request handling by server.
Fix MultipartWriter.append* no longer returning part/payload.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.14 2018/02/25 22:04:55 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.0.4
@


1.14
log
@py-aiohttp: updated to 3.0.3

3.0.2:
Security Fix
Prevent Windows absolute URLs in static files. Paths like /static/D:\path and /static/\\hostname\drive\path are forbidden.

3.0.1:
Technical release for fixing distribution problems.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.13 2018/02/14 11:31:04 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.0.3
@


1.13
log
@py-aiohttp: updated to 3.0.1

aiohttp 3.0 release:
Major release, many already deprecated things are removed
Minimal supported Python version is 3.5.3.
aiohttp uses shiny async/await syntax everywhere internally (while old yield from is still supported).

Read https://docs.aiohttp.org/en/stable/whats_new_3_0.html for brief information about most important changes.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.12 2018/02/05 16:39:47 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-3.0.1
@


1.12
log
@py-aiohttp: updated to version 2.3.10

2.3.10:
- Fix 100% CPU usage on HTTP GET and websocket connection just after it
- Patch broken `ssl.match_hostname()` on Python<3.7
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.11 2018/01/18 10:29:54 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-2.3.10
d14 5
a18 4
DEPENDS+=	${PYPKGPREFIX}-chardet-[0-9]*:../../converters/py-chardet
DEPENDS+=	${PYPKGPREFIX}-idna_ssl>=1.0.0:../../www/py-idna_ssl
DEPENDS+=	${PYPKGPREFIX}-multidict>=3.0.0:../../databases/py-multidict
DEPENDS+=	${PYPKGPREFIX}-yarl>=0.11:../../www/py-yarl
d23 1
a23 1
PYTHON_VERSIONS_INCOMPATIBLE=	27
@


1.11
log
@py-aiohttp: updated to 2.3.9

2.3.9:
Fix colon handing in path for dynamic resources
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.10 2018/01/17 08:37:35 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-2.3.9
d13 1
d15 1
a16 1
DEPENDS+=	${PYPKGPREFIX}-async-timeout>=1.2.0:../../devel/py-async-timeout
@


1.10
log
@py-aiohttp: updated to 2.3.8

2.3.8:
Do not use yarl.unquote internal function in aiohttp. Fix incorrectly unquoted path part in URL dispatcher
Fix compatibility with yarl==1.0.0
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.9 2017/12/30 09:16:43 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-2.3.8
@


1.9
log
@py-aiohttp: updated to 2.3.7

2.3.7:
Fixed race-condition for iterating addresses from the DNSCache.
Fix docstring for request.host
Fix docstring for request.remote
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.8 2017/12/06 11:44:22 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-2.3.7
@


1.8
log
@py-aiohttp: updated to 2.3.6

2.3.6:
Correct request.app context (for handlers not just middlewares).
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.7 2017/11/30 07:57:59 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-2.3.6
@


1.7
log
@py-aiohttp: updated to 2.3.5

2.3.5:
Fix compatibility with pytest 3.3+

2.3.4:
Make request.app point to proper application instance when using nested applications (with middlewares).
Change base class of ClientConnectorSSLError to ClientSSLError from ClientConnectorError.
Return client connection back to free pool on error in connector.connect().
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.6 2017/11/22 08:48:39 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-2.3.5
@


1.6
log
@py-aiohttp: updated to 2.3.3

2.3.3:
Having a ; in Response content type does not assume it contains a charset anymore.
Use getattr(asyncio, ‘async’) for keeping compatibility with Python 3.7.
Ignore NotImplementedError raised by set_child_watcher from uvloop.
Fix warning in ClientSession.__del__ by stopping to try to close it.
Fixed typo’s in Third-party libraries page. And added async-v20 to the list
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.5 2017/11/02 13:13:24 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-2.3.3
@


1.5
log
@py-aiohttp: updated to 2.3.2

2.3.2:
Fix passing client max size on cloning request obj.
Fix ClientConnectorSSLError and ClientProxyConnectionError for proxy connector.
Drop generated _http_parser shared object from tarball distribution.
Fix connector convert OSError to ClientConnectorError.
Fix connection attempts for multiple dns hosts.
Fix ValueError for AF_INET6 sockets if a preexisting INET6 socket to the aiohttp.web.run_app function.
_SessionRequestContextManager closes the session properly now.
Rename from_env to trust_env in client reference.

2.3.1:
Relax attribute lookup in warning about old-styled middleware
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.4 2017/10/19 06:54:18 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-2.3.2
@


1.4
log
@py-aiohttp: update to 2.3.0

2.3.0:
Features
--------
Add SSL related params to ClientSession.request
Make enable_compression work on HTTP/1.0
Deprecate registering synchronous web handlers
Switch to multidict 3.0. All HTTP headers preserve casing now but compared in case-insensitive way.
Improvement for normalize_path_middleware. Added possibility to handle URLs with query string.
Use towncrier for CHANGES.txt build
Implement trust_env=True param in ClientSession.
Added variable to customize proxy headers
Implement router.add_routes and router decorators.
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
Provide BaseRequest.loop attribute
Make _CoroGuard awaitable and fix ClientSession.close warning message
Responses to redirects without Location header are returned instead of raising a RuntimeError
Added get_client, get_server, setUpAsync and tearDownAsync methods to AioHTTPTestCase
Add automatically a SafeChildWatcher to the test loop
add ability to disable automatic response decompression
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.
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.
json() raises a ContentTypeError exception if the content-type does not meet the requirements instead of raising a generic ClientResponseError.
Make the HTTP client able to return HTTP chunks when chunked transfer encoding is used.
add append_version arg into StaticResource.url and StaticResource.url_for methods for getting an url with hash (version) of the file.
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).
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.
Accept coroutine fixtures in pytest plugin
Call shutdown_asyncgens before event loop closing on Python 3.6.
Speed up Signals when there are no receivers
Raise InvalidURL instead of ValueError on fetches with invalid URL.
Move DummyCookieJar into cookiejar.py
run_app: Make print=None disable printing
Support brotli encoding (generic-purpose lossless compression algorithm)
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.
Support verify_ssl, fingerprint, ssl_context and proxy_headers by client.ws_connect.
Added aiohttp.ClientConnectorSSLError when connection fails due ssl.SSLError
aiohttp.web.Application.make_handler support access_log_class
Build HTTP parser extension in non-strict mode by default.

Bugfixes
--------
Clear auth information on redirecting to other domain
Fix missing app.loop on startup hooks during tests
Fix issue with synchronous session closing when using ClientSession as an asynchronous context manager.
Fix issue with CookieJar incorrectly expiring cookies in some edge cases.
Force use of IPv4 during test, this will make tests run in a Docker container
Warnings about unawaited coroutines now correctly point to the user’s code.
Fix issue with IndexError being raised by the StreamReader.iter_chunks() generator.
Support HTTP 308 Permanent redirect in client class.
Fix FileResponse sending empty chunked body on 304.
Do not add Content-Length: 0 to GET/HEAD/TRACE/OPTIONS requests by default.
Fix parsing the Forwarded header according to RFC 7239.
Securely determining remote/scheme/host
Fix header name parsing, if name is split into multiple lines
Handle session close during connection, KeyError: <aiohttp.connector._TransportPlaceholder>
Fixes uncaught TypeError in helpers.guess_filename if name is not a string
Raise OSError on async DNS lookup if resolved domain is an alias for another one, which does not have an A or CNAME record.
Fix incorrect warning in StreamReader.
Properly clone state of web request
Fix C HTTP parser for cases when status line is split into different TCP packets.
Fix web.FileResponse overriding user supplied Content-Type
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.3 2017/08/04 05:24:49 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-2.3.0
a22 2
USE_LANGUAGES=		c

@


1.3
log
@2.2.5:
Don’t raise deprecation warning on loop.run_until_complete(client.close())
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.2 2017/08/03 07:46:12 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-2.2.5
d14 1
a14 1
DEPENDS+=	${PYPKGPREFIX}-multidict>=2.1.4:../../databases/py-multidict
d17 1
d19 1
@


1.2
log
@2.2.4:
Fix issue with synchronous session closing when using ClientSession as an asynchronous context manager.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.1 2017/07/16 19:04:16 adam Exp $
d3 1
a3 1
DISTNAME=	aiohttp-2.2.4
@


1.1
log
@HTTP client/server for asyncio (PEP 3156).

Features:
* Supports both Client and HTTP Server.
* Supports both Server WebSockets and Client WebSockets out-of-the-box.
* Web-server has Middlewares, Signals and pluggable routing.
@
text
@d1 1
a1 1
# $NetBSD$
d3 1
a3 1
DISTNAME=	aiohttp-2.2.3
@

