The CHANGES file in the distribution has not been updated fully, but
changes include several improvements and adaptations to new versions of
dependencies and the OCaml language.
Changes include:
- support for tyxml 4.3.x and js_of_ocaml 3.3.x (rendering obsolete a lot
of patches);
- compatibility with lwt 4.x (same);
and several other bugfixes and minor improvements.
===== 5.0 (2016-01-28) =====
* Add Eliom_shared and server-side Eliom_content.{Html5,Svg}.R modules
* Add PPX syntax extension
* Clean-up form APIs, now available under Eliom_content.Html5.{D,F}.Form
* Patches to significantly reduce the size of request data
* Compatibility with TyXML 3.6, Js_of_ocaml 2.7, and reactiveData 0.2
* Various bugfixes and enhancements
===== 4.2 (2015-07-21) =====
* Add Manip.children, to get the html children of an element.
* Simplify Html5 and Svg signatures using tyxml's signature functors.
* Various logging improvements, in particular in Eliom_client.
* Fix eliomdep's exit code when calling option "-sort".
* Fix#168: call_ocaml_service always sends boolean true.
* Makes server function return types covariant.
* Restore compatibility with ocsigenserver 2.6 and lwt 2.4.7.
* Various bugfixes and wiki updates.
* Reactive DOM elements (thanks to a contribution by besport.com)
* PUT and DELETE services for RESTful Eliom Applications
Contribution by Domoco)
* EXPERIMENTAL: Mobile apps with Eliom. By making it possible to start
he application from client-side.
* Documentation improvements
* Improvements in typing of services (Contribution by Jacques-Pascal Deplaix)
* Filtering data from Eliom buses
* "caml" in value or type names now replaced by "OCaml" everywhere
* New module {{{Eliom_registration.File_ct}}} to make easier to send files with
heir content type
* Now possible to define services in shared sections
* Adding function {{{Eliom_client.change_url}}} to change the URL without doing a request
* Adding function {{{Eliom_service.attach_coservice'}}} to attach a non-attached coservice to an URL
* Improving comet configurations: now possible to stay idle instead of being completely inactive
* Now using defaultprotocol option (from ocsigenserver) to compute URLs
* The default expiration date for cookies on client side is now 10 years
* Now possible to send files in {{{Eliom_client.call_ocaml_service}}}
* Various additions and bugfixes in {{{Manip}}}, {{{Eliom_request_info}}},
{{Eliom_content.html5}}} (events) (contributions by besport.com)
* eliom-destillery renamed into eliom-distillery
* Templates for eliom-distillery
* New programs: eliomdoc and eliompp
* Ocamlbuild package
* Various bugfixes
* Language
** Generalized client values in server code
** Injections into client sections
* Tools
** Added eliom-destillery for generating project scaffolds
** Support Eliom interface files (.eliomi) in eliomc, eliomdep
** eliomdep: Generate dependencies between eliom-modules
** eliomc: infer only with option -infer, drop option -noinfer
** eliomc: Basic support for -i on eliom-files
** eliom{c,dep,opt},js_of_eliom: -dump to output the intermediate code
** eliomc,js_of_eliom: always open Eliom_pervasives in eliom files
* API
** Eliom_pervasives.server_function to easily access the from the client
** Get current state of a scope
** Module to access values of Eliom references in external states
(Eliom_state.Ext)
** Scope names are now named scope hierarchies
** Iterate the scope hierarchy (group > session > client > request)
** Adding Eliom_parameter.(type_checker, neopt)
** Add functions to insert html5 in atom feeds
** Eliom_tools.{F,D}.html to ease creation of head-tag
** Eliom_tools.wrap_handler as an easy alernative to
Eliom_registration.Customize
** Test for initial request of a client on the server
* Changed server behaviour
** Eliom_state.discard_everything now also discards request state
** Don't send nodes as data when they are part of the document
* Changed client behaviour
** Show progress cursor during navigation with change_page
** Improved error messages
** Fail on the client when a [server_function] or call_caml_service
fails on the server
* Bugfixes
** Allow % for injections directly after parentheses
* Support dropped for
** Xhtml
** OCamlDuce
** Eliom_compatibility_2_1
* A myriade of bugfixes
Eliom is an OCaml library for the webserver Ocsigen that allows
for the creation of dynamic webpages. In this way, a website is
not written as a separate set of pages, but as one integral OCaml
module.