mirror of
https://github.com/OpenBB-finance/OpenBB.git
synced 2026-05-07 06:23:26 +08:00
208 lines
5.7 KiB
TOML
Vendored
208 lines
5.7 KiB
TOML
Vendored
[tool.poetry]
|
|
name = "openbb"
|
|
version = "3.2.0"
|
|
description = "Investment Research for Everyone, Anywhere."
|
|
license = "MIT"
|
|
authors = ["Didier Rodrigues Lopes"]
|
|
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.25"
|
|
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.0"
|
|
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.0.9"
|
|
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.5.13"
|
|
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.26.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.7.11"
|
|
langchain = "0.0.237"
|
|
ffn = "0.3.6"
|
|
|
|
|
|
|
|
[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"
|
|
mypy = "^1.1.1"
|
|
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"
|
|
ruff = "^0.0.256"
|
|
pytest-timeout = "^2.1.0"
|
|
pytest-recorder = "^0.2.1"
|
|
freezegun = "^1.2.2"
|
|
|
|
[build-system]
|
|
requires = ["setuptools<65.5.0", "poetry-core>=1.0.0"]
|
|
build-backend = "poetry.core.masonry.api"
|
|
|
|
[tool.pydocstyle]
|
|
convention = "numpy"
|
|
match = '((?!test_).)*\.py'
|
|
ignore = "D401"
|
|
|
|
|
|
[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"]
|
|
# These ignores should be seen as temporary solutions to problems that will NEED fixed
|
|
ignore = ["S105", "S106", "S107", "S110", "PLR2004", "PLR0911", "PLR0913", "PLR0912", "PLR0915", "SIM114", "SIM105", "SIM117", "PLC1901", "PLR5501","PLW2901","PLW0603"]
|
|
|
|
[tool.ruff.per-file-ignores]
|
|
"tests/*" = ["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"]
|