-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathTaskfile.yml
More file actions
165 lines (133 loc) · 4.03 KB
/
Taskfile.yml
File metadata and controls
165 lines (133 loc) · 4.03 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
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
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
# https://taskfile.dev
version: '3'
vars:
GREETING: KumaROOT!
tasks:
default:
cmds:
- task --list
- task: status
silent: true
code:
desc: Start VS Code
cmds:
- uv run code .
# ============================================================================
# Pre-commit Hooks
# ============================================================================
pre-commit:setup:
desc: Install pre-commit hooks
cmds:
- uv run pre-commit install
- echo "Pre-commit hooks installed"
silent: true
pre-commit:
desc: Run pre-commit hooks on all files
cmds:
- uv run pre-commit run --all-files
- git status
pre-commit:update:
desc: Update pre-commit hooks to latest versions
cmds:
- uv run pre-commit autoupdate
- echo "Pre-commit hooks updated"
silent: true
pre-commit:uninstall:
desc: Uninstall pre-commit hooks
cmds:
- uv run pre-commit uninstall
- echo "Pre-commit hooks uninstalled"
silent: true
# ============================================================================
# Documentation tasks
# ============================================================================
docs:serve:
desc: Preview docs locally (sphinx-autobuild)
dir: docs
cmds:
- uv run make livehtml
docs:build:
desc: Build docs as static HTML
dir: docs
cmds:
- uv run make html
docs:pdf:
desc: Build docs as PDF
dir: docs
cmds:
- uv run make latexpdf
docs:clean:
desc: Clean docs build artifacts
dir: docs
cmds:
- uv run make clean
# ============================================================================
# Code example management tasks
# ============================================================================
examples:sync:
desc: Synchronize Python examples with jupytext (py -> ipynb -> md)
cmds:
- uv run jupytext --sync docs/examples/python/*.py
# ============================================================================
# Dependency management tasks - Update and check dependencies
# ============================================================================
deps:setup:
desc: Setup Python environment
cmds:
- uv sync --all-groups
deps:check:
desc: Check for outdated packages
cmds:
- uv lock --upgrade --dry-run
deps:audit:
desc: Audit dependencies for vulnerabilities
cmds:
- uv run pip-audit
deps:update:
desc: Update dependencies
cmds:
- uv lock --upgrade
# ============================================================================
# Version management tasks - Manage versions with commitizen
# ============================================================================
version:
desc: Show current version
cmds:
- git tag -l | sort -V | tail -n 1
silent: true
bump:check:
desc: Preview next version bump (dry-run)
cmds:
- echo "Preview of next version bump"
- uv run cz bump --check-consistency --changelog --dry-run
bump:patch:
desc: Bump patch version. Use this daily.
cmds:
- uv run cz bump --check-consistency --changelog --increment patch
bump:minor:
desc: Bump minor version. Use once when the month changed.
cmds:
- uv run cz bump --check-consistency --changelog --increment minor
bump:major:
desc: Bump major version. Use once when the year changed.
cmds:
- uv run cz bump --check-consistency --changelog --increment major
# ============================================================================
# Git management tasks - Manage Git
# ============================================================================
status:
desc: Show git status
cmds:
- git status
log:
desc: Show recent commits (last 10)
cmds:
- git log --oneline -10
push:
desc: Push commits to remote (main branch)
cmds:
- git push origin main
push:tags:
desc: Push commits and tags to remote
cmds:
- git push origin main --tags