lexbor 2.7.0

La 13-an de marto, post kvar monatoj da disvolviĝo, versio 2.7.0 de la alt-efikeca biblioteko estis publikigita. lexbor, desegnita por prilabori HTML 5 kaj CSS formatojn.

Ĉefaj trajtoj de la projekto:

  • Plena subteno por WHATWG, W3C kaj Unikodo-specifoj: HTML5, CSS-Sintakso 3, Encoding, URL, Unikoda Normo Aneksaĵo #15, Unikoda Teknika Normo n-ro 46, Punycode, Unikoda Normo Aneksaĵo #15, Unikoda Teknika Normo n-ro 46;
  • manipulado de DOM-elementoj kaj atributoj: aldono, ŝanĝo, forigo, ktp.;
  • subteno por analizado de HTML-fragmentoj;
  • pasante ĉiujn DOM-arbajn konstrutestojn;
  • testita sur pli ol 200 milionoj da HTML-paĝoj uzante ASAN;
  • subteno por ĉifrado-detekto per bajta fluo;
  • analizante CSS-stilojn en etikedaj atributoj kaj en la etikedo ;
  • Trovi HTML-elementojn uzante CSS-selektilojn;
  • subteno por 40 kodigoj dum kodado kaj malkodado;
  • subteno por nebufrita kaj bufrita kodado kaj malkodado;
  • skribita en C (normo C99) sen iuj ajn triapartaj dependecoj kaj distribuita sub la permesilo Apache 2.0;
  • la biblioteko estas dividita en modulojn (Kerno, CSS, DOM, Kodado, Motoro, HTML, NS, Punycode, Selektiloj, Etikedo, Unikodo, URL, Utiloj), kiuj povas esti kompilitaj kaj uzataj kiel apartaj bibliotekoj (kun la CMake-opcio LEXBOR_BUILD_SEPARATELY=ON);
  • triapartaj ligadoj kaj envolvaĵoj por lingvoj kristalo, D, eliksiro, Julia, PHP, python и Rubeno.

Ĉefaj ŝanĝoj:

  • Aldonita subteno por kunfandado (kombinado de fontdosieroj en unuopan dosieron). Ĉi tio simpligas la integradon de la biblioteko en projektojn — vi nur bezonas inkluzivi unu dosieron anstataŭ uzi la tutan konstrusistemon. Por detaloj, vidu dokumentado.
  • Ampleksa reverko de la kodo respondeca pri CSS-analizo estis efektivigita por prepari la efektivigon de la aranĝo.
  • Aldonita validigo de eniga fluo al la HTML-analizilo (ĉi tio necesas nur por raporti erarojn pri analizado laŭ la specifo). Malŝaltita defaŭlte, vidu detalojn. html/#ĵeton-opcioj.
  • Preparante kodon por la eldono de la aranĝmotoro.
  • Ĝeneralaj plibonigoj kaj cimo-korektoj.

fonto: linux.org.ru

Aldoni komenton