You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

103 lines
2.4 KiB

  1. [tool.poetry]
  2. name = "python-keycloak"
  3. version = "0.0.0"
  4. description = "python-keycloak is a Python package providing access to the Keycloak API."
  5. license = "MIT"
  6. readme = "README.md"
  7. keywords = ["keycloak", "openid", "oidc"]
  8. authors = [
  9. "Marcos Pereira <marcospereira.mpj@gmail.com>",
  10. "Richard Nemeth <ryshoooo@gmail.com>",
  11. ]
  12. classifiers = [
  13. "Programming Language :: Python :: 3",
  14. "License :: OSI Approved :: MIT License",
  15. "Development Status :: 3 - Alpha",
  16. "Operating System :: MacOS",
  17. "Operating System :: Unix",
  18. "Operating System :: Microsoft :: Windows",
  19. "Topic :: Utilities",
  20. ]
  21. packages = [
  22. { include = "keycloak", from = "src/" },
  23. { include = "keycloak/**/*.py", from = "src/" },
  24. { include = "keycloak/py.typed", from = "src/" },
  25. ]
  26. include = ["LICENSE", "CHANGELOG.md", "CONTRIBUTING.md"]
  27. [tool.poetry.urls]
  28. Changelog = "https://raw.githubusercontent.com/marcospereirampj/python-keycloak/master/CHANGELOG.md"
  29. Documentation = "https://python-keycloak.readthedocs.io/en/latest/"
  30. "Issue tracker" = "https://github.com/marcospereirampj/python-keycloak/issues"
  31. [tool.poetry.dependencies]
  32. python = ">=3.9,<4.0"
  33. requests = ">=2.20.0"
  34. requests-toolbelt = ">=0.6.0"
  35. deprecation = ">=2.1.0"
  36. jwcrypto = ">=1.5.4"
  37. httpx = ">=0.23.2"
  38. async-property = ">=0.2.2"
  39. aiofiles = ">=24.1.0"
  40. [tool.poetry.group.docs.dependencies]
  41. alabaster = ">=0.7.0"
  42. commonmark = ">=0.9.1"
  43. recommonmark = ">=0.7.1"
  44. Sphinx = ">=7.0.0"
  45. m2r2 = ">=0.3.2"
  46. sphinx-autoapi = ">=3.0.0"
  47. setuptools = ">=70.0.0"
  48. sphinx-book-theme = ">=1.1.3"
  49. [tool.poetry.group.dev.dependencies]
  50. tox = ">=4.0.0"
  51. pytest = ">=7.1.2"
  52. pytest-cov = ">=3.0.0"
  53. pytest-asyncio = ">=0.23.7"
  54. wheel = ">=0.38.4"
  55. pre-commit = ">=3.5.0"
  56. commitizen = ">=2.28.0"
  57. cryptography = ">=42.0.0"
  58. codespell = ">=2.1.0"
  59. darglint = ">=1.8.1"
  60. twine = ">=4.0.2"
  61. freezegun = ">=1.2.2"
  62. docutils = "<0.21"
  63. ruff = ">=0.9.3"
  64. [[tool.poetry.source]]
  65. name = "PyPI"
  66. priority = "primary"
  67. [build-system]
  68. requires = ["poetry-core>=1.0.0"]
  69. build-backend = "poetry.core.masonry.api"
  70. [tool.ruff]
  71. line-length = 99
  72. [tool.ruff.lint]
  73. select = ["ALL"]
  74. ignore = [
  75. "BLE001",
  76. "C901",
  77. "COM812",
  78. "D203",
  79. "D212",
  80. "FBT001",
  81. "FBT002",
  82. "FBT003",
  83. "N818",
  84. "PLR0912",
  85. "PLR0913",
  86. "PLR0915",
  87. "TRY003",
  88. ]
  89. [tool.ruff.lint.per-file-ignores]
  90. "tests/*" = ["ARG001","PLR2004", "PT011", "S101", "SLF001"]
  91. "docs/*" = ["A001", "EXE001", "ERA001"]
  92. [tool.pytest.ini_options]
  93. asyncio_default_fixture_loop_scope = "function"