hackathon_code4change / pyproject.toml
RoyAalekh's picture
Convert to DuckDB for efficient data storage and access
a8c9d4c
raw
history blame
1.4 kB
[project]
name = "code4change-analysis"
version = "0.1.0-dev.1"
description = "Fair, transparent court scheduling optimization using graph-based modeling and multi-objective optimization"
readme = "README.md"
requires-python = ">=3.11"
dependencies = [
"pandas>=2.2",
"polars>=1.30",
"plotly>=6.0",
"openpyxl>=3.1",
"XlsxWriter>=3.2",
"pyarrow>=17.0",
"numpy>=2.0",
"networkx>=3.0",
"ortools>=9.8",
"pydantic>=2.0",
"typer>=0.12",
"simpy>=4.1",
"scipy>=1.14",
"scikit-learn>=1.5",
"streamlit>=1.28",
"altair>=5.0",
"duckdb>=1.4.2",
]
[project.optional-dependencies]
dev = [
"pre-commit>=3.5",
"ruff>=0.6",
"black>=24.0",
"pytest>=8.0",
"hypothesis>=6.0",
"mypy>=1.11"
]
[project.scripts]
court-scheduler = "court_scheduler.cli:app"
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["scheduler"]
[tool.black]
line-length = 100
target-version = ["py311"]
[tool.ruff]
select = ["E", "F", "I", "B", "C901", "N", "D"]
line-length = 100
src = ["src"]
[tool.ruff.pydocstyle]
convention = "google"
[tool.pytest.ini_options]
testpaths = ["tests"]
addopts = "-v --tb=short"
markers = [
"unit: Unit tests",
"integration: Integration tests",
"fairness: Fairness validation tests",
"performance: Performance benchmark tests"
]