Older blog entries for jaz147 (starting at number 0)

24 Oct 2000 (updated 24 Oct 2000 at 15:33 UTC) »

As my first entry, let me define the situation a bit.

I am currently involved with a great Open Source project called WorldFor ge. I'm a newb, so I tackled a relatively small chunk of the project - varconf. Varconf is a configuration library, originally created by sdt for STAGE, WorldForge's primary server application. Varconf is small but quite functional and I am having a blast with it.

Varconf is designed to input configuration data from config files, environment variables or the command-line. It also has callback support to inform an application of a settings change.

Since I took over the library, I have made the following enhancements/changes to varconf:

  • Adopted libsigc++ for callbacks.
  • Added support for sections (as in a standard config file section) in command-line arguments.
  • Implemented the environment variable input method (wasn't written yet when I took over the library)
  • General code clean-up, commenting and what-not.

Not much but it is a start. Some future ideas I've come up with/had suggested to me:

  • Enhance the data manipulation interface - currently there is no method for deleting an individual item or section from a config database.
  • Re-implement the "Observer" class - Observers in Varconf were auto-update objects that stored a copy of a single config item for quick access. There were some problems with the implementation so I removed them temporarily.
  • Convert the file parser to lex/yacc - I have some concerns but if doable, this would make the parser far easier to work with.
  • Add an interface for warnings - currently, if erroroneous data appears that varconf can handle without dying, it does so without a complaint. Keeps the lib simple but makes reporting typos and the like difficult.

More will come with time I'm sure. That is all.

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!