v2.7.0
Pre-release
Pre-release
Note
2.7.x is a major update from 2.5.x and is a testing series for 2.8.x.
In other words, 2.7.x is an unannounced version of 2.8. We are skipping 2.6/2.7 because of how big this update is.
These same releases notes will be used for 2.8.
How to run this
The archive file contains a dist/ folder that needs to be placed into a copy of this cloned repo. Then you can serve it using grunt serve (from the root of this cloned repo) after following the getting started instructions. On a production site, you should to use these environment variables:
NODE_ENV=productionVAPID_EMAIL=mailto:test@example.comGI_PERSIST=sqlite(orGI_PERSIST=fs, butsqliteorrouteris recommended)
Important
Before upgrading, it's important to first delete the dist/ folder and replace it with the new contents from this archive.
Release Notes
Human-friendly release notes v2.5.1 → v2.7.0:
New Features
- Audio player for chat — Built-in player for audio attachments
- Attachment upload UI — Visual progress bar for file uploads
- Download spinner for attachments — Spinner shown during downloads
- Save draft messages — Drafts preserved when switching channels
- Markdown table support — New and improved table rendering in chat messages
Improvements
- Redesigned user settings menu — Better structure and navigation for settings
- Chat notification sounds — Improved defaults for message notifications
- Chat UX improvements — Better unread indicators and interaction patterns
- Chat menu icon update — New icon; fixed unread count not resetting
- Media blob caching — Caches loaded media to avoid redundant downloads
- Dashboard empty periods — Shows current and empty periods in bar graphs
- Locale-aware currency formatting — Respects browser locale and fixes BTC symbol
- Login error modal — Clearer messaging in login error dialog
- External links open in new tab — Chat links open in a new tab
- Channel name validation helper text — Added helper text to channel name field
- BrowserSync port override — Configurable via
--browsersync-port=<port> - Key rotation robustness — More reliable key rotation on member changes
- General API improvements — Refactoring, bugfixes, and Chelonia API migration
- Updated Russian translations
- Dependency updates — Bumped packages and ran
npm auditfor security - Fixed SBP warnings — Bumped
@sbp/okturtles.*to fix duplicate warnings
Bugfixes
- GIF animations preserved — Sent
.giffiles no longer lose animation - Fix same file re-attachment — Allows attaching the same file consecutively
- Fix multi-folder attachments — Allows attaching files from multiple folders
- Fix chatroom mention issues — Mentions no longer match special characters
- Removed members hidden in mentions — Exited/removed users hidden from @-list
- Fix badge count — Badge count respects all-messages setting, not just mentions
- Fix edit channel modal — Fixed missing logic and UI issues
- Fix emoji sizing after markdown — Emojis after markdown now size correctly
- Fix video player UI — Fixed layout for vertical videos
- Fix chat loading indicators —
loadingUp/loadingDownclear on room switch - Fix revoke invite double dialog — "Revoke invite" prompt no longer appears twice
- Fix text overflow — Stopped text overflowing in polls and UI areas
- Fix checkbox/radio scaling — Elements scale correctly with text sizes
- Fix blob URL and cache memory leaks — Revokes URLs and fixes cache index leaks
- Close unused MessagePorts — Closes ports after use to stop memory leaks
- Fail silently for namespace lookup —
namespace/lookupignores missing usernames
What's Changed
- Updated russian.strings by @Alizzka in #2944
- Final updated russian.strings by @Alizzka in #2947
- closes #2943 - improve docs by @taoeffect in #2945
- #2927 - Cache media blobs by @SebinSong in #2941
- #2951 - Same file cannot be attached in a row by @SebinSong in #2955
- #2935 - Fix some Chat UI bugs by @SebinSong in #2957
- #2953 - Cannot attach files from multiple folders by @SebinSong in #2956
- Support locale-aware currency formatting by @snowteamer in #2923
- #2954 - Build audio player for chat by @SebinSong in #2964
- #2950 - Overflowing texts in Chat poll by @SebinSong in #2967
- #2949 -
.giflosing animations by @SebinSong in #2968 - #2958 - Fail silently for
'namespace/lookup'by @SebinSong in #2971 - #2973 - 'Revoke invite' confirm dialog-box is displayed twice by @SebinSong in #2974
- #2959 - UI for attachment uploading by @SebinSong in #2970
- #2976 - Add
target="_blank"to the external links in chat by @SebinSong in #2978 - #2984 - Fix the video player UI bug by @SebinSong in #2985
- Clear loadingUp/Down on chatroom switch by @corrideat in #2977
- #2990 - Removed member still shows up in the group-chat mention list by @SebinSong in #2991
- #2982 - Show the current period and empty periods in the dashboard UI by @SebinSong in #2983
- Fix SBP warnings for already registered selectors by @snowteamer in #2994
- #3005 - Implement markdown table by @SebinSong in #3009
- #2986 - Login error modal improvement by @SebinSong in #2987
- #2999 - Chatroom mention issues by @SebinSong in #3007
- Bump qs, browser-sync and @cypress/request by @dependabot[bot] in #3015
- #2995 - Enhance menu structure by @SebinSong in #3004
- #3006 - option for browser-sync port override by @SebinSong in #3018
- Chat menu icon update by @SebinSong in #3020
- #2995 TODO2 - enhance menu structure for user settings by @SebinSong in #3024
- #3026 - Two text overflow issues by @SebinSong in #3029
- automated pr reviews by @taoeffect in #3032
- #3023 - Save draft message by @SebinSong in #3027
- #3021 - Checkbox/Radio elements look off in different text-size settings by @SebinSong in #3025
- #3028 - Edit channel modal issue by @SebinSong in #3031
- #3038 Chat UX improvements by @SebinSong in #3039
- Close unused message ports by @corrideat in #3037
- #3044 - Chat emoji size bug by @SebinSong in #3046
- Run npm audit by @corrideat in #3049
- #3022 Fix blob URL and cache index memory leaks by @taoeffect in #3042
- #3008 Chat notification sounds/UI improvements by @SebinSong in #3034
- Fix badge count by @corrideat in #3060
- General API improvements by @corrideat in #3057
- Key rotation robustness by @corrideat in #3058
- #3051 Download spinner UI for attachments by @SebinSong in #3061
New Contributors
Full Changelog: v2.5.1...v2.7.0
$ sha256sum gi-*
3138fce66da858e6002e29568494f3ab6d1f96162c4a71b4ac703295fdc8cf62 gi-v2.7.0.debug.tgz
b816dfaa17b22c980f83279d14aa851bc43ebe5970890aa35b9e936680f2b594 gi-v2.7.0.tgz