File: pyproject.toml

package info (click to toggle)
yarsync 0.3.1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 652 kB
  • sloc: python: 2,615; makefile: 22
file content (105 lines) | stat: -rw-r--r-- 3,151 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# ----- #
# Build #
# ----- #

[build-system]
requires = ["setuptools>=61.0.0"]
# https://setuptools.pypa.io/en/latest/history.html#v61-0-0
# Since Python 3.6 is stuck with setuptools 59.6.0, it works only for python>=3.7
build-backend = "setuptools.build_meta"

[tool.setuptools.packages.find]
include = ["yarsync", "yarsync.*"]

# This is the entry-point
# https://setuptools.pypa.io/en/latest/userguide/entry_point.html
[project.scripts]
yarsync = "yarsync.yarsync:main"

# -------- #
# Metadata #
# -------- #

[project]
name = "yarsync"
authors=[{name="Yaroslav Nikitenko",email="metst13@gmail.com"}]
description = "Yet Another Rsync is a file synchronization and backup tool"
keywords=["distributed", "file", "synchronization", "rsync", "backup"]
readme = "README.rst"
requires-python = ">=3.6"
license = {text = 'GPLv3'}
# these are most recent formats for license fields,
# but they are not supported by many distributions. Try again in 5 years.
# license = "GPL-3.0"
# license-files = ["LICENSE"]
classifiers=[
    "Development Status :: 5 - Production/Stable",
    "Environment :: Console", 
    "Intended Audience :: End Users/Desktop",
    "Intended Audience :: System Administrators",
    "Operating System :: POSIX :: Linux",
    # remove in the future
    "License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
    "Programming Language :: Python :: 3 :: Only",
    "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",
    "Programming Language :: Python :: 3.13",
    "Programming Language :: Python :: Implementation :: CPython",
    "Programming Language :: Python :: Implementation :: PyPy",
    "Topic :: System :: Archiving",
    "Topic :: System :: Archiving :: Backup",
    "Topic :: System :: Archiving :: Mirroring",
    "Topic :: Utilities",
]
dynamic = ["version"]
dependencies = []

[project.urls]
Documentation = 'https://yarsync.readthedocs.io'
Source = 'https://github.com/ynikitenko/yarsync'
Tracker = 'https://github.com/ynikitenko/yarsync/issues'

# https://setuptools.pypa.io/en/latest/userguide/pyproject_config.html#dynamic-metadata
[tool.setuptools.dynamic]
version = {attr = "yarsync.version.__version__"}

# -------------------------- #
# Development / dependencies #
# -------------------------- #

[project.optional-dependencies]
documentation = [
    "furo",
    "myst-parser",
    "sphinx",
]

[dependency-groups]
dev = [
    "pip",
    "coverage",
    "pytest",
    "pytest-cov",
    "pytest-mock",
    "tox",
]

# ----------------- #
# Tox configuration #
# ----------------- #

[tool.tox]
requires = ["tox>=3.28.0"]
# Python 3.6 was tested separately.
env_list = ["3.7","3.8", "3.9", "3.10", "3.11", "3.12", "3.13", "pypy3"]

[tool.tox.env_run_base]
description = "Run test under {base_python}"
commands = [["pytest", "{posargs}"]]
# Activate the following line in case you wish to use tox with uv
#runner = "uv-venv-lock-runner"