Neclimdul wrote an extensible parser that could replace common_syndication: http://cvs.drupal.org/viewvc.py/drupal/contributions/sandbox/neclimdul/f...

An extensible parser is a great idea, it would address many issues where people wind up hacking common_syndication in order to pull one or the other custom field. We should review eparser and see whether it makes sense to replace common_syndication with it.

My first question is: Are all features of common_syndication present in eparser? If not, which ones aren't?

Comments

aron novak’s picture

It's really great that there are attempts to make even more lightweight and simple and modular parsers.
Just the first impression:
 - No cURL support, drupal_http_request sometimes fails to follow valid redirects
- You need to specify the feed type (rss / atom /etc) by hand, i think it's planned to implement already.
- no feed autodiscovery (www.drupal.org is not enough to supply)
- no atom support at the moment, i know, it's under construction

The good things:
the code is nice and clean, it's really simple. It seems that the handling of namespaces is more robust.

neclimdul’s picture

It might help if I gave some background. It was sometimes hard for me to decide what was a feature and what was a unnecessary quirk so I sort of designed the system using a lot of the common_syndication code. Then after I got it mostly working the way I liked behind the scenes, I started making it interface more like common_syndication by providing the same fields.

That said there are probably some things missing. One that I know isn't there is the file caching because I wanted to simplify that part of the code while I was developing it. It does cache the parsed object in the Drupal cache though which makes working with the feed very snappy. And the functions for fetching the feed aren't drastically different so I believe this could be added back in fairly easily.

neclimdul’s picture

Status: Active » Postponed

I think we've decided for the time being that eparser doesn't meet the requirements for replacing the common parser. I've created a separate project, the Feedapi Extensible Parser to develop it for now.

alex_b’s picture

#3 - thanks for posting an update. I've set a link to eparser on feedapi's project page: http://drupal.org/project/feedapi