philwilson.org

Is there a C++ library for Atom handling?

23 February, 2006

FeedThing is a desktop aggregator written in C++ by Gareth Simpson. The internals are split into several parts, including libfeedthing which is the core liberal feed parser, but it hasn’t been updated for ages, and I don’t think even he uses it any more, so it only supports the interim (and deprecated) Atom 0.3.

Which is a shame, because if was still using it, it would probably have a working Atom 1.0 parsing library.

As far as I can tell, there isn’t a single open-source Atom 1.0 parser written in C++. Unlike Java, Python, PHP, Ruby and .Net which all have it good with at least one solid feed parser.

I want a proper parsing library for my Atom-over-XMPP application. I’ve just been upgrading Feed On Feeds to transmit Atom 1.0, so now I need something to receive it – so far this has been FeedThing, but I don’t really fancy upgrading it to support Atom 1.0. The obvious alternative is to pick an open-source desktop client which already supports Atom 1.0 or could do by upgrading the parsing library it uses, and use that instead, but the only one that meets the “appealing” criteria (see below) seems to be Pears, which is a wxPython application (nice and cross-platform, and the xmpp libraries and code samples already exist) but that seems destined to move to an HTML interface in a desktop frame, which doesn’t sound particularly pleasant, and frankly, having actually now used it for five minutes, I already want to jump out of the window just to alleviate my suffering.

So what shall I do? I suppose it would be good for me to write some C++, but ditto with Python, and I have been wanting to do some RSS/Atom integrating with WikidPad – maybe this is my cue?

Those “appealing” criteria in full:

Of course, when I say “appealing”, I mean “non-negotiable”.

See other posts tagged with general and other posts made in February 2006.

Comments

JC
22 April, 2006 at 12:56

So, are you going to write it yourself? I am looking for the same thing and came to the same conclusion: nothing exists.

Pip
23 April, 2006 at 14:56

I did start, but my C++ just isn’t really good enough. As far as I know, no-one is working on one either.

I wonder if it’s possible to run Mark Pilgrim’s Universal Feed Parser through py2exe and call that from normal C++ code?

Eduardo Habkost
09 July, 2006 at 22:13

Did you find something useful? Did you had to write something yourself?

I will need to handle Atom using C++, also (for Google Calendar API, more precisely), so I am interested in any additional information you have found, and possibly joining efforts, if you had to write it yourself. 🙂

Pip
09 July, 2006 at 23:23

Nope, I gave up and moved to Python instead. Sorry Eduardo!