What's Changed
- fix(auth): replace predictable JWT key padding with a random bootstrap key by @polterguy in #360
- fix(image): bound image dimensions and document trust of io.file.execute by @polterguy in #361
- feat(signals): declare slots a [whitelist] can never grant by @polterguy in #363
- fix(io): capture copy/move source before children run by @polterguy in #364
- fix(endpoint): capture mime.add extension before children run by @polterguy in #365
- fix(frontend): enable Invite user only when the backend can send links by @polterguy in #366
- fix(openai): save upload-only chat files outside the public www folder by @polterguy in #367
- fix(openai): validate chat upload types and store web files as text by @polterguy in #368
- chore: bump version to v24.4.15 by @polterguy in #369
Full Changelog: v24.4.14...v24.4.15