vikunja/pkg/routes
kolaente 6e851e2ec2 fix(tasks): add labels sequentially when the backend db serializes writes
Quick Add Magic with multiple labels (`*a *b *c`) fired all
`PUT /tasks/{id}/labels` requests concurrently via `Promise.all`. On
SQLite these overlap as read-then-write upgrade transactions, which the
busy_timeout can't resolve, so some requests fail with HTTP 500
("database is locked") and the labels are silently dropped while the
quick-add input gets stuck.

Expose a `concurrent_writes` flag on the shared `/info` response (true
for Postgres/MySQL, false for SQLite). The frontend config store reads
it and `addLabelsToTask` now branches: parallel `Promise.all` when the
backend supports concurrent writes, sequential awaits otherwise.

Fixes #2680
2026-06-19 15:58:02 +02:00
..
api fix(tasks): add labels sequentially when the backend db serializes writes 2026-06-19 15:58:02 +02:00
caldav feat(audit): attribute failed logins to the originating request 2026-06-12 08:56:08 +00:00
feeds refactor(feeds): extract atom feed builder + basic-auth validator for reuse 2026-06-17 20:35:28 +00:00
middleware fix(routes): generate request IDs at the start of the middleware chain 2026-06-12 08:56:08 +00:00
admin_gate.go feat(middleware): add RequireFeature and RequireSiteAdmin 404 gates 2026-04-20 18:55:06 +00:00
api_tokens.go feat(events): add auth boundary events 2026-06-12 08:56:08 +00:00
error_handler.go fix(deps): update module github.com/labstack/echo/v4 to v5 (#2131) 2026-01-24 20:38:32 +01:00
feature_gate.go feat(middleware): add RequireFeature and RequireSiteAdmin 404 gates 2026-04-20 18:55:06 +00:00
healthcheck.go fix(deps): update module github.com/labstack/echo/v4 to v5 (#2131) 2026-01-24 20:38:32 +01:00
metrics.go refactor(metrics): count entities on demand with a TTL cache 2026-05-30 13:48:01 +00:00
rate_limit.go fix(deps): update module github.com/labstack/echo/v4 to v5 (#2131) 2026-01-24 20:38:32 +01:00
resolve_project.go fix(api): uppercase project identifier before by-index lookup 2026-05-19 08:53:25 +00:00
routes.go feat(api/v2): expose websocket endpoint under /api/v2 2026-06-17 20:35:28 +00:00
sentry_middleware.go fix(deps): update module github.com/labstack/echo/v4 to v5 (#2131) 2026-01-24 20:38:32 +01:00
static.go fix: respect allow_icon_changes config on web and desktop 2026-06-01 09:40:37 +00:00
validation.go fix(attachments): extend upload file size to form data (#1577) 2025-09-30 22:23:07 +00:00