File: pyproject.toml

package info (click to toggle)
datalad 1.3.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 7,132 kB
  • sloc: python: 69,299; sh: 1,521; makefile: 220
file content (145 lines) | stat: -rw-r--r-- 4,613 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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
[project]
authors = [
    { name = "The DataLad Team and Contributors", email = "team@datalad.org" },
]

name = "datalad"
description = "Distributed system for joint management of code, data, and their relationship"
requires-python = ">= 3.10"
dependencies = [
    # core
    "platformdirs",
    "chardet>=3.0.4",                                    # rarely used but small/omnipresent
    "colorama; platform_system=='Windows'",
    "distro",
    "iso8601",
    "humanize",
    "fasteners>=0.14",
    "packaging",
    "patool>=1.7",
    "tqdm>=4.32.0",
    "typing_extensions>=4.0.0; python_version < '3.11'",
    "annexremote",
    # downloaders
    "boto3",
    "keyring>=20.0,!=23.9.0",
    "keyrings.alt",
    "msgpack",
    "requests>=1.2",
    # publish
    "python-gitlab", # required for create-sibling-gitlab
]
dynamic = ["version"]
classifiers = [
    "Development Status :: 5 - Production/Stable",
    "Environment :: Console",
    "Intended Audience :: Developers",
    "Intended Audience :: Education",
    "Intended Audience :: End Users/Desktop",
    "Intended Audience :: Science/Research",
    "Natural Language :: English",
    "Operating System :: POSIX",
    "Programming Language :: Python :: 3 :: Only",
    "Programming Language :: Unix Shell",
    "Topic :: Communications :: File Sharing",
    "Topic :: Education",
    "Topic :: Internet",
    "Topic :: Other/Nonlisted Topic",
    "Topic :: Scientific/Engineering",
    "Topic :: Software Development :: Libraries :: Python Modules",
    "Topic :: Software Development :: Version Control :: Git",
    "Topic :: Utilities",
]
license = "MIT"
license-files = ["COPYING"]
readme = "README.md"

[project.urls]
Homepage = "https://www.datalad.org"
"Developer docs" = "https://docs.datalad.org/en/stable"
Documentation = "https://handbook.datalad.org"
Repository = "https://github.com/datalad/datalad"
Issues = "https://github.com/datalad/datalad/issues"
RRID = "https://identifiers.org/RRID:SCR_003931"

[project.optional-dependencies]
downloaders-extra = ["requests_ftp"]
misc = [
    "argcomplete>=1.12.3", # optional CLI completion
    "pyperclip",           # clipboard manipulations
    "python-dateutil",     # add support for more date formats to check_dates
]
tests = [
    "BeautifulSoup4",        # VERY weak requirement, still used in one of the tests
    "httpretty>=0.9.4",      # Introduced py 3.6 support
    "mypy",
    "pytest>=7.0",           # https://github.com/datalad/datalad/issues/7555
    "pytest-cov",
    "pytest-retry",
    "pytest-fail-slow~=0.2",
    "types-python-dateutil",
    "types-requests",
    "vcrpy",
]
duecredit = [
    "duecredit", # needs >= 0.6.6 to be usable, but should be "safe" with prior ones
]
full = ["datalad[downloaders-extra,misc,tests,duecredit]"]
devel-docs = [
    # used for converting README.md -> .rst for long_description
    "pypandoc",
    # Documentation
    "sphinx>=4.3.0",
    "sphinx-autodoc-typehints",
    "sphinx-rtd-theme>=0.5.1",
]
devel-utils = [
    "asv",             # benchmarks
    "coverage!=7.6.5,!=7.13.1",  # 7.13.1: ConfigError with '..' in config paths on macOS
    "gprof2dot",       # rendering cProfile output as a graph image
    "psutil",
    "pytest-xdist",    # parallelize pytest runs etc
    # disable for now, as it pulls in ipython 6, which is PY3 only
    #"line-profiler",
    # necessary for accessing SecretStorage keyring (system wide Gnome
    # keyring)  but not installable on travis, IIRC since it needs connectivity
    # to the dbus whenever installed or smth like that, thus disabled here
    # but you might need it
    # "dbus-python",
    "scriv", # changelog
]
devel = ["datalad[full,devel-docs,devel-utils]"]

[project.scripts]
datalad = "datalad.cli.main:main"
git-annex-remote-datalad-archives = "datalad.customremotes.archives:main"
git-annex-remote-datalad = "datalad.customremotes.datalad:main"
git-annex-remote-ria = "datalad.customremotes.ria_remote:main"
git-annex-remote-ora = "datalad.distributed.ora_remote:main"
git-credential-datalad = "datalad.local.gitcredential_datalad:git_credential_datalad"

[build-system]
# wheel to get more lightweight (not EASY-INSTALL) entry-points
requires = [
    "packaging",
    "setuptools>=59.0.0",
    "wheel",
    "fasteners",
    "looseversion",
    "typing_extensions>=4.0.0; python_version < '3.11'",
]

[tool.setuptools]
include-package-data = true

[tool.setuptools.packages.find]
where = ["."]
include = ["datalad*"]

[tool.setuptools.dynamic]
version = { attr = "datalad.__version__" }

[tool.isort]
force_grid_wrap = 2
include_trailing_comma = true
multi_line_output = 3