Skip to content

Releases: ocsigen/tyxml

4.6.0

27 Sep 10:09
Compare
Choose a tag to compare

CHANGES:

  • Update for OCaml 5.0 and drop support for OCaml 4.2.0
    (#312 by @rr0gi)

  • Add additional variants to linktype for the rel attribute
    (Leon @LogicalOverflow Vack)

  • Expand options for autocomplete attribute on <input> elements
    (#302 by Aron @aronerben Erben)

  • Fix the SVG element <animate> (by the way, deprecate animation et
    al. in favor of animate et al.)
    (#306 by Idir @ilankri Lankri)

  • Add support for dialog element and onclose attribute
    (#301 by Julien Sagot)

  • Add an escape hatch for emitting attributes with non-standard names
    in jsx or ppx code (a leading _ character on attribute name)
    (#295 Chas @cemerick Emerick)

  • Add support for type attribute on <script> elements
    (#293 by Ulrik @ulrikstrid Strid and Chas @cemerick Emerick)

  • Add svg fill-rule attribute
    (#294 by Eric @dedbox Griffis)

4.5.0

22 Apr 11:14
Compare
Choose a tag to compare

CHANGES:

4.4.0

06 Mar 15:28
Compare
Choose a tag to compare

CHANGES:

  • Add support for Reason's JSX syntax with a new tyxml-jsx package
    (#254 by Joris Giovannangeli and Gabriel Radanne
    with help from Ulrik Strid and Louis Roché)
  • Modernize the handling of toplevel printers for utop.
    (Gabriel Radanne)

Elements and attributes

  • Add allowfullscreen, allowpaymentrequest, referrerpolicy attributes
    (#242 by Thibault Suzanne)

  • Allow crossorigin attribute for script element
    (#243 by Thibault Suzanne)

  • Greatly improved support of whitespaces in the PPX
    (#225 by Jules Aguillon)

  • Add preliminary support for ARIA attributes
    (#253 by Stéphane Legrand and Gabriel Radanne)

  • Add template element
    (#239 Stéphane Legrand)

  • Several bug fixes for types and PPX

4.3.0

18 Nov 16:46
Compare
Choose a tag to compare

CHANGES:

  • Dunify
    This also removes all the deprecated libraries (tyxml.syntax, tyxml.parser)
    and removes the ocamlfind library tyxml.ppx in favor of tyxml-ppx.
    (#197 by Drup, Rudi Grinberg and Anton Bachin)
  • Add simplistic indentation for the Format-based printer (#187 by Drup)
  • Allow the ppx to be used for more exotic tyxml instances, such
    as reactive elements (#200 by Drup)
  • Add Html.of_seq and Svg.of_seq, which allow to easily import
    HTML parsed with markup in TyXML (#221 by Drup)

Elements and attributes

  • Add Html.txt and Svg.txt as an alias for pcdata (#222 by Drup)
  • Add noopener link types (#198 by Jérôme Vouillon)
  • Slightly relax dt content type (#193 by Anton Bachin)
  • Add touch events (#211 by Malthe Borch)
  • Fix handling of figcaption in the PPX (#219 by Drup)

Version 4.2.0

30 Jan 14:39
Compare
Choose a tag to compare
  • Compatibility with OCaml 4.6.0.
  • The ppx should now be compatible with driver-based workflows. In particular, jbuilder.
  • Future breakage:
    • The two camlp4-based packages (tyxml.syntax and tyxml.parser) are now deprecated and will be removed in the next major version.
    • Introduction of the tyxml-ppx ocamlfind package. Usage of the tyxml.ppx package is discouraged, and it will be removed in the next major version.
  • Various fixes in the Html_sigs.T module (contribution by Fabian Pijcke):
    • Fixed the map element function signature.
    • The elements functions now (almost) all make use of the types defined in Html_types, rather than redefining them.
    • Html_sigs.T.fieldset now takes [< legend] elt wrap as optional argument rather than legend elt wrap.
  • Add basic support for aria-* attributes (contribution by Armaël Guéneau)
    (see https://www.w3.org/TR/wai-aria-1.1/#states_and_properties)
  • Add support for the role attribute (contribution by Armaël Guéneau)
    (see https://www.w3.org/TR/role-attribute/)
  • Add support for the minlength form attribute (contribution by Armaël Guéneau)
    (See https://www.w3.org/TR/html5/forms.html#attr-input-minlength)

Version 4.1.0

03 Mar 16:35
Compare
Choose a tag to compare
  • Uses uutf 1.0 (contribution by Daniel Bunzli)

4.0.1

30 Oct 15:05
Compare
Choose a tag to compare

Version 4.0.1

  • Fix handling of comments in the ppx.
  • Fix printing of utf8 in attributes.
  • Properly flush ppx errors. This bug was causing some blank error messages.
  • Fix handling of whitespaces in <select> in the ppx.

4.0.0

20 May 15:18
Compare
Choose a tag to compare

Version 4.0.0

Features

  • A new PPX has been added that allows to use tyxml with the HTML/SVG syntax, using the markup library (contribution by Anton 'aantron' Bachin).
  • New Format-based printers are available, both as functors and has pp functions in the various implementations. Old printers are deprecated.
  • Toplevel printers are now available for the tyxml library.
  • The str library has been replaced by re.
  • Various attributes arguments have been simplified. In particular:
    • Constants arguments have been removed
    • ``On|Off arguments are now replaced by booleans.
    • Some arguments now use an option type.
  • XML comments are now properly serialized (without escaping but with sanitization).

Elements and attributes

  • Add srcset and sizes attributes (contribution by Stéphane 'slegrand45' Legrand).
  • The arguments of the sandbox attributes are now more consistent (contributino by Anton 'aantron' Bachin).
  • Various SVG attributes and elements are now properly named (contributino by Anton 'aantron' Bachin).
  • Add inputmode attribute.

Documentation

  • Both the API documentation and the manual have been completely rewritten! Do not hesitate to read them and provide feedback.
  • Various examples have been added in the example/ directory. (basic_website contributed by Edgar 'fxfactorial' Aroutiounian).

Renaming and deprecations

  • Files in the tyxml library are now packed in a Tyxml module.
    If you were using one of Html5, Svg and Xml module, simply open Tyxml.
  • All Html5 modules are now named Html
  • Various attributes and elements have been renamed. The original versions have been kept and marked deprecated.
  • Various elements that were both deprecated in the HTML specification and not usable due to typing constraints have been removed.