The AWS SDK throws "Region is missing" when S3Client is constructed
with an empty-string region, so any S3 feature (avatars, attachments,
presigned URL generation) is silently broken when S3_REGION is unset
— even though .env.example ships it unset and env.ts declares it
optional. The schema and the runtime disagreed about whether the var
was required.
Default to "us-east-1" in createS3Client. S3-compatible providers
(MinIO, Backblaze B2, R2, DigitalOcean Spaces, Wasabi) ignore the
region entirely; real AWS S3 users should set S3_REGION explicitly
to their bucket's actual region (clarified in .env.example).
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* added an icon of 512x512 for the manifest
* added a web app manifest
* added a screenshot for richer install on mobile
* added a screenshot for richer install ui on desktop
* added a document to include the manifest
* fixed the command to generate a better auth secret
* moved the link tag directly into the PageHead component
* fix: disabled email functionality unless email sending enabled
* feat: missing locale only russian complete
* chore: add ENABLE_EMAIL to docker compose
* chore: add translations
* fix: removed new env variable, and used SMTP_HOST instead for checking
* Revert "fix: removed new env variable, and used SMTP_HOST instead for checking"
This reverts commit 5f75237e06ac07bcbb073c25cdc9d6a9071e4011.
* feat: allow inviting members via link
* refactor: update env to disable email
* chore: update translations
---------
Co-authored-by: Henry <henry_ball@hotmail.co.uk>
* feat: implement Trello integration with OAuth and user fields
* feat: migrate Trello integration to new integrations table
* refactor: migrate Trello integration to use new integration system
* refactor: migrate Trello integration to use new integrations table
* fix: add loading check for Trello integration and update VSCode settings
* feat: enhance import boards UI with dynamic integration providers and local storage config
* feat: add select/unselect all buttons and loading state to board import form
* feat: add Trello import env vars on README
* docs: update Trello import guide to use OAuth flow instead of API keys
* feat: add integrations table for OAuth token management
* feat: connect trello from import modal
* refactor: consolidate Trello integration endpoints into unified integration router
* fix: trello import again
* refactor: generalize integration authorization flow and improve error handling
* refactor: update Trello API endpoints and tags for better organization
* feat: add Integrations tag to OpenAPI specification
* refactor: update Trello auth endpoint to use generic integration provider param
* refactor: move Trello integration logic from trello.ts to import.ts router
* refactor: consolidate Trello integration endpoints and fix API URL
* chore: remove debug logs
---------
Co-authored-by: Henry <henry_ball@hotmail.co.uk>
* feat: add password reset functionality with email template and credentials config
* feat: add authentication configuration options and improve development setup
* feat: add password-based authentication and signup control flags
* feat: update auth form to support name field
* fix: prevent password icon from overlaying the input text
---------
Co-authored-by: Henry <henry_ball@hotmail.co.uk>