APR
24
2016

clazy: Suppressing warnings

Clazy [1][2] just got support for suppressing warnings by reading a special comment in your code.
The syntax is similar to what krazy has.

Ignore the whole file:
// clazy:skip

Ignore the whole file for these checks:
// clazy:excludeall=foreach,qstring-allocations

Ignore these checks at the line number where the comment appears:
(...) // clazy:exclude=qfileinfo-exists,copyable-polymorphic

Enjoy!

NOV
15
2015

New C++/Qt code checks in clazy static analyzer

About two months ago I blogged about clazy, a Qt oriented static analyser.

Since then it has moved to an official KDE repo http://anongit.kde.org/clazy, got an IRC channel (#kde-clazy @ freenode) and also many fun new checks.

Here's a quick dump of the new features (be sure to see the README for the old checks too):

**** Performance related checks ****

NOV
5
2015

QRegExp + QStringLiteral = crash at exit

If you're seeing crashes lately, and they look like:

(gdb) bt
#0 0x00007ffff6790913 in QString::~QString() () from /usr/x86_64-pc-linux-gnu/lib/libQt5Core.so.5
#1 0x00007ffff680fd89 in QHashData::free_helper(void (*)(QHashData::Node*)) () from /usr/x86_64-pc-linux-gnu/lib/libQt5Core.so.5
#2 0x00007ffff6828e14 in (anonymous namespace)::Q_QGS_globalEngineCache::innerFunction()::Holder::~Holder() ()
from /usr/x86_64-pc-linux-gnu/lib/libQt5Core.so.5

MAY
13
2015

Simple Qt container optimization you should do on your code

Most of us know we shouldn't let our containers detach. QList, QVector, QString, etc. are implicitly shared. Copying them is cheap, but when we call a non const member function it will detach and trigger a deep copy.

This is common knowledge, but we still forget and do:
Item item = fetchJob->items().first();
instead of:
Item item = fetchJob->items().at(0);

JAN
11
2015

New TODO application that blocks distractions while you work

TL;DR: flow is a sticky TODO manager with support for the pomodoro technique and blocks distractions (cat pictures too) while you're focusing on a task: git, AUR, Windows, OSX

"A good task manager application is one that can beat a .txt file."

JUL
18
2013

Memory usage improvements for 4.11

The other day I went to buy a DDR stick but the shop was closed so the only solution was to sit down and fix some memory hungry applications ;).

These will be in 4.11:

* Fixed a bug where maildir resource would use 1 or 2GB when importing large folders.

* Fixed a bug where mixedmaildir resource would also use 1 or 2GB.
(Thanks to Martin Steigerwald for providing a a 77k e-mail folder).

* akonadiserver wasn't clearing uneeded query caches. Saved 65MB here.

FEB
15
2012

KDEPIM Git Resource

KDEPIM Git Resource

You can now monitor any git repository with KMail. Commits will appear as e-mails in the message list.

KMail configuration:

Resource configuration:

AUG
2
2011

Improvements in KOrganizer 4.7

You can now set a custom calendar icon and have it shown in each agenda/month view events.

Before:

Now:

Makes the view much more pleasant to look at when you have dozens of events, and you don't have to memorize which colours belong to which calendars any more.