lexbor 2.7.0

Den 13. marts, efter fire måneders udvikling, blev version 2.7.0 af det højtydende bibliotek lexbor, designet til at behandle HTML 5 og CSS formater.

Hovedtræk ved projektet:

  • fuld understøttelse af WHATWG, W3C og Unicode specifikationer: HTML5, CSS Syntax 3, Encoding, URL, Unicode Standard Annex #15, Unicode Technical Standard #46, Punycode, Unicode Standard Annex #15, Unicode Technical Standard #46;
  • manipulation af DOM-elementer og attributter: tilføjelse, ændring, sletning og mere;
  • understøttelse af parsnings af HTML-fragmenter;
  • bestået alle DOM-træ opbygnings tests;
  • testet på mere end 200 millioner HTML-sider ved hjælp af ASAN;
  • understøttelse af kodningsdetektering baseret på byte-strømme;
  • analyse af CSS-stilarter i tagattributter og i <style> tag;
  • søge efter HTML-elementer ved hjælp af CSS-vælgere;
  • understøttelse af 40 kodninger ved kodning og dekodning;
  • understøttelse af både buffered og non-buffered kodning og dekodning;
  • skrevet i C (C99 standard) uden tredjeparts afhængigheder og distribueret under Apache 2.0 licens;
  • biblioteket er opdelt i moduler (Core, CSS, DOM, Encoding, Engine, HTML, NS, Punycode, Selectors, Tag, Unicode, URL, Utils), som kan kompilere og bruges som separate biblioteker (med CMake option LEXBOR_BUILD_SEPARATELY=ON);
  • tredjeparts bindinger og wrappers til sprog Crystal, D, Elixir, Julia, PHP, Python og Ruby.

Vigtige ændringer:

  • Tilføjet understøttelse af amalgamation (sammenfletning af kildefiler til én fil). Dette forenkler integrationen af biblioteket i projekter – det er tilstrækkeligt bare at inkludere én fil i stedet for at bruge hele build-systemet. Læs mere i dokumentationen.
  • Der er foretaget en omfattende omskrivning af koden ansvarlig for CSS-parsing, for at forberede implementeringen af layout.
  • Tilføjet kontrol af den indkommende strøm i HTML-parseren (dette er nødvendigt for at give parsing-fejl i overensstemmelse med specifikationen). Deaktiveret som standard, læs mere html/#tokenizer-options.
  • Forberedelse af koden til udgivelse af layoutmotoren.
  • Generelle forbedringer og fejlrettelser.

Kilde: linux.org.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster