diff options
Diffstat (limited to 'venv/lib/python3.11/site-packages/aiosqlite-0.20.0.dist-info/METADATA')
-rw-r--r-- | venv/lib/python3.11/site-packages/aiosqlite-0.20.0.dist-info/METADATA | 122 |
1 files changed, 122 insertions, 0 deletions
diff --git a/venv/lib/python3.11/site-packages/aiosqlite-0.20.0.dist-info/METADATA b/venv/lib/python3.11/site-packages/aiosqlite-0.20.0.dist-info/METADATA new file mode 100644 index 0000000..74e724a --- /dev/null +++ b/venv/lib/python3.11/site-packages/aiosqlite-0.20.0.dist-info/METADATA @@ -0,0 +1,122 @@ +Metadata-Version: 2.1 +Name: aiosqlite +Version: 0.20.0 +Summary: asyncio bridge to the standard sqlite3 module +Author-email: Amethyst Reese <amy@n7.gg> +Requires-Python: >=3.8 +Description-Content-Type: text/x-rst +Classifier: Development Status :: 5 - Production/Stable +Classifier: Framework :: AsyncIO +Classifier: Intended Audience :: Developers +Classifier: License :: OSI Approved :: MIT License +Classifier: Topic :: Software Development :: Libraries +Requires-Dist: typing_extensions >= 4.0 +Requires-Dist: attribution==1.7.0 ; extra == "dev" +Requires-Dist: black==24.2.0 ; extra == "dev" +Requires-Dist: coverage[toml]==7.4.1 ; extra == "dev" +Requires-Dist: flake8==7.0.0 ; extra == "dev" +Requires-Dist: flake8-bugbear==24.2.6 ; extra == "dev" +Requires-Dist: flit==3.9.0 ; extra == "dev" +Requires-Dist: mypy==1.8.0 ; extra == "dev" +Requires-Dist: ufmt==2.3.0 ; extra == "dev" +Requires-Dist: usort==1.0.8.post1 ; extra == "dev" +Requires-Dist: sphinx==7.2.6 ; extra == "docs" +Requires-Dist: sphinx-mdinclude==0.5.3 ; extra == "docs" +Project-URL: Documentation, https://aiosqlite.omnilib.dev +Project-URL: Github, https://github.com/omnilib/aiosqlite +Provides-Extra: dev +Provides-Extra: docs + +aiosqlite\: Sqlite for AsyncIO +============================== + +.. image:: https://readthedocs.org/projects/aiosqlite/badge/?version=latest + :target: https://aiosqlite.omnilib.dev/en/latest/?badge=latest + :alt: Documentation Status +.. image:: https://img.shields.io/pypi/v/aiosqlite.svg + :target: https://pypi.org/project/aiosqlite + :alt: PyPI Release +.. image:: https://img.shields.io/badge/change-log-blue + :target: https://github.com/omnilib/aiosqlite/blob/master/CHANGELOG.md + :alt: Changelog +.. image:: https://img.shields.io/pypi/l/aiosqlite.svg + :target: https://github.com/omnilib/aiosqlite/blob/master/LICENSE + :alt: MIT Licensed + +aiosqlite provides a friendly, async interface to sqlite databases. + +It replicates the standard ``sqlite3`` module, but with async versions +of all the standard connection and cursor methods, plus context managers for +automatically closing connections and cursors: + +.. code-block:: python + + async with aiosqlite.connect(...) as db: + await db.execute("INSERT INTO some_table ...") + await db.commit() + + async with db.execute("SELECT * FROM some_table") as cursor: + async for row in cursor: + ... + +It can also be used in the traditional, procedural manner: + +.. code-block:: python + + db = await aiosqlite.connect(...) + cursor = await db.execute('SELECT * FROM some_table') + row = await cursor.fetchone() + rows = await cursor.fetchall() + await cursor.close() + await db.close() + +aiosqlite also replicates most of the advanced features of ``sqlite3``: + +.. code-block:: python + + async with aiosqlite.connect(...) as db: + db.row_factory = aiosqlite.Row + async with db.execute('SELECT * FROM some_table') as cursor: + async for row in cursor: + value = row['column'] + + await db.execute('INSERT INTO foo some_table') + assert db.total_changes > 0 + + +Install +------- + +aiosqlite is compatible with Python 3.8 and newer. +You can install it from PyPI: + +.. code-block:: console + + $ pip install aiosqlite + + +Details +------- + +aiosqlite allows interaction with SQLite databases on the main AsyncIO event +loop without blocking execution of other coroutines while waiting for queries +or data fetches. It does this by using a single, shared thread per connection. +This thread executes all actions within a shared request queue to prevent +overlapping actions. + +Connection objects are proxies to the real connections, contain the shared +execution thread, and provide context managers to handle automatically closing +connections. Cursors are similarly proxies to the real cursors, and provide +async iterators to query results. + + +License +------- + +aiosqlite is copyright `Amethyst Reese <https://noswap.com>`_, and licensed under the +MIT license. I am providing code in this repository to you under an open source +license. This is my personal repository; the license you receive to my code +is from me and not from my employer. See the `LICENSE`_ file for details. + +.. _LICENSE: https://github.com/omnilib/aiosqlite/blob/master/LICENSE + |