Kiril --

I will be switching rpm from using libsyck to libyaml over the next couple of weeks.

Expect preliminary libyaml packaging for (FC6) linux at{SRPMS,RPMS}
this weekend.


73 de Jeff

Begin forwarded message:

From: Kirill Simonov <>
Date: August 25, 2006 2:19:44 PM EDT
To: Chris Ross <>
Subject: Re: [Yaml-core] libyaml futures

Hi Chris,

On Thu, Aug 24, 2006 at 11:53:13PM -0400, Chris Ross wrote:
   So, I see that libyaml was released and was constructed as part
of the Google SoC projects.  I was just curious where this project
is now, and if it's going to be continued with any real focus.

I'm the author of libyaml and I consider the release 0.0.1 to be feature
complete, so you shouldn't expect much work on it.  The API might
change, the bugs get fixed and new features may be added if requested
by users or bindings writers, but the main code is already in place.

I have some major features to consider, like
 - API for (de-)serializing the YAML representation graph (think 'DOM')
 - YAML 1.0 support
 - libsyck compatibility layer
but it's still in the planning stage.

Anyway, I'm not going to leave libyaml unmaintained.

   I have a commercial product, written in C, and am looking for a
configuration file parsing library to be used by numerous applications.
I don't know that YAML is ideal for this, but it would suffice, and
maintains the "easily understood and edited by hand" that is
important to me in configuration file formats.  Also, these programs
will need a log file format, and the idea of generating a log file
entry format as a YAML stream has some appeal, to make it
easier to later process the logs.

   Anyway.  I just wanted to inquire as to the current, and expected,
status of the libyaml library.  Anyone have any notions?  Anyone
know if any development has been done since 0.0.1?  I don't
know what svn revision 0.0.1 was.  I can't figure that out from the
web interface.  svn novice.  :-)

The command
    $ svn log
will show you the commit log for libyaml.

   Thanks.  Would love any feedback.  libyaml seems markedly
more "clear" on how to use than syck, which appears to be the
only other YAML library for use in a C application.

   Anyone have any feelings on the syck vs. libyaml issue for
use in C programs?

Keep in mind that libsyck and libyaml APIs are really different.
libyaml is an event-based parser and emitter (like SAX) while libsyck
operates on nodes of the yaml representation graph (like DOM).  It's not
clear for me which interface is more suitable for a C program.  I guess
neither is really as convenient as using yaml in scripting languages,
but both are usable.  There are some other differences between libsyck
and libyaml:
 - libsyck has been there for several years while libyaml just made its
   initial release.  As such, libsyck is more mature than libyaml.  I've
   tried hard to eliminate any possible leaks or buffer overflows, but
   surely active usage may uncover some bugs.
 - lybsyck has an implicit tag resolver while in libyaml this task is
   left to the applications.
 - libsyck is for YAML 1.0 while libyaml is for YAML 1.1.
 - libyaml supports Unicode (UTF-8 and UTF-16 encodings).


Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
Yaml-core mailing list