Skip to main content

uriparser 0.7.1 released

This release is a bugfix release, fixing two bugs affecting parsing, recomposition, resolution and normalization of URIs in sum. Thanks for reporting these issues go to Friedrich Delgado Friedrichs and Edward Z. Yang. This release is both source- and binary-compatible.

Ogg DirectShow filters need new maintainer

Let me just cite Silvia's mail to the vorbis-devel mailing list here:

Sorry for the heavy cross-posting, but this is important.

Zen Kavanaugh, who used to develop the Ogg DirectShow filters has crossed over to commercial life and is now working at Microsoft where he is not allowed to continue working on Open Source media technology. It’s congratulations to Zen – but the DirectShow filters are now searching for a new maintainer. If you develop in Windows and are able to compile, test and package the DirectShow filters that are available from http://www.illiminable.com/ogg/ please consider taking them on.

At this point in time, there is not much actual development required – just the occasional application of a patch, compilation, packaging and then publication.

This is really important, so if you can help you should really consider stepping forward.

Go for it!

Cheers, Silvia.

2 minute summary on "Unicode explained"

I skip-read through Unicode explained (Jukka K. Korpela, O'Reilly, First edition June 2006) during the last few weeks. While I found the book overall quite boring I still learned a few things, among them most importantly three things I'd like to share with you:

  • Unicode does not contain a code point for every known character
  • The Unicode space is 21 bits large
  • Therefore UTF-8, UTF-16 and UTF-32 can all express the full character set of Unicode

uriparser 0.7.0 released

This release is a feature release, mainly adding dissection and composition of query strings. Previously query strings were block of text and nothing more. Now you can use them as key/value pairs, as application/x-www-form-urlencoded data. Please see the API documentation and change log for details. This release is both source- and binary-compatible.

Integrating Qt's Meta object compiler (moc) with GNU Automake

Smoothly integrating Moc into a GNU autotools project is not trivial. What I present here is just one way, rather than "the way". Actually just a few bytes to get you started. Let's go.

File Makefile.am:

include ${top_srcdir}/moc.mk

bin_PROGRAMS = \
    automoc

$(automoc_OBJECTS) : \
  moc_qobject_class_a.cpp \
  moc_qobject_class_b.cpp

automoc_SOURCES = \
    qobject_class_a.h \
    qobject_class_b.h \
    \
    qobject_class_a.cpp \
    qobject_class_b.cpp

Since the object files of our example program automoc all depend on the moc files, make will first generate all the mocs and then start compiling.

File moc.mk:

moc_%.cpp : %.h
  $(MOC) -i -o "$@" "$<"

clean-moc-extra:
  rm -vf moc_*.cpp

clean-am: clean-moc-extra

Keep in mind we are embedding plain GNU Make rules here so true tab characters are needed before the commands. This can only work as is with the original C++ source files including the related moc source files:

File qobject_class_a.cpp:

..
#include "qobject_class_a.h"
..
..
#include "moc_qobject_class_a.cpp"

To see this solution at work have a look at the Relacs Subversion repository. As a last note don't forget to make sure that you are calling the right moc, either that of Qt3 or Qt4. Good luck!

The Autotools file jungle

As a fall-out of a GNU Autotools conversion I am currently working on I made an overview graph of the files and tools involved with an GNU Autotools-bases project. The filled, grey ellipses are tools you need to have installed. All other ellipses represent files specific to the related Autotools project.

The above image is licensed under Creative Commons Attribution-Share Alike 3.0 and can be re-generated by Neato 2.16 of GraphViz when fed with this source file.