From 23416d91ef7eed7069b99d27ac04f246d20a23fe25cd040762f33b983c8c5553 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 5 Dec 2022 21:13:25 +0000 Subject: [PATCH] =?UTF-8?q?-=20update=20to=203.40.0.0:=20=20=20*=20Fixed?= =?UTF-8?q?=20regression=20in=20statement=20cache=20update=20(version=203.?= =?UTF-8?q?38.1-r1)=20where=20=20=20=20=20trailing=20whitespace=20in=20que?= =?UTF-8?q?ries=20would=20be=20incorrectly=20treated=20as=20=20=20=20=20in?= =?UTF-8?q?complete=20execution=20(APSW=20issue=20376)=20=20=20*=20Added?= =?UTF-8?q?=20Various=20interesting=20and=20useful=20bits=20of=20functiona?= =?UTF-8?q?lity=20(APSW=20issue=20=20=20=20=20369)=20=20=20*=20Added=20mor?= =?UTF-8?q?e=20Pythonic=20attributes=20as=20an=20alternative=20to=20getter?= =?UTF-8?q?s=20and=20setters,=20=20=20=20=20including=20Connection.in=5Ftr?= =?UTF-8?q?ansaction,=20Connection.exectrace,=20=20=20=20=20Connection.row?= =?UTF-8?q?trace,=20Cursor.exectrace,=20Cursor.rowtrace,=20=20=20=20=20Cur?= =?UTF-8?q?sor.connection=20(APSW=20issue=20371)=20=20=20*=20Completed:=20?= =?UTF-8?q?To=20the=20extent=20permitted=20by=20CPython=20APIs=20every=20i?= =?UTF-8?q?tem=20has=20the=20=20=20=20=20same=20docstring=20as=20this=20do?= =?UTF-8?q?cumentation.=20Every=20API=20can=20use=20named=20=20=20=20=20pa?= =?UTF-8?q?rameters.=20The=20type=20stubs=20cover=20everything=20including?= =?UTF-8?q?=20constants.=20The=20=20=20=20=20type=20stubs=20also=20include?= =?UTF-8?q?=20documentation=20for=20everything,=20which=20for=20example=20?= =?UTF-8?q?=20=20=20=20Visual=20Studio=20Code=20displays=20as=20you=20type?= =?UTF-8?q?=20or=20hover.=20There=20is=20a=20single=20=20=20=20=20source?= =?UTF-8?q?=20of=20documentation=20in=20the=20source=20code,=20which=20is?= =?UTF-8?q?=20then=20automatically=20=20=20=20=20extracted=20to=20make=20t?= =?UTF-8?q?his=20documentation,=20docstrings,=20and=20docstrings=20in=20th?= =?UTF-8?q?e=20=20=20=20=20type=20stubs.=20=20=20*=20Example/Tour=20update?= =?UTF-8?q?d=20and=20appearance=20improved=20(APSW=20issue=20367).=20=20?= =?UTF-8?q?=20*=20Added=20Connection.cache=5Fstats()=20to=20provide=20more?= =?UTF-8?q?=20information=20about=20the=20=20=20=20=20statement=20cache.?= =?UTF-8?q?=20=20=20*=20Cursor.execute()=20now=20uses=20sqlite=5Fprepare?= =?UTF-8?q?=5Fv3=20which=20allows=20supplying=20=20=20=20=20flags.=20=20?= =?UTF-8?q?=20*=20Cursor.execute()=20has=20a=20new=20can=5Fcache=20paramet?= =?UTF-8?q?er=20to=20control=20whether=20the=20=20=20=20=20query=20can=20u?= =?UTF-8?q?se=20the=20statement=20cache.=20One=20example=20use=20is=20with?= =?UTF-8?q?=20authorizers=20=20=20=20=20because=20they=20only=20run=20duri?= =?UTF-8?q?ng=20prepare,=20which=20doesn=E2=80=99t=20happen=20with=20alrea?= =?UTF-8?q?dy=20=20=20=20=20cached=20statements.=20=20=20*=20(The=20Cursor?= =?UTF-8?q?.execute()=20additional=20parameters=20are=20keyword=20only=20a?= =?UTF-8?q?nd=20also=20=20=20=20=20present=20in=20Cursor.executemany(),=20?= =?UTF-8?q?and=20the=20corresponding=20=20=20=20=20Connection.execute()=20?= =?UTF-8?q?and=20Connection.executemany()=20methods.)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-apsw?expand=0&rev=27 --- 3.37.0-r1.tar.gz | 3 -- 3.40.0.0.tar.gz | 3 ++ python-apsw.changes | 67 +++++++++++++++++++++++++++++++++++++++++++++ python-apsw.spec | 7 ++--- 4 files changed, 73 insertions(+), 7 deletions(-) delete mode 100644 3.37.0-r1.tar.gz create mode 100644 3.40.0.0.tar.gz diff --git a/3.37.0-r1.tar.gz b/3.37.0-r1.tar.gz deleted file mode 100644 index f224704..0000000 --- a/3.37.0-r1.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:594c73a1395e5e7294424c912e1c2c64314a072debb62025f8928d53f6b1503b -size 321856 diff --git a/3.40.0.0.tar.gz b/3.40.0.0.tar.gz new file mode 100644 index 0000000..8149092 --- /dev/null +++ b/3.40.0.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4ebd4c7008bcefe1112386496523bd8433035f9f8a8b1369b1c02923e763e73 +size 402492 diff --git a/python-apsw.changes b/python-apsw.changes index 3b9836a..9972973 100644 --- a/python-apsw.changes +++ b/python-apsw.changes @@ -1,3 +1,70 @@ +------------------------------------------------------------------- +Mon Dec 5 20:22:14 UTC 2022 - Dirk Müller + +- update to 3.40.0.0: + * Fixed regression in statement cache update (version 3.38.1-r1) where + trailing whitespace in queries would be incorrectly treated as + incomplete execution (APSW issue 376) + * Added Various interesting and useful bits of functionality (APSW issue + 369) + * Added more Pythonic attributes as an alternative to getters and setters, + including Connection.in_transaction, Connection.exectrace, + Connection.rowtrace, Cursor.exectrace, Cursor.rowtrace, + Cursor.connection (APSW issue 371) + * Completed: To the extent permitted by CPython APIs every item has the + same docstring as this documentation. Every API can use named + parameters. The type stubs cover everything including constants. The + type stubs also include documentation for everything, which for example + Visual Studio Code displays as you type or hover. There is a single + source of documentation in the source code, which is then automatically + extracted to make this documentation, docstrings, and docstrings in the + type stubs. + * Example/Tour updated and appearance improved (APSW issue 367). + * Added Connection.cache_stats() to provide more information about the + statement cache. + * Cursor.execute() now uses sqlite_prepare_v3 which allows supplying + flags. + * Cursor.execute() has a new can_cache parameter to control whether the + query can use the statement cache. One example use is with authorizers + because they only run during prepare, which doesn’t happen with already + cached statements. + * (The Cursor.execute() additional parameters are keyword only and also + present in Cursor.executemany(), and the corresponding + Connection.execute() and Connection.executemany() methods.) + * Added Cursor.is_readonly, Cursor.is_explain, and Cursor.expanded_sql. + * Updated processing named bindings so that types registered with + collections.abc.Mapping (such as collections.UserDict) will also be + treated as dictionaries. (APSW issue 373) + * Test no longer fails if APSW was compiled without + SQLITE_ENABLE_COLUMN_METADATA but sqlite3 was separately compiled with + it. APSW should be compiled with the same flags as sqlite3 to match + functionality and APIs. (APSW issue 363) + * –use-system-sqlite-config setup.py build_ext option added to allow + Matching APSW and SQLite options. (APSW issue 364) + * Source ▪ Downloads ▪ Changelogs ▪ Documentation + * PyPI now includes Python 3.11 builds. + * Instead of using scripts, you can now run several tools directly: + * tests: python3 -m apsw.tests [options] + * tracer: python3 -m apsw.trace [options] + * speed tester: python3 -m apsw.speedtest [options] + * shell: python3 -m apsw [options] + * The shell class has moved from apsw.Shell to apsw.shell.Shell (APSW + issue 356). You can still reference it via the old name (ie existing + code will not break, except on Python 3.6). + * Shell: On Windows the native console support for colour is now used + (previously a third party module was supported). + * You can use –definevalues in setup.py build_ext to provide compiler + defines used for configuring SQLite. (APSW issue 357) + * If SQLITE_ENABLE_COLUMN_METADATA is enabled then Cursor.description_full + is available providing all the column metadata available. (APSW issue + 354) + * Connection.cursor_factory attribute is now present and is used when + Connection.cursor() is called. Added Connection.execute() and + Connection.executemany() which automatically obtain the underlying + cursor. See customizing connections and cursors in the Tips. (APSW issue + 361) + + ------------------------------------------------------------------- Mon Jan 17 20:40:34 UTC 2022 - Dirk Müller diff --git a/python-apsw.spec b/python-apsw.spec index 7c556c7..a2058a4 100644 --- a/python-apsw.spec +++ b/python-apsw.spec @@ -17,15 +17,14 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} -%define tarver 3.37.0-r1 Name: python-apsw -Version: 3.37.0 +Version: 3.40.0.0 Release: 0 Summary: Another Python SQLite Wrapper License: Zlib Group: Development/Libraries/Python URL: https://github.com/rogerbinns/apsw/ -Source: https://github.com/rogerbinns/apsw/archive/%{tarver}.tar.gz +Source: https://github.com/rogerbinns/apsw/archive/%{version}.tar.gz BuildRequires: %{python_module devel} BuildRequires: %{python_module setuptools} BuildRequires: pkgconfig @@ -40,7 +39,7 @@ being a minimal layer over SQLite attempting just to translate the complete SQLite API into Python. %prep -%setup -q -n apsw-%{tarver} +%setup -q -n apsw-%{version} %build export CFLAGS="%{optflags} -fno-strict-aliasing"