This PR adds upper version constraints to the following dependencies in install_requires to avoid potential compatibility issues introduced by future major version releases.
Setting upper bounds on dependencies helps prevent potential compatibility issues that might arise from breaking changes in future major releases.
python_requires=">=3.7", # Minimum version of Python required
install_requires=[
"joblib==1.3.2",
"tqdm==4.66.4",
],
extras_require={
# For Python 3.7-specific versions
':python_version == "3.7"': [
"pip==24.0",
"numpy==1.21.4",
"pandas==1.1.5",
"scikit-learn==1.0.2",
"scipy==1.7.3",
"imbalanced-learn==0.9.0"
],
# For Python 3.8
':python_version >= "3.8" and python_version <"3.9"': [
"pip==24.2",
"setuptools==75.1.0",
"wheel==0.44.0",
"numpy>=1.21.4, <1.26",
"pandas>=1.3.5, <1.5.3",
"scikit-learn>=1.0.2, <1.2.2",
"scipy>=1.6.3, <1.10.1",
"imbalanced-learn==0.12.4"
],
# For Python 3.9-3.10
':python_version >= "3.9" and python_version < "3.11"': [
"pip==24.2",
"setuptools==75.1.0",
"wheel==0.44.0",
"numpy>=1.21.4, <1.26",
"pandas>=1.3.5, <2.2.2",
"scikit-learn>=1.0.2, <1.3",
"scipy>=1.6.3, <1.11",
"imbalanced-learn==0.12.4"
],
# For Python 3.11 and later
':python_version >= "3.11"': [
"pip==24.2",
"setuptools==75.1.0",
"wheel==0.44.0",
"numpy==1.26",
"pandas==2.2.2",
"scikit-learn==1.5.1",
"scipy==1.14.0",
"imbalanced-learn==0.12.4"
],
},
)
By constraining these packages, we ensure that the code continues to work as expected within the specified version ranges while allowing for minor updates and patches.
This PR adds upper version constraints to the following dependencies in
install_requires
to avoid potential compatibility issues introduced by future major version releases.Setting upper bounds on dependencies helps prevent potential compatibility issues that might arise from breaking changes in future major releases.