From 895db462ad318a4a551b75a415ae2a6ca384d1bd Mon Sep 17 00:00:00 2001 From: Florian Maurer Date: Wed, 8 Jul 2026 06:46:43 +0000 Subject: [PATCH] build: migrate from setup.py to pyproject.toml Uses setuptools.build_meta to replace the legacy setup.py script while maintaining the same metadata, entry points, and optional dev dependencies. --- pyproject.toml | 42 ++++++++++++++++++++++++++++++++++++++++++ setup.py | 41 ----------------------------------------- 2 files changed, 42 insertions(+), 41 deletions(-) delete mode 100644 setup.py diff --git a/pyproject.toml b/pyproject.toml index a11e251..7d805f8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,3 +1,45 @@ +[build-system] +requires = ["setuptools>=61"] +build-backend = "setuptools.build_meta" + +[project] +name = "windpowerlib" +version = "0.2.3dev" +description = "Creating time series of wind power plants." +readme = "README.rst" +license = { text = "MIT" } +authors = [ + { name = "oemof developer group", email = "windpowerlib@rl-institut.de" }, +] +urls = { Homepage = "http://github.com/wind-python/windpowerlib" } +requires-python = ">=3.9" +dependencies = [ + "pandas", + "requests", +] + +[project.optional-dependencies] +dev = [ + "jupyter", + "matplotlib", + "nbsphinx", + "numpy", + "pytest", + "sphinx >= 1.4", + "sphinx_rtd_theme", +] + +[tool.setuptools.packages.find] +where = ["."] +include = ["windpowerlib*"] + +[tool.setuptools.package-data] +windpowerlib = [ + "data/*.csv", + "data/default_turbine_data/*.csv", + "oedb/*.csv", +] + [tool.black] line-length = 79 target-version = ['py310', 'py311', 'py312'] diff --git a/setup.py b/setup.py deleted file mode 100644 index 8672c49..0000000 --- a/setup.py +++ /dev/null @@ -1,41 +0,0 @@ -import os -from setuptools import setup - - -def read(fname): - return open(os.path.join(os.path.dirname(__file__), fname)).read() - - -setup( - name="windpowerlib", - version="0.2.3dev", - description="Creating time series of wind power plants.", - url="http://github.com/wind-python/windpowerlib", - author="oemof developer group", - author_email="windpowerlib@rl-institut.de", - license="MIT", - packages=["windpowerlib"], - package_data={ - "windpowerlib": [ - os.path.join("data", "*.csv"), - os.path.join("data", "default_turbine_data", "*.csv"), - os.path.join("oedb", "*.csv"), - ] - }, - long_description=read("README.rst"), - long_description_content_type="text/x-rst", - zip_safe=False, - install_requires=["pandas", "requests"], - extras_require={ - "dev": [ - "jupyter", - "matplotlib", - "nbsphinx", - "numpy", - "pytest", - "pytest-notebook", - "sphinx >= 1.4", - "sphinx_rtd_theme", - ] - }, -)