[build-system] requires = ["hatchling"] build-backend = "hatchling.build" [project] name = "releaseguard-cli" version = "0.1.3" description = "Scan a dataset or model directory for PII and secrets, redact what you find, and package a public-release bundle with a Hugging Face dataset/model card and an EU AI Act Art. 53(1)(d) training-data summary -- generated from the scan, not hand-written." readme = "README.md" license = "Apache-2.0" requires-python = ">=3.10" authors = [{ name = "Rudrendu Paul" }, { name = "Sourav Nandy" }] keywords = [ "pii-detection", "presidio", "data-redaction", "dataset-card", "model-card", "eu-ai-act", "ai-compliance", "responsible-ai", "agent-tools", "mcp", ] classifiers = [ "Development Status :: 3 - Alpha", "Environment :: Console", "Intended Audience :: Developers", "Intended Audience :: Science/Research", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Topic :: Security", "Topic :: Scientific/Engineering :: Artificial Intelligence", "Topic :: Software Development :: Libraries :: Python Modules", ] dependencies = [ "click>=8.1", "presidio-analyzer>=2.2.360", "presidio-anonymizer>=2.2.360", "spacy>=3.7", "pyyaml>=6.0", ] [project.optional-dependencies] parquet = ["pyarrow>=15.0"] # The mcp package requires Python >=3.10, matching this project's own # floor, so it never conflicts here the way it can for a project with a # lower requires-python floor. # Pinned to >=2.0: mcp_server.py uses `mcp.server.MCPServer`, which # replaced `mcp.server.fastmcp.FastMCP` in the 2.0.0 release -- verified # directly against the installed package, not assumed from older docs. mcp = ["mcp>=2.0"] dev = [ "pytest>=8.0", "pytest-cov>=5.0", "ruff>=0.6", "mypy>=1.10", "build>=1.2", "types-PyYAML>=6.0", ] [project.urls] Homepage = "https://github.com/RudrenduPaul/ReleaseGuard" Repository = "https://github.com/RudrenduPaul/ReleaseGuard" Issues = "https://github.com/RudrenduPaul/ReleaseGuard/issues" Changelog = "https://github.com/RudrenduPaul/ReleaseGuard/blob/main/CHANGELOG.md" "Author - Rudrendu Paul" = "https://github.com/RudrenduPaul" "Author - Sourav Nandy" = "https://github.com/Sourav-nandy-ai" [project.scripts] releaseguard = "releaseguard.cli:main" [tool.hatch.build.targets.wheel] packages = ["src/releaseguard"] [tool.ruff] line-length = 100 target-version = "py310" [tool.ruff.lint] select = ["E", "F", "I", "UP", "B"] [tool.mypy] python_version = "3.10" strict = true ignore_missing_imports = true [tool.pytest.ini_options] testpaths = ["tests"] markers = [ "integration: exercises the real Presidio/spacy pipeline (slower, needs the en_core_web_sm model)", ] [tool.coverage.run] source = ["src/releaseguard"] omit = [ "*/releaseguard/cli.py", "*/releaseguard/mcp_server.py", ]