[project] name = "stackit-sfs" version = "v0.5.0" description = "STACKIT File Storage (SFS)" authors = [{ name = "STACKIT Developer Tools", email = "developer-tools@stackit.cloud" }] requires-python = ">=3.9,<4" readme = "README.md" classifiers = [ "Programming Language :: Python :: 3", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", ] dependencies = [ "stackit-core>=0.0.1a", "requests>=2.32.3", "pydantic>=2.9.2", "python-dateutil>=2.9.0.post0", ] [project.urls] Homepage = "https://github.com/stackitcloud/stackit-sdk-python" Issues = "https://github.com/stackitcloud/stackit-sdk-python/issues" [dependency-groups] dev = [ "black>=24.8.0", "pytest>=8.3.3", "flake8>=5.0.3 ; python_full_version < '3.12'", "flake8>=6.0.1 ; python_full_version >= '3.12'", "flake8-black>=0.3.6", "flake8-pyproject>=1.2.3", "autoimport>=1.6.1", "flake8-eol>=0.0.8", "flake8-eradicate>=1.5.0", "flake8-bandit>=4.1.1", "flake8-bugbear>=23.1.14", "flake8-quotes>=3.4.0", "isort>=5.13.2", ] [tool.uv] default-groups = "all" [tool.uv.sources] stackit-core = { path = "../../core" } [tool.hatch.build.targets.sdist] include = ["src/stackit"] [tool.hatch.build.targets.wheel] include = ["src/stackit"] [tool.hatch.build.targets.wheel.sources] "src/stackit" = "stackit" [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [tool.pytest.ini_options] pythonpath = [ "src" ] testpaths = [ "tests" ] [tool.black] line-length = 120 exclude = """ /( .eggs | .git | .hg | .mypy_cache | .nox | .pants.d | .tox | .venv | _build | buck-out | build | dist | node_modules | venv )/ """ [tool.isort] profile = 'black' [tool.flake8] exclude= [".eggs", ".git", ".hg", ".mypy_cache", ".tox", ".venv", ".devcontainer", "venv", "_build", "buck-out", "build", "dist"] statistics = true show-source = false max-line-length = 120 # E203,W503 and E704 are incompatible with the formatter black # W291 needs to be disabled because some doc-strings get generated with trailing whitespace but black won't re-format comments ignore = ["E203", "W503", "E704", "W291"] inline-quotes = '"' docstring-quotes = '"""' multiline-quotes = '"""' ban-relative-imports = true # Exclude generated code extend-exclude = [ "src/stackit/*/models/*", "src/stackit/*/api/*", "src/stackit/*/*.py" ]