Michal Čihař - Blog Archives for English

Gammu roadmap for near future

As new API is currently in pretty good shape, stabilisation period for 1.12.0 will begin soon. There should not be any major changes (well some might be in 1.11.92 this week, but no further). 1.12.0 should be unleashed within two or three weeks.

So maybe it's now time to start thinking about changes in 1.13.0. As requests for supporting Motorola phones increase, I will try to work on this. Most of information which changes this require is written in bug report, but I'm still unsure how big changes it will require.

Other thing which should be improved is vCard parsing. There are lots of opened bugs for this and I see this as big problem when trying to import some contacts from other programs.

Gammu test version 1.11.91

I just released new version of Gammu. This release further improves new API, which should be now close to being stable. Full list of changes:

  • Reduced inclusion dependencies.
  • Fixed compilation on OS X.
  • Added --features to show compiled in features.
  • Add support for work address.
  • Added source examples in docs/develop/examples.

Troubles forming new API

I just came to another decision point. Curently new Gammu API is quite in good shape (even most of functions are documented), but I think whether it's time to push in also some other big changes, which I would like to see, or just wait for things to settle down before starting other major changes.

For application developers (using C API, Python ones won't notice any of those changes), it would be definitely better to do all changes in one big bang. However I'm really affraid of possible impacts on stability, because extreme big changes. I'm still more and more convinced about stabilizing current code and keep those big changes for later time.

When talking about this, I should also mentions change I want to introduce :-). First is switch to wchar_t instead of own UCS-2-BE encoding. This will help a lot in possible errors on allocating memory for strings and also allow us to use libc functions for string operations. The second change is even bigger - make all storages scalable to avoid problems with hardcoded limits. But for this change it should be possible to add compatibility API functions, so that users don't have to notice anything.

IMAP utils are completely clean of adware

I never knew, that someone would certify few lines of Python code, but Softpedia did so:

   Your product "IMAP utils 0.2" has been tested by the Softpedia labs and
   found to be completely clean of adware/spyware components.

   We are impressed with the quality of your product and encourage you to
   keep this high standards in the future.

   To assure our visitors that "IMAP utils 0.2" is clean, we have granted
   it with the "100% FREE" Softpedia award. Moreover, to let your users
   know about this certification, you may display this award on your
   website, on software boxes or inside your product.

I still wonder why simplest "product" I ever released is getting so much publicity…

Fighting with tons of mails

Recently spam checking stopped to be enough to prevent my mailbox to grow to incredible sizes, so I had to look for some possibility to block viruses and other malware. The obvious choice went to open source anti-virus Clamav.

Setting up was pretty easy, especially when there are tons of howtos on the net (e.g. Installing and configuring Exim 4 on Debian). All I had to do was to install Clamav and configure Exim to talk to it and reject unwanted stuff.

And what are results? Quite impressive - 154860 caught viruses in last 24 hours.I wonder that lots of them were also caught by SpamAssassin, because I definitely didn't receive that much malware in a day.

Gammu test version 1.11.90

I just released new version of Gammu, you can download it from download server. The biggest change is new API. It is probably not yet completed, but I want to release it right now to receive feedback from other developers. Full list of changes:

  • Support for some new Nokia fields.
  • Made SMSD mode case insensitive.
  • Fix iCalendar export typo (Alin Năstac).
  • Better compatibility with Sharp phones.
  • Completely changed public API to avoid too often ABI changes.
  • See PORTING file for changes you have to do.
  • Dropped autoconf support, use CMake instead.
  • Please note that new API is still work in progress!

goText supports Czech Vodafone

goText (Java apllication for your phone to send messages onver GPRS) has just received support to send messages to Czech Vodafone network. It is using public SMS gateway, the only drawback is that you have to detect captcha used on this page. But it still is cheaper than sending regullar SMS :-).

To use this service, add following URL to your goText services:


Ukolovnik 0.7

New version of simple todo manager called Ukolovnik has been just released. Version 0.7 comes with following changes:

  • Development switched to subversion.
  • Added support for CSV export.
  • Added support for vCalendar export.

MediaWiki caching

Steve, I know that caching usually helps. But from all test I've made with MediaWiki installation on phpMyAdmin wiki, I can see that enabling any caching slows things down quite a lot.

With memcached based caching, each request takes about 15 seconds, if I add XCache backend for variables, it slows down things to 10 seconds and I receive same results with file based caching. So it doesn't seem to be problem with memcached, but rather MediaWiki issue. Unfortunately it's quite a lot of PHP code to investigate and I didn't find anything obvious in low level caching interface.

So say good bye to variable caching, opcode cache is enough for now and MySQL seems to handle the load quite well.