Release Notes 1.5
From bemoko developer wiki
Released on 30 March 2011
Summary
1.5 is the an update to bemokoLive that builds on top of 1.4.5.1. It provides major improvements in the device database, including
- Faster spin up
- Less memory foot print
- Improved device identification resolution
- Ability to change capabilities at runtime
Enhancements
- [LIVE-1115] - New improved and optimised device database
- [LIVE-1402] - Support Context Resolution Plugins
- [LIVE-1473] - Upgrade ehcache to 2.3.1
- [LIVE-1523] - In production mode use ScriptEngine that does not reload plugins when caching enabled
- [LIVE-1524] - Remove synchronization in LiveGroovyScriptEngineImpl
- [LIVE-814] - Update Neko to 1.9.13
- [LIVE-1249] - Provide a way of overriding device attributes at runtime
- [LIVE-1329] - Bring Joda Time API into stack
- [LIVE-1456] - Add android.480 to default UI list
- [LIVE-1474] - Provide uptime information in console
- [LIVE-1481] - Make site reload more efficient in Dev mode
- [LIVE-1492] - Strip welcome pages down to bare bones info (e.g. welcome message + version) when system is locked down
- [LIVE-1493] - Allow license to be reloaded at run time
- [LIVE-1504] - Make small and default fonts in skin.default slightly bigger
- [LIVE-1520] - Render event log in console
- [LIVE-1522] - Allow addon to be disabled for the rendering of a given site
- [LIVE-1525] - Allow a subsite to reuse classloader and session factory from containing site
- [LIVE-1528] - Provide a flush by site API
- [LIVE-1554] - Upgrade groovy to 1.7.10
- [LIVE-1555] - Provide process manager to provide console control on the process activity
Fixes
- [LIVE-1464] - Redirect to default or corrected URI with trailing forward slash when the URL accessed is not a full site URL
- [LIVE-1466] - Initialise is not being executed on a renderer plugin
- [LIVE-1475] - Cache access locking
- [LIVE-1476] - Deadlock when ClassLoaderInterceptor and parseClass hit by two threads at same time
- [LIVE-1482] - Dependents of dependents not reloaded when underlying dependent becomes out of date
- [LIVE-1490] - Exception from device factory plugin is ignored
- [LIVE-1497] - Deadlock on loading custom configuration object
- [LIVE-1501] - Opera 11 getting recognised as Opera Mini 5
- [LIVE-1502] - HTC Magic 2.2.1 is identified as Verizon-Droid with 480px
- [LIVE-1506] - Support for Windows 7 phones
- [LIVE-1509] - blocking with default log4j configuration
- [LIVE-1510] - Deadlock when getting class using script engine loadScriptByName from active addon
- [LIVE-1514] - Exceptions when dropping site tables through console when tables in SQL Server schema
- [LIVE-1533] - Accessing URL with ":" gives No enum const class
- [LIVE-1540] - Fix table dropping when schema specified
- [LIVE-1541] - Server Blocked on log4j call appenders - log4j.Category.callAppenders and org.apache.log4j.AsyncAppender.append
- [LIVE-1542] - Site and session plugins are initialised before of hibernate session created
- [LIVE-1547] - Lock down link on bemokoLive start was escaped and unclickable
- [LIVE-1551] - Remove Content-Disposition header by default
- [LIVE-1557] - Typed plugin properties not picked as plugin dependency
- [LIVE-1558] - Could not initialize class javax.imageio.ImageTypeSpecifier : NoClassDefFoundError
- [LIVE-1560] - Plugin dependencies not initialised correctly (in rare cases) after cache flush
- [LIVE-1561] - Device database issue - IE9 not reported correctly
Documentation
Flush site
A new console function has been added to flush a given site. This allows you to deploy an new site and clear any caches for that site without impacting other sites. This is especially important in a multi-site hosted environment if you want to minimise the impact of a single site update.
Upgrade Notes
Class loader site isolation
If you have a deployment where sites are deployed as sub-sites AND you want to want to keep the class loading separate for all the sub-sites then you need to update the site configuration. This is because from v1.5 the default behaviour is for sub-sites to share the same script engine.
To configure script engine separation, include a site-config.xml in the parent site that defines that the scriptEngineScope is on a site basis (as opposed to the default container basis)
parentsite/site-config.xml
<site> <variables> <variable name="scriptEngineScope" value="site"/> </variables> </site>
If you want to benefit from the shared script engine in subsites of the subsite of the parent site then, set the scriptEngineScope to container in the site-config.xml
parentsite/subsite/subsubsite/site-config.xml
<site> <variables> <variable name="scriptEngineScope" value="container"/> </variables> </site>
Use plugins directory for tweakers
Tweakers must now be located in the plugins director and not the tweakers directory. If you have any tweakers located in a tweakers directory then please move them to the plugins directory and remove the tweakers directory.
