-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathpyproject.toml
More file actions
88 lines (76 loc) · 2.67 KB
/
Copy pathpyproject.toml
File metadata and controls
88 lines (76 loc) · 2.67 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
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
[build-system]
requires = ["setuptools>=45", "setuptools_scm[toml]>=6.2"]
build-backend = "setuptools.build_meta"
[project]
name = 'build-bits'
dynamic = ['readme', 'version']
description = 'Build Tool'
requires-python = '>=3.7'
keywords = ['HEP', 'ALICE']
license = { file = 'LICENSE.md' }
authors = [
{name = 'Giulio Eulisse', email = 'giulio.eulisse@cern.ch'},
{name = 'Timo Wilken', email = 'timo.wilken@cern.ch'},
{name = 'Predrag Buncic', email = 'predrag.buncic@cern.ch'},
{name = 'Sergio Garcia', email = 'sergio.garcia@cern.ch'},
]
classifiers = [
'Development Status :: 5 - Production/Stable',
'Intended Audience :: Developers',
'Topic :: Software Development :: Build Tools',
'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',
]
dependencies = [
'pyyaml',
'requests',
'distro',
'jinja2',
'boto3',
'cryptography',
]
[project.optional-dependencies]
test = [
'tox',
]
docs = [
'mkdocs',
'mkdocs-material',
'mkdocs-redirects',
]
[project.urls]
homepage = 'https://github.com/bitsorg/bits'
[tool.setuptools]
script-files = ["bits", "bitsBuild", "bitsDoctor", "bitsDeps", "pb"]
[tool.setuptools_scm]
write_to = "bits_helpers/_version.py"
[tool.setuptools.package-data]
bits_helpers = ['build_template.sh']
[tool.setuptools.packages.find]
where = ["."]
exclude = ["yaml"]
[tool.setuptools.dynamic]
readme = {file = ["README.md"], content-type = "text/markdown"}
[tool.ruff]
# Code formatter/linter — adopted per issue #59 (consensus: ruff).
# Match the historical .flake8 line length. NOTE: the codebase's hand-aligned
# 2-space style is intentionally NOT reformatted here; `ruff format` would rewrite
# essentially every file and is a separate, deliberate flag-day (see #59). This
# config drives a CHECK-ONLY lint gate.
line-length = 127
target-version = "py37"
[tool.ruff.lint]
# Start with the real-bug subset only — syntax errors (E9), bad comparisons/
# asserts (F63), misplaced statements (F7), undefined names (F82) — the same set
# the old (disabled) flake8 job enforced, and green today. Style/hygiene rules
# (E1/E2/E5/E7, F401 unused-import, F841 unused-var, …) are deliberately left out:
# enforcing them needs the format flag-day and/or a large one-off cleanup; ratchet
# them in later.
# WARNING: do NOT run `ruff check --fix` blindly on this tree — F401 strips
# import-for-side-effect probes (e.g. the `import psutil` availability check in
# args.py). Such imports carry an explicit `# noqa: F401`.
select = ["E9", "F63", "F7", "F82"]