Files
OpenBB/cli/pyproject.toml
Danglewood 8a1b5fd93e [V5] Update Repository License to Apache 2.0 (#7677)
* change license to Apache 2.0 for V5

* codespell
2026-09-24 13:32:17 -07:00

140 lines
2.8 KiB
TOML
Vendored

[project]
name = "openbb-cli"
version = "2.0.0"
description = "Investment Research for Everyone, Anywhere."
authors = [{ name = "OpenBB Team", email = "hello@openbb.co" }]
license = { text = "Apache-2.0" }
readme = "README.md"
requires-python = ">=3.10,<4"
dependencies = [
"openbb-core[pandas]>=2.0.0",
"prompt-toolkit>=3.0.50,<4.0.0",
"rich>=14.0.0,<15.0.0",
"python-dotenv>=1.0.1,<2.0.0",
"openpyxl>=3.1.5,<4.0.0",
"httpx>=0.28.0,<1.0.0",
"pyyaml>=6.0",
"tomli>=2.0;python_version<'3.11'",
]
[project.optional-dependencies]
charting = ["openbb-charting>=3.0.0"]
interactive = ["pywry>=2.0.0"]
all = ["openbb-charting>=3.0.0", "pywry>=2.0.0"]
[project.scripts]
openbb = "openbb_cli.cli:main"
[project.urls]
Homepage = "https://openbb.co"
Repository = "https://github.com/OpenBB-finance/OpenBB"
Documentation = "https://docs.openbb.co/cli"
[dependency-groups]
dev = ["openbb-devtools>=2.0.0"]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["openbb_cli"]
[tool.hatch.build.targets.sdist]
include = [
"openbb_cli",
"README.md",
"pyproject.toml",
]
# openbb-core is path-sourced because v5's has not yet been published.
[tool.uv.sources]
openbb-core = { path = "../openbb_platform/core", editable = true }
openbb-charting = { path = "../openbb_platform/obbject_extensions/charting", editable = true }
openbb-devtools = { path = "../openbb_platform/extensions/devtools", editable = true }
[tool.ruff]
line-length = 88
target-version = "py310"
fix = true
[tool.ruff.lint]
select = [
"D",
"E",
"W",
"F",
"S",
"UP",
"I",
"PLC",
"PLE",
"PLR",
"PLW",
"SIM",
"T20",
]
ignore = [
"PLR2004",
"PLR0913",
"PLR0915",
"PLC0415",
"E402",
"E501",
"D202",
"D203",
"D205",
"D206",
"D210",
"D212",
"D213",
"D214",
"D215",
"D300",
"D400",
"D404",
"D405",
"D406",
"D407",
"D408",
"D409",
"D410",
"D411",
"D413",
"D415",
"D416",
"D417",
]
[tool.ruff.lint.per-file-ignores]
"tests/**" = ["S101", "S108", "D", "SIM105", "SIM117"]
"integration/**" = ["S101", "S108", "D", "SIM105", "SIM117"]
"**/__init__.py" = ["F401"]
# Protocol stubs and lazy-import shims with `...` bodies don't need per-method docstrings.
"openbb_cli/backend.py" = ["D102"]
"openbb_cli/controllers/platform_controller_factory.py" = ["D102"]
[tool.ruff.lint.isort]
combine-as-imports = true
force-wrap-aliases = true
[tool.ruff.lint.pylint]
max-args = 8
max-branches = 26
max-returns = 9
max-statements = 30
[tool.ruff.lint.pydocstyle]
convention = "numpy"
[tool.ty]
[tool.ty.environment]
python-version = "3.10"
[tool.ty.src]
include = ["openbb_cli"]
exclude = ["openbb_cli/assets", "tests", "integration"]
[tool.ty.rules]
unresolved-import = "warn"