Skip to content

Commit 5ac9f92

Browse files
committed
chore: add dependabot for automated dependency updates
Weekly updates for: - GitHub Actions (grouped minor/patch) - Python pip dependencies (grouped by type) - Rust Cargo dependencies (security team review)
1 parent 922ac1e commit 5ac9f92

File tree

1 file changed

+124
-0
lines changed

1 file changed

+124
-0
lines changed

.github/dependabot.yml

Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,124 @@
1+
# Dependabot configuration for cachekit-py
2+
# https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
3+
4+
version: 2
5+
6+
registries:
7+
# No private registries - all deps are public
8+
9+
updates:
10+
# ─────────────────────────────────────────────────────────────────────────
11+
# GitHub Actions
12+
# Keep CI/CD supply chain current
13+
# ─────────────────────────────────────────────────────────────────────────
14+
- package-ecosystem: "github-actions"
15+
directory: "/"
16+
schedule:
17+
interval: "weekly"
18+
day: "monday"
19+
time: "09:00"
20+
timezone: "America/Los_Angeles"
21+
commit-message:
22+
prefix: "ci"
23+
labels:
24+
- "dependencies"
25+
- "github-actions"
26+
reviewers:
27+
- "cachekit-io/maintainers"
28+
# Group minor/patch updates to reduce PR noise
29+
groups:
30+
actions-minor:
31+
patterns:
32+
- "*"
33+
update-types:
34+
- "minor"
35+
- "patch"
36+
37+
# ─────────────────────────────────────────────────────────────────────────
38+
# Python (pip/uv)
39+
# ─────────────────────────────────────────────────────────────────────────
40+
- package-ecosystem: "pip"
41+
directory: "/"
42+
schedule:
43+
interval: "weekly"
44+
day: "monday"
45+
time: "09:00"
46+
timezone: "America/Los_Angeles"
47+
commit-message:
48+
prefix: "chore"
49+
labels:
50+
- "dependencies"
51+
- "python"
52+
reviewers:
53+
- "cachekit-io/maintainers"
54+
# Ignore pre-releases unless explicitly opted in
55+
ignore:
56+
- dependency-name: "*"
57+
update-types: ["version-update:semver-prerelease"]
58+
# Group by type to reduce PR noise
59+
groups:
60+
# Security-sensitive dependencies get individual PRs
61+
# (not grouped - we want to review each)
62+
python-dev:
63+
patterns:
64+
- "pytest*"
65+
- "ruff"
66+
- "basedpyright"
67+
- "faker"
68+
- "hypothesis"
69+
update-types:
70+
- "minor"
71+
- "patch"
72+
python-runtime:
73+
patterns:
74+
- "redis*"
75+
- "pydantic*"
76+
- "tenacity"
77+
- "prometheus-client"
78+
- "psutil"
79+
update-types:
80+
- "minor"
81+
- "patch"
82+
python-serialization:
83+
patterns:
84+
- "blake3"
85+
- "msgpack"
86+
- "orjson"
87+
- "xxhash"
88+
update-types:
89+
- "minor"
90+
- "patch"
91+
92+
# ─────────────────────────────────────────────────────────────────────────
93+
# Rust (Cargo)
94+
# ─────────────────────────────────────────────────────────────────────────
95+
- package-ecosystem: "cargo"
96+
directory: "/rust"
97+
schedule:
98+
interval: "weekly"
99+
day: "monday"
100+
time: "09:00"
101+
timezone: "America/Los_Angeles"
102+
commit-message:
103+
prefix: "chore"
104+
labels:
105+
- "dependencies"
106+
- "rust"
107+
reviewers:
108+
- "cachekit-io/maintainers"
109+
- "cachekit-io/security" # Rust deps affect memory safety
110+
# Security-critical crates get individual attention
111+
# cachekit-core is pinned exactly, so dependabot won't touch it
112+
groups:
113+
rust-dev:
114+
patterns:
115+
- "criterion"
116+
- "proptest"
117+
- "divan"
118+
- "fastrand"
119+
- "iai-callgrind"
120+
- "pprof"
121+
- "ctor"
122+
update-types:
123+
- "minor"
124+
- "patch"

0 commit comments

Comments
 (0)