v1.41.0
New features:
- API tokens - create tokens for programmatic API access with
tvk_prefix and SHA-256 hashed storage. Tokens support permission scoping (restrict which operations a token can perform), project scoping (restrict access to specific projects), and optional expiration. Manage tokens from Account Settings. The full token is shown only once at creation. Tokens cannot manage other tokens. Available as both UI and API (/module/api-tokens). - Session management - users can view all active sessions with device name, IP and timestamps, revoke individual sessions, or sign out of all other devices at once.
- Real-time project sync - projects update instantly via Centrifugo when a user is added to, removed from, or has roles changed in a project. Built on a new
RealtimeDispatcherwith typed frontend event handler map, designed to scale for future real-time features. Auto-redirect to home when the current project becomes inaccessible.
Fixes:
- Collaboration user lookup case mismatch - adding a user to a project by email failed if the registered email had uppercase characters. Email is now lowercased before resolving the auth user.
- List changing issue https://github.com/Gimanh/taskview-community/issues/41
Documentation:
- Added API Tokens documentation (
/docs/features/api-tokens) - token format, authentication, permission scoping, project restrictions, usage example withtaskview-apipackage. - Added Sessions & Devices documentation (
/docs/features/sessions) - session lifecycle, device listing, remote logout.
Migration notes:
- Run database migration container.
