content: [build-system]
  requires = ["hatchling"]
  build-backend = "hatchling.build"
  
  [project]
  name = "wiener-netze-smart-meter-api"
  dynamic = ["version"]
  description = 'A Python wrapper for the official Wiener Netze Smart Meter API (WN_SMART_METER_API)'
  readme = "README.md"
  requires-python = ">=3.9"
  license = "MIT"
  keywords = []
  authors = [
    { name = "tschoerk", email = "tschoerk@proton.me" },
  ]
  classifiers = [
    "Development Status :: 4 - Beta",
    "Programming Language :: Python",
    "Programming Language :: Python :: 3.9",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.12",
    "Programming Language :: Python :: Implementation :: CPython",
    "Programming Language :: Python :: Implementation :: PyPy",
  ]
  dependencies = [
  	"requests>=2.32.3",
    "python-dateutil>=2.8.2",
  ]
  
  [project.urls]
  Documentation = "https://github.com/tschoerk/Wiener-Netze-Smart-Meter-API#readme"
  Issues = "https://github.com/tschoerk/Wiener-Netze-Smart-Meter-API/issues"
  Source = "https://github.com/tschoerk/Wiener-Netze-Smart-Meter-API"
  
  [tool.hatch.version]
  path = "src/wiener_netze_smart_meter_api/__about__.py"
  
  [tool.hatch.envs.types]
  extra-dependencies = [
    "mypy>=1.0.0",
  ]
  [tool.hatch.envs.types.scripts]
  check = "mypy --install-types --non-interactive {args:src/wiener_netze_smart_meter_api tests}"
  
  [tool.coverage.run]
  source_pkgs = ["wiener_netze_smart_meter_api", "tests"]
  branch = true
  parallel = true
  omit = [
    "src/wiener_netze_smart_meter_api/__about__.py",
  ]
  
  [tool.coverage.paths]
  wiener_netze_smart_meter_api = ["src/wiener_netze_smart_meter_api", "*/wiener-netze-smart-meter-api/src/wiener_netze_smart_meter_api"]
  tests = ["tests", "*/wiener-netze-smart-meter-api/tests"]
  
  [tool.coverage.report]
  exclude_lines = [
    "no cov",
    "if __name__ == .__main__.:",
    "if TYPE_CHECKING:",
  ]
  
  [tool.ruff.lint]
  select = ["ALL"]
  ignore = ["S101"]
  
  [tool.ruff.lint.mccabe]
  max-complexity = 25
  
  [tool.pytest.ini_options]
  addopts = [
      "--import-mode=importlib",
  ]
  
  [tool.ruff.lint.pylint]
  max-branches = 25
  max-args = 10
  max-statements = 75
  max-returns = 10