bugfixes, nor is it guaranteed to be complete or up-to-date at all. Also, it does
start at 0.3.0 only, since this was the first version widely available.
-Please have a look at <http://bugs.quassel-irc.org/projects/quassel-irc/roadmap> for a
+Please have a look at <https://bugs.quassel-irc.org/projects/quassel-irc/roadmap> for a
list of closed bug/feature reports (which still does not cover bugs we have
fixed but which were never reported, of course), and for a full list of
-changes, the git history at <http://git.quassel-irc.org> is your friend.
+changes, the git history at <https://git.quassel-irc.org> is your friend.
Without further ado, let's start:
-Version 0.12.0 (TBA)
-====================
+Version 0.13.0 (2018-11-17)
+===========================
+
+NOTE: Database schema and settings format change, no downgrade possible!
+NOTEĀ²: Database migration may take a long time (hours for big databases),
+ and temporarily require double the disk space until migration is
+ complete!
+
+* Use Qt 5 by default (this will be the last release still supporting Qt4)
+* New branding (application icon)
+* UI improvements
+ - Improve ChatView color settings
+ - Improve default sender colors, and make configurable by palette in QSS
+ - Fix font weight parsing and other issues in QSS
+ - Settings dialog improvements (tree width, changed state for several pages)
+ - Chat list filter/search
+ - Shortcuts for formatting options
+ - Sender colors by default (and optionally for ACTION messages)
+ - Add context menu option in ChatView for enabling the menubar
+ - Optionally hide brackets around sender/timestamp
+ - Make /list open the channel list dialog, including advanced search for channels
+ - Spell checking via Sonnet if KDE Frameworks integration is enabled
+ - Support $i:ident, $i:identd, and $i:account in aliases
+ - Use system locale for date/time formatting
+ - Many other UI improvements and polish (tooltips, tool bars, menus...)
+* Completely revamp icon theme support
+ - Fix icon loading on many platforms (requires newer Qt)
+ - Fix tray icons with StatusNotifier
+ - Allow selecting a fallback for incomplete system icon themes
+ - Ship Quassel-specific icons
+ - Add Breeze and Breeze Dark icon themes, use Breeze by default
+* Notification improvements
+ - New configuration options for tray icon notification
+ - Use Plasma notification sounds by default (rather than KDE4's)
+ - QtMultimedia notification backend (deprecates Phonon support with Qt 5)
+* IRC-related improvements
+ - Support for many IRCv3 features, improved capability negotiation
+ - Improve handling of user modes
+ - Store sender prefixes (@+v...) in database, and optionally show in UI
+ - Add support for ZNC self-messages
+ - Support twitch.tv's membership capability
+ - Support rendering of extended mIRC colors, hex colors, reverse and strikethrough
+ - Make IRC rate limits configurable
+ - Use UTF-8 server encoding by default (instead of ISO-8859-1, changeable via network settings)
+ - Internal identd (may require port forwarding rules)
+ - Strict ident mode (always sends user name)
+ - Provide CTCP timestamps in ISO 8601 format
+ - AutoWho-related fixes, properly support away-notify (removes workaround for non-compliant servers)
+ - Command line debug options for showing raw IRC messages
+* Security improvements
+ - Improved SSL certificate handling
+ - Add command line options for SSL certificate/key paths
+ - Use SHA-512 to store the core certificate digest
+ - Persist blowfish keys for encrypted channels
+ - Use CBC by default, like other clients (instead of ECB)
+* Move functionality core side (useful for mobile clients)
+ - Handle buffer activity, highlights, ignore rules core-side
+ - Improved ignore rule support
+ - Core-side (synced) highlight rules (in addition to local highlight rules)
+* Core/client connection
+ - Extended core/client feature negotiation, including diagnostic output
+ - System proxy support for the client
+ - Allow disconnecting other clients via "Core Info" dialog (if supported by client)
+ - LDAP authentication backend for core users (--select-authenticator)
+* Regular expressions
+ - Unify regex handling (may affect old ignore rules, see release announcement for details)
+ - Cache many frequently used regexes to improve performance
+* Database changes
+ - Use 64 bit timestamps to avoid the Y2038 problem, use millisecond precision
+ - Use 64 bit message IDs to support giant backlogs (requires 0.13+ core and client)
+ - Store real names and avatar URLs in database (for now, only used by Quasseldroid)
+ - Improve database performance
+ - Make database upgrades more robust
+* Containerization improvements
+ - Store core settings in database
+ - Allow configuring the core via environment variables
+* Logging improvements
+ - Allow to configure the log level also for (monolithic or not) client
+ - Make debug log window more useful
+ - Catch early log messages
+ - Slightly reformat console output so it's better readable
+* Settings versioning (allows upgrading from older versions, too)
+* Multithread the monolithic client, to keep UI responsive even under load
+* Properly shutdown client and core on exit
+* Fix POSIX signal handling, support console events on Windows
+* Build system improvements
+* Code fixes for issues found in static analysis
+* Many smaller fixes and quality-of-life improvements
+* Update inxi script to 3.0.18 (now requires Perl to be installed)
+* Translation updates
+
+Version 0.12.5 (2018-04-24)
+===========================
+
+* Make "/ " use the rest of the message as a literal
+* Use commit date instead of build date to support reproducible builds
+* Support Qt 5.6 through Qt 5.10
+* Automated OSX builds (via Travis)
+* Update deployment and CI settings for OSX and Windows
+* Better HIDPI support with recent Qt 5 versions
+* Snapcraft packaging support
+* Inxi version bump
+* Prioritization of PING/PONG messages to prevent timeouts
+* Improved touch screen support (scrolling etc.)
+* WebEngine support for URL previews (deprecates WebKit support with Qt 5)
+* Disable WebKit by default due to it being unmaintained and a security risk
+* Strip format codes when checking for highlights
+* Properly disconnect from networks when shutting down
+* Reload SSL certificates on signal SIGHUP
+* Add AppData metadata for quassel and quasselclient
+* Allow channel buffer merges
+* Improve dock and tray handling on OSX
+* Split user messages on newlines, as per the RFC
+* Join channels on double-click in platforms other than OSX and Windows
+* Support Elliptic Curve keys for client<->core connections on Qt 5.5+
+* Add sanity checks for QDataStream deserialization (e.g. for size)
+* Prevent clients from trying to login to an unconfigured core, avoiding a crash
+* Various bugfixes
+* Some code cleanups
+* Translation updates
+
+Version 0.12.4 (2016-04-24)
+===========================
+
+* Handle STATUSMSG messages (recently abused for query spam)
+* Link previews are enabled again in Windows builds
+* Fix core crash caused by clients sending invalid handshake data
+* Fix session management with Qt 5
+* Fix connection issues with non-compliant ircds
+* Translation updates
+
+Version 0.12.3 (2016-02-09)
+===========================
+
+* Fix activity filters when selecting buffers in custom ChatViews
+* Fix default shortcuts when integrated with KDE Frameworks
+* Introduce support for Appveyor CI (automated Windows builds)
+* Support SnoreNotify 0.7
+* Various cleanups and performance improvements
+* Various build system fixes
+* Channel keys are again remembered between syncs
+* Support for Qt 5.5
+* Network (re)connection fixes
+* Fix possible message loss when running multiple core users on a psql database
+* Command line option for specifying SSL certificates and keys
+* Many smaller fixes
+
+Version 0.12.2 (2015-04-23)
+===========================
+
+* Fix PostgreSQL not re-initializing after reconnect (raising CVE-2013-4422 from the dead)
+* Remove warning on startup due to a change in Kdelibs4ConfigMigrator
+
+Version 0.12.1 (2015-04-21)
+===========================
+
+* Emergency fix for behavior change in Qt5's psql driver regarding timezones
+
+Version 0.12.0 (2015-04-15)
+===========================
* Full support for KDE Frameworks
+* Properly split messages with multi-byte encodings and/or encryption
+* Improve core password hashing algorithm
+ NOTE: This upgrades the database schema, so no downgrades are possible!
* Remote password change
* Core connection improvements
* Build system improvements
* PostgreSQL connection improvements
-* Improve Qt5 support
+* Improve Qt 5 support
* Qt 4.8+ or Qt 5.2+ now required
* Several tweaks and fixes
+* Translation updates
Version 0.11.0 (2014-09-23)
===========================
* Bump Qt dependency: we need Qt 4.6 for client and monolithic now
* Fullscreen mode (F11)
* CTCP CLIENTINFO support
-* Shortcuts for navigation between chats (Alt+Left/Right/Up/Down)
+* Shortcuts for navigation between chats (Alt+Left/Right/Up/Down)
* Add blowfish encryption (/setkey and /delkey; needs QCA2)
* Shortcut editing for all platforms (!KDE)
* Improved handling of invites
- KDE icon and color theme support
- Editable shortcuts
* Core now supports a proxy for connections to IRC
-* Core supports SSL certs and keys for IRC connections
+* Core supports SSL certs and keys for IRC connections
* Chat Monitor configuration dialog
* Audio notifications
* Clickable channel names in ChatView