For more details, see the full changelog and milestone.
4.3 is a smaller release with one major feature: message search! A big thank you to richrd and Nachtalb for working on this. Note that it is somewhat limited at the moment — you cannot jump to messages or see context around them, but this was a major hurdle and we can improve upon it. You can try it out by using /search
or by clicking or tapping the new icon in the topic bar above channels or queries as long as your messageStorage
server setting includes sqlite
. Some other additions are an improved ordering of elements for screen reader users, more context menu options, and new gestures for touchscreen users. You can learn about the gestures and new commands by navigating to the Help page with the ?
button in the bottom of your channel sidebar.
Additionally, support for Node 10 has been removed as it reached its end-of-life and the new minimum supported version is Node 12.0.0.
A huge thank you to the 32 contributors who made this release possible!
Added
- Classes for channels in list with unread counts and highlights (#4214 by @sha1sum)
- Add proper filename to the content-disposition header (#4187 by @Nachtalb)
- Add HTML lang and labelled-by field to upload (#4051 by @MaxLeiter)
- Improve inline audio file support (#4210 by @Nachtalb)
- Show give/revoke modes and kick in context menu on other modes than +o (#4176 by @mitaka8, #4181 by @MaxLeiter)
- Add prefetchMaxSearchSize to override limit for link previews (#4135 by @brunnre8)
- Skip video/audio embeds if og:type exists but does not specify it (#4040 by @xPaw)
- Add version support for packages. (#4041 by @McInkay)
- Add enterkeyhint on chat input and topic save (#4055 by @xPaw)
- Make
add
andreset
CLI commands scriptable (#4090 by @supertassu) - Add extended join information to join message (#4105 by @GewoonYorick)
- Add ignore option to contextmenu (#4104 by @GewoonYorick)
- Add gopher and gemini to the commonSchemes (#4151 by @Willamin)
- Add network specific leave message (#4116 by @Nachtalb)
- Message Search (#4197 by @Nachtalb,
69c37a5
,521426b
by @JeDaYoshi,40a5ee7
by @MaxLeiter, #3664 by @richrd) - Fill inputhistory on channel load and more message load (#4206 by @Nachtalb,
af96f77
by @MaxLeiter) - Allow installation of local packages (#4251 by @brunnre8)
- Toggle recent mentions popup with ctrl/alt+m (#4258 by @bl1nk)
- Add support for SOCKS (#4211 by @Mstrodl)
- Accessibility improvements (re-order, hide, and label certain DOM elements)(#4201 by @MaxLeiter, #4279 by @JeDaYoshi)
- Add /umode support (#4274 by @JeDaYoshi)
- Add warning for HTTPS requirement on notifications (#4280 by @JeDaYoshi)
- Allow network list reordering via touch. (#4326, #4332 by @itsjohncs)
- Two-finger swipe now switches windows (#3901) (#4324 by @itsjohncs)
- Improve responsiveness of channel name and topic. (#4340 by @itsjohncs)
- Add more plugin functionality (#4329 by @brunnre8)
- Add keyboard shortcut for help screen (#4315) (
9a0ba1d
by @NoahvdAa)
Changed
- Vertically center topic editing input in Safari. (#4325) (
2ab6716
by @itsjohncs) - Do not condense single messages (#4313) (
7873847
by @supertassu) - MessageSearchForm: do not focus input if search is closed (#4242 by @brunnre8)
- Add new "/search query" command to open the search window (#4213 by @Nachtalb)
- Add support for JPEG XL image previews (#4219 by @TheDecryptor)
- Make esc key close mentions window (#4365) (
9dbf647
by @brunnre8) - Display server-originated notices to channels in the channel window (#4260 by @BradleyShaw)
- Optimise modes based on ISUPPORT (#4275 by @JeDaYoshi)
- Allow wildcards in hostmask (#4351 by @brunnre8)
- Only scroll history when cursor is on first or last row (#4205 by @Nachtalb)
- Cleanup of SQLite message storage (#4345 by @itsjohncs)
- Do not generate and send client certificate unless SASL EXTERNAL is requested (#4093 by @xPaw)
- NetworkForm: s/away message/leave message/ (#4193 by @brunnre8)
- Settings: show label for nick autocompletion postfix (#4195 by @brunnre8)
- Move font assignment of password reveal icon (#4342 by @deejayy)
- Prevent round and white search styling in iOS 15. (#4352 by @itsjohncs)
- Allow escape key to close search bar and search page (#4364 by @MaxLeiter)
- Use SortableJS 1.14.0. (#4330) (
2b634a6
by @itsjohncs) - Switch to thelounge/Sortable fork for Sortable.js (#4368) (
315198a
by @MaxLeiter) - Update production dependencies to their latest versions:
Fixed
- Differentiate WALLOPS from NOTICE (#4264 by @BradleyShaw)
- Fix sporadic rounding on message search bar. ([#4333]((#4333), #4328 by @itsjohncs)
- Fix missing users in userlist after removing searchinput (#4221 by @Nachtalb)
- Always use multi-prefix modes (#4060 by @xPaw)
- Fix breaking GIFs while removing metadata (#4110 by @Nachtalb)
- Improved handling of empty userdata (#4190 by @Nachtalb)
- Restrict what the browser should try to autocomplete (#4192 by @Nachtalb, #4337 by @brunnre8)
- Render styling for colored host masks (#4235 by @angerson)
- Fix not overriding config options with -c (#4262 by @MaxLeiter)
- Fix nick-less messages from servers (#4277 by @JeDaYoshi)
- Fix authenticated proxy (#4341 by @Nachtalb)
- Allow text drag & drop into input text field (#4212 by @Nachtalb)
Security
- Update dependency ua-parser-js to v0.7.24 (#4216 by @renovate)
- Update dependency postcss to v8.2.10 (#4223 by @renovate)
- CSP adjustments (#4344 by @brunnre8)
- Bump required node version to 12.x and add 16.x builds (#4356 by @MaxLeiter)
Documentation
In the main repository:
- Clarify description of prefetchMaxSearchSize. (#4338) (
21c6abd
by @itsjohncs) client/views
->client/components
in README (#4196 by @MaxLeiter)
On the website repository:
- Update commands API docs (#217) (
9c6a9e4
by @McInkay) - Add Caddy v2 examples (#230) (
5554338
by @Jay2k1) - Add self hosted pod to community.md (#231) (
9e658c6
by @MaxLeiter) - reword note on daemonizing when installing from npm (#232) (
6fab4fe
by @igalic) - Add css snippets for hiding account and realname from join messages (#233 by @GewoonYorick)
- Add macOS Instructions (#237 by @xnaas)
- add "Hide unread counters in sidebar, just show a highlight indicator" (#235 by @Jay2k1)
- Clarify enabling Advanced settings to access custom CSS (
cb0a427
by @MaxLeiter) - Update outdated CSS snippets in custom-css.md (#238) (
fe9d09c
by @EliteOfGods) - Change the IRC server to Libera.Chat (#242) (
7b8c010
by @mhajder) - Fix spaces (
3a41b12
by @xPaw) - Update custom-css.md (#240 by @PeGaSuS-Coder)
- Alphabetically sorted unofficial install methods, added Swizzin (#236 by @flying-sausages)
- Update dependencies and community page (#245) (
0762606
by @MaxLeiter) - Update config.js.md (#247) (
3036977
by @ledakis) - Docs - Adding plugins section on main website (#248) (
1fbaa17
by @aab12345) - Docs - Change header links on main website (#249) (
52eb866
by @aab12345) - Extend theming guide with "files" section (#252) (
94b8c8d
by @deejayy) - Protect The Lounge with HTTPS (#253) (
c4cfe60
by @aab12345) - Plugin docs (#254) (
45b32c5
by @brunnre8)
Internals
- Clean up global listener in Sidebar component. (#4331) (
5d76ed8
by @itsjohncs) - Properly track user modes for context menu (#4267) (
8fcd079
by @brunnre8) - Optimise commands processing (
0d839c5
by @JeDaYoshi) - Fix linter warnings for aria-label placement (
d05cf5f
by @MaxLeiter) - Configure server ping timeout to 60 seconds (#4171 by @emilyst)
- Fix test for production build (
c2e8eaf
by @xPaw) - Add node 15 to test matrix (
69986b3
by @xPaw) - Add .vscode settings and suggested extensions (#4042 by @xPaw)
- Change the IRC server to Libera.Chat (#4238 by @mhajder)
- Update prettier and apply formatting (
b74b692
by @xPaw) - Update dependencies (
b954063
,7592643
,e622662
,e7a8258
,3e9262a
,800fc95
,7bf4f68
,8fa8eed
by @xPaw,cc0dc62
by @MaxLeiter) - Change renovate to monthly (
7ee0732
by @xPaw) - Add depTypeList to renovate (
61ebd65
by @xPaw) - Update mini-css-extract-plugin (
a9fb563
by @xPaw) - Upgrade to webpack 5 (
41831d1
by @xPaw) - Update development dependencies to their latest versions:
pretty-quick
(#4045)@babel/core
(#4043, #4167, #4182, #4207)@vue/server-test-utils
(#4094)@vue/test-utils
(#4094)vue-loader
(#4094)eslint-plugin-vue
(#4141)eslint
(#4140, #4170, #4076)dayjs
(#4139)copy-webpack-plugin
(#4138)css-loader
(#4169)@babel/preset-env
(#4167, #4182, #4207)@fortawesome/fontawesome-free
(#4183)chai
(#4184)
In the deb repository: