From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 400AD7EF0D for ; Thu, 11 Feb 2016 20:04:41 +0100 (CET) IronPort-PHdr: 9a23:T7FH9hA3y1C+Oq6xoYoKUyQJP3N1i/DPJgcQr6AfoPdwSP7+pMbcNUDSrc9gkEXOFd2CrakU1KyN7+u5ADRIyK3CmU5BWaQEbwUCh8QSkl5oK+++Imq/EsTXaTcnFt9JTl5v8iLzG0FUHMHjew+a+SXqvnYsExnyfTB4Ov7yUtaLyZ/niKbpp9aKOl0ArQH+SI0xBS3+lR/WuMgSjNkqAYcK4TyNnEF1ff9Lz3hjP1OZkkW0zM6x+Jl+73YY4Kp5pIYTGZn9Kq8xSLgQES8rKXt9sMbisB2GSQqU+lMdVH8Xm1xGGV6Wwgv9W8LYtDf9sKJX0SKaPMu+GbkyRTOk5a5gSB7uoDYONzk+tmrQj5oj3+pgvBu9qkknkMbva4aPOa8mcw== Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=antonbachin@yahoo.com; spf=Pass smtp.mailfrom=antonbachin@yahoo.com; spf=None smtp.helo=postmaster@nm13.bullet.mail.ne1.yahoo.com Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of antonbachin@yahoo.com) identity=pra; client-ip=98.138.90.76; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="antonbachin@yahoo.com"; x-sender="antonbachin@yahoo.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of antonbachin@yahoo.com designates 98.138.90.76 as permitted sender) identity=mailfrom; client-ip=98.138.90.76; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="antonbachin@yahoo.com"; x-sender="antonbachin@yahoo.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@nm13.bullet.mail.ne1.yahoo.com) identity=helo; client-ip=98.138.90.76; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="antonbachin@yahoo.com"; x-sender="postmaster@nm13.bullet.mail.ne1.yahoo.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0A5AQAX27xWkkxaimJegi6BXm0QiEufPAQDgU6FRoxIFwaHJjwQAQEBAQEBAQEQAQEBAQcNCQkfMIItgj4dATkVHwImAkcYiBcBAxIOokePW4FpgleFEAEjJwOEaQEBCAEBAQEBFQYMAgFshReBbAiGToJuCy0TGIEPBY4biFyFTogFGoINhnwghTACjj43gj6BcUuHGoE5AQEB X-IPAS-Result: A0A5AQAX27xWkkxaimJegi6BXm0QiEufPAQDgU6FRoxIFwaHJjwQAQEBAQEBAQEQAQEBAQcNCQkfMIItgj4dATkVHwImAkcYiBcBAxIOokePW4FpgleFEAEjJwOEaQEBCAEBAQEBFQYMAgFshReBbAiGToJuCy0TGIEPBY4biFyFTogFGoINhnwghTACjj43gj6BcUuHGoE5AQEB X-IronPort-AV: E=Sophos;i="5.22,432,1449529200"; d="scan'208";a="202705227" Received: from nm13.bullet.mail.ne1.yahoo.com ([98.138.90.76]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 11 Feb 2016 20:04:23 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1455217460; bh=rJmi1vzIgQypXqYphUQKpAt7ht7AOTGGwVYkg15jwDY=; h=From:Subject:Date:To:From:Subject; b=BGE1d1fng+jso/8frsxJumVOTKRc3x5MGusAXt5bIiMD3gfOWrO+Xf4BkdiJOLPHlnSCHN90LFYqpxWnnJMZm4oTPYBQpU3KiHvMBjm4aGoY3gHeu4KuSlzBSdyXDf49rOo/17IFx3XDyiu9H7VyA6cfEbCn3rzKgjt9DstwP0pSSmIGJNA59kl7QIjStxLtNiFt2v3HaB6FPdtHcByGHSMLxt0bGtn4gG904e38kiCjjRvBsLBkpJ4tBQmtVqGpClEsQ7bnfHgZKc8Bpbr3z6j7XC+bKJp4udM3QZzXYeag9+GrMJFb85p/t+fV4gaLil2KC2VDDM1Bv6MhUU1LRA== Received: from [98.138.100.103] by nm13.bullet.mail.ne1.yahoo.com with NNFMP; 11 Feb 2016 19:04:20 -0000 Received: from [98.138.226.128] by tm102.bullet.mail.ne1.yahoo.com with NNFMP; 11 Feb 2016 19:04:20 -0000 Received: from [127.0.0.1] by smtp215.mail.ne1.yahoo.com with NNFMP; 11 Feb 2016 19:04:20 -0000 X-Yahoo-Newman-Id: 543611.64526.bm@smtp215.mail.ne1.yahoo.com X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: .ke1i0MVM1nHe5nXR1p.U3SwdcHP0avo.8Ya52w1735.YIs fEVYZ5bOhDo9RdiZ67GHdSpkJR8Z5KEbqe8wB49Agl1CLhGryyBVIq1cG51X wQEkMm.7bbx5bUbde0JJWAAP9tg8S5zZtq7HDzcWraXQHDTgr7ooKYN_5aPC Kyii6kguU.wEIme1kTeoW5_oYST3aKBQyuQBjSEPSkEjCB4RnSeHkCTvjntG gle5r67Qqc_AXYiz.55yEH2aJZW7XtrHjgVnfFThVRkKdHkvUTVNQGFEMbM_ CPNqQbZo8EB.AKUWhdpPZ9JlsV9IIXEMHKk2sRRay639TdZbFfdYABnz1pB8 _B.N_zQE4fdVEYFAZFQbgEjZan3jBYNq6Oyz6GcrQL8e8YXQnGVjZKYv4qXF dgyr5E8Yssun4WnMHe_ByR57Vog3uY.LYjuNnbKYRTs1X9h0aBsp9hnZ56Sa PMP11.c8eIJUeY5q266PPtq_qAd677SbD.s1I9dujvRaqVCkBiOdVPW_j0Ii df0EHh6M8eLs9hS762uz49dGMM8W3RSeeXF1WhYS.UT1LW.5t0BnX7T1lTt6 4azg5lu0- X-Yahoo-SMTP: ddtAESaswBBsjSthz_dVP91gr2NDfymF From: Anton Bachin Content-Type: text/plain; charset=utf-8 X-Mao-Original-Outgoing-Id: 476910258.681661-2892b1242aa421a2fc5310bfeff3f058 Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2070.6\)) Message-Id: <330D84C8-2A00-4127-A03B-5287E003F6B7@yahoo.com> Date: Thu, 11 Feb 2016 13:04:18 -0600 To: caml users X-Mailer: Apple Mail (2.2070.6) Subject: [Caml-list] =?UTF-8?Q?=5BANN=5D_Lambda_Soup_0=2E6_+_Markup=2Eml_0?= =?UTF-8?Q?=2E7_=E2=80=93_Improved_HTML5_processing?= Hello, I would like to announce releases 0.6 of Lambda Soup, the CSS-selector-based HTML scraper and rewriter, and 0.7 of Markup.ml, the streaming HTML and XML parser. https://github.com/aantron/lambda-soup https://github.com/aantron/markup.ml The main change in Lambda Soup is that is is now based on Markup.ml instead= of Ocamlnet. As a result, - parsing now conforms closely to the HTML5 specification, including error recovery; - HTML entity references are translated; - encodings are detected automatically, Lambda Soup is no longer limited to ASCII-compatible input, and all strings emitted by the API are in UTF-8; = and - empty attributes are handled correctly. Lambda Soup can now accept and emit Markup.ml parsing signal streams, so it= can be used for filters, without having to parse directly from or serialize all= the way to strings. It can also be used safely with XML. Parsing is, however, m= uch slower =E2=80=93 this depends on Markup.ml being optimized in the future. The HTML parser in Markup.ml, in turn, now implements the adoption agency algorithm, an error recovery algorithm from the HTML5 specification that is ill-suited for streaming parsers. It is also more thouroughly tested, and h= as received many bugfixes. I must thank Jerome Vouillon and Leo Wzukw for bug reports. They are greatly appreciated. Regards, Anton