Publicado por Levy Carneiro Jr. em 12 de Março de 2009

Lançada a libxml-ruby 1.x: Agora o Ruby tem um concorrente sério para XML

xml.gifTente isto:

gem install libxml-ruby

E prepare-se para ficar chocado quando você ver a libxml-ruby 1.1.1 instalada (versão disponível quando este post foi escrito). Sim, libxml-ruby finalmente, depois de 7 anos, chegou à versão 1! É uma longa história envolvendo muitas pessoas, inicialmente Sean Chittenden, depois Trans Onoma, Ross Bamford, Dan Janowski, e agora Charlie Savage que trabalhou para avançar a biblioteca para a versão 1.1.1.

A libxml-ruby é, essencialmente, um conjunto de bindings para a libxml2, um parser XML escrito em C que é absurdamente rápido e completo. Ele passa em todos os 1800 testes da Suíte de Testes OASIS XML, é rápido (dependendo da biblioteca C usada), e finalmente é confiável. Também é compatível com o Ruby 1.9.1, tem uma ótima documentação (eu curti o tema que eles usaram!), uma API clean, e uma forte cobertura de testes. Essencialmente ela nos permite despachar o REXML para a lixeira da história do Ruby.

Mas se você é perfeitamente feliz com abstrações como Hpricot ou Nokogiri (que também usa libxml mas trata seus bindings separadamente), a libxml-ruby pode não ser de uso imediato para você. Mas se performance é um fator-chave, vale a pena conferir. A libxml-ruby oferece uma biblioteca "real" de parsing de XML incrivelmente poderosa e rápida, com todas as dores e prazeres que isso pode acarretar.

Parabéns a todos os envolvidos para este marco significante na história do Ruby. Agora nós Rubystas estamos no poderoso clube do XML.

2 Comentários para “Lançada a libxml-ruby 1.x: Agora o Ruby tem um concorrente sério para XML”

  1. #1
    flavio Disse:

    tem algum bench entre ela e o rexml?

  2. #2
    Comparativo de performance de XML em Ruby: Nokogiri vs LibXML vs Hpricot vs REXML Disse:

    [...] passada foi lançada a libxml-ruby 1.0 - um feito, uma vez que estava em desenvolvimento há sete anos. Eu suspeitei que isso poderia [...]

Deixe um Comentário