APSW 3.43.1.0 Released

4 views
Skip to first unread message

Roger Binns

unread,
Sep 13, 2023, 7:05:48 PM9/13/23
to python...@googlegroups.com
APSW 3.43.1.0 is now available. The project is at
https://github.com/rogerbinns/apsw which includes full documentation,
source, installation information and more.

APSW is a wrapper around SQLite that provides all SQLite API
functionality in Python. It is not DBAPI compliant as it provides SQLite
semantics. sqlite3 provides DBAPI semantics. You can see the two
approaches contrasted at https://rogerbinns.github.io/apsw/pysqlite.html

Changelist is below and at https://rogerbinns.github.io/apsw/changes.html

All C code calling into Python and all C code called by Python uses
vectorcall / fastcall (see PEP 590) which reduces the overhead of
passing and receiving positional and keyword arguments. (APSW issue 477
APSW issue 446):

* Conversion of arguments from Python values to C values drops generic
PyArg_ParseTupleAndKeywords in favour of direct processing which is more
efficient and allows better exception messages.

* Running speedtest with a VFS that inherits all methods went from being
17% slower than pure SQLite to 2% slower.

* A virtual table benchmark takes 35% less time. (Remember that
benchmarks are best case!)

The shell JSON output modes have been fixed. Mode 'json' outputs a json
array, while mode 'jsonl' does newline delimited json objects, aka json
lines. (APSW issue 483)

Roger
Reply all
Reply to author
Forward
0 new messages