From 2aac706ef785480a11da5ba92285929542a30a83 Mon Sep 17 00:00:00 2001 From: oop7 <110548351+oop7@users.noreply.github.com> Date: Sun, 25 Jan 2026 14:04:31 +0200 Subject: [PATCH] Migrate dependencies to pyproject.toml Replaced requirements.txt with pyproject.toml to modernize project configuration and dependency management using PEP 621 standards. This change improves compatibility with modern Python packaging tools. --- pyproject.toml | 68 ++++++++++++++++++++++++++++++++++++++++++++++++ requirements.txt | 7 ----- 2 files changed, 68 insertions(+), 7 deletions(-) create mode 100644 pyproject.toml delete mode 100644 requirements.txt diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..323bcdf --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,68 @@ +[build-system] +requires = ["setuptools"] +build-backend = "setuptools.build_meta" + +[project] +name = "ytsage" +version = "4.9.7" +description = "Modern YouTube downloader with a clean PySide6 interface." +authors = [ + { name = "oop7", email = "oop7_support@proton.me" }, +] +dependencies = [ + "PySide6>=6.10.1", + "requests>=2.32.5", + "pillow>=12.0.0", + "packaging>=25.0", + "markdown>=3.10", + "loguru>=0.7.3", + "setuptools>=80.9.0", +] +requires-python = ">=3.10,<3.15" +readme = "README.md" +license = "MIT" +classifiers = [ + "Development Status :: 5 - Production/Stable", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", + 'Programming Language :: Python :: 3.14', + "Intended Audience :: End Users/Desktop", + "Operating System :: OS Independent", + "Operating System :: Microsoft :: Windows", + "Operating System :: POSIX :: Linux", + "Operating System :: MacOS", + "Topic :: Internet :: WWW/HTTP", + "Topic :: Multimedia :: Video", + "Topic :: Multimedia :: Sound/Audio", + "Topic :: Desktop Environment", + "Environment :: X11 Applications :: Qt", + "Environment :: Win32 (MS Windows)", + "Environment :: MacOS X" +] + +keywords = ["youtube", "downloader", "video", "audio", "PySide6", "yt-dlp", "GUI"] + + +[project.scripts] +ytsage = "ytsage.main:main" + +[project.urls] +Homepage = "https://github.com/oop7/YTSage" +Bug-Tracker = "https://github.com/oop7/YTSage/issues" +Reddit = "https://www.reddit.com/r/NO-N_A_M_E/" + +[tool.setuptools] +include-package-data = true + +[tool.setuptools.packages.find] +include = ["ytsage*"] + +[tool.setuptools.package-data] +ytsage = [ + "assets/Icon/icon.png", + "assets/sound/notification.mp3", + "languages/*.json", +] \ No newline at end of file diff --git a/requirements.txt b/requirements.txt deleted file mode 100644 index 550f74e..0000000 --- a/requirements.txt +++ /dev/null @@ -1,7 +0,0 @@ -PySide6>=6.10.1 -requests>=2.32.5 -pillow>=12.0.0 -packaging>=25.0 -markdown>=3.10 -loguru>=0.7.3 -setuptools>=80.9.0 \ No newline at end of file