7
7
# PEP 517 – A build-system independent format for source trees - https://peps.python.org/pep-0517/
8
8
# Till recently flit-core library was suggested by pip, so we used it. In future, cosider to change to
9
9
# other, if better, build-backend library.
10
- requires = [" flit-core >=3.8,<4" ] # should specify <4, so won’t be impacted by changes in the next major version
10
+ requires = [
11
+ " flit-core >=3.8,<4" ,
12
+ ] # should specify <4, so won’t be impacted by changes in the next major version
11
13
build-backend = " flit_core.buildapi"
12
14
13
15
@@ -18,17 +20,15 @@ build-backend = "flit_core.buildapi"
18
20
# PEP 518 – Specifying Minimum Build System Requirements for Python Projects https://peps.python.org/pep-0518/
19
21
20
22
# Required
21
- name = " oracle_ads" # the install (PyPI) name; name for local build in [tool.flit.module] section below
23
+ name = " oracle_ads" # the install (PyPI) name; name for local build in [tool.flit.module] section below
22
24
version = " 2.10.1"
23
25
24
26
# Optional
25
27
description = " Oracle Accelerated Data Science SDK"
26
- readme = {file = " README.md" , content-type = " text/markdown" }
28
+ readme = { file = " README.md" , content-type = " text/markdown" }
27
29
requires-python = " >=3.8"
28
- license = {file = " LICENSE.txt" }
29
- authors = [
30
- {name = " Oracle Data Science" }
31
- ]
30
+ license = { file = " LICENSE.txt" }
31
+ authors = [{ name = " Oracle Data Science" }]
32
32
keywords = [
33
33
" Oracle Cloud Infrastructure" ,
34
34
" OCI" ,
@@ -54,7 +54,7 @@ classifiers = [
54
54
# In dependencies se "<library>; platform_machine == 'aarch64'" to specify ARM underlying platform
55
55
# Copied from install_requires list in setup.py, setup.py got removed in favor of this config file
56
56
dependencies = [
57
- " PyYAML>=6" , # pyyaml 5.4 is broken with cython 3
57
+ " PyYAML>=6" , # pyyaml 5.4 is broken with cython 3
58
58
" asteval>=0.9.25" ,
59
59
" cerberus>=1.3.4" ,
60
60
" cloudpickle>=1.6.0" ,
@@ -65,7 +65,8 @@ dependencies = [
65
65
" numpy>=1.19.2" ,
66
66
" oci>=2.113.0" ,
67
67
" ocifs>=1.1.3" ,
68
- " pandas>1.2.1,<2.1" ,
68
+ " pandas>1.2.1; python_version<'3.9'" , # starting pandas v2.1.0 requires-python = '>=3.9'
69
+ " pandas>=2.2.0; python_version>='3.9'" ,
69
70
" psutil>=5.7.2" ,
70
71
" python_jsonschema_objects>=0.3.13" ,
71
72
" requests" ,
@@ -76,13 +77,9 @@ dependencies = [
76
77
77
78
[project .optional-dependencies ]
78
79
# Copied from extras_require list in setup.py, setup.py got removed in favor of this config file
79
- bds = [
80
- " hdfs[kerberos]" ,
81
- " ibis-framework[impala]" ,
82
- " sqlalchemy" ,
83
- ]
80
+ bds = [" hdfs[kerberos]" , " ibis-framework[impala]" , " sqlalchemy" ]
84
81
boosted = [
85
- " lightgbm<4.0.0" , # relax when the official releases of skl2onnx (v1.16.0) and onnxmltools (1.11.3), https://github.com/sdpython/mlprodict/issues/488
82
+ " lightgbm<4.0.0" , # relax when the official releases of skl2onnx (v1.16.0) and onnxmltools (1.11.3), https://github.com/sdpython/mlprodict/issues/488
86
83
" xgboost" ,
87
84
]
88
85
data = [
@@ -94,22 +91,14 @@ data = [
94
91
" pandavro>=1.6.0" ,
95
92
" sqlalchemy>=1.4.1, <=1.4.46" ,
96
93
]
97
- geo = [
98
- " geopandas" ,
99
- " oracle_ads[viz]" ,
100
- ]
101
- huggingface = [
102
- " transformers" ,
103
- ]
104
- notebook = [
105
- " ipython>=7.23.1, <8.0" ,
106
- " ipywidgets~=7.6.3" ,
107
- ]
94
+ geo = [" geopandas" , " oracle_ads[viz]" ]
95
+ huggingface = [" transformers" ]
96
+ notebook = [" ipython>=7.23.1, <8.0" , " ipywidgets~=7.6.3" ]
108
97
onnx = [
109
- " lightgbm<4.0.0" , # relax when the official releases of skl2onnx (v1.16.0) and onnxmltools (1.11.3), https://github.com/sdpython/mlprodict/issues/488
98
+ " lightgbm<4.0.0" , # relax when the official releases of skl2onnx (v1.16.0) and onnxmltools (1.11.3), https://github.com/sdpython/mlprodict/issues/488
110
99
" onnx>=1.12.0" ,
111
100
" onnxmltools>=1.10.0" ,
112
- " onnxruntime>=1.10.0,<1.16" , # v1.16 introduced issues https://github.com/microsoft/onnxruntime/issues/17631, revealed by unit tests
101
+ " onnxruntime>=1.10.0,<1.16" , # v1.16 introduced issues https://github.com/microsoft/onnxruntime/issues/17631, revealed by unit tests
113
102
" oracle_ads[viz]" ,
114
103
" protobuf<=3.20" ,
115
104
" skl2onnx>=1.10.4" ,
@@ -126,26 +115,11 @@ opctl = [
126
115
" py-cpuinfo" ,
127
116
" rich" ,
128
117
]
129
- optuna = [
130
- " optuna==2.9.0" ,
131
- " oracle_ads[viz]" ,
132
- ]
133
- spark = [
134
- " pyspark>=3.0.0" ,
135
- ]
136
- tensorflow = [
137
- " oracle_ads[viz]" ,
138
- " tensorflow" ,
139
- ]
140
- text = [
141
- " spacy" ,
142
- " wordcloud>=1.8.1" ,
143
- ]
144
- torch = [
145
- " oracle_ads[viz]" ,
146
- " torch" ,
147
- " torchvision" ,
148
- ]
118
+ optuna = [" optuna==2.9.0" , " oracle_ads[viz]" ]
119
+ spark = [" pyspark>=3.0.0" ]
120
+ tensorflow = [" oracle_ads[viz]" , " tensorflow" ]
121
+ text = [" spacy" , " wordcloud>=1.8.1" ]
122
+ torch = [" oracle_ads[viz]" , " torch" , " torchvision" ]
149
123
viz = [
150
124
" bokeh>=3.0.0, <3.2.0" , # starting 3.2.0 bokeh not supporting python3.8; relax after ADS will drop py3.8 support
151
125
" folium>=0.12.1" ,
@@ -203,9 +177,34 @@ pii = [
203
177
" spacy-transformers==1.2.5" ,
204
178
" spacy==3.6.1" ,
205
179
]
206
- llm = [
207
- " langchain>=0.0.295" ,
208
- " evaluate>=0.4.0" ,
180
+ llm = [" langchain>=0.1.10" , " evaluate>=0.4.0" ]
181
+ aqua = [" fire" , " cachetools" ]
182
+
183
+ # To reduce backtracking (decrese deps install time) during test/dev env setup reducing number of versions pip is
184
+ # trying to use. Ref - https://pip.pypa.io/en/stable/topics/dependency-resolution/#possible-ways-to-reduce-backtracking.
185
+ # Revisit this section continuously and update to recent version of libraries. focus on pyt3.9/3.10 versions.
186
+ testsuite = [
187
+ " dask==2023.5.0; python_version=='3.8'" ,
188
+ " dask==2023.10.1; python_version>='3.9'" , # oci-cli depends on click==8.0.4, dask>2023.10.1 depends on "click>=8.1"
189
+ " arff" ,
190
+ " category_encoders==2.6.3" , # set version to avoid backtracking
191
+ " cohere==4.53" , # set version to avoid backtracking
192
+ " dask==2023.10.1; python_version>='3.9'" , # oci-cli depends on click==8.0.4, dask>2023.10.1 depends on "click>=8.1"
193
+ " dask==2023.5.0; python_version=='3.8'" ,
194
+ " faiss-cpu" ,
195
+ " fastparquet==2024.2.0" , # set version to avoid backtracking
196
+ " imbalanced-learn" ,
197
+ " lxml" ,
198
+ " mysql-connector-python" ,
199
+ " nltk" ,
200
+ " opensearch-py" ,
201
+ " pdfplumber" ,
202
+ " py4j" ,
203
+ " pyarrow" ,
204
+ " statsmodels; python_version=='3.8'" ,
205
+ " statsmodels>=0.14.1; python_version>='3.9'" , # cython3.0 compatibility added in v0.14.1
206
+ " tables" ,
207
+ " xlrd>=1.2.0" ,
209
208
]
210
209
211
210
@@ -217,7 +216,7 @@ llm = [
217
216
ads = " ads.cli:cli"
218
217
219
218
[tool .flit .module ]
220
- name = " ads" # name for local build and import, see https://flit.pypa.io/en/latest/pyproject_toml.html#module-section
219
+ name = " ads" # name for local build and import, see https://flit.pypa.io/en/latest/pyproject_toml.html#module-section
221
220
222
221
[tool .flit .sdist ]
223
222
# By default `ads` folder and `LICENSE.txt` file included in sdist. Folders `docs` and `tests` are excluded, as weel as other project files
0 commit comments