kadmin 0.7.0

Rust bindings for the Kerberos administration interface (kadm5)
Documentation
[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"