You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@wookie.apache.org by "Scott Wilson (Created) (JIRA)" <ji...@apache.org> on 2012/03/07 10:48:58 UTC

[jira] [Created] (WOOKIE-329) Adding features to Widgets in Wookie: improving feature management with versioning and dependencies

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

        

[jira] [Updated] (WOOKIE-329) Adding features to Widgets in Wookie: improving feature management with versioning and dependencies

Posted by "Scott Wilson (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/WOOKIE-329?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Scott Wilson updated WOOKIE-329:
--------------------------------

    Fix Version/s: 0.14.0
    
> 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
>              Labels: gsoc2012, mentor
>             Fix For: 0.14.0
>
>
> 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
For more information on JIRA, see: http://www.atlassian.com/software/jira