Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 54 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Dependabot version updates. Security updates are switched on separately in
# the repo settings and do not depend on this file. Every Dependabot PR runs
# the normal CI (ci.yml triggers on pull_request); a human merges, as always.
#
# Not covered, on purpose:
# - The template's pins (requirements.txt.jinja, package.json.jinja) are Jinja
# files Dependabot cannot parse; they are bumped by hand with each package
# release, and the template-probe CI job catches stale ones.
# - The template's Docker base images (python:3.12-slim, node:22-slim) are
# runtime decisions for every future tool, not routine bumps, and the
# frontend Dockerfile is a .jinja file Dependabot would leave behind.
# - The Django packages (pip). They are libraries with lower bounds only; the
# tools pin the real versions. For pip Dependabot offers no "widen" (only
# lockfile-only, auto, increase, increase-if-necessary), and "auto" treats
# packages that are not on PyPI as apps — every strategy would raise the
# floors (Django>=5.1 → >=6.0) and force each tool to upgrade. Security
# updates still run for them via the repo settings.
version: 2

updates:
- package-ecosystem: github-actions
directory: /
schedule:
interval: weekly
day: monday
time: "06:00"
timezone: Europe/Berlin
groups:
github-actions:
patterns: ["*"]
commit-message:
prefix: "chore(deps)"

# @basicbar/ui. In-range updates only refresh package-lock.json (the
# published ranges stay as they are for the tools); a new major moves the
# range. TipTap packages must stay on one version, so they always travel
# together in their own PR.
- package-ecosystem: npm
directory: /packages/ui
schedule:
interval: weekly
day: monday
time: "06:00"
timezone: Europe/Berlin
versioning-strategy: increase-if-necessary
groups:
tiptap:
patterns: ["@tiptap/*"]
npm-minor-and-patch:
update-types: [minor, patch]
cooldown:
default-days: 7
commit-message:
prefix: "chore(deps)"
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,14 @@ Changelog ist die Upgrade-Anleitung für die Tools.

## [Unreleased]

### Repo

- Dependabot-Version-Updates eingeschaltet (`.github/dependabot.yml`):
wöchentlich, gruppiert, für GitHub Actions und `@basicbar/ui` (npm, TipTap
immer gemeinsam). Die Django-Pakete bleiben bewusst draußen, damit ihre
Untergrenzen nicht steigen. Die CI testet jeden Dependabot-PR. Für die
Tools ändert sich nichts.

### basicbar-pdf (→ wird `pdf/v0.1.0`)

**Neues Paket: gemeinsamer PDF-Rahmen** für herunterladbare Dokumente,
Expand Down
8 changes: 8 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,14 @@ pipx run copier copy . /tmp/probe --trust --defaults --vcs-ref HEAD --data proje
[ADR-0004](docs/ADR/0004-umzug-nach-github.md).
- Nach dem Paket-Release: Konsumenten-PRs in den Tools (Version bumpen,
Migrationsschritte aus dem Changelog ausführen, Suite + Build grün).
- **Dependabot** (`.github/dependabot.yml`) öffnet montags gruppierte PRs für
GitHub Actions und `packages/ui` (npm); die CI testet sie wie jeden PR,
gemerged wird von Hand. Nicht abgedeckt: die Django-Pakete (für pip gibt es
kein `widen`, jede Strategie würde die Untergrenzen anheben — Begründung in
der Datei) sowie die `.jinja`-Pins und Docker-Images des Templates; die
hebt man mit dem Paket-Release. Ein npm-Dependabot-PR ändert meist nur `package-lock.json`;
das ist **kein** ui-Release (Version/Tag nur, wenn sich `package.json`
oder der Paketcode ändert).

## Konventionen

Expand Down
Loading