[project]
name = "python-kadmin-rs"
version = "0.7.0"
description = "Python interface to the Kerberos administration interface (kadm5)"
requires-python = ">=3.11,<3.15"
readme = "README.md"
license = "MIT"
license-files = ["LICENSE"]
authors = [
{ name = "Marc 'risson' Schmitt", email = "marc.schmitt@risson.space" },
{ name = "authentik community", email = "hello@goauthentik.io" },
]
keywords = ["krb5", "kadmin", "kadm5", "kerberos"]
classifiers = [
"Development Status :: 3 - Alpha",
"Intended Audience :: System Administrators",
"Intended Audience :: Developers",
"Operating System :: MacOS",
"Operating System :: POSIX",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python",
"Programming Language :: Rust",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: System :: Systems Administration :: Authentication/Directory",
"Typing :: Typed",
]
[project.urls]
Homepage = "https://github.com/authentik-community/kadmin-rs"
Documentation = "https://github.com/authentik-community/kadmin-rs"
Repository = "https://github.com/authentik-community/kadmin-rs.git"
[build-system]
requires = ["maturin >=1.0,<2.0"]
build-backend = "maturin"
[tool.maturin]
features = ["python"]
module-name = "kadmin"
python-source = "python/src"
[dependency-groups]
dev = [
"black",
"build",
"cibuildwheel",
"maturin",
"mypy",
"ruff",
"sphinx",
"sphinx-rtd-theme",
]
test = ["k5test"]
[tool.uv]
package = false
[tool.uv.sources]
k5test = { git = "https://github.com/pythongssapi/k5test.git", rev = "349b79ecdff9a3ec00441c467511ff03e92450c9" }
[tool.cibuildwheel]
enable = ["cpython-freethreading", "pypy"]
skip = "*-musllinux_*"
[tool.cibuildwheel.linux]
before-all = [
"curl -sSf https://sh.rustup.rs | sh -s -- -y",
"yum install -y krb5-devel heimdal-devel clang-devel openssl-devel",
]
environment = { PATH = "$HOME/.cargo/bin:$PATH" }
environment-pass = ["DEBIAN_FRONTEND", "CARGO_INCREMENTAL"]
[tool.cibuildwheel.macos]
before-all = [
"curl -sSf https://sh.rustup.rs | sh -s -- -y",
"brew install krb5 heimdal llvm",
]
environment = { MACOSX_DEPLOYMENT_TARGET = "14.0", PATH = "$HOME/.cargo/bin:$PATH" }
[tool.ruff]
line-length = 100
target-version = "py314"