Apsw

Latest version: v3.47.1.0

Safety actively analyzes 685525 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 13

3.47.1.0

- [Source](https://github.com/rogerbinns/apsw/releases/download/3.47.1.0/apsw-3.47.1.0.zip)
- [Install](https://rogerbinns.github.io/apsw/install.html)
- [Changelogs](https://rogerbinns.github.io/apsw/changes.html)
- [Documentation](https://rogerbinns.github.io/apsw/)

Documentation on how to [build for packagers](https://rogerbinns.github.io/apsw/install.html#packagers) such as those maintaining Linux and BSD distributions.

Documentation on how to [build for pyodide](https://rogerbinns.github.io/apsw/install.html#pyodide), the Python WASM implementation that runs in the browser and NPM. PyPI does not accept pyodide packages yet.

A command line tool apsw is defined which invokes the [shell](https://rogerbinns.github.io/apsw/shell.html). This also allows using [uvx apsw](https://docs.astral.sh/uv/guides/tools/) without having to explicitly install APSW.

Added [apsw.ext.analyze_pages()](https://rogerbinns.github.io/apsw/ext.html#apsw.ext.analyze_pages) which uses [dbstat](https://www.sqlite.org/dbstat.html) to provide useful information about the pages making up the database, and fragmentation. The shell [.pages command](https://rogerbinns.github.io/apsw/shell.html#shell-cmd-pages) shows it in a pretty form.

3.47.0.0

- [Source](https://github.com/rogerbinns/apsw/releases/download/3.47.0.0/apsw-3.47.0.0.zip)
- [Install](https://rogerbinns.github.io/apsw/install.html)
- [Changelogs](https://rogerbinns.github.io/apsw/changes.html)
- [Documentation](https://rogerbinns.github.io/apsw/)

Support for Python 3.8 removed ([APSW issue 539](https://github.com/rogerbinns/apsw/issues/539)).

The readonly database statistics virtual table ([dbstat](https://www.sqlite.org/dbstat.html)) is enabled by default for PyPI builds, and when --enable-all-extensions is passed to manual [builds](https://rogerbinns.github.io/apsw/install.html#build).

Added [recursive triggers](https://rogerbinns.github.io/apsw/bestpractice.html#apsw.bestpractice.connection_recursive_triggers) and [optimize](https://rogerbinns.github.io/apsw/bestpractice.html#apsw.bestpractice.connection_optimize) to [apsw.bestpractice](https://rogerbinns.github.io/apsw/bestpractice.html#module-apsw.bestpractice).

Multiple callbacks can be present for [Connection.trace_v2()](https://rogerbinns.github.io/apsw/connection.html#apsw.Connection.trace_v2) with APSW ensuring they are all called ([APSW issue 502](https://github.com/rogerbinns/apsw/issues/502))

[Connection.trace_v2()](https://rogerbinns.github.io/apsw/connection.html#apsw.Connection.trace_v2) callback information now has trigger, id, and total_changes fields.

Added [Connection.data_version](https://rogerbinns.github.io/apsw/connection.html#apsw.Connection.data_version) for getting a change counter. [pragma data_version](https://sqlite.org/pragma.html#pragma_data_version) doesn’t update when changes are made on the same connection, only others.

Added [apsw.ext.ShowResourceUsage()](https://rogerbinns.github.io/apsw/ext.html#apsw.ext.ShowResourceUsage) for getting resource and SQLite usage in a context block, and also use it for the shell [timer](https://rogerbinns.github.io/apsw/shell.html#shell-cmd-timer) command.

Added [apsw.ext.Trace()](https://rogerbinns.github.io/apsw/ext.html#apsw.ext.Trace) for tracing SQL execution, row and change counting, and timing per statement for use in a context block.

Added [FTS5 support](https://rogerbinns.github.io/apsw/textsearch.html) including registering and calling tokenizers, and auxiliary functions. The [apsw.fts5](https://rogerbinns.github.io/apsw/textsearch.html#module-apsw.fts5) module provides many additional classes and methods for working with FTS5, including tokenizers for HTML, JSON, regular expressions, support tokenizers for synonyms, stop words, transformers, and a [Table](https://rogerbinns.github.io/apsw/textsearch.html#apsw.fts5.Table) class that wraps access to a FTS5 table (including [creating one](https://rogerbinns.github.io/apsw/textsearch.html#apsw.fts5.Table.create)) with [search()](https://rogerbinns.github.io/apsw/textsearch.html#apsw.fts5.Table.search), [more_like()](https://rogerbinns.github.io/apsw/textsearch.html#apsw.fts5.Table.more_like), and [query_suggest()](https://rogerbinns.github.io/apsw/textsearch.html#apsw.fts5.Table.query_suggest). [apsw.fts5query](https://rogerbinns.github.io/apsw/textsearch.html#module-apsw.fts5query) can parse, modify, and reconstruct queries. The shell gets a [ftsq](https://rogerbinns.github.io/apsw/shell.html#shell-cmd-ftsq) command for issuing queries.

Added [apsw.unicode](https://rogerbinns.github.io/apsw/textsearch.html#module-apsw.unicode) which implements Unicode algorithms for determining codepoint groups making up a user perceived character, word and sentence splitting, and where line breaks can be made. These are used to make provided FTS5 tokenizers and auxiliary functions fully Unicode aware. There are many additional methods such as getting categories, stripping diacritics, case folding, width when output to a terminal, text wrapping, and more.

[apsw.ext.format_query_table()](https://rogerbinns.github.io/apsw/ext.html#apsw.ext.format_query_table) uses [apsw.unicode](https://rogerbinns.github.io/apsw/textsearch.html#module-apsw.unicode) to get widths and line breaks more accurate. As a side effect it loses the word_wrap parameter (breaking change).

3.46.1.0

- [Source](https://github.com/rogerbinns/apsw/releases/download/3.46.1.0/apsw-3.46.1.0.zip)
- [Install](https://rogerbinns.github.io/apsw/install.html)
- [Changelogs](https://rogerbinns.github.io/apsw/changes.html)
- [Documentation](https://rogerbinns.github.io/apsw/)

The shell [dump](https://rogerbinns.github.io/apsw/shell.html#shell-cmd-dump) command outputs the [application_id](https://www.sqlite.org/pragma.html#pragma_application_id) in addition to the [user_version](https://www.sqlite.org/pragma.html#pragma_user_version).

[PyPI](https://pypi.org/project/apsw/) binary builds for [Python 3.13 now available](https://github.com/pypa/cibuildwheel/releases/tag/v2.20.0), as well as [older Python ARM64](https://github.com/rogerbinns/apsw/pull/530) are available.

3.46.0.1

- [Source](https://github.com/rogerbinns/apsw/releases/download/3.46.0.1/apsw-3.46.0.1.zip)
- [Install](https://rogerbinns.github.io/apsw/install.html)
- [Changelogs](https://rogerbinns.github.io/apsw/changes.html)
- [Documentation](https://rogerbinns.github.io/apsw/)

[apsw.ext.query_info()](https://rogerbinns.github.io/apsw/ext.html#apsw.ext.query_info) provides the count and names of bindings parameters. ([APSW issue 528](https://github.com/rogerbinns/apsw/issues/528))

Address how errors are handled in VFS xRandomness routine, that is only called once by SQLite to seed its random number generator. ([APSW issue 526](https://github.com/rogerbinns/apsw/issues/526))

Added [Connection.vfsname()](https://rogerbinns.github.io/apsw/connection.html#apsw.Connection.vfsname) and updated corresponding shell command to get the diagnostic names of the vfs stack for the connection. ([APSW issue 525](https://github.com/rogerbinns/apsw/issues/525))

Do not cache [Connection.pragma()](https://rogerbinns.github.io/apsw/connection.html#apsw.Connection.pragma) statements to avoid encryption keys, or pragmas that run during prepare from being retained. ([APSW issue 522](https://github.com/rogerbinns/apsw/issues/522))

[Connection.pragma()](https://rogerbinns.github.io/apsw/connection.html#apsw.Connection.pragma) adds keyword schema argument to run pragma against attached databases. ([APSW issue 524](https://github.com/rogerbinns/apsw/issues/524))

3.46.0.0

- [Source](https://github.com/rogerbinns/apsw/releases/download/3.46.0.0/apsw-3.46.0.0.zip)
- [Install](https://rogerbinns.github.io/apsw/install.html)
- [Changelogs](https://rogerbinns.github.io/apsw/changes.html)
- [Documentation](https://rogerbinns.github.io/apsw/)

Adjusted [levels](https://docs.python.org/3/library/logging.html#levels) in [apsw.ext.log_sqlite()](https://rogerbinns.github.io/apsw/ext.html#apsw.ext.log_sqlite) to be lower for some SQLite messages like SQLITE_SCHEMA and SQLITE_NOTICE_RECOVER_WAL ([APSW issue 518](https://github.com/rogerbinns/apsw/issues/518))

Previous source releases were signed with [PGP](https://en.wikipedia.org/wiki/Pretty_Good_Privacy). Starting with this release [Sigstore’s](https://www.sigstore.dev/) [cosign tool](https://docs.sigstore.dev/signing/quickstart/) is used ([instructions](https://rogerbinns.github.io/apsw/install.html#verifydownload)). ([APSW issue 512](https://github.com/rogerbinns/apsw/issues/512))

3.45.3.0

- [Source](https://github.com/rogerbinns/apsw/releases/download/3.45.3.0/apsw-3.45.3.0.zip)
- [Install](https://rogerbinns.github.io/apsw/install.html)
- [Changelogs](https://rogerbinns.github.io/apsw/changes.html)
- [Documentation](https://rogerbinns.github.io/apsw/)

No APSW changes.

Page 1 of 13

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.