77 lines
1.9 KiB
TOML
77 lines
1.9 KiB
TOML
[build-system]
|
|
requires = ["setuptools>=77"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "gyxx-flow"
|
|
version = "0.1.0"
|
|
description = "Portable workflow orchestration for GYXX business automation"
|
|
readme = "README.md"
|
|
requires-python = ">=3.12"
|
|
dependencies = [
|
|
"browserforge>=1.2.4",
|
|
# Scrapling 0.4.13 currently requires this upstream beta explicitly.
|
|
"curl-cffi==0.16.1b1",
|
|
"httpx>=0.27",
|
|
"imageio-ffmpeg>=0.6.0",
|
|
"langchain>=0.3.0",
|
|
"langchain-anthropic>=0.3.0",
|
|
"langchain-core>=0.3.0",
|
|
"langchain-openai>=0.2.0",
|
|
"langgraph>=0.2.0",
|
|
"lark-oapi>=1.0.0",
|
|
"lxml>=5.0",
|
|
"msgspec>=0.21.1",
|
|
"openpyxl>=3.1.5",
|
|
"ormsgpack>=1.2.0",
|
|
"pandas>=3.0.3",
|
|
"Pillow>=10",
|
|
"psycopg[binary,pool]>=3.1",
|
|
"psycopg2-binary>=2.9.12",
|
|
"psutil>=5.9",
|
|
"python-dotenv>=1.0.0",
|
|
"requests>=2.31.0",
|
|
"scrapling[fetchers]==0.4.13",
|
|
"xlrd>=2.0.1",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
test = ["pytest>=8.0"]
|
|
|
|
[dependency-groups]
|
|
dev = [
|
|
"build>=1.2",
|
|
"pytest>=8.0",
|
|
"ruff>=0.12",
|
|
]
|
|
|
|
[project.scripts]
|
|
gyxx = "gyxx_flow.cli:main"
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["src"]
|
|
|
|
[tool.setuptools.package-data]
|
|
"gyxx_flow.web" = ["*.html", "*.css", "*.js"]
|
|
"gyxx_flow.modules.content_marketing" = ["**/*"]
|
|
"gyxx_flow.modules.product_commerce" = ["**/*"]
|
|
"gyxx_flow.modules.shop_intelligence" = ["**/*"]
|
|
"gyxx_flow.modules.supply_chain" = ["**/*"]
|
|
|
|
[tool.setuptools.exclude-package-data]
|
|
"*" = ["**/__pycache__/**", "**/*.pyc", "**/*.pyo"]
|
|
|
|
[tool.pytest.ini_options]
|
|
pythonpath = ["src"]
|
|
testpaths = ["tests"]
|
|
|
|
[tool.ruff]
|
|
# The migrated business scripts keep their original lint baseline while the
|
|
# framework and focused critical scripts are checked in CI. New module code
|
|
# should be added to the focused CI list until this compatibility exclusion is
|
|
# retired module by module.
|
|
extend-exclude = ["src/gyxx_flow/modules/*/**"]
|
|
|
|
[tool.ruff.lint]
|
|
select = ["E4", "E7", "E9", "F", "I"]
|