Skip to content

Commit 0b1a981

Browse files
authored
Use poe as a task runner (#1355)
Make `hatch run foo` wrap the corresponding `poe` command.
1 parent 9f3629e commit 0b1a981

1 file changed

Lines changed: 22 additions & 11 deletions

File tree

pyproject.toml

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ dependencies = [
4949
"hypothesis>=4.36.0",
5050
"hypothesmith>=0.0.4",
5151
"maturin>=1.7.0,<1.8",
52+
"poethepoet>=0.35.0",
5253
"prompt-toolkit>=2.0.9",
5354
"pyre-check==0.9.18; platform_system != 'Windows'",
5455
"setuptools_scm>=6.0.1",
@@ -58,17 +59,27 @@ dependencies = [
5859
"slotscheck>=0.7.1",
5960
]
6061

61-
[tool.hatch.envs.default.scripts]
62-
fixtures = ["python scripts/regenerate-fixtures.py", "git diff --exit-code"]
62+
[tool.poe.tasks]
63+
fixtures = ["regenerate-fixtures", "_assert_no_changes"]
64+
regenerate-fixtures = "python scripts/regenerate-fixtures.py"
65+
_assert_no_changes = "git diff --exit-code"
66+
6367
format = "ufmt format libcst scripts"
64-
lint = [
65-
"flake8 libcst",
66-
"ufmt check libcst scripts",
67-
"python -m slotscheck libcst",
68-
"python scripts/check_copyright.py",
69-
]
70-
test = ["python --version", "python -m coverage run -m libcst.tests"]
71-
typecheck = ["pyre --version", "pyre check"]
68+
_flake8 = "flake8 libcst"
69+
_ufmt = "ufmt check libcst scripts"
70+
_slotscheck = "python -m slotscheck libcst"
71+
_check_copyright = "python scripts/check_copyright.py"
72+
lint = ["_flake8", "_ufmt", "_slotscheck", "_check_copyright"]
73+
test = "python -m coverage run -m libcst.tests"
74+
typecheck = "pyre check"
75+
docs = "sphinx-build -ab html docs/source docs/build"
76+
77+
[tool.hatch.envs.default.scripts]
78+
fixtures = "poe fixtures"
79+
format = "poe format"
80+
lint = "poe lint"
81+
test = "poe test"
82+
typecheck = "poe typecheck"
7283

7384
[tool.hatch.envs.docs]
7485
extra-dependencies = [
@@ -79,7 +90,7 @@ extra-dependencies = [
7990
"jinja2==3.1.6",
8091
]
8192
[tool.hatch.envs.docs.scripts]
82-
docs = "sphinx-build -ab html docs/source docs/build"
93+
docs = "poe docs"
8394

8495
[tool.slotscheck]
8596
exclude-modules = '^libcst\.(testing|tests)'

0 commit comments

Comments
 (0)