[build-system] requires = ["hatchling"] build-backend = "hatchling.build" [project] name = "scherlok" version = "1.0.5" description = "A detective for your data. Zero-config data quality monitoring." readme = "README.md" license = "MIT" requires-python = ">=3.10" authors = [ { name = "Robson Bayer Müller", email = "rbmuller91@gmail.com" }, ] keywords = ["data-quality", "monitoring", "anomaly-detection", "data-engineering"] classifiers = [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Topic :: Database", "Topic :: Software Development :: Quality Assurance", ] dependencies = [ "typer>=0.9.0", "rich>=13.0.0", "psycopg2-binary>=2.9.0", "requests>=2.28.0", "jinja2>=3.0", "mcp>=1.2,<3", ] [project.optional-dependencies] bigquery = [ "google-cloud-bigquery>=3.0.0", ] snowflake = [ "snowflake-connector-python>=3.0.0", ] mysql = [ "pymysql>=1.1", ] duckdb = [ "duckdb>=0.9", ] dbt = [ "pyyaml>=6.0", ] explain = [ "anthropic>=0.40", ] schedule = [ "croniter>=2.0", ] mcp = [ "mcp>=1.2,<3", ] docs = [ "mkdocs-material>=9.5", ] dev = [ "anthropic>=0.40", "duckdb>=0.9", "mcp>=1.2,<3", "pytest>=7.0.0", "pytest-cov>=4.0.0", "ruff>=0.1.0", "pyyaml>=6.0", ] [project.scripts] scherlok = "scherlok.cli:app" scherlok-mcp = "scherlok.mcp.server:main" [project.urls] Homepage = "https://rbmuller.github.io/scherlok/" Documentation = "https://rbmuller.github.io/scherlok/" Repository = "https://github.com/rbmuller/scherlok" Issues = "https://github.com/rbmuller/scherlok/issues" [tool.ruff] target-version = "py310" line-length = 100 [tool.ruff.lint] select = ["E", "F", "I", "N", "W", "UP"] [tool.pytest.ini_options] testpaths = ["tests"]