1. #1
    Sencha User
    Join Date
    Nov 2014
    Posts
    2
    Vote Rating
    0
    Tushan is on a distinguished road

      0  

    Default Unanswered: User agent permutations

    Hi all,

    I'm now working with GWT for a while and started to use GXT charts in my module as well. Now I'm struggling with some problems on reducing the build time caused by lots of permutations.

    In my module, I defined it the following way:

    Code:
    <inherits name='com.google.gwt.user.User'/>
    
    <inherits name="com.sencha.gxt.widget.core.Core"/>
    <inherits name="com.sencha.gxt.chart.Chart"/>
    <inherits name="com.sencha.gxt.theme.gray.Gray"/>
    
    <inherits name="com.google.gwt.json.JSON"/>
    <inherits name='com.myBase.MyBase'/>
    <inherits name="com.sencha.gxt.ui.GXT" />
    
    <collapse-property name="user.agent.os" values="*" />
    <collapse-property name="gxt.user.agent" values="air, safari*, chrome" />
    <collapse-property name="gxt.user.agent" values="ie8, ie9, ie10" />
    <collapse-property name="gxt.user.agent" values="gecko*" />
    Currently this results in 15 permutations, where I expect to have only 3. Taking a look at the compile report, it states permutations like this:
    ('gxt.user.agent' : 'chrome' , 'user.agent' : 'ie10' , 'user.agent.os' : 'windows')
    But it doesn't make sens that a permutation like this is considered, does it?
    What is the sense of a permutation chrome+ie10?

    I know that the handling for permutations is explained in the web, but nevertheless I did not get any useful hint yet how to solve my problem.

    Thanks in advance

  2. #2
    Sencha User
    Join Date
    Jul 2011
    Location
    Germany
    Posts
    212
    Vote Rating
    24
    Answers
    5
    Andreas Samjeske will become famous soon enough Andreas Samjeske will become famous soon enough

      0  

    Default

    Is your project multi lingual, i.e. do you have props like this:
    Code:
      <extend-property name="locale" values="en"/>
      <extend-property name="locale" values="de"/>
      <extend-property name="locale" values="fr"/>
      <extend-property name="locale" values="es"/>
    Or do you set prop locale explicitly?
    Code:
       
      <!-- By setting languages explicitly we get rid of "default-locale". This reduces number of permutations. -->
      <set-property name="locale" value="en,de,it"/>
    
      <!-- Fallback if user chooses unsupported language -->
      <set-property-fallback name="locale" value="en"/>
    Number of permutations = number of languages * number of browser/os packages

  3. #3
    Sencha User
    Join Date
    Nov 2014
    Posts
    2
    Vote Rating
    0
    Tushan is on a distinguished road

      0  

    Default Only using en

    Hi,

    I only build permutations for one language: en.

    <set-property name="locale" value="en"/>

    So all 15 permutations are build for this.
    Its really the combinations of gxt- and gwt.user.agent which produces my trouble.

    Regards,

    Also strange: I just found out that the number of permutations also seems to depend on the code in my entry point???

  4. #4
    Sencha User
    Join Date
    Feb 2015
    Posts
    2
    Vote Rating
    0
    rehevkor5 is on a distinguished road

      0  

    Default

    Make sure that you are not also setting user.agent yourself. GXT's com/sencha/gxt/core/Core.gwt.xml has logic which sets user.agent according to what gxt.user.agent is set to. If you bypass that logic, you will end up with the permutations you're seeing where it combines all possible values of user.agent with all possible values of gxt.user.agent.