Older blog entries for DV (starting at number 172)

OLS and Ottawa

In Ottawa, currently at the Desktop meeting that Chris blogged about already. Not very technical so far, but nonetheless interesting, including a couple of nice demos.

F....g laptop

My (or more precisely Red Hat's) laptop decided to start dying yesterday. The damn thing reboots randomly and usually I can't use it for more than 20mn before it freezes. It's really old (IBM 600 E), so I can't really blame the solidity of the beast. Anyway this mean I will be mostly out of reach during this week at the conference, even though it's usually well connected. The damn thing rebooted twice during while writing this entry :-(

16 Jul 2004 (updated 16 Jul 2004 at 22:45 UTC) »

gamin

Some cleanup, some fixes, removed threading in the server, and made the client code restartable (i.e. if the server vanishes, the client has enough information to reconnect to the previous state), which seems to work with the gnome-panel and nautilus. I think it's time to test it seriously, so it will show up in Fedora Core 3 (and Rawhide) future versions in the meantime people interested can find it on gnome.org.

Off to OLS

and to the Dektop meeting in Ottawa. I'm all for reducing travels but OLS is a must IMHO. I glanced though the program, looks extremely good as usual, and I'm really looking forward meeting with friends. Time to pack for a week or so ...

World domination

PHP5 using libxml2/libxslt for XML processing is now released, MacOS X will now ship with libxslt (will Safari ever use it for XSLT support ? That would be fun !). Of course the transition to PHP5 will take time but it seems a very large fraction of Apache deployments use PHP. It's good to see the code used in a large scale.

Rpmfind(s)

The saga of restoring rpmfind services goes on, of course a couple of hours after I wrote about rpmfind.net being back in shape one of the drives died, apparently it makes a cyclic click audible though a closed door :-\ , it was hosting the packages pages of course, Murthy in action. I will swap a new drive in probably today. In the meantime the speakeasy people contacted me, they built a new box, first surprize is that it's an Opteron box :-) , they initially installed the x86 RHEL version which was working surizingly well, but they reinstalled with the AMD64 version, I don't know for desktop work but for servers x86_64 rocks. Rebuilding the services takes a while still, even at 2MBytes/s it takes an awful long time to resynch hundreds of gigabytes of mirrored stuff.

gamin

Struggling quite a bit with some bizarre behaviour I want to fix before pushing it as the replacement for fam in Fedora Core. At least it builds, but debugging threaded stuff is a pain, I absolutely need to remove the threading. I also think I will not enable Suspend/Resume operations that FAM provides, they mean the server has to stack operations if the client asks for them and this really doesn't sound like a proper client/server model for operations. Beside that I doubt it's used anywhere on the desktop, well pushing it for test2 of Fedora Core 3 should help find if it's too strict or not.

GCC aliasing and runtime profiling

Seems other people are interested at shaving their code size by 5-10% following the work done with Arjan on gcc aliasing for library symbols and using gcc runtime profiling. fcrozat also activated it on the Cooker build and gained 7% on size apparently. Seems gtk and some parts of OpenOffice are also potential candidates for those optimizations.

libxml2 and libxslt

Despite the number of changes made in the last release they seems stable, ncm might a bit optimistic (or ironic ;-) to call them "stellar". William and Kasimier chased down a problem in Schemas debugging showing up only in 64bits. William had the machine with 64bits and Kasimier had the knowledge of the code. This resulted in a long IRC session of cut and past gdb and discussion. I think a GDB <-> IRC connector would rock, just so often people manage to get into a problem, but reproducing it outside of their environment is nearly impossible (code/data/platform issues are not always shareable), If we had a standalone python (or perl :-\) script which could create a gdb (or other DB) session and gate it as a user on a public IRC channel, there is tons of obscure bugs that could be debugged in a matter of minutes instead of standing unreproduced in a bugzilla entry. Googling a bit for this I could not find any such tool, it should not be too hard too do, but IMHO would be extremely valuable.

6 Jul 2004 (updated 6 Jul 2004 at 10:25 UTC) »

Releases

Last releases for libxml2 and libxslt were 6 weeks ago, so 2.6.11 and 1.1.8 are out, they include a lot of bug fixes especially for libxml2. Also there is now a person working on fixing XML Schemas (Kasimier Buchcik) who apparently can make his way though the spec and my code, he started doing regression testing against W3C testsuite. Interestingly he was so far a Windows only user/developper, but as he got involved he's getting into Linux.

GCC improvements

With Arjan van der Ven we played with various options to reduce code size and local library calls costs, we managed to get 5-10% improvement using gcc aliasing for internal libraries call (see elfgcchack.h for the scary but XSLT generated header), the RPM on fedora also uses gcc runtime profiling to try to optimize the resulting code, but this requires gcc-3.4 or later.

But anyway the biggest improvement seems to simply use gcc-3.4, code generation seems way better:

   text    data     bss     dec     hex filename
 937377   32352   35124 1004853   f5535 /usr/lib/libxml2.so.2.6.11
 881072   31608   35828  948508   e791c /usr/lib/libxml2.so.2.6.11

the first one is on RHEL AS 3 with gcc version 3.2.3, the second is on Fedora Core 2 with gcc version 3.4.0, nice work from the GCC hackers, probably the SSA improvements.

Update: I was told 3.4 doesn't have SSA, so expect even better code for 3.5 :-)

Back !!!

Whoohoo, advogato is back, net result is 2 months without any blogging, I actually tried to install mod_virgule on veillard.com, but realized that the version in CVS depended on Apache v1. Here is a quick fast scan back on the last 60 days or so...

Jamaica

Had some vacations there after the stay in the US, tried the underwater housing for the Canon S50, I'm very happy with the results though the reefs in Jamaica were not in a very good shape. Very nice country overall !

Rpmfind

The nice guys from the W3C system staff sent me back the corpse from rpmfind.net, apparentl they tried to make it digest a Windows XP boot floppy, that may explain the system premature death ;-) . I reshaped the system, removing the 13 and 17 Gigs drive, adding a couple of 120Gigs, new mobo, decent CPU, new RAM, and merging with some of the drives from fr.rpmfind.net . After a couple of erratic days chasing troubles due to bad memory, the system is back on-line at INRIA, and should provide stable services hopefully for a few more years. I'm knoocking on wood !

gamin

I have been asked to provide a reduced but simpler and hopefully more secure (at least compatible with SELinux) replacement to the fam library. I released gamin-0.0.1 which should be API and ABI compatible with fam, but does not work with a global system wise daemon. It's per-user (or per session) and seems good enough to get alteration updates in Nautilus. hadess already pointed out a few errors which are fixed in CVS and I hope to push 0.0.2 to Fedora Core soon. The code is in part based on the marmot code and is LGPL.

Sunsets

Very different ones, from the beach of Negril in Jamaica (my current background picture) and from the Dent de Crolles a mountain here, one week ago. Maybe this attraction for sunsets is just a proof of total lack of artistic sense...

Relax-NG compact Syntax

Since jamesh asked for it, well I have most of it implemented already, it's in libxml2 CVS as the rngparser.c module, but I didn't finished the import and include parts and the overall glueing with the normal relaxng.c module. Probably a day of hacking needed, I didn't touched it since February or so, I didn't know there was some demand from within the GNOME camp.

In the US

I'm currently in MA at the Red Hat office in Westford after a few days like all others "I am Red Hat"'ers in Raleigh for the company meeting. Getting into the Desktop team here, lot of thinking and meetings, most stuff will show up at some point on the Fedora desktop list. Wednesday there was an informal GNOME meeting at the Flat Top Johnny in Cambridge around beer and pool tables, it was fun and really good to see some of the Ximian (and Sun ;-) guys.

Tomorrow I will meet William Brack for the first time (he lives in Hong Kong), so I will be around Cambridge, it is likely we will end-up at the Flat Top Johnny in the afternoon or evening to discuss around beers.

Tourism

The week-end was mostly spent doing tourism in Boston and Cambridge Saturday with Mark, Alex and Caolan, we started downtown, went to the Aquarium, then walked though Boston, MIT and Cambridge up to Harward Square. We went to the coast on Sunday, walked through Salem, then drove to Gloucester to see the sea. We bought 4 big lobster there, which got cooked following the famous recipe "Homard a l'americaine", it was really good though extremely messy to eat and cooking 4 lobsters in the mini-kitchen of an hotel room was a big mess too. Apparently Mark is a bit scared by my capacity to ingest food.

JBoss

Seeing what JBoss's founder has to say about Open Sourcing Java:
I sat through and [asked myself], 'What's the goodness of open sourcing Java?' And there would be marginal gains that we could have such as speed.[...]
it makes me really wonder about the perception that some Java users really have on Open Source and Free Software. I really can't understand how they expect to make an OSS based business with being so wrong about the core aspect which makes OSS actually work. Very disturbing ...

libxml2/libxslt

Made a new set of releases over the week-end libxml2-2.6.9 and libxslt-1.1.6 are out. I pushed them to the build system as well as the xmlsec1-1.2.5 release from Aleksey Sanin, they should all show up on Rawhide soon. There is a number of bug fixes in libxml2 and the xml:id implementation. Libxslt release includes only a couple of keys related bugs.

the blog effect

I didn't google for libxml2 recently, and when trying yesterday I noticed a clear change from what I was used to, blog entries are now making a significant part of the references to the project. Started to play with Orkut a bit, though the project is fading away (popularity wise) this is a huge amount of metadata, it's clear Google will be able to use it, this holds both promises and is a bit scary. They can now build person profiles, associate it to the home page and infer a lot of valuable relations from those data...

mailman bounces

As usual William Brack delivers what he promises, so there is a Python version of the mailing-list admin script, I also extended the bounce config file over the last week.

Boston

I will be near Boston from beginning of next week up to mid May visiting the other Red Hat folks there, I hope to be able to see other people there, notably the Ximians and William who will fly from California to finally meet face to face :-) . BTW clarkbw never underestimate the horrible traffic mess that is Boston and the name "Turnpike" really means "big mess" as far as I can remember !

xml:id

Fist working draft is out. First implementation hit libxml2 CVS tonight it took less than an hour, including setting up basic regression tests. Not finished of course, we will see how long it takes to bring that one to REC if it ever gets there.

I answered a few questions in the mailing-list about it too.

The germans gets it

While searching on the web I found a CVS web repository at http://cvs.zeit.de/code/view/mod_xslt/cms_extensions.html?rev=HEAD . The Zeit is one of the largest German newspaper, it does a lot of electronic publishing of course and has a CMS system. Big business, industry leader, not computer related, *but* since they developped extensions for Apache and Zope for their CMS, they documented their architecture and created a public CVS base ! They understand that it is not in their business interest to keep it internal and that giving back changes is important.

It's also SAP a leading german IT company who gave back their (aging but solid) Database for which MySQL is apparently providing support now. It seems to me, that the german industry understood the concepts and perspectives of open source and free software earlier, reading their IT press reinforce that feeling.

mailman bounces handling

The perl script I hacked last week-end works fairly well, it reduced the work to a few manual bounces uncaught and approving the valid but blocked posts. In the meantime William Brack rewrote the script in python, I didn't checked it out yet, but I will certainly switch since I feel better maintaining Python code.

TheReg and XSLT publishing

The Register is among the News site I look at from time to time, and I noticed beginning of this week that the format changed. I then later discovered that they are using libxslt to build the pages. I loved the following statement "We're proud that The Register uses valid XHTML and CSS on its pages" with the suggestion to report breakages. Even if TheReg specializes in treating the topics in an sensational way, their technical attitude should be noted too :-)

In general the [Database ->] XML -> XHTML processing though XSLT seems one of the best way to generate well-formed and even valid XHTML, and as long as the transformation is either static or cached, the cost for doing so is reasonable. The full xmlsoft.org site is generated that way, the pages are XSLT produced by the Makefile in libxml2 (and libxslt) doc directory, and also validated against XHTML1 DTDs (which are in the catalog if you installed the xhtml1 RPM) automatically. That way I'm sure that even if the doc content might not be ideal and certainly outdated it's structure and presentation at least are garanteed to be clean.

Formatting

sdodji pointed me at Prince an XML formatter using CSS for the rules and generating PDF and Postscript, which uses libxml2. I tend to agree with him that if commercial implementation are developped then that means that there is a need for such formatter and the Open Source community work like libcroco and sewfox may have a bright future. I just hope that the xmlroff project will continue too, I'm not sure Sun is still actively supporting the project. Formatting is hard but we have most of the infrastructure, maybe aiming at the full XSL is just too hard and a CSS based tool is more likely to get finished, well I hope so.

163 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!