the module name created with Eliom_output.Eliom_appl is not available on client side: it is needed if you pass services to the client. Declare it with
XHTML.M.uri_of_string is now in Eliom_pervasives.Uri
Eliom 1.3 to 1.90
The ~sp parameter (server parameters) has been removed everywhere. sp is now stored in Lwt's new local thread storage mechanism (more information)
register_for_session has been removed. Use now: register ~scope:`Session
Eliom_services.new_service now called Eliom_services.service and so on.
Module Eliom_predefmod renamed Eliom_output
Module Eliom_sessions removed and replaced by
Eliom_request (information about the request)
Eliom_config (information from the configuration file)
Eliom_state (management of server side state of the application). Eliom_state can be used for the state of the session, but also for the state of the group of session or for the state of the client side process (browser tab).
Eliom_common for the types
Server side state now stores in Eliom references, kind of references with a scope.
Simplification in functions for closing sessions ... New functions Eliom_state.discard,
Eliom_state.discard_data and Eliom_state.discard_services. close_session is a shortcut for Eliom_state.discard ~scope:`Session.
Optional parameter (of many functions) ?session_name renamed ?state_name. (any better idea?) It can be used for naming sessions but also group of sessions or client-side process sets of data or services.
Eliom_services.new_external_service is now only for GET requests and there is now also new_external_post_service for POST requests.
Both can be used server and client side.
It is now much simpler to set or unset your own cookies. Cookies modules
disappeared. Use Eliom_session.set_cookies and Eliom_session.unset_cookies
Data tables now take parameters ~session_name and ~secure at creation, and not while setting or getting data
Eliom_tools now called Eliom_tools.Xhtml (and there is now Eliom_tools.Xhtml5)
A few function interfaces have changed, often because of new optional parameter.
Check interfaces if it does not compile.
The XML representation of Eliom can now contain closures ( lazy values evaluated at page printing time ). It is not possible to use the structural comparison and equality functions (Pervasives.compare, =<<>) on them. It also affects the XHTML, HTML5 and SVG representations.