From dfac13abc506473c220b81d03273d11f7867673b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pablo=20Correa=20G=C3=B3mez?= <ablocorrea@hotmail.com>
Date: Mon, 26 Feb 2024 19:10:58 +0100
Subject: [PATCH] Migrate from setup.py to pyproject.toml

---
 pyproject.toml | 41 ++++++++++++++++++++++++++++++++++++
 setup.py       | 56 --------------------------------------------------
 2 files changed, 41 insertions(+), 56 deletions(-)
 create mode 100644 pyproject.toml
 delete mode 100755 setup.py

diff --git a/pyproject.toml b/pyproject.toml
new file mode 100644
index 0000000..93e7f76
--- /dev/null
+++ b/pyproject.toml
@@ -0,0 +1,41 @@
+[build-system]
+requires = ["setuptools>=61.0.0"]
+build-backend = "setuptools.build_meta"
+
+[project]
+name = "mrhlpr"
+dynamic = ["version"]
+authors = [
+  {name = "postmarketOS Developers", email="info@postmarketos.org"}
+]
+description = "postmarketOS tools for interacting with gitlab MRs"
+readme = "README.md"
+license = {text = "GPL-3.0-or-later"}
+requires-python = ">=3.6"
+classifiers = [
+  "Development Status :: 5 - Production/Stable",
+  "Intended Audience :: Developers",
+  "License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
+  "Programming Language :: Python :: 3",
+  "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",
+]
+keywords = ["postmarketos", "gitlab"]
+
+[project.scripts]
+mrhlpr = "mrhlpr.frontend:main"
+mrtest = "mrtest.frontend:main"
+
+[project.optional-dependencies]
+completion = ["argcomplete"]
+
+[project.urls]
+Homepage = "https://www.postmarketos.org"
+
+[tool.setuptools.dynamic]
+version = {attr =  "mrhlpr.version"}
diff --git a/setup.py b/setup.py
deleted file mode 100755
index fd62196..0000000
--- a/setup.py
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/usr/bin/env python3
-# Copyright 2022 Oliver Smith
-# SPDX-License-Identifier: GPL-3.0-or-later
-import re
-import ast
-
-from setuptools import setup, find_packages
-
-from codecs import open
-from os import path
-
-
-here = path.abspath(path.dirname(__file__))
-_version_re = re.compile(r'version\s+=\s+(.*)')
-
-with open(path.join(here, 'mrhlpr/__init__.py'), 'rb') as f:
-    version = str(ast.literal_eval(_version_re.search(
-        f.read().decode('utf-8')).group(1)))
-
-with open(path.join(here, 'README.md'), encoding='utf-8') as f:
-    long_description = f.read()
-
-
-setup(
-    name='mrhlpr',
-    version=version,
-    description='postmarketOS tools for interacting with gitlab MRs',
-    long_description=long_description,
-    long_description_content_type='text/markdown',
-    author='postmarketOS Developers',
-    author_email='info@postmarketos.org',
-    url='https://www.postmarketos.org',
-    license='GPLv3',
-    python_requires='>=3.6',
-    classifiers=[
-        'Development Status :: 5 - Production/Stable',
-        'Intended Audience :: Developers',
-        'License :: OSI Approved :: GNU General Public License v3 (GPLv3)',
-        'Programming Language :: Python :: 3',
-        'Programming Language :: Python :: 3.6',
-        'Programming Language :: Python :: 3.7',
-        'Programming Language :: Python :: 3.8',
-    ],
-    keywords='postmarketos gitlab',
-    packages=find_packages(),
-    extras_require={
-        'completion': ['argcomplete'],
-    },
-    entry_points={
-        'console_scripts': [
-            'mrhlpr=mrhlpr.frontend:main',
-            'mrtest=mrtest.frontend:main',
-        ],
-    },
-    include_package_data=True,
-)
-- 
GitLab