Adding features to Widgets in Wookie: improving feature management with 
versioning and dependencies
---------------------------------------------------------------------------------------------------

                 Key: WOOKIE-329
                 URL: https://issues.apache.org/jira/browse/WOOKIE-329
             Project: Wookie
          Issue Type: New Feature
          Components: Feature Management
            Reporter: Scott Wilson


Wookie allows the dynamic injection of feature implementations into Widgets; 
what this means is that when an author creates a Widget, and declares that it 
wants to use "feature xxx", then when the Widget is installed Wookie will look 
for a "feature xxx" and inject any JavaScript and CSS into the Widget specified 
in the Feature definition. This definition is an XML file that Wookie reads in 
on launch. For more information see 
http://incubator.apache.org/wookie/docs/developer/features.html

However, there are some issues with this mechanism that could be improved. One 
is that sometimes one feature may depend on another - for example, if the 
feature required is JQuery Mobile, this also depends on JQuery; however as 
there is no way to handle this dynamically, the usual solution is to include 
all dependencies in the feature. However, if the same widget requires multiple 
features, each of which require the same set of dependencies, then it is very 
easy for a widget to end up with multiple versions of common includes such as 
JQuery.

A related issue is versioning - if a widget author has tested their widget 
using a particular version of a feature, they don't want their widget to fail 
in deployment if there has been a breaking change in the latest version of the 
feature dynamically injected by Wookie.

So overall there is a need to make features more robust and predictable for 
authors and with less duplication of common includes by adding dependencies and 
versioning to the feature management aspect of Wookie.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to