Ulas Kalayci
e31f5d3b60
chore: release v0.24.0
2026-04-25 17:01:52 +02:00
Ulas Kalayci
a97f8651ac
chore: release v0.23.17
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-25 10:52:34 +02:00
Ulas Kalayci
38e5a7a330
chore: release v0.23.16
2026-04-24 09:02:56 +02:00
Ulas Kalayci
e720b1d96b
chore: release v0.23.15
2026-04-24 08:51:48 +02:00
Ulas Kalayci
56286bcea3
chore: release v0.23.13
2026-04-22 12:41:36 +02:00
Ulas Kalayci
00afd37c90
chore: release v0.23.12
2026-04-22 12:39:00 +02:00
Ulas Kalayci
420391286c
chore: release v0.23.11
2026-04-22 11:51:20 +02:00
Ulas Kalayci
ed2d47eae1
chore: release v0.23.10
2026-04-22 11:26:10 +02:00
Ulas Kalayci
88cd1b8d18
chore: release v0.23.9
2026-04-22 11:17:41 +02:00
Ulas Kalayci
6383f63f88
chore: release v0.23.8
2026-04-22 10:46:26 +02:00
Ulas Kalayci
df9256ebff
chore: release v0.23.7
2026-04-22 08:53:36 +02:00
Ulas Kalayci
372a51bdb1
chore: release v0.23.6
2026-04-22 08:50:43 +02:00
Ulas Kalayci
a30a069d05
chore: release v0.23.5
2026-04-22 08:42:20 +02:00
Ulas Kalayci
eaf48eb5fb
chore: release v0.23.4
2026-04-22 07:57:11 +02:00
Ulas Kalayci
a58e45683e
chore: release v0.23.3
2026-04-22 07:40:47 +02:00
Ulas Kalayci
6a4ef09912
chore: release v0.23.2
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-22 07:34:23 +02:00
Ulas Kalayci
8d92b59c73
chore: release v0.23.1
2026-04-22 00:05:34 +02:00
Ulas Kalayci
cad779ffa4
chore: release v0.23.0
2026-04-21 23:40:09 +02:00
Konrad M.
d9be970e9d
chore: remove optional encoding/iconv-lite peer deps from package-lock.json
2026-04-21 22:18:14 +02:00
Ulas Kalayci
9f321851f8
chore: release v0.22.2
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-21 17:23:30 +02:00
Ulas Kalayci
40252ee0dc
fix(sw): bump cache versions, add recipes to pre-cache, guard init IIFE
...
Resolves #72
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-21 15:41:46 +02:00
Ulas Kalayci
a253f0a7fa
chore: release v0.22.0
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-21 14:23:53 +02:00
Ulas Kalayci
41467a84b6
chore: release v0.21.1
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-21 14:03:33 +02:00
Ulas Kalayci
b40f47bc8b
chore: release v0.21.0
...
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-04-21 13:24:38 +02:00
Ulas Kalayci
7b663e08d4
chore: release v0.20.43
...
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-04-21 13:10:47 +02:00
Ulas Kalayci
8f55855364
chore: release v0.20.42
2026-04-21 10:38:45 +02:00
ulsklyc
d1ec7367a0
fix(auth): resolve post-login navigate race condition and add version display ( #68 ) ( #70 )
...
Root cause: when auth.me() failed during initial navigation, the catch block
called navigate('/login') without clearing _pendingLoginRedirect. The outer
finally then fired a second concurrent navigate('/login'), which held
isNavigating=true while running. If the user submitted the login form (or
iCloud Keychain autofilled credentials) before the second navigation
completed, navigate('/', user) was silently blocked by the isNavigating guard —
login appeared to succeed but the app never advanced to the dashboard.
Fix: clear _pendingLoginRedirect in the catch block so the finally handler
does not spawn the duplicate navigation.
Also adds a GET /api/v1/version endpoint (no auth required) and shows the
version on the login page, so users can verify their PWA has received the
latest cached JS.
Resolves #68
Co-authored-by: Ulas Kalayci <ulas.kalayci@googlemail.com >
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-21 08:19:53 +02:00
Ulas Kalayci
c1bdd4361d
chore: release v0.20.40
2026-04-21 06:55:52 +02:00
Ulas Kalayci
a8a50d31c5
chore: release v0.20.39
2026-04-21 06:52:52 +02:00
Ulas Kalayci
8559f98518
chore: release v0.20.37
2026-04-20 23:39:00 +02:00
Ulas Kalayci
554024b67c
chore: release v0.20.33
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-20 13:12:43 +02:00
Ulas Kalayci
4f7b73cf81
chore: release v0.20.32
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-20 12:05:40 +02:00
Ulas Kalayci
ecd4453b71
chore: release v0.20.31
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-20 11:02:00 +02:00
Ulas Kalayci
66f4cda41b
chore: release v0.20.30
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-20 10:53:56 +02:00
Ulas Kalayci
24dca4ed19
chore: release v0.20.29
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-20 10:50:55 +02:00
Ulas Kalayci
09b339e5f9
fix: use CSS media query as authoritative dark mode source for system preference
2026-04-20 10:37:24 +02:00
Ulas Kalayci
ca3da0eccd
fix: system theme selection immediately applies OS preference instead of reverting to light
2026-04-20 10:20:18 +02:00
Ulas Kalayci
e92487f464
feat: add FAB to meals page for quick meal creation ( #62 )
2026-04-20 10:15:04 +02:00
Ulas Kalayci
30d3d6cd13
fix: theme reverts to light on reload when system preference stored ( #61 )
2026-04-20 10:08:07 +02:00
Ulas Kalayci
e48d249fbe
chore: release v0.20.24
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-20 10:05:12 +02:00
Ulas Kalayci
aae895d704
feat: filter panel + english category keys
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-20 09:50:55 +02:00
Ulas Kalayci
b867917995
feat: kanban touch drag, swipe undo, dashboard task deep-link
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-20 09:44:50 +02:00
Ulas Kalayci
87be39364d
chore: release v0.20.20
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-20 07:17:30 +02:00
Ulas Kalayci
6fee35d1d9
chore: upgrade Express 4 → 5 and fix wildcard route for path-to-regexp v8 ( closes #54 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-18 22:23:57 +02:00
Ulas Kalayci
4aca9f4189
chore: update dependencies and add Dependabot ( closes #53 )
...
- better-sqlite3 9 → 12 (Node.js ≥22 required, already enforced)
- dotenv 16 → 17 (minor: logging now enabled by default)
- express-rate-limit 7 → 8 (IPv6 /56 subnet grouping, no deprecated options used)
- express-session 1.18 → 1.19
- helmet 8.0 → 8.1
- googleapis 144 → 171
- tsdav 2.0 → 2.1
- Add .github/dependabot.yml for automated weekly npm updates
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-18 19:30:25 +02:00
Ulas
6f532e45ec
feat: Liquid Glass Phase 4 - vibrancy, module tint, deeper glass penetration
...
Dashboard widgets, task cards, note items, meal slots, form inputs,
toolbars, and FAB actions now use semi-transparent glass backgrounds
with backdrop-filter blur. Each surface gets a subtle module accent
color tint via color-mix gradient overlay. App background uses a
radial accent gradient for ambient vibrancy.
New tokens: --glass-bg-card, --glass-bg-input, --glass-bg-toolbar,
--glass-tint-strength with full dark mode and accessibility overrides.
2026-04-14 07:35:59 +02:00
Ulas
a8275f5ec9
chore: bump version to 0.11.5
2026-04-05 13:50:03 +02:00
Ulas
9b21a72d40
chore: release v0.7.0 - audit remediation
...
Bump version to 0.7.0 and add CHANGELOG entry covering all
audit findings: bcrypt upgrade, ESM migration, session secret
hardening, structured logging, documentation translations,
and repository cleanup.
2026-04-04 01:22:39 +02:00
Ulas
ae8fbdd465
fix(deps): upgrade bcrypt 5.1.1->6.0.0 and patch path-to-regexp ReDoS
...
Resolves all 5 npm audit vulnerabilities (4 high in tar via
node-pre-gyp, 1 high path-to-regexp ReDoS). bcrypt 6 replaces
node-pre-gyp with prebuildify, removing 46 transitive packages.
2026-04-03 21:58:28 +02:00
Ulas
c66018ff49
chore: release v0.5.0 — update CHANGELOG, SPEC, and package version
2026-03-31 23:38:38 +02:00