Files
svfs/pyproject.toml
T

52 lines
1.7 KiB
TOML
Raw Normal View History

2025-11-07 20:52:44 +08:00
[project]
2026-09-14 00:58:53 +08:00
dependencies = [
"twine>=6.2.0",
]
2026-01-23 17:50:27 +08:00
description = "sqlite virtual file system"
name = "sqlite-vfs"
2025-11-07 20:52:44 +08:00
readme = "README.md"
# 版本门槛按实际用到的 API 推导,不是拍的:
# * contrib/fastapi_static.py 用了 hashlib.md5(..., usedforsecurity=False) → 3.9+
# * 测试用了 random.Random.randbytes → 3.9+
# 核心(core/compression/migration/publish/folder_*)本身只用到 3.7 就有的东西;
# 仓库里没有 3.10+ 的语法(无 match、无 PEP 604 注解、无 zip(strict=))。
# 说明:这里只在本机的 3.13 上跑过,"3.9 可用"是代码审查的结论,没有在 3.9 上实测。
requires-python = ">=3.9"
2026-09-14 00:58:53 +08:00
version = "0.2.0"
2025-11-07 20:52:44 +08:00
# 可选集成:核心功能只用标准库,第三方框架一律走 extras。
# 例如 pip install "sqlite-vfs[fastapi]" 才会装上 FastAPI/Starlette。
[project.optional-dependencies]
fastapi = [
"fastapi>=0.100",
"starlette>=0.27",
]
2025-11-07 20:52:44 +08:00
[[tool.uv.index]]
default = true
url = "https://pypi.tuna.tsinghua.edu.cn/simple"
# 说明:这里原先有 [tool.uv.workspace] members = ["devmo"],但仓库里没有 devmo 目录。
# 实测 uv 0.11.8 容忍这种写法(uv sync --dry-run 退出码 0),所以它不是阻塞项,
# 只是会误导人,因此删掉。
2025-11-07 20:52:44 +08:00
[build-system]
build-backend = "hatchling.build"
requires = ["hatchling"]
2026-01-23 17:50:27 +08:00
[dependency-groups]
dev = [
"twine>=4.0.2",
]
2025-11-07 20:52:44 +08:00
[project.scripts]
2026-01-23 17:50:27 +08:00
vfspack = "sqlite_vfs.cli.packer:pack"
vfsunpack = "sqlite_vfs.cli.unpacker:unpack"
vfsverify = "sqlite_vfs.cli.verify:verify"
vfsmigrate = "sqlite_vfs.cli.migrate:main"
vfspublish = "sqlite_vfs.cli.publish:publish_objects"
vfsfetch = "sqlite_vfs.cli.fetch:fetch_objects"
2025-11-07 20:52:44 +08:00
[tool.hatch.build.targets.wheel]
2026-01-23 17:50:27 +08:00
packages = ["src/sqlite_vfs"]