We have another bugfix release for the 0.5 series. Quassel-0.5.2 mostly contains build system fixes for recent versions of KDE and Qt. Some issues with netsplit handling have also been fixed. Also, if you accidentally had your menu bar vanish, you can now use the context menu on the chatview to re-enable it ;-)
For workarounding the recent flooding issues with Freenode, we have added a quick way to ignore CTCP requests. Since Freenode has fixed the problem the other day, using this should no longer be necessary for now.
You can grab the new release at the usual location!
We have just tagged, packaged and published a bugfix and maintenance release for the 0.5 branch. Most notably, 0.5.1 fixes some problems with the newly released Qt 4.6-rc1. Also, newly joined channels are now properly rejoined on the next core restart. The scrolling behavior on initial backlog fetch for a channel has been fixed, and some more small stuff.
This release also includes updated translations for French, Italian, and Finnish. And you'll get jussi01's dark stylesheet as a bonus!
Anyway, head over to the downloads page to grab it!
We have now switched the git master version of Quassel to support gettext translations (.po files) as opposed to Qt translations (.ts files). Qt >= 4.5 provides the tool
lconvert which can convert between the two, and we (al, in fact) have modified the build system to use that.
It's been a while that we have announced a new release. Somehow, 0.4.2 and 0.4.3 never made it to the frontpage… Anyway, we haven't been lazy and quietly worked on bringing you a brand new feature release: quassel-0.5.0!
You can find most features we have added in the FeatureLog, and if you are really interested, you can also browse the Git history. A list of the most important things has been added below for your convenience. First though I want to get a few important notes out:
Client/Core protocol, database schema and config file update: As mentioned before, a 0.5 Quassel Core will not work with a 0.4 client and vice versa. You will have to update both components. First time you run a 0.5 core or client, the config files and database will automatically be updated to the new format. Downgrades are not supported, so do make a backup if you intend to go back to 0.4 afterwards!
A note for distro packagers: We will maintain a 0.5 branch in our repository that will receive important bugfixes, but no new features. We will probably also do periodic 0.5.x releases from this branch, while new and shiny stuff is being added to the master branch. If you maintain Quassel on a distro that suffers from version or feature freezes, you should make sure to track the 0.5 branch instead.
Read on for a short list of the most important features, then head over to the downloads page to grab it while it's still sizzling!
As we have tagged a 0.5 release candidate now, which has made its way in Kubuntu Karmic and Jaunty backports, among others, we should point out that the client/core protocol used in 0.5 is not compatible to the 0.4.x releases anymore. This means you'll need to use a 0.5-rc1 client with a 0.5-rc1 core. Same for current git master, of course. The protocol change gives you a great performance boost in the core, in particular for startup, shutdown, and joining/quitting large channels. So it's definitely worth it :)
As this is isn't an official release yet, it's not linked from the download page. However, you can find binary builds for Windows and MacOSX here.
People closely following our development in git will have noticed that we have tagged a 0.4.2 release back in May. Some distros also have been shipping 0.4.2 for quite a while now. However, there never was an official release announcement. Why?
We have recently tagged a bugfix release for the stable branch, appropriately named 0.4.1. Users of 0.4.0 are heavily recommended to upgrade. Note that no new features have been added; users of the development version from git should not use 0.4.1 as it would be a downgrade.
Some of the bugs fixed include:
- Correctly display images in the web preview in static builds
- Improve selection and multi-line paste behavior
- Fix cert handling for identities
- Create a proper default identity for new networks
- Improve ping timeout detection (don't time out after 30 seconds with a shaky connection)
- Fix bufferview sorting
- Updated and new translations: Slovenian, Russian, French, Czech, German, Turkish
- Improve flood control (avoiding Excess Flood in most cases)
- Various improvements to the build system
You can grab the new release from our download page; many distributions also have updated packages available already.
After about three months of hard work, the Quassel Team has tagged the brand-new and extra-shiny 0.4.0 release for you! And for extra convenience, we even have updated our downloads page! To reach this important milestone, 432 commits went into Git since 0.3.1.
This was one of the comments our new shiny application icon caused, and it was even suggested as our new tagline. I LOL'd :)
We have been fading out our old logo, the All-Seeing Eye, during the past few weeks. This was created by John "nox" Hand, who deserves kudos for his work as well, of course. Thank you! Your logo has served us well for a long time, but now it's Oxygen all the way...
New Quassel artwork coming to a release near you in only a few days!
With Qt 4.5-rc1 recently released, we've stumbled over a strange issue with Quassel. A binary compiled against Qt 4.4 would completely freeze when used with Qt 4.5. This problem mostly hit users on binary distros trying out Qt 4.5. As it turned out, recompiling Quassel against Qt 4.5 magically fixed the problem - but of course, this is not an option for distro packagers, as they will have to provide packages built against 4.4 at least until 4.5 hits their distros proper.
So we hunted for that bug, to no avail at first, but then EgS
stumbled over dug into the strange dungeons of his memory, and there found lurking a blog entry by one of the Trolls:
Well if you leave the code as it is then you will either get a crash in your code or it will simply cause the application to hang because the QRegExp object passed into QString::indexOf() is no longer modified. The good news is that there is a solution which you can use now even if you are not switching to Qt 4.5 straight away. What you should do is change the calls from QString::indexOf() to QRegExp::indexIn().
We found one location in our code where we did this, and changed that:
- matches[i] = str.indexOf(regExp[i], qMax(matchEnd[i], idx));
+ matches[i] = regExp[i].indexIn(str, qMax(matchEnd[i], idx));
This seems to fix the issue, and Quassel binaries built against Qt 4.4 now reportedly work with 4.5.
What I don't get: I can see how "not modifying the QRegExp object" causes our code to hang here, and why the above makes it work again. But why the fringle does a mere recompile against Qt 4.5 fix that issue as well? Does the regexp magically become modifiable again? Luck? Karma? Voodoo? Anybody can help me out there? ;-)