Release Notes 1.3

From bemoko developer wiki

Jump to: navigation, search

Released on 24 March 2010

Summary

1.3 is an update to bemokoLive that takes precedent over the 1.2.8 version. It provides a significant new feature set focussed on make life easier for a site developer, e.g. easier to maintain variations in the UI across different channels.

It is backward compatible with 1.2.8 and users are encouraged to upgrade.

Headlines in this release include:

  • Plugins have been made simpler. Now plugins don't need to extend the AbstractPlugin class.
  • Plugins can now be written in (pseudo) Java - pseudo because it's essentially groovy written in Java syntax, but in most cases you can take existing java source and drop them in as plugins.
  • Templates now can include the page fragment next in the fallback chain, e.g. extend the CSS fragment from one UI by adding a single extra CSS rule. This makes it much easier to manage small deltas from UI to another.
  • Support for addons - addons are sites that ehance the behaviour of all sites on the platform
  • Site Overlays - addons can be defined to overlay sites (as opposed to being in fallback list)
  • Sites have access to a convenient logging API - see Logging
  • Sites have access to a convenient property configuration API - see Custom Configuration
  • A platform instance can be assigned an activeProfile which can drive the configuration of the site, e.g. manage the configuration between development, test and production instances - see Active Profiles
  • Resource linking - a page component name (or names) can be symbolically linked to another page component name (or names)
  • Site linking - a subsite can be a site stored centrally on the platform as an addon and hence can be shared across many sites

Enhancements

  • Easy object persistence thanks to GORM (experimental mode) (#713)
  • Merge tweakers and plugins dirs into one so that groovy consistently loads from a single place (#1028)
  • Support property localisation e.g. smtp host for environment (#1062)
  • Make objects implicitly available to freemarker template same as those available to expressions (#1065)
  • Need to be able to query device.name in exprs (#1070)
  • Ability to disable om/dev mode on production or allow only for a user of a particular group (#1180)
  • Support include parent in Freemarker template (#1399)
  • Make property configuration for plugins more flexible and with environmental controls (#1516)
  • Tweakable expr now process intent value (#1727)
  • Tweakers can now extend other tweakers (#1769)
  • Revamp the styling of the defaul site (#1852)
  • Support table name prefix for ORM (#2029)
  • Remove unused and broken UI parameter support (#2030)
  • Provide an easy logging functionality to sites (#2034)
  • Embed demo site in product - demonstrating each function in product (#2048)
  • Add "logs","target" and "tmp" to set of reserved directories in a site (#2066)
  • Report writer tweaker disabled when activeProfile "prod" set (#2068)
  • Move application php rendering logic from extensions to core (#2080)
  • Deliver site as iPhone application (#2097)
  • Add content transformer servlet filter to core (#2119)
  • Remove the need for plugins to implement LivePlugin interface (#2122)
  • Support (pseudo) Java plugins - i.e. as far as compliant with Groovy (which is pretty complete) (#2127)
  • Upgrade groovy from 1.7.0 to 1.7.1 (#2133)
  • Support getProperty in template model accessors (#2136)
  • Disable localised FreeMarker template lookup (#2137)
  • Include ui list in error report in 404 errors (#2138)
  • Support addons directories (#2140)
  • Provide mechanism for an addon (or any child site) to define important resources that should take priority (#2141)
  • Upgrade nekohtml from 1.9.13 to 1.9.14 (#2144)
  • Update device database (#2148)
  • Support linked sites (#2149)
  • Add addons directory list to welcome page (#2154)
  • Provide querystring style parameter setting for intents (#2182)

Fixes

The following have been fixed:

  • Thread blocking related to JackRabbit caching (#1137)
  • File locking occuring on Windows by tomcat process (#1333)
  • BE302 : 1.2.1 bi 302 Cannot refresh person 43f7aca (#1396)
  • Support for Tomcat 5.5 (#2022)
  • Error report has "~" in subsite URL (#2052)
  • The error when a site can't be found is very confusing - make it clearer (#2070)
  • Cookie path set to "" not deployment context (#2086)
  • Out of memory lead to file not found for a template in a ui called "unknown" (#2093)
  • Subsites aren't inherited (#2117)
  • PC and AJAX UI definition in default site is wrong way around (#2126)
  • Tutorial naming clashes with that embedded in the product (#2155)
  • Old technique of fallback root still being trigger (#2159)
  • live war fails to deploy in jboss ClassCastException XIncludeAwareParserConfiguration vs XMLParserConfiguration (#2160)
  • Invalid web.xml causes live to fail to deploy on JBoss (#2161)
  • Device repository is not cleaned down properly if web application is unloaded (#2162)
  • PHP relative include not working on cygwin on windows (#2174)