News and Migration to Eliom 2.2
More coherent module names
The release of Eliom-2.2 contains the attempt of an easier and more coherent module hierarchy. This is achieved by the following principles:
- More intuitive module names (Eliom_content, Eliom_registration).
- Merge all functionality relating to (XML) content in Eliom_content.
- Module names are generally in lower-case form (except the first letter).
- Module names are generally given in singular.
A (partial) compatibility module is provided in Eliom_compatibility_2_1.
Migration alongside the CHANGELOG
- Dropped Eliom_pervasives, split into
- Eliom_lib (extension of stdlib)
- Eliom_content (content creation)
Solution: Add the following at the beginning of .eliom-files, or replace open Eliom_pervasives by:
open Eliom_content open Eliom_lib
- Moved all HTML5,XHTML content function to Eliom_content.{Html5,Xhtml}
- {HTML5,SVG,XHTML}.M → Eliom_content.{Html5,Svg,Xhtml}.F
- {HTML5,SVG,XHTML}.DOM → Eliom_content.{Html5,Svg,Xhtml}.D
- Eliom_output.{Html5,Xhtml}: form functions to Eliom_content.{Html5,Xhtml}
- Eliom_client.Html5 → Eliom_content.Html5.To_dom
- Eliom_dom → Eliom_content.Html5.Manip
- HTML5.of_element → Eliom_content.Html5.Of_dom.of_element
- Rename Eliom_output to Eliom_registration
- Rename Eliom_registration.Eliom_appl to Eliom_registration.App
Solution: Renaming (carefully to decide between functions of former Eliom_output.XYZ which moved to Eliom_content.Xyz and those moved to Eliom_registration.Xyz.
- Removed default implementations in Eliom_content.{Html5,Svg,Xhtml} (was inclusion of DOM)
Solution: Make an explicit choice by opening/using either D or F.
- Conform naming conventions for modules (singular, lower-case)
- XML → Xml
- SVG → Svg
- XML_types → Xml_types
- XHTML_types → Xhtml_types
- HTML5_types → Html5_types
- Eliom_services → Eliom_service
- Eliom_parameters → Eliom_parameter
- Eliom_references → Eliom_reference
- Eliom_extensions → Eliom_extension
- Eliom_cookies → Eliom_cookie
- Eliom_comet.Channels → Eliom_output.Channel
Solution: Simple renaming.
