diff --git a/server/pyproject.toml b/server/pyproject.toml index 184596e..576a43a 100644 --- a/server/pyproject.toml +++ b/server/pyproject.toml @@ -19,7 +19,7 @@ dependencies = [ "fastapi>=0.115", "uvicorn[standard]>=0.32", "pydantic>=2.10", - "pydantic-settings>=2.7", + "pydantic-settings>=2.14.2", "sqlalchemy>=2.0", "aiosqlite>=0.20", "sqlite-vss>=0.1.2", diff --git a/server/uv.lock b/server/uv.lock index d24d749..654d396 100644 --- a/server/uv.lock +++ b/server/uv.lock @@ -6,6 +6,74 @@ resolution-markers = [ "python_full_version < '3.15'", ] +[[package]] +name = "aiforge" +version = "0.1.0" +source = { editable = "." } +dependencies = [ + { name = "aiosqlite" }, + { name = "alembic" }, + { name = "anthropic" }, + { name = "fastapi" }, + { name = "httpx" }, + { name = "numpy" }, + { name = "pydantic" }, + { name = "pydantic-settings" }, + { name = "pygithub" }, + { name = "python-frontmatter" }, + { name = "pyyaml" }, + { name = "rank-bm25" }, + { name = "scikit-learn" }, + { name = "sentence-transformers" }, + { name = "sqlalchemy" }, + { name = "sqlite-vss" }, + { name = "structlog" }, + { name = "ulid-py" }, + { name = "uvicorn", extra = ["standard"] }, +] + +[package.optional-dependencies] +dev = [ + { name = "httpx" }, + { name = "mypy" }, + { name = "pytest" }, + { name = "pytest-asyncio" }, + { name = "pytest-cov" }, + { name = "ruff" }, + { name = "types-requests" }, +] + +[package.metadata] +requires-dist = [ + { name = "aiosqlite", specifier = ">=0.20" }, + { name = "alembic", specifier = ">=1.14" }, + { name = "anthropic", specifier = ">=0.40" }, + { name = "fastapi", specifier = ">=0.115" }, + { name = "httpx", specifier = ">=0.28" }, + { name = "httpx", marker = "extra == 'dev'", specifier = ">=0.28" }, + { name = "mypy", marker = "extra == 'dev'", specifier = ">=1.13" }, + { name = "numpy", specifier = ">=2.0" }, + { name = "pydantic", specifier = ">=2.10" }, + { name = "pydantic-settings", specifier = ">=2.14.2" }, + { name = "pygithub", specifier = ">=2.5" }, + { name = "pytest", marker = "extra == 'dev'", specifier = ">=8.3" }, + { name = "pytest-asyncio", marker = "extra == 'dev'", specifier = ">=0.25" }, + { name = "pytest-cov", marker = "extra == 'dev'", specifier = ">=6.0" }, + { name = "python-frontmatter", specifier = ">=1.1" }, + { name = "pyyaml", specifier = ">=6.0" }, + { name = "rank-bm25", specifier = ">=0.2.2" }, + { name = "ruff", marker = "extra == 'dev'", specifier = ">=0.8" }, + { name = "scikit-learn", specifier = ">=1.6" }, + { name = "sentence-transformers", specifier = ">=3.3" }, + { name = "sqlalchemy", specifier = ">=2.0" }, + { name = "sqlite-vss", specifier = ">=0.1.2" }, + { name = "structlog", specifier = ">=24.4" }, + { name = "types-requests", marker = "extra == 'dev'" }, + { name = "ulid-py", specifier = ">=1.1" }, + { name = "uvicorn", extras = ["standard"], specifier = ">=0.32" }, +] +provides-extras = ["dev"] + [[package]] name = "aiosqlite" version = "0.22.1" @@ -1560,16 +1628,16 @@ wheels = [ [[package]] name = "pydantic-settings" -version = "2.14.1" +version = "2.14.2" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "pydantic" }, { name = "python-dotenv" }, { name = "typing-inspection" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/07/60/1d1e59c9c90d54591469ada7d268251f71c24bdb765f1a8a832cee8c6653/pydantic_settings-2.14.1.tar.gz", hash = "sha256:e874d3bec7e787b0c9958277956ed9b4dd5de6a80e162188fdaff7c5e26fd5fa", size = 235551, upload-time = "2026-05-08T13:40:06.542Z" } +sdist = { url = "https://files.pythonhosted.org/packages/5c/b5/8f48e906c3e0205276e8bd8cb7512217a87b2685304d64be27cad5b3019f/pydantic_settings-2.14.2.tar.gz", hash = "sha256:c19dd64b19097f1de80184f0cc7b0272a13ae6e170cbf240a3e27e381ed14a5f", size = 237700, upload-time = "2026-06-19T13:44:56.324Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/ae/8d/f1af3832f5e6eb13ba94ee809e72b8ecb5eef226d27ee0bef7d963d943c7/pydantic_settings-2.14.1-py3-none-any.whl", hash = "sha256:6e3c7edfd8277687cdc598f56e5cff0e9bfff0910a3749deaa8d4401c3a2b9de", size = 60964, upload-time = "2026-05-08T13:40:04.958Z" }, + { url = "https://files.pythonhosted.org/packages/77/c1/6e422f34e569cf8e18df68d1939c81c099d2b61e4f7d9621c8a77560799c/pydantic_settings-2.14.2-py3-none-any.whl", hash = "sha256:a20c97b37910b6550d5ea50fbcc2d4187defe58cd57070b73863d069419c9440", size = 61715, upload-time = "2026-06-19T13:44:55.02Z" }, ] [[package]] @@ -2114,74 +2182,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl", hash = "sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686", size = 9755, upload-time = "2023-10-24T04:13:38.866Z" }, ] -[[package]] -name = "skillforge" -version = "0.1.0" -source = { editable = "." } -dependencies = [ - { name = "aiosqlite" }, - { name = "alembic" }, - { name = "anthropic" }, - { name = "fastapi" }, - { name = "httpx" }, - { name = "numpy" }, - { name = "pydantic" }, - { name = "pydantic-settings" }, - { name = "pygithub" }, - { name = "python-frontmatter" }, - { name = "pyyaml" }, - { name = "rank-bm25" }, - { name = "scikit-learn" }, - { name = "sentence-transformers" }, - { name = "sqlalchemy" }, - { name = "sqlite-vss" }, - { name = "structlog" }, - { name = "ulid-py" }, - { name = "uvicorn", extra = ["standard"] }, -] - -[package.optional-dependencies] -dev = [ - { name = "httpx" }, - { name = "mypy" }, - { name = "pytest" }, - { name = "pytest-asyncio" }, - { name = "pytest-cov" }, - { name = "ruff" }, - { name = "types-requests" }, -] - -[package.metadata] -requires-dist = [ - { name = "aiosqlite", specifier = ">=0.20" }, - { name = "alembic", specifier = ">=1.14" }, - { name = "anthropic", specifier = ">=0.40" }, - { name = "fastapi", specifier = ">=0.115" }, - { name = "httpx", specifier = ">=0.28" }, - { name = "httpx", marker = "extra == 'dev'", specifier = ">=0.28" }, - { name = "mypy", marker = "extra == 'dev'", specifier = ">=1.13" }, - { name = "numpy", specifier = ">=2.0" }, - { name = "pydantic", specifier = ">=2.10" }, - { name = "pydantic-settings", specifier = ">=2.7" }, - { name = "pygithub", specifier = ">=2.5" }, - { name = "pytest", marker = "extra == 'dev'", specifier = ">=8.3" }, - { name = "pytest-asyncio", marker = "extra == 'dev'", specifier = ">=0.25" }, - { name = "pytest-cov", marker = "extra == 'dev'", specifier = ">=6.0" }, - { name = "python-frontmatter", specifier = ">=1.1" }, - { name = "pyyaml", specifier = ">=6.0" }, - { name = "rank-bm25", specifier = ">=0.2.2" }, - { name = "ruff", marker = "extra == 'dev'", specifier = ">=0.8" }, - { name = "scikit-learn", specifier = ">=1.6" }, - { name = "sentence-transformers", specifier = ">=3.3" }, - { name = "sqlalchemy", specifier = ">=2.0" }, - { name = "sqlite-vss", specifier = ">=0.1.2" }, - { name = "structlog", specifier = ">=24.4" }, - { name = "types-requests", marker = "extra == 'dev'" }, - { name = "ulid-py", specifier = ">=1.1" }, - { name = "uvicorn", extras = ["standard"], specifier = ">=0.32" }, -] -provides-extras = ["dev"] - [[package]] name = "sniffio" version = "1.3.1"