Metadata-Version: 2.1
Name: libqcanvas
Version: 2026.2.18
Summary: Does most of the heavy lifting for qcanvas
Author: QCanvas
Author-email: QCanvas@noreply.codeberg.org
Requires-Python: >=3.12,<4.0
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Dist: SQLAlchemy (>=2.0.46,<3.0.0)
Requires-Dist: aiofile (>=3.9.0,<4.0.0)
Requires-Dist: alembic (>=1.18.3,<2.0.0)
Requires-Dist: asynchronize (>=0.0.1,<0.0.2)
Requires-Dist: asynctaskpool (>=0.2.0,<0.3.0)
Requires-Dist: beautifulsoup4 (>=4.12.3,<5.0.0)
Requires-Dist: gql (>=3.5.1,<4.0.0)
Requires-Dist: httpx[http2] (>=0.28.1,<0.29.0)
Requires-Dist: libqcanvas-clients (>2026.0.0)
Requires-Dist: pydantic (>=2.7.0,<3.0.0)
Requires-Dist: yt-dlp (>=2026.2.4)
Description-Content-Type: text/markdown

# libqcanvas

This module uses the API client module and does most of the heavy lifting. It is concerned with synchronising with canvas and storing/reading the data on/from an SQLITE database. 

## Using API result caching for faster development

Set `ENABLE_API_CACHE=True` (or `1`) as an environment variable. This will store the result of each API call on disk for re-use next time.
The cache is written to `/tmp/qcanvas_cache`.

Only use this when debugging.
