-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
46 lines (40 loc) · 1.71 KB
/
Copy pathpyproject.toml
File metadata and controls
46 lines (40 loc) · 1.71 KB
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
[build-system]
requires = ["setuptools>=61"]
build-backend = "setuptools.build_meta"
[project]
name = "datasync"
version = "0.1.0"
description = "Additive C:->S: mirror daemon plus an independent two-source verifier, built on Windows robocopy."
readme = "README.md"
requires-python = ">=3.9"
authors = [{ name = "Paul Varosy" }]
keywords = ["robocopy", "backup", "mirror", "windows", "smb", "verification"]
classifiers = [
"Operating System :: Microsoft :: Windows",
"Programming Language :: Python :: 3",
"Intended Audience :: Science/Research",
"Topic :: System :: Archiving :: Backup",
]
# Core is stdlib-only. The two optional deps below are imported lazily and only
# on the code paths that need them (a progress bar; the audit figure).
dependencies = []
[project.optional-dependencies]
progress = ["tqdm"] # live per-file progress bar (data_sync --progress)
viz = ["matplotlib"] # stacked-bar audit figure (data_verify --figure)
test = ["pytest"]
[project.scripts]
datasync-sync = "datasync.data_sync:_cli"
datasync-verify = "datasync.data_verify:_cli"
# GUI (not console) entry point: on Windows pip builds this with pythonw, so the
# widget launches with NO console window -- the same thing the Data Backup.bat
# does by hand. `pip install datasync` therefore already gives you a launcher
# (`datasync-widget`) on PATH; the .bat is for a double-click / a machine where
# the environment is not activated.
[project.gui-scripts]
datasync-widget = "datasync.data_sync_ui:main"
[tool.setuptools.packages.find]
where = ["src"]
# Ship the widget's icon inside the installed package so data_sync_ui can find it
# at runtime (it loads backup.ico from next to the module).
[tool.setuptools.package-data]
datasync = ["*.ico"]