mirror of
https://github.com/tiqi-group/pydase.git
synced 2025-04-23 17:40:02 +02:00
114 lines
2.7 KiB
TOML
114 lines
2.7 KiB
TOML
[tool.poetry]
|
|
name = "pydase"
|
|
version = "0.3.1"
|
|
description = "A flexible and robust Python library for creating, managing, and interacting with data services, with built-in support for web and RPC servers, and customizable features for diverse use cases."
|
|
authors = ["Mose Mueller <mosmuell@ethz.ch>"]
|
|
readme = "README.md"
|
|
packages = [{ include = "pydase", from = "src" }]
|
|
|
|
|
|
[tool.poetry.dependencies]
|
|
python = "^3.10"
|
|
rpyc = "^5.3.1"
|
|
fastapi = "^0.100.0"
|
|
uvicorn = "^0.22.0"
|
|
toml = "^0.10.2"
|
|
python-socketio = "^5.8.0"
|
|
websockets = "^11.0.3"
|
|
confz = "^2.0.0"
|
|
pint = "^0.22"
|
|
pillow = "^10.0.0"
|
|
|
|
[tool.poetry.group.dev]
|
|
optional = true
|
|
|
|
[tool.poetry.group.dev.dependencies]
|
|
types-toml = "^0.10.8.6"
|
|
pytest = "^7.4.0"
|
|
pytest-cov = "^4.1.0"
|
|
mypy = "^1.4.1"
|
|
black = "^23.1.0"
|
|
matplotlib = "^3.7.2"
|
|
pyright = "^1.1.323"
|
|
pytest-mock = "^3.11.1"
|
|
ruff = "^0.1.5"
|
|
|
|
[tool.poetry.group.docs]
|
|
optional = true
|
|
|
|
[tool.poetry.group.docs.dependencies]
|
|
mkdocs = "^1.5.2"
|
|
mkdocs-include-markdown-plugin = "^3.9.1"
|
|
mkdocstrings = "^0.22.0"
|
|
pymdown-extensions = "^10.1"
|
|
|
|
[build-system]
|
|
requires = ["poetry-core"]
|
|
build-backend = "poetry.core.masonry.api"
|
|
|
|
[tool.ruff]
|
|
target-version = "py310" # Always generate Python 3.10-compatible code
|
|
line-length = 88
|
|
select = ["ALL"]
|
|
ignore = [
|
|
"ANN101", # typing self
|
|
"ANN401", # disallow Any typing
|
|
"B904", # Within an `except` clause, raise exceptions with `raise ... from err` or `raise ... from None` to distinguish them from errors in exception handling
|
|
"COM812", # Missing trailing comma rule; defer to Black for formatting
|
|
"E203", # whitespace-before-punctuation
|
|
"UP007", # Use `X | Y` for type annotations
|
|
"S310", # suspicious-url-open-usage
|
|
"A", # flake8-builtins
|
|
"ARG", # flake8-unused-arguments
|
|
"BLE", # flake8-blind-except
|
|
"D", # pydocstyle
|
|
"EM", # flake8 error messages
|
|
"FBT", # Boolean trap detection
|
|
"PTH", # flake8-use-pathlib
|
|
"SLF", # flake8-self
|
|
"TD", # flake8-todos
|
|
"TRY", # Exception Handling AntiPatterns in Python
|
|
]
|
|
extend-exclude = [
|
|
"docs", "frontend", "tests"
|
|
]
|
|
|
|
[tool.ruff.lint.mccabe]
|
|
max-complexity = 7
|
|
|
|
|
|
[tool.pyright]
|
|
include = ["src/pydase"]
|
|
exclude = ["**/node_modules", "**/__pycache__", "docs", "frontend", "tests"]
|
|
typeCheckingMode = "basic"
|
|
reportUnknownMemberType = true
|
|
reportUnknownParameterType = true
|
|
|
|
[tool.black]
|
|
line-length = 88
|
|
exclude = '''
|
|
/(
|
|
\.git
|
|
| \.mypy_cache
|
|
| \.tox
|
|
| venv
|
|
| \.venv
|
|
| _build
|
|
| buck-out
|
|
| build
|
|
| dist
|
|
)/
|
|
'''
|
|
|
|
[tool.isort]
|
|
profile = "black"
|
|
|
|
[tool.mypy]
|
|
mypy_path = "src/"
|
|
show_error_codes = true
|
|
disallow_untyped_defs = true
|
|
disallow_untyped_calls = true
|
|
disallow_incomplete_defs = true
|
|
check_untyped_defs = true
|
|
ignore_missing_imports = false
|