Releases: retrixe/concinnity
Releases · retrixe/concinnity
v1.1.0
🎉 the first Concinnity minor release, just before 2026! Happy holidays and a happy new year to all! 🎉
- Introducing user avatars! These can be changed from the settings page, stored in the AVIF format (didn't know JXL was gonna be back in vogue in 2026 :/), and are shown in chat messages and the user profile.
- We now support MariaDB and PostgreSQL equally for the backend 🎊 especially since my production deployment uses MariaDB.
- Added support for changing username and email from the settings page.
- Fixed #23 by adding support for changing the source of a video file, so you can now play remote files from a local source, and vice versa.
- You can change the video source at any time from the video settings menu, without disturbing others in the room or reloading the page.
- Fixed an XSS vulnerability present in chat messages.
- Various other bug fixes and UI improvements 🐛
Minor Changes
- feat(backend): add change username/email endpoints: aa8457d
- feat(frontend): add change username and email: 6f9db2b
- feat(backend): add get avatar endpoint and db: c23de64
- feat(backend): resize avatars on request with WebP: a9f7c9f
- feat(backend): add change avatar endpoint: 63adaad
- feat: expose avatars to frontend via user profiles: 1bccf43
- feat(frontend): show avatars in chat: 2a9e4b8
- feat(frontend): show profile picture in settings: d3a9402
- feat(backend): use AVIF encoding instead of WebP: 466f9cb
- feat(frontend): add avatar management buttons: 7fa2d8b
- feat(frontend): enable removing avatar: fe97ce7
- feat(frontend): enable changing avatar (fix #7): 47d2652
- feat(frontend): allow changing src video afterward Works toward fixing #23: 77d5169
- feat(frontend): play a local video from remote URL Fixes #23: 3dff7a6
- docs: treat PostgreSQL/MariaDB equally: 6fa5c6c
- feat(backend): send profile updates over room WS: 3db0830
- feat(frontend): support live user_profile_update: 4d5b4ee
- feat(backend): support BMP/TIFF/GIF/WebP avatars: a4b861c
- feat(backend): support AVIF avatar uploads: 098e43f
- feat(frontend): allow BMP/TIFF/GIF/AVIF/WebP avatars: 5b8ebef
Patches
- fix(backend): wrong HTTP code resp in subtitle API: 9233d3f
- refactor(backend): move user endpoints out of auth: 69e5cbc
- refactor(backend): avatar storage, fix resizing: f26857d
- refactor(backend): fix minor staticcheck nit: 0e844bf
- fix(backend): broken upgrades, nullable strings: b2f948f
- refactor(backend): mild perf fixes for GET avatar: 38caaf3
- fix(backend): delete old avatars on change: 62fbc58
- fix(backend): misc avatar issues: 1fbc9fb
- fix(backend): fix internal errors w/ MariaDB: 0804633
- fix(frontend): fix chat overflow, improve padding: b278ab6
- fix(frontend): disable dialog btns during API req: 50a4b49
- feat(backend): increase target character limit: ccee803
- fix(backend): fix upgrades on PostgreSQL/MariaDB: cff83b0
- fix(frontend): disable subs if retrieval fails: 810fa81
- feat(backend): store avatars in lossless quality: 6cca667
- chore(backend): document omitempty fields: d210c2d
- docs(backend): comment on user_profile_update data: 1ab604f
- fix(backend): don't store avatars losslessly: 225e61b
- refactor(backend): improve avatar handling code: bff33f2
- chore(frontend): update deps + fix linting: 676a86e
- fix(frontend): use resolve() and asset() for URLs: 736cf27
- chore(backend): update all deps: 7affb5e
- fix(frontend): add Vite devtools-json plugin: 8221246
- fix(frontend): fix XSS vulnerabilities in Chat: c72d87a
- feat(frontend): improve Chat list/quote/code style: afdb587
- chore(frontend): update Yarn: 68df123
v1.0.1
🎉 First patch release to Concinnity v1.0, this lays a lot of groundwork for the upcoming v1.1 version!
- Support for automatic PiP was implemented, fixing #37 (although, I haven't been able to coerce Chrome into making it work :/)
- An account dashboard was added, paving the way for #31 to be completed.
- The backend can now be run with the
--upgradeflag to run upgrades on launch. - CSS sizes have seen considerable changes as part of #38, fixing issues with different system font sizes.
- Reconnects now have exponential backoff and live countdowns.
- Bug fixes have been pursued for various issues:
- Video keyboard controls are no longer broken on Firefox, fixing #35
- Reconnects are now silent if possible, and chat is no longer broken when reconnecting.
- Subtitles are now guaranteed to be displayed in the video player when enabled, fixing #36
- WebVTT subtitles are no longer broken.
- A timeout is now implemented on the frontend, failing which the frontend will error and reconnect.
The browser should handle this, but Chrome/Linux doesn't seem to handle switching networks well. - Messages are no longer duplicated upon reconnecting.
- Reconnects are no longer attempted if a room is not found.
Patches
- feat(frontend): support auto picture-in-picture (https://developer.chrome.com/blog/automatic-picture-in-picture-media-playback): 03ae53e
- fix(frontend): video keyboard controls on Firefox: 43d71ff
- feat(backend): expose user email via status API: d441223
- feat(frontend): add hidden account settings page: 95d9da5
- feat(frontend): iterate on account settings: 6c609b6
- feat(backend): add change pw, delete acc endpoints: dc8cd08
- fix(backend): register delete account endpoint: e637620
- feat(frontend): finish delete account in settings: fba1649
- feat(backend): add
--upgradeflag for db changes: 7f7128f - fix(frontend): update heliodor, improve CSS sizes: 59b10d9
- fix(frontend): improve styling in settings page: 147b820
- fix(backend): don't untrack new conn on reconnect: 50589c3
- feat(backend): only broadcast reconnect if dc'ed: 5e0070d
- fix(backend): fix database upgrades with MariaDB: 05aa28c
- refactor(backend): split conn registration code: 00ecbef
- refactor(frontend): update CSS, improve dialog req: d432f95
- feat(frontend): add change password dialog: 71ffd04
- feat(frontend): expose account settings dashboard: 0b26f36
- refactor(frontend): use Heliodor Toast/IconButton: dae0dd3
- fix(frontend): ensure subtitles show, fix VTT subs: a4e3e2c
- fix(frontend): fix dupe message when only 1 msg: 76b243a
- fix(frontend): implement ping/pong deadlines in JS: 335ba8e
- fix(frontend): pre-empt reconnect upon timeout: b1c03e1
- feat(frontend): add reconnect live countdown: 0ba7b60
- fix(frontend): don't reconnect if room not found: ad9de4e
- fix(frontend): avoid multiple reconnects: 9a015a0
- feat(frontend): exponential backoff for reconnects: 2612289
- refactor(frontend): edit comment in reconn code: 5878350