1 ChangeLog for Quassel IRC
2 =========================
3 This is not a full ChangeLog, but rather an end-user FeatureLog that is supposed
4 to provide a list of new features between Quassel versions. As such, it only
5 contains end-user visible, mostly major new features. It does not contain (most)
6 bugfixes, nor is it guaranteed to be complete or up-to-date at all. Also, it does
7 start at 0.3.0 only, since this was the first version widely available.
9 Please have a look at <https://bugs.quassel-irc.org/projects/quassel-irc/roadmap> for a
10 list of closed bug/feature reports (which still does not cover bugs we have
11 fixed but which were never reported, of course), and for a full list of
12 changes, the git history at <https://git.quassel-irc.org> is your friend.
14 Without further ado, let's start:
16 Version 0.13.1 (2019-02-15)
17 ===========================
19 * Fix backlog message fetching that was broken when using Qt4
20 * Improve output to syslog
21 * Make upgrading the database schema more robust in case of interruption
22 * Fix alignment of buttons in the input widget
23 * Fix bug where the nicklist would be hidden on first start
24 * Allow configuring the listen addresses for the built-in identd (--ident-listen)
25 * Honor core options even if it was just configured via environment variables
26 * Fix syncing of auto reconnect retries in network settings
29 Version 0.13.0 (2018-11-17)
30 ===========================
32 NOTE: Database schema and settings format change, no downgrade possible!
33 NOTEĀ²: Database migration may take a long time (hours for big databases),
34 and temporarily require double the disk space until migration is
37 * Use Qt 5 by default (this will be the last feature release still supporting Qt4)
38 * New branding (application icon)
40 - Improve ChatView color settings
41 - Improve default sender colors, and make configurable by palette in QSS
42 - Fix font weight parsing and other issues in QSS
43 - Settings dialog improvements (tree width, changed state for several pages)
44 - Chat list filter/search
45 - Shortcuts for formatting options
46 - Sender colors by default (and optionally for ACTION messages)
47 - Add context menu option in ChatView for enabling the menubar
48 - Optionally hide brackets around sender/timestamp
49 - Make /list open the channel list dialog, including advanced search for channels
50 - Spell checking via Sonnet if KDE Frameworks integration is enabled
51 - Support $i:ident, $i:identd, and $i:account in aliases
52 - Use system locale for date/time formatting
53 - Many other UI improvements and polish (tooltips, tool bars, menus...)
54 * Completely revamp icon theme support
55 - Fix icon loading on many platforms (requires newer Qt)
56 - Fix tray icons with StatusNotifier
57 - Allow selecting a fallback for incomplete system icon themes
58 - Ship Quassel-specific icons
59 - Add Breeze and Breeze Dark icon themes, use Breeze by default
60 * Notification improvements
61 - New configuration options for tray icon notification
62 - Use Plasma notification sounds by default (rather than KDE4's)
63 - QtMultimedia notification backend (deprecates Phonon support with Qt 5)
64 * IRC-related improvements
65 - Support for many IRCv3 features, improved capability negotiation
66 - Improve handling of user modes
67 - Store sender prefixes (@+v...) in database, and optionally show in UI
68 - Add support for ZNC self-messages
69 - Support twitch.tv's membership capability
70 - Support rendering of extended mIRC colors, hex colors, reverse and strikethrough
71 - Make IRC rate limits configurable
72 - Use UTF-8 server encoding by default (instead of ISO-8859-1, changeable via network settings)
73 - Internal identd (may require port forwarding rules)
74 - Strict ident mode (always sends user name)
75 - Provide CTCP timestamps in ISO 8601 format
76 - AutoWho-related fixes, properly support away-notify (removes workaround for non-compliant servers)
77 - Command line debug options for showing raw IRC messages
78 * Security improvements
79 - Improved SSL certificate handling
80 - Add command line options for SSL certificate/key paths
81 - Use SHA-512 to store the core certificate digest
82 - Persist blowfish keys for encrypted channels
83 - Use CBC by default, like other clients (instead of ECB)
84 * Move functionality core side (useful for mobile clients)
85 - Handle buffer activity, highlights, ignore rules core-side
86 - Improved ignore rule support
87 - Core-side (synced) highlight rules (in addition to local highlight rules)
88 * Core/client connection
89 - Extended core/client feature negotiation, including diagnostic output
90 - System proxy support for the client
91 - Allow disconnecting other clients via "Core Info" dialog (if supported by client)
92 - LDAP authentication backend for core users (--select-authenticator)
94 - Unify regex handling (may affect old ignore rules, see release announcement for details)
95 - Cache many frequently used regexes to improve performance
97 - Use 64 bit timestamps to avoid the Y2038 problem, use millisecond precision
98 - Use 64 bit message IDs to support giant backlogs (requires 0.13+ core and client)
99 - Store real names and avatar URLs in database (for now, only used by Quasseldroid)
100 - Improve database performance
101 - Make database upgrades more robust
102 * Containerization improvements
103 - Store core settings in database
104 - Allow configuring the core via environment variables
105 * Logging improvements
106 - Allow to configure the log level also for (monolithic or not) client
107 - Make debug log window more useful
108 - Catch early log messages
109 - Slightly reformat console output so it's better readable
110 * Settings versioning (allows upgrading from older versions, too)
111 * Multithread the monolithic client, to keep UI responsive even under load
112 * Properly shutdown client and core on exit
113 * Fix POSIX signal handling, support console events on Windows
114 * Build system improvements
115 * Code fixes for issues found in static analysis
116 * Many smaller fixes and quality-of-life improvements
117 * Update inxi script to 3.0.18 (now requires Perl to be installed)
118 * Translation updates
120 Version 0.12.5 (2018-04-24)
121 ===========================
123 * Make "/ " use the rest of the message as a literal
124 * Use commit date instead of build date to support reproducible builds
125 * Support Qt 5.6 through Qt 5.10
126 * Automated OSX builds (via Travis)
127 * Update deployment and CI settings for OSX and Windows
128 * Better HIDPI support with recent Qt 5 versions
129 * Snapcraft packaging support
131 * Prioritization of PING/PONG messages to prevent timeouts
132 * Improved touch screen support (scrolling etc.)
133 * WebEngine support for URL previews (deprecates WebKit support with Qt 5)
134 * Disable WebKit by default due to it being unmaintained and a security risk
135 * Strip format codes when checking for highlights
136 * Properly disconnect from networks when shutting down
137 * Reload SSL certificates on signal SIGHUP
138 * Add AppData metadata for quassel and quasselclient
139 * Allow channel buffer merges
140 * Improve dock and tray handling on OSX
141 * Split user messages on newlines, as per the RFC
142 * Join channels on double-click in platforms other than OSX and Windows
143 * Support Elliptic Curve keys for client<->core connections on Qt 5.5+
144 * Add sanity checks for QDataStream deserialization (e.g. for size)
145 * Prevent clients from trying to login to an unconfigured core, avoiding a crash
148 * Translation updates
150 Version 0.12.4 (2016-04-24)
151 ===========================
153 * Handle STATUSMSG messages (recently abused for query spam)
154 * Link previews are enabled again in Windows builds
155 * Fix core crash caused by clients sending invalid handshake data
156 * Fix session management with Qt 5
157 * Fix connection issues with non-compliant ircds
158 * Translation updates
160 Version 0.12.3 (2016-02-09)
161 ===========================
163 * Fix activity filters when selecting buffers in custom ChatViews
164 * Fix default shortcuts when integrated with KDE Frameworks
165 * Introduce support for Appveyor CI (automated Windows builds)
166 * Support SnoreNotify 0.7
167 * Various cleanups and performance improvements
168 * Various build system fixes
169 * Channel keys are again remembered between syncs
171 * Network (re)connection fixes
172 * Fix possible message loss when running multiple core users on a psql database
173 * Command line option for specifying SSL certificates and keys
176 Version 0.12.2 (2015-04-23)
177 ===========================
179 * Fix PostgreSQL not re-initializing after reconnect (raising CVE-2013-4422 from the dead)
180 * Remove warning on startup due to a change in Kdelibs4ConfigMigrator
182 Version 0.12.1 (2015-04-21)
183 ===========================
185 * Emergency fix for behavior change in Qt5's psql driver regarding timezones
187 Version 0.12.0 (2015-04-15)
188 ===========================
190 * Full support for KDE Frameworks
191 * Properly split messages with multi-byte encodings and/or encryption
192 * Improve core password hashing algorithm
193 NOTE: This upgrades the database schema, so no downgrades are possible!
194 * Remote password change
195 * Core connection improvements
196 * Build system improvements
197 * PostgreSQL connection improvements
198 * Improve Qt 5 support
199 * Qt 4.8+ or Qt 5.2+ now required
200 * Several tweaks and fixes
201 * Translation updates
203 Version 0.11.0 (2014-09-23)
204 ===========================
206 * New build requirements:
207 - C++11 capable compiler (gcc 4.7+, clang 3.3+, MSVC 2013+)
209 * Full support for Qt 5.2+ in addition to Qt 4.6+
210 * Completely revamp the build system, making use of "new" CMake features
212 Version 0.10.1 (2014-09-23)
213 ===========================
215 * Fix buffer hotlist sorting
216 * Split CTCP messages if they're too long
217 * Make database problems more obvious
218 * Fix backlog loading for QuasselDroid
219 * Properly save the toolbar state on Mac OSX
220 * Fix a crash with KDE's network detection
221 * Various other fixes
223 Version 0.10.0 (2014-03-25)
224 ===========================
226 * Refactor lots of the protocol and connection code
227 * Introduce connection probing for reliably negotiating protocol features
228 * Introduce the new DataStream protocol with streaming compression
229 * Option for forcing the core to only accept SSL connections
230 * Support for the Snore notification backend
231 * Allow searching the web for selected text
232 * Connection-related fixes
233 * Allow for hiding inactive networks
234 * Enable line wrap in the input field
235 * Show backlog messages in the Chat Monitor
236 * Remove SSL protocol selection, always use auto-negotiation for best results
237 * Highlight rules are now case-insensitive by default
238 * New and updated translations
239 * Bump inxi version (for /sysinfo)
240 * Use the raster rendering engine by default on OSX (should improve performance)
242 Version 0.9.3 (2014-03-25)
243 ==========================
246 * Improve reliability of SSL connections
247 * Save toolbar state properly on Mac
248 * Prevent user interaction with the web preview
249 * Fix fullscreen mode
250 * Fix spurious crash caused by shaky ircd connections
251 * Fix adding an unneeded colon to custom commands
252 * Avoid Qt's DNS cache to properly handle round-robin DNS records
254 Version 0.9.2 (2013-11-26)
255 ==========================
257 * Don't crash if /topic contains newlines
258 * Fix SSL-related issues
259 * Fix Phonon notifications not playing sound
260 * Pingout if connection drops during SASL auth phase
261 * Prevent messages from being sent to status buffers
262 * Make sure manipulated/buggy clients cannot access backlog of other core users
263 * Fix context menu issues
265 Version 0.9.1 (2013-10-11)
266 ==========================
268 * Fix security issue with Qt 4.8.5 and PostgreSQL
269 * Phonon notifications for Mac OS X
270 * Convert tabs in messages into 8 spaces
271 * Silence superfluous QCA warnings
272 * Various key- and encryption-related fixes
273 * Ignore formatting in clickables
274 * Enable warnings when compiling with Clang
275 * Updated translations
276 * Various other small fixes and improvements
278 Version 0.9.0 (2013-04-16)
279 ==========================
282 * Channel-specific highlights
283 * Support for intermediate CA certificates
284 * Support the DockManager interface
285 * OSX Notification Center support
286 * DH1080 key exchange
287 * SASL EXTERNAL support
288 * Improvements for Retina displays on OSX
289 * Supporting to start minimized to tray
290 * Rudimentary support for Qt5 (obsolete again because upstream changed too much)
291 * Refactor of SignalProxy, network and protocol code
292 * First pieces of the coming protocol abstraction
293 * Build system improvements
295 * New and updated translations
296 * Reformatted ALL the source code
298 Version 0.8.0 (2012-03-20)
299 ==========================
301 * Make tab completion key configurable
302 * Syslog support for the core
303 * Make the core more robust against random invalid input
305 * Build system improvements
306 * Many new and updated translations
309 Version 0.7.4 (2012-03-20)
310 --------------------------
312 * Improve keyboard navigation
314 * Conform with icon naming spec
315 * Remove JS support from webpreview
316 * Fix support for Qt 4.8
317 * Several bugfixes and cleanups
319 Version 0.7.3 (2011-09-08)
320 --------------------------
324 Version 0.7.2 (2011-03-24)
325 --------------------------
327 * PostgreSQL improvements
330 Version 0.7.1 (2010-09-21)
331 --------------------------
333 * Critical fixes for CTCP and connection handshake
335 Version 0.7.0 (2010-09-14)
336 ==========================
338 * Improved DE integration, support for dbusmenu
339 * Bump Qt dependency: we need Qt 4.6 for client and monolithic now
340 * Fullscreen mode (F11)
341 * CTCP CLIENTINFO support
342 * Shortcuts for navigation between chats (Alt+Left/Right/Up/Down)
343 * Add blowfish encryption (/setkey and /delkey; needs QCA2)
344 * Shortcut editing for all platforms (!KDE)
345 * Improved handling of invites
346 * New tray icon for highlights
348 * Emacs-style keybindings for the input line
349 * Improved markerline behavior
350 - Allow manual setting (Ctrl+R)
351 - Provide shortcut for jumping to the markerline (Ctrl+K)
352 * New languages: el, gl, ja
355 Version 0.6.1 (2010-04-16)
356 --------------------------
360 Version 0.6.0 (2010-04-14)
361 ==========================
363 * New languages: en_GB, es, nl, oc, pt, pt_BR, sq, sv, uk, zh_CN
364 * Updated existing languages
365 * Restore last selected buffer on restart
366 * Optional per-chat history
367 * SASL authentication support (e.g. supported by Freenode)
368 * Allow inputting formatted (colored/bold/...) text in the inputline
369 * Support the StatusNotifierItem DBus spec
370 - Replace old-style tray icon where supported (currently KDE >= 4.4)
371 - Integrate freedesktop notifications support (libnotify or knotify)
372 * Systemtray refactoring
373 - Replace animation by blinking icon
374 - Properly handle notifications and mainwindow toggle
375 * Improved URL detection
376 * Sender column is now clickable (double click opens query)
377 * Improved notification handling
378 * ChatView performance improvements
379 * Many buildsystem fixes
380 - Improved handling of icons
381 - Updated cmake macros
382 - Support building with MinGW
383 - Support KDE on non-X11 platforms
384 - Better handling of SSL libraries
385 * Solid network state detection support (with KDE)
386 * Settingspage refactoring
387 * Improved handling of SSL certificates
388 * Completely reworked the client/core connection
389 - New settingspage for managing core accounts
390 - Streamlined login/sync process
391 - Configurable timeout
392 - Automatic reconnect to core
393 * Send unknown commands to server
395 * Use gettext for translations
397 Version 0.5.2 (2010-01-18)
398 --------------------------
403 Version 0.5.1 (2009-11-21)
404 --------------------------
407 * Updated translations
408 * Fix issues with Qt >= 4.6
410 Version 0.5.0 (2009-10-14)
411 ==========================
414 * Many translation updates
415 * Use DrKonqi/Apport to provide backtraces in case of a crash
416 * Support for Ayatana's Message Indicator (libindicate; *buntu specific feature for now)
417 * Fix wordwrap issues
418 * Improved notification behavior (highlighted channels can now be cycled)
419 * Improved icon packaging (don't install them if KDE is available and current enough)
420 * Menubar can now be hidden (Ctrl+M to toggle)
421 * Ignore list support
422 * Vast performance improvements in the handling of synced objects
423 - Core startup/shutdown now almost instant
424 - Joining/leaving large channels much more efficient
426 * New topic widget dynamically resizes to show all of the topic
428 - Reworked configuration dialogs
429 - Renamed "Buffer" to "Chat" throughout in all user-visible strings
430 * Introduce stylesheet-based (QSS) styling for ChatView and the whole application
431 * Allow configuration of ping timeouts and auto-WHO
432 * Make toolbars configurable in KDE
433 * Alt+A shortcut for jumping to cycle through active buffers
434 * Properly remember the mainwindow state on shutdown/restart
435 * Multiline input support
436 * Improved systray notifications
437 * Lazy backlog fetching for hidden buffers
438 * Improved flood control
439 * Spell check support (requires KDE integration)
440 * /exec support for executing external scripts/programs
441 * CLI interface for managing core users with quasselcore rather than a script
442 * Improved ping timeout detection
443 * PostgreSQL database backend support
444 * Smart nickname completion (most recently active)
446 Version 0.4.3 (2009-08-26)
447 --------------------------
449 * Bugfixes and translation updates
451 Version 0.4.2 (2009-05-20)
452 --------------------------
454 * Bugfixes and translation updates
456 Version 0.4.1 (2009-03-18)
457 --------------------------
459 * Bugfixes and translation updates
461 Version 0.4.0 (2009-02-17)
462 ==========================
464 * Buffer view font can now be changed
466 * Wizard for setting up identity and networks on first run
467 * Paste protection warns if you try to paste many lines
468 * Use login name and real name for default identity
469 * Add toolbar to main window
470 * Away log window showing highlighted messages while you're away
471 * Settings dialog streamlining
472 * Animated system tray icon
473 * Shiny new Oxygen icons all over the place, including our new app icon
474 * Build system improvements
475 * Put all config and data files in one location and make that configurable
476 * Allow presetting networks and a list of channels to join on first start
477 * Change and improve CLI argument handling
478 * All buffer views are now customizable
479 * Streamlined monolithic client
480 * Many usability improvements
481 * Method for easily hiding and unhiding buffers in buffer views
482 * Renaming and merging of query buffers
483 * Improved SSL certificate handling
484 * Optional support for KDE4
486 - KDE icon and color theme support
488 * Core now supports a proxy for connections to IRC
489 * Core supports SSL certs and keys for IRC connections
490 * Chat Monitor configuration dialog
491 * Audio notifications
492 * Clickable channel names in ChatView
493 * Context menus in ChatView and BufferViews
494 * Respect the separate clipboards (Ctrl+C / X11 selection) on X11
495 * Improved mouse handling:
496 - Double/triple click selections
499 Version 0.3.1 (2008-11-20)
500 --------------------------
502 * Nick changes and day change messages can now be hidden
503 * Web previews and status icons can be disabled
504 * Icons for Online/Away/Offline status of queries
505 * Load Qt's default translations
506 * Add new settings for proper message redirection
507 * Add context menu to links
508 * Automatic backtraces on Windows
509 * Add russian translation
510 * Cut off the sender column on the left in ChatView
511 * Enable away on detach
512 * Backlog amount (initial and dynamic) can now be configured
513 * Shift Up/Down scrolls the ChatView
514 * Page Up/Down scrolls the ChatView
515 * ChatView Zoom with Ctrl + / Ctrl -
516 * Join/Part/Quit... events can now be hidden in ChatView
517 * Monolithic build features zero configuration: Click'n'Run
518 * Monolithic build now uses a proper (socket-less) internal connection
519 * Ctrl+L focuses input line
520 * Improve notification handling, use proper D-Bus notifications
521 * Day change messages in ChatView
522 * Web Preview on hovering over a link (requires QtWebkit)
523 * Allow icons to be installed externally, optionally use system Oxygen theme
524 * Improve URL handling in ChatView (underline, single-click invocation)
526 Version 0.3.0 (2008-08-27)
527 ==========================
528 The first widely available release of Quassel IRC.