Philipp Hörist pushed to branch port-pyproject at gajim / gajim
Commits: 8048bc1e by Philipp Hörist at 2022-12-29T00:51:17+01:00 change: Port to pyproject.toml
- - - - -
4 changed files:
- README.md - pyproject.toml - − setup.cfg - setup.py
Changes:
===================================== README.md ===================================== @@ -13,7 +13,7 @@ ### Runtime Requirements - [precis_i18n](https://pypi.org/project/precis-i18n/) - [packaging](https://pypi.org/project/packaging/) - [Pillow](https://pypi.org/project/Pillow/) -- [setuptools](https://pypi.org/project/setuptools/) +- [setuptools](https://pypi.org/project/setuptools/) (>=65.0.0) - [Gtk3](https://gitlab.com/gnome/gtk) (>=3.24.30) - [GLib](https://gitlab.com/gnome/glib) (>=2.60.0) - [GtkSourceView](https://gitlab.gnome.org/GNOME/gtksourceview) @@ -41,7 +41,7 @@ #### For Video and Audio Calls
### Install Requirements
-- [setuptools](https://pypi.org/project/setuptools/) +- [setuptools](https://pypi.org/project/setuptools/) (>=65.0.0) - [gettext](https://savannah.gnu.org/projects/gettext/)
### Running Tests
===================================== pyproject.toml ===================================== @@ -1,15 +1,82 @@ [build-system] requires = [ - "setuptools >= 43.0.0", + "setuptools >= 65.0.0", ] build-backend = "setuptools.build_meta"
+[project] +name = "gajim" +description = "A GTK XMPP Client" +readme = "README.md" +requires-python = ">=3.10" +license = {text = "GPL-3.0-or-later"} +authors = [ + {name = "Philipp Hörist", email = "philipp@hoerist.com"}, + {name = "Yann Leboulanger", email = "yann@leboulanger.org"}, +] +keywords = ["chat", "messaging", "im", "xmpp", "voip"] +classifiers = [ + "Development Status :: 5 - Production/Stable", + "Environment :: X11 Applications :: GTK", + "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", + "Operating System :: OS Independent", + "Programming Language :: Python :: 3.10", + "Topic :: Communications :: Chat", +] +dependencies = [ + "css-parser", + "keyring", + "nbxmpp>=3.2.5,<4.0.0", + "packaging", + "pillow", + "precis-i18n>=1.0.0", + "cryptography>=3.4.8", + "pycairo>=1.16.0", + "PyGObject>=3.42.0", +] +dynamic = ["version"] + +[project.urls] +homepage = "https://gajim.org" +repository = "https://dev.gajim.org/gajim/gajim" + +[project.optional-dependencies] +dev = [ + "ruff", + "codespell[toml]", + "nbxmpp @ git+https://dev.gajim.org/gajim/python-nbxmpp.git", + "PyGObject-stubs @ git+https://github.com/pygobject/pygobject-stubs.git", + "python-gitlab", + "sentry-sdk", +] + +[project.scripts] +gajim-remote = "gajim.gajim_remote:main" + +[project.gui-scripts] +gajim = "gajim.gajim:main" + +[tool.setuptools] +include-package-data = true + +[tool.setuptools.packages.find] +include = ["gajim*"] +# Necessary so gajim.data is recogniced as namespace package and all files +# under it are included as package-data +namespaces = true + +[tool.setuptools.package-data] +"gajim.data" = [ + "icons/**/index.theme", +] + +[tool.setuptools.dynamic] +version = {attr = "gajim.__version__"}
[tool.codespell] skip = "*__pycache__*,gajim/gui,gajim/data/icons,gajim/data/sounds" ignore-words-list = "claus,pres,ser,trough"
- [tool.pyright] pythonVersion = "3.10" pythonPlatform = "All" @@ -79,7 +146,6 @@ include = [ "gajim/plugins/*", ]
- [tool.ruff] line-length = 80
@@ -162,7 +228,6 @@ target-version = "py310" "test/no_gui/test_styling.py" = ["RUF001", "E501"] "test/no_gui/test_regex.py" = ["RUF001"]
- [tool.ruff.mccabe] max-complexity = 15
===================================== setup.cfg deleted ===================================== @@ -1,58 +0,0 @@ -[metadata] -name = gajim -version = attr: gajim.__version__ -description = A GTK XMPP client -long_description = file: README.md -long_description_content_type = text/markdown -author = Philipp Hoerist, Yann Leboulanger -author_email = gajim-devel@gajim.org -url = https://gajim.org -license = GPL v3 -keywords = chat,messaging,im,xmpp,voip -classifiers = - Development Status :: 5 - Production/Stable - Environment :: X11 Applications :: GTK - License :: OSI Approved :: GNU General Public License v3 (GPLv3) - Operating System :: OS Independent - Programming Language :: Python :: 3.10 - Topic :: Communications :: Chat - -[options] -python_requires = >=3.10 -packages = find: -test_suite = test -install_requires = - css-parser - keyring - nbxmpp>=3.2.5,<4.0.0 - packaging - pillow - precis-i18n>=1.0.0 - cryptography>=3.4.8 - pycairo>=1.16.0 - PyGObject>=3.42.0 - -[options.extras_require] -dev = - ruff - codespell[toml] - nbxmpp @ git+https://dev.gajim.org/gajim/python-nbxmpp.git - PyGObject-stubs @ git+https://github.com/pygobject/pygobject-stubs.git - python-gitlab - sentry-sdk - -[options.package_data] -gajim = - data/gui/*.ui - data/icons/hicolor/*/*/*.png - data/icons/hicolor/*/*/*.svg - data/other/* - data/sounds/*.wav - data/style/*.css - data/plugins/*/* - py.typed - -[options.packages.find] -exclude = - gajim.dev - test*
===================================== setup.py ===================================== @@ -190,13 +190,5 @@ def run(self): 'build_py': Build, 'install': Install, }, - entry_points={ - 'console_scripts': [ - 'gajim-remote = gajim.gajim_remote:main', - ], - 'gui_scripts': [ - 'gajim = gajim.gajim:main', - ] - }, data_files=data_files )
View it on GitLab: https://dev.gajim.org/gajim/gajim/-/commit/8048bc1eb31e76165f5155a6e367a0e88...