mirror of
https://github.com/deadc0de6/dotdrop.git
synced 2026-02-04 15:39:43 +00:00
Running dotdrop under recent releases of Python — 3.12 and 3.13 — [outputs syntax warnings] when from the docopt module. [outputs syntax warnings]: https://docs.python.org/3/whatsnew/3.12.html#other-language-changes <details> <summary>Output with syntax warnings on Python 3.12 and 3.13</summary> Command to run `dotdrop` with Python 3.12: rm -rf ~/.cache/uv \ && ~/.local/bin/uv tool run --python=python3.12 dotdrop install --profile=default Output: ``` Built docopt==0.6.2 Installed 15 packages in 7ms /home/maxwell-k/.cache/uv/archive-v0/IhmhuswofFs7ywBBC0kJs/lib64/python3.12/site-packages/docopt.py:165: SyntaxWarning: invalid escape sequence '\S' name = re.findall('(<\S*?>)', source)[0] /home/maxwell-k/.cache/uv/archive-v0/IhmhuswofFs7ywBBC0kJs/lib64/python3.12/site-packages/docopt.py:166: SyntaxWarning: invalid escape sequence '\[' value = re.findall('\[default: (.*)\]', source, flags=re.I) /home/maxwell-k/.cache/uv/archive-v0/IhmhuswofFs7ywBBC0kJs/lib64/python3.12/site-packages/docopt.py:207: SyntaxWarning: invalid escape sequence '\[' matched = re.findall('\[default: (.*)\]', description, flags=re.I) /home/maxwell-k/.cache/uv/archive-v0/IhmhuswofFs7ywBBC0kJs/lib64/python3.12/site-packages/docopt.py:456: SyntaxWarning: invalid escape sequence '\S' split = re.split('\n *(<\S+?>|-\S+?)', doc)[1:] _ _ _ __| | ___ | |_ __| |_ __ ___ _ __ / _` |/ _ \| __/ _` | '__/ _ \| '_ | \__,_|\___/ \__\__,_|_| \___/| .__/ v1.14.2 |_| 0 dotfile(s) installed. ``` The output is similar using `python3.13`. </details> [docopt] hasn't had a [release to PyPI] in 10 years. [No wheels] are published to PyPI. `docopt` is used throughout the [dotdrop] code base. Advice online suggests adopting [docopt-ng] instead. [docopt]: https://github.com/docopt/docopt [no wheels]: https://github.com/docopt/docopt/issues/502 [release to PyPI]: https://pypi.org/project/docopt/#history [docopt-ng]: https://github.com/jazzband/docopt-ng [dotdrop]: https://github.com/deadc0de6/dotdrop
67 lines
1.9 KiB
Python
67 lines
1.9 KiB
Python
"""setup.py"""
|
|
from os import path
|
|
from setuptools import setup, find_packages
|
|
from dotdrop.version import __version__ as VERSION
|
|
|
|
|
|
README = 'README.md'
|
|
here = path.abspath(path.dirname(__file__))
|
|
|
|
|
|
def read_readme(readme_path):
|
|
"""read readme content"""
|
|
with open(readme_path, encoding="utf-8") as file:
|
|
return file.read()
|
|
|
|
|
|
REQUIRES_PYTHON = '>=3'
|
|
URL = f'https://github.com/deadc0de6/dotdrop/archive/v{VERSION}.tar.gz'
|
|
|
|
setup(
|
|
name='dotdrop',
|
|
version=VERSION,
|
|
|
|
description='Save your dotfiles once, deploy them everywhere',
|
|
long_description=read_readme(README),
|
|
long_description_content_type="text/markdown; variant=GFM",
|
|
url='https://github.com/deadc0de6/dotdrop',
|
|
download_url=URL,
|
|
options={"bdist_wheel": {"python_tag": "py3"}},
|
|
# include anything from MANIFEST.in
|
|
include_package_data=True,
|
|
|
|
author='deadc0de6',
|
|
author_email='deadc0de6@foo.bar',
|
|
|
|
license='GPLv3',
|
|
python_requires=REQUIRES_PYTHON,
|
|
classifiers=[
|
|
'Development Status :: 5 - Production/Stable',
|
|
'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',
|
|
'License :: OSI Approved :: GNU General Public License v3 (GPLv3)',
|
|
],
|
|
|
|
keywords='dotfiles jinja2',
|
|
packages=find_packages(exclude=['tests*']),
|
|
install_requires=[
|
|
'docopt-ng', 'Jinja2', 'ruamel.yaml',
|
|
'python-magic', 'packaging', 'requests',
|
|
'tomli; python_version < "3.11"',
|
|
'tomli_w', 'distro'],
|
|
|
|
extras_require={
|
|
'dev': ['check-manifest'],
|
|
'test': ['coverage', 'pytest', 'pytest-cov'],
|
|
},
|
|
|
|
entry_points={
|
|
'console_scripts': [
|
|
'dotdrop=dotdrop:main',
|
|
],
|
|
},
|
|
)
|