Use poetry instead of setuptools
Poetry is a PEP-517-compliant alternative to setuptools
and is consequently a preferred build-management system for PyPI. Poetry also simplifies and consolidates the files involved in packaging for PyPI, specifically.
Because README
is rendered from Markdown or reStructuredText on the front page of a project on both PyPI and Gitlab, I converted the README
to use Markdown. PyPI does not render README
from setup.py
by default (though it's possible to use a custom function to include it dynamically), while Poetry does not require any additional code to include the README
(among other bits of metadata). This should fix the missing description area on the pyxdg
PyPI page and improve the general searchability of the package. It also seems to be common practice to include short code example snippets in the README
on PyPI, but that can wait for the time being.
Additionally, I moved COPYING
into the package folder and replaced the copy in the top-level directory with a symbolic link to the copy in the package folder, so that COPYING
remains part of the package when it is installed (and doesn't need to be included separately).
I haven't figured out running unit tests through Poetry, but I didn't change any of the source files themselves. It would probably be most useful to test an installed version of the package rather than just the source code itself, but I'm not quite sure how to do that. It would probably also be useful to upload this to the PyPI test server and test the version installed from there, as well, but I would rather figure out local tests before I try and test a version installed through pip
.