You found a bug! We've classified it as SDKTOOLS-203 . We encourage you to continue the discussion and to find an acceptable workaround while we work on a permanent fix.
  1. #1
    Sencha Premium Member
    Join Date
    Jan 2012
    Posts
    131
    Vote Rating
    -2
    YomeKitsuma has a little shameless behaviour in the past

      0  

    Default Final Build (ant) :: still missing some (event) Classes

    Final Build (ant) :: still missing some (event) Classes


    Hi,

    Here what i've got when build with ant (sencha ant build) :

    Code:
    Creating Application Cache with manifest http://dev.tag-all.com:28880/build/T...cache.appcache
    Application Cache Checking event
    Application Cache Downloading event
    Application Cache Progress event (0 of 1) http://dev.tag-all.com:28880/build/T...ion/index.html
    Application Cache Progress event (1 of 1) 
    Application Cache Cached event
    Failed to load resource: the server responded with a status of 404 (Not Found) http://dev.tag-all.com:28880/build/T...=1350026474009

    This is something that I've got in "development" when I do not properly set the "Ext.Loader.setPath"

    With =
    Code:
    //<debug>
    Ext.Loader.setPath({
        'Ext': '../../../../Library/touch/src',
        'Tall'    : '../../../../Library/tall/src',
        'TagAll': 'app'
    });
    //</debug>
    Code:
    
    [INFO] [Ext.ClassManager] Overriding existing alias: 'widget.component' of: 'Ext.dataview.DataView' with: 'Ext.Component'. Be sure it's intentional.sencha-touch.js:600
    [INFO] [Ext.ClassManager] Overriding existing alias: 'widget.mask' of: 'Ext.LoadMask' with: 'Ext.Mask'. Be sure it's intentional. sencha-touch.js:600
    [INFO] [Ext.ClassManager] Overriding existing alias: 'widget.container' of: 'Ext.dataview.DataView' with: 'Ext.Container'. Be sure it's intentional. sencha-touch.js:600
    [INFO] [Ext.ClassManager] Overriding existing alias: 'widget.viewport' of: 'Ext.viewport.Android' with: 'Ext.viewport.Default'. Be sure it's intentional. sencha-touch.js:600
    All go fine...

    And without =
    Code:
    //<debug>
    Ext.Loader.setPath({
        //'Ext': '../../../../Library/touch/src',
        'Tall'    : '../../../../Library/tall/src',
        'TagAll': 'app'
    });
    //</debug>
    Code:
    sencha-touch.js:9942
    
    
    • Uncaught Error: [Ext.Loader] Failed loading './event/Dispatcher.js', please verify that the file exists sencha-touch.js:8319
    • Uncaught Error: [Ext.Loader] Failed loading './event/publisher/Dom.js', please verify that the file exists sencha-touch.js:8319

    What I've understood is that issue comes from the "microloader"...

    So actually it seems that is the only last step to have a good build (ok, there is also the problem pointed else where, that the app.appcache has a final "," which cause problem)

    So, I'am adding in "app.js" the Requires for ALL the Ext event...

    Code:
    Ext.application({
        
        name : 'TagAll',
    
    
        requires : [
            'Ext.MessageBox',
            //-----fixing bug for build---------------
            'Ext.event.*',
            //----------------------------------------
            'Ext.data.proxy.LocalStorage',
    And now.... HOW FUNNY... i'am getting this error :

    Code:
    Document was loaded from Application Cache with manifest http://dev.tag-all.com:28880/build/T...cache.appcache
    Application Cache Checking event
    Application Cache NoUpdate event
    
    Code:
    /chart/series/ItemPublisher.js
    ...but the application EVER NEVER USED CHART !!!!!!!!!

  2. #2
    Sencha Premium Member
    Join Date
    Jan 2012
    Posts
    131
    Vote Rating
    -2
    YomeKitsuma has a little shameless behaviour in the past

      0  

    Default


    After investigation, all appends in the compiled app.js =>

    (somewhere in the code - see at the end of the obj definition ;-)

    Code:
    defaultSetupConfig:{
      eventPublishers:{
        dom:{
          xclass:"Ext.event.publisher.Dom"
        },
      touchGesture:{
        xclass:"Ext.event.publisher.TouchGesture",
        recognizers:{
          drag:{xclass:"Ext.event.recognizer.Drag"},
          tap:{xclass:"Ext.event.recognizer.Tap"},
          doubleTap:{xclass:"Ext.event.recognizer.DoubleTap"},
          longPress:{xclass:"Ext.event.recognizer.LongPress"},
          swipe:{ xclass:"Ext.event.recognizer.HorizontalSwipe"},
          pinch:{xclass:"Ext.event.recognizer.Pinch"},
          rotate:{xclass:"Ext.event.recognizer.Rotate"}
        }
      },
      componentDelegation:{
        xclass:"Ext.event.publisher.ComponentDelegation"},
        componentPaint:{xclass:"Ext.event.publisher.ComponentPaint"},
        elementPaint:{xclass:"Ext.event.publisher.ElementPaint"},
        elementSize:{xclass:"Ext.event.publisher.ElementSize"},
        seriesItemEvents:{xclass:"Ext.chart.series.ItemPublisher"}
      }
    So, back to the first "bug/issue", If I remove the "Ext.event.*" (and previouslt : "Ext.event.publisher")... I'll go back at the start... and can not resolve this issue


  3. #3
    Sencha Premium Member
    Join Date
    Jan 2012
    Posts
    131
    Vote Rating
    -2
    YomeKitsuma has a little shameless behaviour in the past

      0  

    Default Ouf...it'is done ;-)

    Ouf...it'is done ;-)


    So, to make my application working, i've just have to add this =

    Code:
    Ext.application({
        
        name : 'TagAll',
    
    
        requires : [
            'Ext.MessageBox',
            //-----fixing bug for build---------------
            'Ext.event.*',
            'Ext.chart.series.ItemPublisher',
            'Ext.log.Logger',
            'Ext.log.writer.Console',
            'Ext.log.formatter.Default',
            'Ext.fx.Runner',
            'Ext.viewport.Viewport',
            //----------------------------------------
    What is really BORRING is that "we" (the coder/user/developer) have to add this manually



    But NOW, this is the "cached" / "update" thing that did not works...

    We have to clean the localStorage manually, which is impossible to ask this to our user !!!!!

  4. #4
    Sencha Premium Member
    Join Date
    Jan 2012
    Posts
    131
    Vote Rating
    -2
    YomeKitsuma has a little shameless behaviour in the past

      0  

    Default Fixe this issue

    Fixe this issue


    The last thing I've found to resolve this issue (workarround) is:

    Delete the "archive" folder before starting "sencha ant build" command



    OR

    If you change the "update" parameters in the app.json to "full" (instead of "delta" all goes fine ;-)

    Code:
    "js": [
            {
                "path": "../../../../Library/touch/sencha-touch.js"
            },
            {
                "path": "app.js",
                "bundle": true, 
                "update": "full"
            },
            {
                "path": "../../../../Library/tall/tall.js",
                "update": "full"
            }
        ],
    HOPE THIS HELP (for Sencha team and Users !!)

  5. #5
    Sencha - Ext JS Dev Team dongryphon's Avatar
    Join Date
    Jul 2009
    Posts
    1,033
    Vote Rating
    57
    dongryphon is a jewel in the rough dongryphon is a jewel in the rough dongryphon is a jewel in the rough

      0  

    Default


    This looks similar to some bugs we have fixed recently but I am going to open this so we can check in to your test case. Thanks.

  6. #6
    Sencha - Ext JS Dev Team dongryphon's Avatar
    Join Date
    Jul 2009
    Posts
    1,033
    Vote Rating
    57
    dongryphon is a jewel in the rough dongryphon is a jewel in the rough dongryphon is a jewel in the rough

      0  

    Default


    Also - what versions of Touch and Cmd are you using? If you mentioned it I missed it. Thanks.
    Don Griffin
    Ext JS Development Team Lead

    Check the docs. Learn how to (properly) report a framework issue and a Sencha Cmd issue

    "Use the source, Luke!"