Flask application skeleton with SQLAlchemy models for courses (including per-course settings), students, enrollments, opt-outs, and calls; the weighted and cycle selection logic ported from the manual coldcall scripts; alembic migrations; and a pytest suite covering selection behavior and the model query helpers. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
25 lines
656 B
TOML
25 lines
656 B
TOML
[build-system]
|
|
requires = ["setuptools>=64"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "coldcall-lti"
|
|
version = "0.1.0"
|
|
description = "Canvas LTI 1.3 tool for managing in-class cold calls"
|
|
requires-python = ">=3.11"
|
|
# Known-good versions: flask 3.1.1, SQLAlchemy 2.0.40, alembic 1.13.2,
|
|
# pylti1p3next 2.0.2 (development uses Debian system packages for all
|
|
# but pylti1p3next; these floors record what the code was written against).
|
|
dependencies = [
|
|
"flask>=3.1",
|
|
"pylti1p3next>=2.0",
|
|
"SQLAlchemy>=2.0",
|
|
"alembic>=1.13",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
test = ["pytest>=8"]
|
|
|
|
[tool.setuptools]
|
|
packages = ["coldcall_lti"]
|