Until 1.0 is released, newer releases of Ema may see breaking or significant changes. This page exists to help you with upgrading your apps to the subsequent versions.
0.6 -> 0.8
0.8
is a substantial change, with Ema getting nearly rewritten entirely. See PR #81 called ‘Multisite rewrite’.
First, read Tutorial to get a taste of the new API. Then, in your old Ema site:
-
Extract
encodeRoute
anddecodeRoute
(ofEma
instance) into anIsRoute
instance. -
Change
Ema
toEmaSite
, and definesiteInput
(what used to be in argument torunEma
) andsiteOutput
(the render argument torunEma
). You will want to use Dynamic instead ofLVar
. -
Ema.routeUrl
: change to accept the Route Prism that is now passed tositeOutput
Apps that already use Ema 0.8
You may want to read the source code of these apps for more context.