[tool.poetry] name = "pydase-service-base" version = "0.1.0" description = "Repository storing the code that is common to all pydase services." authors = ["Mose Mueller "] license = "MIT" readme = "README.md" packages = [{ include = "pydase_service_base" }] [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api" [tool.poetry.dependencies] python = "^3.10" confz = "^2.0.0" pydase = ">=0.6.0" # optional dependencies tiqi-rpc = { git = "ssh://git@gitlab.phys.ethz.ch/tiqi-projects/tiqi-rpc-python.git", optional = true } influxdb-client = { version = "^1.36.1", optional = true} sqlmodel = { version = "^0.0.8", optional = true} psycopg2-binary = { version = "^2.9.6", optional = true } [tool.poetry.extras] ionizer = ["tiqi-rpc"] influxdbv2 = ["influxdb-client"] postgresql = ["sqlmodel", "psycopg2-binary"] [tool.poetry.group.dev] optional = true [tool.poetry.group.dev.dependencies] mypy = "^1.4.1" pyright = "^1.1.323" ruff = "^0.1.5" [tool.ruff] target-version = "py310" # Always generate Python 3.10-compatible code select = [ "ASYNC", # flake8-async "C4", # flake8-comprehensions "C901", # mccabe complex-structure "E", # pycodestyle errors "ERA", # eradicate "F", # pyflakes "FLY", # flynt "G", # flake8-logging-format "I", # isort "ICN", # flake8-import-conventions "INP", # flake8-no-pep420 "ISC", # flake8-implicit-str-concat "N", # pep8-naming "NPY", # NumPy-specific rules "PERF", # perflint "PIE", # flake8-pie "PL", # pylint "PYI", # flake8-pyi "Q", # flake8-quotes "RET", # flake8-return "RUF", # Ruff-specific rules "SIM", # flake8-simplify "TID", # flake8-tidy-imports "TCH", # flake8-type-checking "UP", # pyupgrade "YTT", # flake8-2020 "W", # pycodestyle warnings ] ignore = [ "E203", # whitespace-before-punctuation "W292", # missing-newline-at-end-of-file "PERF203", # try-except-in-loop ] extend-exclude = [ "docs", "frontend" ] [tool.ruff.lint.mccabe] max-complexity = 7 [tool.pyright] include = ["pydase_service_base"] typeCheckingMode = "basic" [tool.mypy] disallow_untyped_defs = true disallow_untyped_calls = true disallow_incomplete_defs = true disallow_any_generics = true check_untyped_defs = true ignore_missing_imports = false