Wed Feb 10 08:26:31 2021 UTC ()
py-asyncpg: updated to 0.22.0

v0.22.0

A new asyncpg release is here.

Notable additions include Python 3.9 support, support for recently added
PostgreSQL types like jsonpath, and last but not least, vastly
improved executemany() performance. Importantly, executemany() is
also now atomic, which means that either all iterations succeed, or
none at all, whereas previously partial results would have remained in
place, unless executemany() was called in a transaction.

There is also the usual assortment of improvements and bugfixes, see the
details below.

This is the last release of asyncpg that supports Python 3.5, which has
reached EOL last September.

Improvements

Vastly speedup executemany by batching protocol messages
Allow using custom Record class
Add Python 3.9 support
Prefer SSL connections by default
Add codecs for a bunch of new builtin types
Expose Pool as asyncpg.Pool
Avoid unnecessary overhead during connection reset


(adam)
diff -r1.15 -r1.16 pkgsrc/databases/py-asyncpg/Makefile
diff -r1.8 -r1.9 pkgsrc/databases/py-asyncpg/PLIST
diff -r1.13 -r1.14 pkgsrc/databases/py-asyncpg/distinfo

cvs diff -r1.15 -r1.16 pkgsrc/databases/py-asyncpg/Makefile (expand / switch to unified diff)

--- pkgsrc/databases/py-asyncpg/Makefile 2020/08/10 06:11:17 1.15
+++ pkgsrc/databases/py-asyncpg/Makefile 2021/02/10 08:26:31 1.16
@@ -1,23 +1,28 @@ @@ -1,23 +1,28 @@
1# $NetBSD: Makefile,v 1.15 2020/08/10 06:11:17 adam Exp $ 1# $NetBSD: Makefile,v 1.16 2021/02/10 08:26:31 adam Exp $
2 2
3DISTNAME= asyncpg-0.21.0 3DISTNAME= asyncpg-0.22.0
4PKGNAME= ${PYPKGPREFIX}-${DISTNAME} 4PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
5CATEGORIES= databases python 5CATEGORIES= databases python
6MASTER_SITES= ${MASTER_SITE_PYPI:=a/asyncpg/} 6MASTER_SITES= ${MASTER_SITE_PYPI:=a/asyncpg/}
7 7
8MAINTAINER= pkgsrc-users@NetBSD.org 8MAINTAINER= pkgsrc-users@NetBSD.org
9HOMEPAGE= https://github.com/MagicStack/asyncpg 9HOMEPAGE= https://github.com/MagicStack/asyncpg
10COMMENT= Asyncio PosgtreSQL driver 10COMMENT= Asyncio PosgtreSQL driver
11LICENSE= apache-2.0 11LICENSE= apache-2.0
12 12
13TEST_DEPENDS+= ${PYPKGPREFIX}-codestyle>=2.5.0:../../devel/py-codestyle 13TEST_DEPENDS+= ${PYPKGPREFIX}-codestyle>=2.5.0:../../devel/py-codestyle
14TEST_DEPENDS+= ${PYPKGPREFIX}-flake8>=3.7.9:../../devel/py-flake8 14TEST_DEPENDS+= ${PYPKGPREFIX}-flake8>=3.7.9:../../devel/py-flake8
15TEST_DEPENDS+= ${PYPKGPREFIX}-uvloop>=0.14.0:../../devel/py-uvloop 15TEST_DEPENDS+= ${PYPKGPREFIX}-uvloop>=0.14.0:../../devel/py-uvloop
16 16
 17.include "../../lang/python/pyversion.mk"
 18.if ${_PYTHON_VERSION} < 38
 19DEPENDS+= ${PYPKGPREFIX}-typing-extensions>=3.7.4.3:../../devel/py-typing-extensions
 20.endif
 21
17PYTHON_VERSIONS_INCOMPATIBLE= 27 22PYTHON_VERSIONS_INCOMPATIBLE= 27
18 23
19# Testing requires postgresql-contrib 24# Testing requires postgresql-contrib
20 25
21.include "../../devel/py-cython/buildlink3.mk" 26.include "../../devel/py-cython/buildlink3.mk"
22.include "../../lang/python/egg.mk" 27.include "../../lang/python/egg.mk"
23.include "../../mk/bsd.pkg.mk" 28.include "../../mk/bsd.pkg.mk"

cvs diff -r1.8 -r1.9 pkgsrc/databases/py-asyncpg/PLIST (expand / switch to unified diff)

--- pkgsrc/databases/py-asyncpg/PLIST 2019/11/22 09:32:37 1.8
+++ pkgsrc/databases/py-asyncpg/PLIST 2021/02/10 08:26:31 1.9
@@ -1,29 +1,32 @@ @@ -1,29 +1,32 @@
1@comment $NetBSD: PLIST,v 1.8 2019/11/22 09:32:37 adam Exp $ 1@comment $NetBSD: PLIST,v 1.9 2021/02/10 08:26:31 adam Exp $
2${PYSITELIB}/${EGG_INFODIR}/PKG-INFO 2${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
3${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt 3${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
4${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt 4${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
5${PYSITELIB}/${EGG_INFODIR}/not-zip-safe 5${PYSITELIB}/${EGG_INFODIR}/not-zip-safe
6${PYSITELIB}/${EGG_INFODIR}/requires.txt 6${PYSITELIB}/${EGG_INFODIR}/requires.txt
7${PYSITELIB}/${EGG_INFODIR}/top_level.txt 7${PYSITELIB}/${EGG_INFODIR}/top_level.txt
8${PYSITELIB}/asyncpg/__init__.py 8${PYSITELIB}/asyncpg/__init__.py
9${PYSITELIB}/asyncpg/__init__.pyc 9${PYSITELIB}/asyncpg/__init__.pyc
10${PYSITELIB}/asyncpg/__init__.pyo 10${PYSITELIB}/asyncpg/__init__.pyo
11${PYSITELIB}/asyncpg/_testbase/__init__.py 11${PYSITELIB}/asyncpg/_testbase/__init__.py
12${PYSITELIB}/asyncpg/_testbase/__init__.pyc 12${PYSITELIB}/asyncpg/_testbase/__init__.pyc
13${PYSITELIB}/asyncpg/_testbase/__init__.pyo 13${PYSITELIB}/asyncpg/_testbase/__init__.pyo
14${PYSITELIB}/asyncpg/_testbase/fuzzer.py 14${PYSITELIB}/asyncpg/_testbase/fuzzer.py
15${PYSITELIB}/asyncpg/_testbase/fuzzer.pyc 15${PYSITELIB}/asyncpg/_testbase/fuzzer.pyc
16${PYSITELIB}/asyncpg/_testbase/fuzzer.pyo 16${PYSITELIB}/asyncpg/_testbase/fuzzer.pyo
 17${PYSITELIB}/asyncpg/_version.py
 18${PYSITELIB}/asyncpg/_version.pyc
 19${PYSITELIB}/asyncpg/_version.pyo
17${PYSITELIB}/asyncpg/cluster.py 20${PYSITELIB}/asyncpg/cluster.py
18${PYSITELIB}/asyncpg/cluster.pyc 21${PYSITELIB}/asyncpg/cluster.pyc
19${PYSITELIB}/asyncpg/cluster.pyo 22${PYSITELIB}/asyncpg/cluster.pyo
20${PYSITELIB}/asyncpg/compat.py 23${PYSITELIB}/asyncpg/compat.py
21${PYSITELIB}/asyncpg/compat.pyc 24${PYSITELIB}/asyncpg/compat.pyc
22${PYSITELIB}/asyncpg/compat.pyo 25${PYSITELIB}/asyncpg/compat.pyo
23${PYSITELIB}/asyncpg/connect_utils.py 26${PYSITELIB}/asyncpg/connect_utils.py
24${PYSITELIB}/asyncpg/connect_utils.pyc 27${PYSITELIB}/asyncpg/connect_utils.pyc
25${PYSITELIB}/asyncpg/connect_utils.pyo 28${PYSITELIB}/asyncpg/connect_utils.pyo
26${PYSITELIB}/asyncpg/connection.py 29${PYSITELIB}/asyncpg/connection.py
27${PYSITELIB}/asyncpg/connection.pyc 30${PYSITELIB}/asyncpg/connection.pyc
28${PYSITELIB}/asyncpg/connection.pyo 31${PYSITELIB}/asyncpg/connection.pyo
29${PYSITELIB}/asyncpg/connresource.py 32${PYSITELIB}/asyncpg/connresource.py
@@ -47,40 +50,38 @@ ${PYSITELIB}/asyncpg/pgproto/__init__.py @@ -47,40 +50,38 @@ ${PYSITELIB}/asyncpg/pgproto/__init__.py
47${PYSITELIB}/asyncpg/pgproto/__init__.pyo 50${PYSITELIB}/asyncpg/pgproto/__init__.pyo
48${PYSITELIB}/asyncpg/pgproto/buffer.pxd 51${PYSITELIB}/asyncpg/pgproto/buffer.pxd
49${PYSITELIB}/asyncpg/pgproto/buffer.pyx 52${PYSITELIB}/asyncpg/pgproto/buffer.pyx
50${PYSITELIB}/asyncpg/pgproto/codecs/__init__.pxd 53${PYSITELIB}/asyncpg/pgproto/codecs/__init__.pxd
51${PYSITELIB}/asyncpg/pgproto/codecs/bits.pyx 54${PYSITELIB}/asyncpg/pgproto/codecs/bits.pyx
52${PYSITELIB}/asyncpg/pgproto/codecs/bytea.pyx 55${PYSITELIB}/asyncpg/pgproto/codecs/bytea.pyx
53${PYSITELIB}/asyncpg/pgproto/codecs/context.pyx 56${PYSITELIB}/asyncpg/pgproto/codecs/context.pyx
54${PYSITELIB}/asyncpg/pgproto/codecs/datetime.pyx 57${PYSITELIB}/asyncpg/pgproto/codecs/datetime.pyx
55${PYSITELIB}/asyncpg/pgproto/codecs/float.pyx 58${PYSITELIB}/asyncpg/pgproto/codecs/float.pyx
56${PYSITELIB}/asyncpg/pgproto/codecs/geometry.pyx 59${PYSITELIB}/asyncpg/pgproto/codecs/geometry.pyx
57${PYSITELIB}/asyncpg/pgproto/codecs/hstore.pyx 60${PYSITELIB}/asyncpg/pgproto/codecs/hstore.pyx
58${PYSITELIB}/asyncpg/pgproto/codecs/int.pyx 61${PYSITELIB}/asyncpg/pgproto/codecs/int.pyx
59${PYSITELIB}/asyncpg/pgproto/codecs/json.pyx 62${PYSITELIB}/asyncpg/pgproto/codecs/json.pyx
 63${PYSITELIB}/asyncpg/pgproto/codecs/jsonpath.pyx
60${PYSITELIB}/asyncpg/pgproto/codecs/misc.pyx 64${PYSITELIB}/asyncpg/pgproto/codecs/misc.pyx
61${PYSITELIB}/asyncpg/pgproto/codecs/network.pyx 65${PYSITELIB}/asyncpg/pgproto/codecs/network.pyx
62${PYSITELIB}/asyncpg/pgproto/codecs/numeric.pyx 66${PYSITELIB}/asyncpg/pgproto/codecs/numeric.pyx
 67${PYSITELIB}/asyncpg/pgproto/codecs/pg_snapshot.pyx
63${PYSITELIB}/asyncpg/pgproto/codecs/text.pyx 68${PYSITELIB}/asyncpg/pgproto/codecs/text.pyx
64${PYSITELIB}/asyncpg/pgproto/codecs/tid.pyx 69${PYSITELIB}/asyncpg/pgproto/codecs/tid.pyx
65${PYSITELIB}/asyncpg/pgproto/codecs/txid.pyx 
66${PYSITELIB}/asyncpg/pgproto/codecs/uuid.pyx 70${PYSITELIB}/asyncpg/pgproto/codecs/uuid.pyx
67${PYSITELIB}/asyncpg/pgproto/consts.pxi 71${PYSITELIB}/asyncpg/pgproto/consts.pxi
68${PYSITELIB}/asyncpg/pgproto/cpythonx.pxd 72${PYSITELIB}/asyncpg/pgproto/cpythonx.pxd
69${PYSITELIB}/asyncpg/pgproto/debug.h 73${PYSITELIB}/asyncpg/pgproto/debug.h
70${PYSITELIB}/asyncpg/pgproto/debug.pxd 74${PYSITELIB}/asyncpg/pgproto/debug.pxd
71${PYSITELIB}/asyncpg/pgproto/exceptions.py 
72${PYSITELIB}/asyncpg/pgproto/exceptions.pyc 
73${PYSITELIB}/asyncpg/pgproto/exceptions.pyo 
74${PYSITELIB}/asyncpg/pgproto/frb.pxd 75${PYSITELIB}/asyncpg/pgproto/frb.pxd
75${PYSITELIB}/asyncpg/pgproto/frb.pyx 76${PYSITELIB}/asyncpg/pgproto/frb.pyx
76${PYSITELIB}/asyncpg/pgproto/hton.h 77${PYSITELIB}/asyncpg/pgproto/hton.h
77${PYSITELIB}/asyncpg/pgproto/hton.pxd 78${PYSITELIB}/asyncpg/pgproto/hton.pxd
78${PYSITELIB}/asyncpg/pgproto/pgproto.c 79${PYSITELIB}/asyncpg/pgproto/pgproto.c
79${PYSITELIB}/asyncpg/pgproto/pgproto.pxd 80${PYSITELIB}/asyncpg/pgproto/pgproto.pxd
80${PYSITELIB}/asyncpg/pgproto/pgproto.pyx 81${PYSITELIB}/asyncpg/pgproto/pgproto.pyx
81${PYSITELIB}/asyncpg/pgproto/pgproto.so 82${PYSITELIB}/asyncpg/pgproto/pgproto.so
82${PYSITELIB}/asyncpg/pgproto/tohex.h 83${PYSITELIB}/asyncpg/pgproto/tohex.h
83${PYSITELIB}/asyncpg/pgproto/tohex.pxd 84${PYSITELIB}/asyncpg/pgproto/tohex.pxd
84${PYSITELIB}/asyncpg/pgproto/types.py 85${PYSITELIB}/asyncpg/pgproto/types.py
85${PYSITELIB}/asyncpg/pgproto/types.pyc 86${PYSITELIB}/asyncpg/pgproto/types.pyc
86${PYSITELIB}/asyncpg/pgproto/types.pyo 87${PYSITELIB}/asyncpg/pgproto/types.pyo

cvs diff -r1.13 -r1.14 pkgsrc/databases/py-asyncpg/distinfo (expand / switch to unified diff)

--- pkgsrc/databases/py-asyncpg/distinfo 2020/08/10 06:11:17 1.13
+++ pkgsrc/databases/py-asyncpg/distinfo 2021/02/10 08:26:31 1.14
@@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
1$NetBSD: distinfo,v 1.13 2020/08/10 06:11:17 adam Exp $ 1$NetBSD: distinfo,v 1.14 2021/02/10 08:26:31 adam Exp $
2 2
3SHA1 (asyncpg-0.21.0.tar.gz) = 2f50e1fb61bac4a45b5b468d40b083185e2de507 3SHA1 (asyncpg-0.22.0.tar.gz) = 2154d1ceee5dd7bcd35d7dfa08acacb634486d8c
4RMD160 (asyncpg-0.21.0.tar.gz) = 6d1176c2f2a5c8bf87fc582421b73ddb79711339 4RMD160 (asyncpg-0.22.0.tar.gz) = ecf628bf520845e28fb372275a0ef62a711bdecb
5SHA512 (asyncpg-0.21.0.tar.gz) = 8bfd6689008ea964ac66d1c141bddd749f50d928b6cbc5e059f0e1d0a3597213ccae0b2fa7d694bf4e40c0b2650c445d2c54040a076ba69509e508bf51de2970 5SHA512 (asyncpg-0.22.0.tar.gz) = b953290e10ea408ad67ac28f394bb3aaf84c4e42d136f0af9e2f7befcf03e34faf46ef1806c98099453028963142a6e3bce63ff3cbe118b2026744de2103eb37
6Size (asyncpg-0.21.0.tar.gz) = 746782 bytes 6Size (asyncpg-0.22.0.tar.gz) = 770278 bytes