Spaces:
Sleeping
Sleeping
fixing pyporject for streamlit cloud deployment
Browse files- pyproject.toml +51 -75
pyproject.toml
CHANGED
|
@@ -1,82 +1,58 @@
|
|
| 1 |
-
|
| 2 |
-
|
| 3 |
-
|
| 4 |
-
description = "Fair, transparent court scheduling optimization using graph-based modeling and multi-objective optimization"
|
| 5 |
-
readme = "README.md"
|
| 6 |
-
requires-python = ">=3.11"
|
| 7 |
-
|
| 8 |
-
# IMPORTANT: scheduler will be installed as a proper package
|
| 9 |
-
packages = ["scheduler"]
|
| 10 |
-
|
| 11 |
-
dependencies = [
|
| 12 |
-
"pandas>=2.2",
|
| 13 |
-
"polars>=1.30",
|
| 14 |
-
"plotly>=6.0",
|
| 15 |
-
"openpyxl>=3.1",
|
| 16 |
-
"XlsxWriter>=3.2",
|
| 17 |
-
"pyarrow>=17.0",
|
| 18 |
-
"numpy>=2.0",
|
| 19 |
-
"networkx>=3.0",
|
| 20 |
-
"ortools>=9.8",
|
| 21 |
-
"pydantic>=2.0",
|
| 22 |
-
"typer>=0.12",
|
| 23 |
-
"simpy>=4.1",
|
| 24 |
-
"scipy>=1.14",
|
| 25 |
-
"scikit-learn>=1.5",
|
| 26 |
-
"streamlit>=1.28",
|
| 27 |
-
"altair>=5.0",
|
| 28 |
-
"duckdb>=1.4.2",
|
| 29 |
-
]
|
| 30 |
-
|
| 31 |
-
[project.optional-dependencies]
|
| 32 |
-
dev = [
|
| 33 |
-
"pre-commit>=3.5",
|
| 34 |
-
"ruff>=0.6",
|
| 35 |
-
"black>=24.0",
|
| 36 |
-
"pytest>=8.0",
|
| 37 |
-
"hypothesis>=6.0",
|
| 38 |
-
"mypy>=1.11"
|
| 39 |
-
]
|
| 40 |
[tool.poetry]
|
|
|
|
|
|
|
|
|
|
|
|
|
| 41 |
package-mode = false
|
| 42 |
|
| 43 |
|
| 44 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 45 |
court-scheduler = "cli.main:app"
|
| 46 |
|
| 47 |
-
[build-system]
|
| 48 |
-
requires = ["hatchling"]
|
| 49 |
-
build-backend = "hatchling.build"
|
| 50 |
|
| 51 |
-
|
| 52 |
-
#
|
| 53 |
-
|
| 54 |
-
|
| 55 |
-
]
|
| 56 |
-
|
| 57 |
-
[tool.black]
|
| 58 |
-
line-length = 100
|
| 59 |
-
target-version = ["py311"]
|
| 60 |
-
|
| 61 |
-
[tool.ruff]
|
| 62 |
-
select = ["E", "F", "I", "B", "C901", "N", "D"]
|
| 63 |
-
line-length = 100
|
| 64 |
-
src = [".", "scheduler"]
|
| 65 |
-
|
| 66 |
-
[tool.ruff.pydocstyle]
|
| 67 |
-
convention = "google"
|
| 68 |
-
|
| 69 |
-
[tool.pytest.ini_options]
|
| 70 |
-
testpaths = ["tests"]
|
| 71 |
-
addopts = "-v --tb=short"
|
| 72 |
-
markers = [
|
| 73 |
-
"unit: Unit tests",
|
| 74 |
-
"integration: Integration tests",
|
| 75 |
-
"fairness: Fairness validation tests",
|
| 76 |
-
"performance: Performance benchmark tests",
|
| 77 |
-
"rl: Reinforcement learning tests",
|
| 78 |
-
"simulation: Simulation engine tests",
|
| 79 |
-
"edge_case: Edge case and boundary condition tests",
|
| 80 |
-
"failure: Failure scenario tests",
|
| 81 |
-
"slow: Slow-running tests (>5 seconds)"
|
| 82 |
-
]
|
|
|
|
| 1 |
+
########################################
|
| 2 |
+
# REQUIRED FOR STREAMLIT CLOUD / POETRY
|
| 3 |
+
########################################
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4 |
[tool.poetry]
|
| 5 |
+
name = "code4change-analysis"
|
| 6 |
+
version = "0.1.0"
|
| 7 |
+
description = "Court scheduling simulation + analytics"
|
| 8 |
+
authors = ["Aalekh Roy"]
|
| 9 |
package-mode = false
|
| 10 |
|
| 11 |
|
| 12 |
+
########################################
|
| 13 |
+
# PROJECT DEPENDENCIES
|
| 14 |
+
########################################
|
| 15 |
+
[tool.poetry.dependencies]
|
| 16 |
+
python = ">=3.11"
|
| 17 |
+
pandas = ">=2.2"
|
| 18 |
+
polars = ">=1.30"
|
| 19 |
+
plotly = ">=6.0"
|
| 20 |
+
openpyxl = ">=3.1"
|
| 21 |
+
XlsxWriter = ">=3.2"
|
| 22 |
+
pyarrow = ">=17.0"
|
| 23 |
+
numpy = ">=2.0"
|
| 24 |
+
networkx = ">=3.0"
|
| 25 |
+
ortools = ">=9.8"
|
| 26 |
+
pydantic = ">=2.0"
|
| 27 |
+
typer = ">=0.12"
|
| 28 |
+
simpy = ">=4.1"
|
| 29 |
+
scipy = ">=1.14"
|
| 30 |
+
scikit-learn = ">=1.5"
|
| 31 |
+
streamlit = ">=1.28"
|
| 32 |
+
altair = ">=5.0"
|
| 33 |
+
duckdb = ">=1.4.2"
|
| 34 |
+
|
| 35 |
+
########################################
|
| 36 |
+
# OPTIONAL DEV TOOLS
|
| 37 |
+
########################################
|
| 38 |
+
[tool.poetry.group.dev.dependencies]
|
| 39 |
+
pre-commit = ">=3.5"
|
| 40 |
+
ruff = ">=0.6"
|
| 41 |
+
black = ">=24.0"
|
| 42 |
+
pytest = ">=8.0"
|
| 43 |
+
hypothesis = ">=6.0"
|
| 44 |
+
mypy = ">=1.11"
|
| 45 |
+
|
| 46 |
+
########################################
|
| 47 |
+
# CLI ENTRY POINTS
|
| 48 |
+
########################################
|
| 49 |
+
[tool.poetry.scripts]
|
| 50 |
court-scheduler = "cli.main:app"
|
| 51 |
|
|
|
|
|
|
|
|
|
|
| 52 |
|
| 53 |
+
########################################
|
| 54 |
+
# BUILD SYSTEM FOR POETRY
|
| 55 |
+
########################################
|
| 56 |
+
[build-system]
|
| 57 |
+
requires = ["poetry-core"]
|
| 58 |
+
build-backend = "poetry.core.masonry.api"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|