diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 079ec86..1b8719d 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -26,10 +26,7 @@ jobs: - name: Install dependencies run: | python -m pip install --upgrade pip - python -m pip install setuptools wheel typing pillow numpy requests - python -m pip install -e . - python -m pip install ruff pytest - if [ -f requirements.txt ]; then pip install -r requirements.txt; fi + python -m pip install -e .["testing"] - name: Lint with ruff run: | # Run Ruff for linting diff --git a/setup.py b/setup.py index c3e1027..3f21b9e 100644 --- a/setup.py +++ b/setup.py @@ -1,6 +1,7 @@ import pathlib from setuptools import find_packages, setup + def get_version() -> str: rel_path = "src/loadimg/__init__.py" with open(rel_path, "r") as fp: @@ -10,6 +11,20 @@ def get_version() -> str: return line.split(delim)[1] raise RuntimeError("Unable to find version string.") + +extras = { + "testing": [ + "setuptools", + "wheel", + "typing", + "pillow", + "numpy", + "requests", + "ruff", + "pytest", + ] +} + setup( name="loadimg", version=get_version(), @@ -24,6 +39,7 @@ def get_version() -> str: license="Apache 2.0 License", package_dir={"": "src"}, packages=find_packages("src"), + extras_require=extras, include_package_data=True, classifiers=["Topic :: Utilities", "Programming Language :: Python :: 3.9"], requires=["setuptools", "wheel", "typing", "pillow", "numpy", "requests"],