02 Sep 2004 (permalink)

Το μνημείο της Φιλική Εταιρείας στην Οδησσό

Έχω παρευριθεί στα αποκαλυπτήρια του μνημείου των θεμελιωτών της Φιλική Εταιρείας στην Οδησσό. Ωραίο μνημείο και ωραίο θέαμα. Περιμένω με ανυπομονησία την αρχή του διδακτικού έτους στο Ίδρυμα Ελληνικού Πολιτισμού!

Today I attended the opening of the monument to the founders of Φιλική Εταιρείας near the Foundation for the Greek Culture in Odessa. Nice monument! The opening was dedicated to the 210th anniversary of the city and 10th anniversary of the Foundation. The programme of the celebrations is quite long and interesting. More info and photos in the future logs!

GNU tar 1.14.90 released

As the version number implies, it is an alpha. Complete list of user-visible changes follows:

* When restoring incremental dumps, --one-file-system option
prevents directory hierarchies residing on different devices
from being purged.

With the previous versions of tar it was dangerous to create
incremental dumps with --one-file-system option, since they
would recursively remove mount points when restoring from the
back up. This change fixes the bug.

* Renamed --strip-path to --strip-components for consistency
with the GNU convention.

* Skipping archive members is sped up if the archive media
supports seeks.

* Restore script starts restoring only if it is given --all
(-a) option, or some patterns. This is to prevent accidental
restores.

* `tar --verify' prints a warning if during archive creation
some of the file names had their prefixes stripped off.

* New configure option --with-rmt allows to specify full path
name to the `rmt' utility. This supercedes DEFAULT_RMT_COMMAND
variable introduced in version 1.14

* New configure variable DEFAULT_RMT_DIR allows to specify the
directory where to install `rmt' utility. This is necessary
since modifying --libexecdir as was suggested for version 1.14
produced a side effect: it also modified installation prefix for
backup scripts (if --enable-backup-scripts was given).

* Bugfixes:
** Fixed flow in recognizing files to be included in incremental
dumps.
** Correctly recognize sparse archive members when used with -T
option.
** GNU multivolume headers cannot store filenames longer than 100
characters. Do not allow multivolume archives to begin with such
filenames.
** If a member with link count > 2 was stored in the archive twice,
previous versions of tar were not able to extract it, since they
were trying to link the file to itself, which always failed and
lead to removing the already extracted copy. Preserve the first
extracted copy in such cases.
** Restore script was passing improper argument to tar --listed
option.
** Fixed verification of the created archives. 
** Fixed unquoting of the file names containing backslash escapes
(previous versions failed to recognize \a and \v).
06 Sep 2004 (permalink)

cpio + tar + pax = paxutils

Three commits in a day are definitely too much...

The festivities are over, and I'm back to work on free software. After more than half a year delay (!!!), Savannah people have approved paxutils. The project seems to have bad karma... Anyway, since I've just released tar 1.14.90 and the version 2.5.90 of cpio is ready and working, I've started merging the two projects into paxutils. The road will be long. I am going to export as much of the good ideas and as little of the codebase from each package as possible.

If everything goes as expected, the first version of paxutils should be ready by the January. If, on the contrary, the things continue going from bad to worst as they have been during all this year... well, then I'll make it by the beginning of March.

16 Sep 2004 (permalink)

Radius

I have released radius 1.2.94. Hopefully it won't be long before the release of 1.3.

Cpio

Version 2.5.90 of cpio is available for download from alpha.gnu.org. This is the first version of GNU cpio with official NLS support.

Working on GNU Anubis. Our current deadline is tomorrow.

20 Sep 2004 (permalink)

Today I started the second year of learning Greek in Ίδρυμα Ελληνικού Πολιτισμού.

21 Sep 2004 (permalink)

Chasing for bugs...

There are two very interesting ones:

Anubis

First is in Anubis. When running Anubis test suite in authmode, Wojciech noticed that some daemon instances enter endless loop attempting to free a chunk of memory.

My further investigation has shown that it always occurred when trying to free an ASN1 node belonging to _gnutls_pkix1_asn tree. The bug manifests the following regularities:

It seems like a heap corruption, the two basic questions are: why it is not revealed at an earlier stage by malloc debugging code, and why enabling this same debugging code makes the bug disappear? It will take a while to answer these questions...

Radius

Yep, the second one is there. It manifests itself as an incorrect comparison of two struct timeval. More precisely, in the following snippet:

        gettimeofday(&now, NULL);
        timersub(&now, start, &diff);
        if (timercmp(&diff, tval, <)) {
		...

timercmp incorrectly returns false when now differs from start by several milliseconds (the actual order of magnitude of tval is several seconds).

The bad thing about it is that both timersub and timercmp come from standard glibc headers...

News

Paxutils' project page is updated.

Antinews

Paxutils' official page at http://www.gnu.org/software/paxutils is still unavailable, despite the fact that I have uploaded an updated version two days ago. E-mails to Savannah hackers and GNU webmasters have so far given null effect. In fact, they remained unanswered.

For the time being, I have to host paxutils page on my server.

I'm quite accustomed to various delays, but frankly, sometimes I'm getting bored...

Good reading

The Ancient Scripts site is fantastic.

A very good introduction to Korean language.

22 Sep 2004 (permalink)
Gaudete, patres conscripti, hodie enim aequinoctium celebramus.
24 Sep 2004 (permalink)

New releases

GNU Radius 1.2.95 and Anubis 3.9.96 are available.

25 Sep 2004 (permalink)

LINGUA project

I had a bit of free time, so I've used it to polish LINGUA engine. Currently it is written using eXtrans , which, albeit a great program, is not flexible enough for my needs. In addition to already described problems, its handling of nested tags is not consistent.

Surely I could have modified it further, but it appeared to me that I'd be better off writing a replacement for it from the scratch. And of course I was going to write it in Scheme :)

So, I've started a new project under a working name xmltools. It is a collection of Guile modules that should provide the functionality similar to that of eXtrans yet largely extended and improved. The project uses expat library and Mixp - a Guile interface module to expat.

In its current state, xmltools already supply all of eXtrans functionality, including postprocessor support.

Today I have written basic part of lingua.scm. The good thing is, it is already able to process xml and produce valid html output!

Hopefully it won't be long before I rewrite LINGUA entirely in Scheme.

29 Sep 2004 (permalink)

Well, it took four days to entirely rewrite lingua in Scheme using xmltools. Now it allows much greater flexibility than eXtrans version did. Moreover, it is easily extensible. There are still some minor points to work out, but as a whole xmltools+lingua is quite mature now, uhmm..., except for the docs... I'll need some time to write them. Then I'll probably host the project on Gna!.

In the meanwhile I have already rewritten ellinika using the new stuff. It allowed me to use normal Makefiles, split the single source file into several smaller ones and do a lot of cool things I couldn't have dreamed of using eXtrans version.