Skip to content

Commit 2311548

Browse files
authored
Merge pull request #4 from sandialabs/add-pyproject-toml
chore: Add pyproject.toml
2 parents 462f4b3 + e81f2d2 commit 2311548

File tree

1 file changed

+159
-0
lines changed

1 file changed

+159
-0
lines changed

pyproject.toml

+159
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,159 @@
1+
[build-system]
2+
requires = ["poetry-core"]
3+
build-backend = "poetry.core.masonry.api"
4+
5+
6+
[tool.poetry]
7+
name = "staged-script"
8+
version = "1.0.0"
9+
license = "LICENSE.md"
10+
readme = "README.md"
11+
keywords = [
12+
"automation",
13+
"command",
14+
"execution",
15+
"repeatability",
16+
"replicability",
17+
"reproducibility",
18+
"pipeline",
19+
"retry",
20+
"scripting",
21+
"shell",
22+
"stages",
23+
]
24+
repository = "https://github.com/sandialabs/staged-script"
25+
description = """
26+
A Python package enabling the development of robust automation scripts that \
27+
are subdivided into stages."""
28+
documentation = "https://staged-script.readthedocs.io"
29+
authors = [
30+
"Jason M. Gates <[email protected]>"
31+
]
32+
classifiers = [
33+
"Development Status :: 5 - Production/Stable",
34+
"Intended Audience :: Developers",
35+
"Intended Audience :: Information Technology",
36+
"Intended Audience :: System Administrators",
37+
"License :: OSI Approved :: BSD License",
38+
"Natural Language :: English",
39+
"Operating System :: OS Independent",
40+
"Programming Language :: Python :: 3",
41+
"Programming Language :: Python :: 3 :: Only",
42+
"Programming Language :: Python :: 3.8",
43+
"Programming Language :: Python :: 3.9",
44+
"Programming Language :: Python :: 3.10",
45+
"Programming Language :: Python :: 3.11",
46+
"Programming Language :: Python :: 3.12",
47+
"Topic :: Software Development",
48+
"Topic :: Software Development :: Debuggers",
49+
"Topic :: Software Development :: Documentation",
50+
"Topic :: Software Development :: User Interfaces",
51+
"Topic :: System :: Shells",
52+
"Topic :: System :: System Shells",
53+
"Typing :: Typed",
54+
]
55+
56+
57+
[tool.poetry.urls]
58+
CI = "https://github.com/sandialabs/staged-script/actions"
59+
Issues = "https://github.com/sandialabs/staged-script/issues"
60+
61+
62+
[tool.poetry.dependencies]
63+
python = ">=3.8"
64+
65+
66+
[tool.ruff]
67+
line-length = 79
68+
69+
70+
[tool.ruff.lint]
71+
extend-select = [
72+
"A",
73+
"B",
74+
"BLE",
75+
"C4",
76+
"C90",
77+
"D",
78+
"DTZ",
79+
"E",
80+
"EM",
81+
"ERA",
82+
"EXE",
83+
"FBT",
84+
"NPY",
85+
"PGH",
86+
"PL",
87+
"PT",
88+
"PTH",
89+
"RET",
90+
"RSE",
91+
"RUF",
92+
"S",
93+
"SIM",
94+
"TID",
95+
"TCH",
96+
"TRY",
97+
"UP",
98+
"W",
99+
]
100+
ignore = [
101+
"D212",
102+
]
103+
104+
105+
[tool.ruff.lint.per-file-ignores]
106+
"**/test_*.py" = ["S101"]
107+
108+
109+
[tool.ruff.lint.pydocstyle]
110+
convention = "google"
111+
112+
113+
[tool.semantic_release]
114+
build_command = "python3 -m pip install poetry && poetry build"
115+
commit_message = """
116+
chore: Release v{version}
117+
118+
Automatically generated by python-semantic-release."""
119+
version_variables = [
120+
"doc/source/conf.py:version",
121+
"staged_script/__init__.py:__version__",
122+
]
123+
version_toml = [
124+
"pyproject.toml:tool.poetry.version",
125+
]
126+
127+
128+
[tool.semantic_release.branches.master]
129+
match = "master"
130+
131+
132+
[tool.semantic_release.changelog]
133+
exclude_commit_patterns = [
134+
"Merge pull request",
135+
]
136+
137+
138+
[tool.semantic_release.commit_author]
139+
env = "GIT_COMMIT_AUTHOR"
140+
default = "semantic-release <semantic-release>"
141+
142+
143+
[tool.semantic_release.commit_parser_options]
144+
allowed_tags = [
145+
"build",
146+
"chore",
147+
"ci",
148+
"docs",
149+
"feat",
150+
"fix",
151+
"minor",
152+
"patch",
153+
"perf",
154+
"refactor",
155+
"style",
156+
"test",
157+
]
158+
minor_tags = ["feat", "minor"]
159+
patch_tags = ["fix", "patch", "perf"]

0 commit comments

Comments
 (0)