-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
refactor: move setting of package from setup.py to pyproject.toml
- Loading branch information
Showing
3 changed files
with
122 additions
and
55 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -10,6 +10,8 @@ __pycache__/ | |
.Python | ||
.venv | ||
env/ | ||
venv/ | ||
.venv/ | ||
build/ | ||
develop-eggs/ | ||
dist/ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,119 @@ | ||
[build-system] | ||
requires = ["setuptools"] | ||
build-backend = "setuptools.build_meta" | ||
|
||
[project] | ||
name = "ydata-profiling" | ||
authors = [ | ||
{name = "YData Labs Inc", email = "[email protected]"}, | ||
] | ||
description="Generate profile report for pandas DataFrame" | ||
readme = "README.md" | ||
requires-python=">=3.7, <3.12" | ||
keywords=["pandas", "data-science", "data-analysis", "python", "jupyter", "ipython"] | ||
license = {text = "MIT"} | ||
classifiers=[ | ||
"Development Status :: 5 - Production/Stable", | ||
"Topic :: Software Development :: Build Tools", | ||
"License :: OSI Approved :: MIT License", | ||
"Environment :: Console", | ||
"Operating System :: OS Independent", | ||
"Intended Audience :: Science/Research", | ||
"Intended Audience :: Developers", | ||
"Intended Audience :: Financial and Insurance Industry", | ||
"Intended Audience :: Healthcare Industry", | ||
"Topic :: Scientific/Engineering", | ||
"Framework :: IPython", | ||
"Programming Language :: Python :: 3", | ||
"Programming Language :: Python :: 3.7", | ||
"Programming Language :: Python :: 3.8", | ||
"Programming Language :: Python :: 3.9", | ||
"Programming Language :: Python :: 3.10", | ||
"Programming Language :: Python :: 3.11", | ||
] | ||
|
||
dependencies = [ | ||
"scipy>=1.4.1, <1.12", | ||
"pandas>1.1, <2.1, !=1.4.0", | ||
"matplotlib>=3.2, <3.8", | ||
"pydantic>=1.8.1, <2", | ||
"PyYAML>=5.0.0, <6.1", | ||
"jinja2>=2.11.1, <3.2", | ||
"visions[type_image_path]==0.7.5", | ||
"numpy>=1.16.0,<1.24", | ||
# Could be optional | ||
# Related to HTML report | ||
"htmlmin==0.1.12", | ||
# Correlations | ||
"phik>=0.11.1,<0.13", | ||
# Examples | ||
"requests>=2.24.0, <3", | ||
# Progress bar | ||
"tqdm>=4.48.2, <5", | ||
"seaborn>=0.10.1, <0.13", | ||
"multimethod>=1.4, <2", | ||
# metrics | ||
"statsmodels>=0.13.2, <1", | ||
# type checking | ||
"typeguard>=2.13.2, <3", | ||
"imagehash==4.3.1", | ||
"wordcloud>=1.9.1", | ||
"dacite>=1.8", | ||
] | ||
|
||
dynamic = ["version"] | ||
|
||
[project.optional-dependencies] | ||
# dependencies for development and testing | ||
dev = [ | ||
"black>=20.8b1", | ||
"codecov", | ||
"coverage~=6.5", | ||
"isort>=5.0.7", | ||
"kaggle", | ||
"nbval", | ||
"pip-tools", | ||
"pre-commit>=2.8.2", | ||
"pytest", | ||
"pytest-cov", | ||
"pyarrow", | ||
"twine>=3.1.1", | ||
"wheel", | ||
] | ||
pandas = [ | ||
"autodoc_pydantic", | ||
"myst-parser>=0.18.1", | ||
"sphinx_rtd_theme>=0.4.3", | ||
"sphinx-autodoc-typehints>=1.10.3", | ||
"sphinx-multiversion>=0.2.3", | ||
"twine", | ||
"virtualenv>=20.0.33", | ||
] | ||
# this provides the recommended pyspark and pyarrow versions for spark to work on pandas-profiling | ||
# note that if you are using pyspark 2.3 or 2.4 and pyarrow >= 0.15, you might need to | ||
# set ARROW_PRE_0_15_IPC_FORMAT=1 in your conf/spark-env.sh for toPandas functions to work properly | ||
spark = [ | ||
"pyspark>=2.3.0", | ||
"pyarrow>=2.0.0", | ||
] | ||
notebook = [ | ||
"jupyter-client>=5.3.4", | ||
"jupyter-core>=4.6.3", | ||
"ipywidgets>=7.5.1", | ||
] | ||
|
||
[tool.setuptools.packages.find] | ||
where = ["src"] | ||
|
||
[tool.setuptools.package-data] | ||
ydata_profiling = ["py.typed"] | ||
|
||
[tool.setuptools] | ||
include-package-data = true | ||
|
||
[project.scripts] | ||
ydata_profiling = "ydata_profiling.controller.console:main" | ||
pandas_profiling = "ydata_profiling.controller.console:main" | ||
|
||
[project.urls] | ||
homepage = "https://github.com/ydataai/ydata-profiling" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,16 +1,12 @@ | ||
from pathlib import Path | ||
|
||
from setuptools import find_packages, setup | ||
from setuptools import setup | ||
|
||
# Read the contents of README file | ||
source_root = Path(".") | ||
with (source_root / "README.md").open(encoding="utf-8") as f: | ||
long_description = f.read() | ||
|
||
# Read the requirements | ||
with (source_root / "requirements.txt").open(encoding="utf8") as f: | ||
requirements = f.readlines() | ||
|
||
try: | ||
version = (source_root / "VERSION").read_text().rstrip("\n") | ||
except FileNotFoundError: | ||
|
@@ -20,58 +16,8 @@ | |
version_file.write(f"__version__ = '{version}'") | ||
|
||
setup( | ||
name="ydata-profiling", | ||
version=version, | ||
author="YData Labs Inc", | ||
author_email="[email protected]", | ||
packages=find_packages("src"), | ||
package_dir={"": "src"}, | ||
url="https://github.com/ydataai/ydata-profiling", | ||
license="MIT", | ||
description="Generate profile report for pandas DataFrame", | ||
python_requires=">=3.7, <3.12", | ||
install_requires=requirements, | ||
extras_require={ | ||
"notebook": [ | ||
"jupyter-client>=5.3.4", | ||
"jupyter-core>=4.6.3", | ||
"ipywidgets>=7.5.1", | ||
], | ||
"unicode": [ | ||
"tangled-up-in-unicode==0.2.0", | ||
], | ||
}, | ||
package_data={ | ||
"ydata_profiling": ["py.typed"], | ||
}, | ||
include_package_data=True, | ||
classifiers=[ | ||
"Development Status :: 5 - Production/Stable", | ||
"Topic :: Software Development :: Build Tools", | ||
"License :: OSI Approved :: MIT License", | ||
"Environment :: Console", | ||
"Operating System :: OS Independent", | ||
"Intended Audience :: Science/Research", | ||
"Intended Audience :: Developers", | ||
"Intended Audience :: Financial and Insurance Industry", | ||
"Intended Audience :: Healthcare Industry", | ||
"Topic :: Scientific/Engineering", | ||
"Framework :: IPython", | ||
"Programming Language :: Python :: 3", | ||
"Programming Language :: Python :: 3.7", | ||
"Programming Language :: Python :: 3.8", | ||
"Programming Language :: Python :: 3.9", | ||
"Programming Language :: Python :: 3.10", | ||
"Programming Language :: Python :: 3.11", | ||
], | ||
keywords="pandas data-science data-analysis python jupyter ipython", | ||
long_description=long_description, | ||
long_description_content_type="text/markdown", | ||
entry_points={ | ||
"console_scripts": [ | ||
"ydata_profiling = ydata_profiling.controller.console:main", | ||
"pandas_profiling = ydata_profiling.controller.console:main", | ||
] | ||
}, | ||
options={"bdist_wheel": {"universal": True}}, | ||
) |