Files
OpenBB/pyproject.toml
Henrique Joaquim c2186798a3 Hotfix/pypi openbb terminal (#5719)
* renaming the project

* documentation changes
2023-11-14 09:35:34 +00:00

261 lines
6.6 KiB
TOML
Vendored

[tool.poetry]
name = "openbb-terminal"
version = "3.2.4"
description = "Investment Research for Everyone, Anywhere."
license = "MIT"
authors = ["OpenBB <hello@openbb.co>"]
packages = [{ include = "openbb_terminal" }]
include = ["terminal.py", "openbb_terminal/.env"]
readme = "website/pypi.md"
homepage = "https://openbb.co"
repository = "https://github.com/OpenBB-finance/OpenBBTerminal"
documentation = "https://docs.openbb.co/sdk"
[tool.poetry.scripts]
openbb = 'terminal:main'
[tool.poetry.dependencies]
python = "^3.8.1,<3.11, !=3.9.7"
scipy = "1.10.1" #Pinning on July 6 for pip issues
iso8601 = "^0.1.14"
FundamentalAnalysis = "^0.2.6"
requests = "^2.31.0"
alpha-vantage = "^2.3.1"
finviz = "^1.4.6"
bs4 = "^0.0.1"
yfinance = "^0.2.28"
pmaw = "^3.0.0"
praw = "^7.1.4"
Quandl = "^3.6.0"
pytrends = "4.9.2"
matplotlib = "^3.3.3"
plotly = "^5.15.0"
prompt-toolkit = "^3.0.16"
jupyterlab = "^3.2.4"
mplfinance = "^0.12.7-alpha.7"
seaborn = "^0.11.0"
fredapi = "^0.4.3"
screeninfo = "^0.6.7"
robin-stocks = "^2.0.3"
pycoingecko = "^3.1.0"
detecta = "^0.0.5"
tradingview-ta = "^3.2.3"
finvizfinance = "0.14.7rc1"
statsmodels = "^0.13"
python-coinmarketcap = "^0.2"
oandapyV20 = "^0.6.3"
valinvest = "^0.0.2"
bt = "^0.2.9"
vaderSentiment = "3.3.2"
GitPython = "^3.1.17"
fred = "^3.1"
financedatabase = "2.1.0"
holidays = "^0.14.2"
degiro-connector = "^2.0.3"
python-binance = "^1.0.15"
python-i18n = "^0.3.9"
thepassiveinvestor = "^1.1.2"
pandas-ta = "^0.3.14-beta.0"
pyrsistent = "^0.19.3"
openpyxl = "^3.0.9"
pandas = "^1.5.0"
pandas-market-calendars = "~3.2"
ipympl = "^0.8.2"
rich = "^12.6.0"
dnspython = "^2.1.0"
python-dotenv = "^1.0.0"
Pygments = "^2.11.2"
ascii-magic = "^1.6"
squarify = "^0.4.3"
finnhub-python = "^2.4.10"
linearmodels = "^4.25"
ipywidgets = "^8.0.2"
Jinja2 = "^3.0.3"
Riskfolio-Lib = { version = "^3.1.1", optional = true }
ccxt = "^4.0.33"
html5lib = "^1.1"
feedparser = "^6.0.10"
pyinstaller = { version = "^4.10", optional = true }
jupyterlab-code-formatter = { version = "^1.4.10", optional = true }
jupyterlab-lsp = { version = "^3.10.1", optional = true }
jedi-language-server = { version = "^0.40.0", optional = true }
tokenterminal = "^1.0.1"
torch = { version = "~1.11.0", optional = true }
watchdog = "^2.1.9"
pythclient = "^0.1.2"
"ruamel.yaml" = "^0.17.21"
setuptools = "<65.5.0"
numpy = "1.23.4"
papermill = "2.4"
stocksera = "^0.1.21"
ipython = "8.11.0"
protobuf = "3.20.1"
pytorch-lightning = { version = "1.6.5", optional = true }
u8darts = { extras = ["torch"], version = "0.23.0", optional = true }
lightgbm = { version = "3.3.5", optional = true } # locked because this is the latest version available on conda intel mac
docstring-parser = { version = "^0.15", optional = true }
grpcio = "^1.51.1"
jupyterlab-widgets = "^3.0.3"
mstarpy = "^0.0.4"
packaging = ">=22.0"
streamlit = "^1.24.1"
pywry = "^0.6.1"
svglib = "^1.5.0"
sparqlwrapper = "^2.0.0"
y-py = "!=0.5.5" # Untraceable third level dependency that requires cargo to be built
psutil = "!=5.9.4" # Forecasting menu and IPyKernel dependency broken on MacOs
intrinio-sdk = "^6.22.2"
yahooquery = "^2.3.0"
openai-whisper = { version = "^20230124", optional = true }
setuptools-rust = { version = "^1.5.2", optional = true }
transformers = { version = "4.27.1", optional = true }
yt-dlp = { version = "^2023.2.17", optional = true }
pydantic = "<2"
posthog = "^3.0.1"
reportlab = "<4" #Pinning due to build error on MacOs
arch = "^5.5.0"
llama-index = "^0.8.8"
langchain = "0.0.266" # Pinned for llama index
ffn = "0.3.6"
jupyter-client = "7.4.1"
jupyter-server = "1.23.6"
python-jose = "^3.3.0"
nixtlats = "^0.1.11" # Pinning for stability
nltk = "^3.8.1" # Is a dependence for llama index
openai = "0.28.1"
[tool.poetry.extras]
forecast = [
"torch",
"pytorch-lightning",
"u8darts",
"lightgbm",
"openai-whisper",
"setuptools-rust",
"transformers",
"yt-dlp",
]
optimization = ["Riskfolio-Lib"]
all = [
"torch",
"pytorch-lightning",
"u8darts",
"Riskfolio-Lib",
"lightgbm",
"openai-whisper",
"setuptools-rust",
"transformers",
"yt-dlp",
]
jupyterlab = [
"jupyterlab-code-formatter",
"jupyterlab-lsp",
"jedi-language-server",
]
installer = ["pyinstaller"]
doc = ["docstring-parser"]
[tool.poetry.group.dev.dependencies]
pytest-xdist = "^3.2.0"
pytest = "^6.2.2"
pylint = "2.17.0"
mock = "^4.0.3"
codespell = "^2.2.4"
pydocstyle = "^6.3.0"
sphinx = "^4.5.0"
myst-parser = "^0.15.2"
black = "^23.1.0"
bandit = "^1.7.0"
coverage = ">=5.5"
vcrpy = "^4.1.1"
pytest-mock = "^3.6.1"
pytest-recording = "^0.12.0"
types-pytz = "^2021.3.1"
types-requests = "^2.26.0"
types-PyYAML = "^6.0.1"
types-python-dateutil = "^2.8.3"
types-setuptools = "^57.4.7"
pre-commit = "^2.16.0"
pytest-cov = "^3.0.0"
types-six = "^1.16.12"
nbmake = ">0.5.0"
pytest-timeout = "^2.1.0"
pytest-recorder = "^0.2.1"
freezegun = "^1.2.2"
ruff = "^0.0.285"
mypy = "^1.5.1"
toml = "^0.10.2"
tomli = "^2.0.1"
[build-system]
requires = ["setuptools<65.5.0", "poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
[tool.pydocstyle]
inherit = true
convention = "numpy"
match = '((?!test_).)*\.py'
add-ignore = "D401"
[tool.flake8]
max-line-length = 122
ignore = "S101,W503"
[tool.ruff]
line-length = 122
target-version = "py38"
# This is an introductory addition of ruff. We should look to adding:
# D: pydocstyle, PD: pandas-vet
# All options here: https://github.com/charliermarsh/ruff#supported-rules
select = [
"E",
"W",
"F",
"Q",
"S",
"UP",
"I",
"PLC",
"PLE",
"PLR",
"PLW",
"SIM",
"T20",
]
# These ignores should be seen as temporary solutions to problems that will NEED fixed
ignore = ["PLR2004", "PLR0913", "PLR0915"]
exclude = [
"^openbb_platform/platform/core/openbb_core/app/static/package/.*",
"^openbb_platform/openbb/package/.*",
]
[tool.ruff.per-file-ignores]
"**/tests/*" = ["S101"]
"*init*.py" = ["F401"]
"website/*" = ["T201"]
"*integration/*" = ["S101"]
[tool.ruff.flake8-import-conventions.aliases]
"matplotlib.pyplot" = "plt"
numpy = "np"
pandas = "pd"
seaborn = "sns"
[tool.ruff.isort]
combine-as-imports = true
force-wrap-aliases = true
[tool.ruff.pylint]
max-args = 8
max-branches = 25
max-returns = 9
max-statements = 30
[tool.isort]
profile = "black"
line_length = 122
skip_gitignore = true
combine_as_imports = true
src_paths = ["openbb_terminal"]