[build-system] requires = ["hatchling>=1.27,<2"] build-backend = "hatchling.build" [project] name = "nodedc-mission-core" version = "0.1.0" description = "NODEDC MISSION CORE monorepo for mission control, spatial observation, and device plugins" readme = "README.md" requires-python = ">=3.12,<3.13" license = { text = "Proprietary" } authors = [{ name = "NODE.DC" }] dependencies = [ "bleak==3.0.2", "fastapi>=0.116,<1", "foxglove-sdk==0.25.3", "lz4>=4.4,<5", "missioncore-plugin-sdk", "paho-mqtt>=2.1,<3", "pillow>=12,<13", "pyyaml>=6.0,<7", "rerun-sdk==0.34.1", "rich>=13.9,<15", "typer>=0.15,<1", "uvicorn[standard]>=0.35,<1", ] [tool.uv.sources] missioncore-plugin-sdk = { path = "packages/plugin-sdk", editable = true } [project.scripts] k1link = "k1link.device_plugins.xgrids_k1.cli:app" [dependency-groups] dev = [ "mypy>=1.15,<2", "pytest>=8.3,<9", "ruff>=0.11,<1", "types-pyyaml>=6.0", ] [tool.hatch.build.targets.wheel] packages = ["src/k1link"] [tool.pytest.ini_options] addopts = "-q" testpaths = ["tests"] [tool.ruff] line-length = 100 target-version = "py312" [tool.ruff.lint] select = ["E", "F", "I", "UP", "B", "SIM"] [tool.mypy] python_version = "3.12" strict = true packages = ["k1link"] [[tool.mypy.overrides]] module = ["lz4", "lz4.*"] ignore_missing_imports = true