pyproject.toml•2.89 kB
[build-system]
build-backend = "hatchling.build"
requires = ["hatchling"]
[project]
authors = [
{name = "Vizro Team"}
]
classifiers = [
"Programming Language :: Python",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14"
]
dependencies = [
"pandas",
"tabulate",
"openai>=1.0.0",
"langchain>=0.3.0",
"langgraph>=0.1.2",
"python-dotenv>=1.0.0", # TODO decide env var management to see if we need this
"vizro>=0.1.32",
"pydantic>=2.7.0",
"langchain_openai", # Base dependency, ie minimum model working
"black",
"autoflake"
]
description = "Vizro-AI is a tool for generating data visualizations"
dynamic = ["version"]
license-files = {paths = ["LICENSE.txt"]}
name = "vizro_ai"
readme = "README.md"
requires-python = ">=3.10"
[project.optional-dependencies]
anthropic = ["langchain-anthropic"] # TODO: decide if we want to use this
mistral = ["langchain-mistralai>=0.1.13"] # TODO: decide if we want to use this
[tool.coverage.paths]
vizro = ["src/vizro_ai"] # omit tests for clarity, although this can be useful to see what test lines DID NOT run
[tool.coverage.report]
exclude_lines = [
"no cov",
"if __name__ == .__main__.:",
"if TYPE_CHECKING:"
]
fail_under = 45
show_missing = true
skip_covered = true
[tool.coverage.run]
branch = true
parallel = true
source_pkgs = ["vizro_ai"]
[tool.pytest.ini_options]
filterwarnings = [
"error",
# Ignore until pandas 3 is released:
"ignore:(?s).*Pyarrow will become a required dependency of pandas:DeprecationWarning",
# Ignore deprecation warning until this is solved: https://github.com/plotly/dash/issues/2590:
"ignore:HTTPResponse.getheader():DeprecationWarning",
# Happens during dash_duo teardown in vizro_ai_ui tests. Not affecting functionality:
"ignore:Exception in thread",
"ignore:CapturedCallable function is excluded from the schema",
# Ignore `Layout` FutureWarning until vizro 0.2.0 released:
"ignore:The `Layout` model has been renamed `Grid`:FutureWarning",
"ignore:The `Layout` model has been renamed",
# Ignore langgraph.warnings.LangGraphDeprecatedSinceV10: Importing Send from langgraph.constants is deprecated.
# Please use 'from langgraph.types import Send' instead. Deprecated in LangGraph V1.0 to be removed in V2.0.
"ignore:Importing Send from langgraph.constants is deprecated"
]
pythonpath = ["../tools/tests"]
[tool.ruff]
extend = "../pyproject.toml"
src = ["src"]
[tool.ruff.lint.extend-per-file-ignores]
# Ignore print, line length, and import violations in Colab notebooks
"examples/chart_by_vizro_ai.ipynb" = ["T201", "E501"]
"examples/dashboard_by_vizro_ai.ipynb" = ["T201", "E402", "E501"]
"examples/goodreads_tutorial/goodreads.ipynb" = ["T201", "E402", "E501", "W291", "F811"]