Release Notes 1.5

From bemoko developer wiki

Jump to: navigation, search

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.