-
-
Notifications
You must be signed in to change notification settings - Fork 360
/
pyproject.toml
116 lines (104 loc) · 2.74 KB
/
pyproject.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
[tool.poetry]
name = "financetoolkit"
version = "1.9.8"
description = "Transparent and Efficient Financial Analysis"
license = "MIT"
authors = ["Jeroen Bouma"]
packages = [
{ include = "financetoolkit" },
]
include = ['normalization/*.csv']
readme = "README.md"
homepage = "https://www.jeroenbouma.com/projects/financetoolkit"
repository = "https://github.com/JerBouma/FinanceToolkit"
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Financial and Insurance Industry",
"Topic :: Office/Business :: Financial :: Investment",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
]
keywords = [
"Finance",
"Toolkit",
"Financial",
"Analysis",
"Fundamental",
"Technical",
"Quantitative",
"Database",
"Equities",
"Currencies",
"Economics",
"ETFs",
"Funds",
"Indices",
"Moneymarkets",
"Commodities",
"Options"
]
[tool.poetry.dependencies]
python = ">=3.10, <3.13"
pandas = {version = "^2.2", extras = ["computation", "performance", "plot"]}
requests = "^2.32.3"
scikit-learn = "^1.5"
yfinance = { version = "*", optional = true }
[tool.poetry.group.dev.dependencies]
pytest = "^8.3.3"
pylint = "^3.3.0"
codespell = "^2.3.0"
black = "^24.8.0"
pytest-mock = "^3.14.0"
pytest-recording = "^0.13.2"
pytest-cov = "^5.0.0"
ruff = "^0.6.7"
pytest-timeout = "^2.3.1"
pytest-recorder = "^0.3.0"
ipykernel = "^6.29.5"
[tool.poetry.group.dashboard.dependencies]
plotly = "^5.22.0"
streamlit = "^1.36.0"
[tool.poetry.extras]
yfinance = ["yfinance"]
[build-system]
requires = ["setuptools<65.5.0", "poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
[tool.ruff]
line-length = 122
lint.select = ["E", "W", "F", "Q", "W", "S", "UP", "I", "PD", "SIM", "PLC", "PLE", "PLR", "PLW"]
lint.ignore = ["S105", "S106", "S107", "PLR0913", "PLR0912", "PLR0911", "PLR0915", "PD010", "PD013", "S310", "S301"]
exclude = ["conftest.py"]
[tool.pylint]
max-line-length = 122
disable = [
"R0913",
"W1514",
"R0911",
"R0912",
"R0915",
"R0801",
"W0221",
"C0103",
"E1131",
"R0917", # too-many-positional-arguments
]
[tool.ruff.lint.isort]
combine-as-imports = true
force-wrap-aliases = true
[tool.lint.isort]
profile = "black"
line_length = 122
skip_gitignore = true
combine_as_imports = true
[tool.codespell]
ignore-words-list = 'te,hsi,amplitud,nam,tha,plaform'
skip = '*.json,./.git,pyproject.toml,poetry.lock,examples'
[tool.mypy]
disable_error_code = "misc, valid-type, attr-defined, index"
[tool.pytest.ini_options]
filterwarnings = [
"ignore::pytest.PytestAssertRewriteWarning:",
]