From 964c0466bcd6c5d8b02a925aa46707e62920b72b Mon Sep 17 00:00:00 2001 From: Kumi Date: Thu, 12 Dec 2024 09:11:13 +0100 Subject: [PATCH] chore: Switch to pyproject.toml for build configuration Removes obsolete setup.py and GitHub workflow for PyPI deployment, shifting build configuration to pyproject.toml. Updates version to 0.13.0 to align with the new configuration. This change enhances maintainability by consolidating build settings and simplifying dependency management. --- .github/workflows/upload-pypi.yml | 20 --------------- cube2sphere/version.py | 2 +- pyproject.toml | 39 ++++++++++++++++++++++++++++ setup.py | 42 ------------------------------- 4 files changed, 40 insertions(+), 63 deletions(-) delete mode 100644 .github/workflows/upload-pypi.yml create mode 100644 pyproject.toml delete mode 100644 setup.py diff --git a/.github/workflows/upload-pypi.yml b/.github/workflows/upload-pypi.yml deleted file mode 100644 index 8f0f2da..0000000 --- a/.github/workflows/upload-pypi.yml +++ /dev/null @@ -1,20 +0,0 @@ -name: upload-pypi -on: - push: - tags: v* -jobs: - build: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v1 - - name: Set up Python 3.7 - uses: actions/setup-python@v1 - with: - python-version: 3.7 - - name: Create sdist - run: python setup.py sdist - - name: Publish package to PyPI - uses: pypa/gh-action-pypi-publish@v1.0.0a0 - with: - user: __token__ - password: ${{ secrets.pypi_password }} diff --git a/cube2sphere/version.py b/cube2sphere/version.py index 0d3c8fc..d4cc7f5 100644 --- a/cube2sphere/version.py +++ b/cube2sphere/version.py @@ -1,2 +1,2 @@ __author__ = 'Xyene' -__version__ = '0.2.1' +__version__ = '0.13.0' diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..a8596ad --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,39 @@ +[build-system] +requires = ["setuptools>=42", "wheel"] +build-backend = "setuptools.build_meta" + +[project] +name = "cube2sphere" +version = "0.13.0" +description = "Utility to map 6 cube (cubemap, skybox) faces into an equirectangular (cylindrical projection, skysphere) map" +readme = "README.md" +authors = [ + { name = "Tudor Brindus", email = "me@tbrindus.ca" }, + { name = "Kumi", email = "cube2sphere@kumi.email" }, +] +classifiers = [ + "Development Status :: 3 - Alpha", + "Environment :: Console", + "Intended Audience :: Developers", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: 3.6", + "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", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", + "License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)", + "Operating System :: OS Independent", + "Programming Language :: Python", + "Topic :: Artistic Software", +] +urls = { "Homepage" = "http://git.private.coffee/kumi/cube2sphere" } + +[project.scripts] +cube2sphere = "cube2sphere.cube2sphere:main" + +[tool.setuptools.packages.find] +include = ["cube2sphere"] diff --git a/setup.py b/setup.py deleted file mode 100644 index 53c92e4..0000000 --- a/setup.py +++ /dev/null @@ -1,42 +0,0 @@ -#!/usr/bin/env python - -__author__ = 'Xyene' -from setuptools import setup, find_packages -import os - -with open(os.path.join(os.path.dirname(__file__), 'README.md')) as fh: - long_description = fh.read() - -with open(os.path.join(os.path.dirname(os.path.realpath(__file__)), 'cube2sphere', 'version.py')) as version: - exec (version.read()) - -setup(name='cube2sphere', - version=__version__, - description='Utility to map 6 cube (cubemap, skybox) faces into an equirectangular (cylindrical projection, skysphere) map', - long_description=long_description, - long_description_content_type='text/markdown', - author='Tudor Brindus', - author_email='me@tbrindus.ca', - url='http://github.com/Xyene/cube2sphere', - packages=find_packages(), - package_data={ - "cube2sphere": ["*.blend"], - }, - entry_points={ - 'console_scripts': ['cube2sphere=cube2sphere.cube2sphere:main'], - }, - classifiers=[ - 'Development Status :: 3 - Alpha', - 'Environment :: Console', - 'Intended Audience :: Developers', - 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', - 'Programming Language :: Python :: 3.7', - 'Programming Language :: Python :: 3.8', - 'License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)', - 'Operating System :: OS Independent', - 'Programming Language :: Python', - 'Topic :: Artistic Software' - ], -)