[web2py] Re: new web2py.js changes the sequence of execution
Just to understand better what is going on, try to comment line 257 in web2py.js or even better the whole success block. Paolo On Thursday, August 29, 2013 3:42:29 AM UTC+2, Anthony wrote: Looks like this changehttps://code.google.com/p/web2py/source/browse/applications/admin/static/js/web2py.js?r=b995ca36cd33a28339d54f15bcf8eebb6d58f2e6was actually made in January in response to this issue https://code.google.com/p/web2py/issues/detail?id=1254. Technically, I suppose it does break backward compatibility because previously web2py-component-command (i.e., the content of response.js) was executed synchronously after the component content loaded, and now it is run asynchronously. Actually, this was probably not a good move, because you might need the JS to run after the component content has loaded, so we might want to revert this change. The web2py-component-command and web2py-component-flash headers were intended for use specifically with components. If we want to enable such functionality more generally, perhaps we should use alternative headers for that purpose. Please open an issue about this and link back to this thread. Anthony On Wednesday, August 28, 2013 1:20:53 PM UTC-7, simon wrote: I have some very simple jquery scripts for creating dialog boxes. This was all working fine until the replacement of web2py.js in release 5113. However now it no longer works. The pre-5113 version had a web2py_ajax_page complete function that first filled my dialog box and then executed response.js in that order. The new version does these two things asynchronously. Response.js is executed within event_handler and generally this happens before the ajax_page complete function. Is there some reason why this was changed or could it be changed back so things happen in the same sequence? This does break backward compatibility. -- --- You received this message because you are subscribed to the Google Groups web2py-users group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[web2py] Re: new web2py.js changes the sequence of execution
Niphlod - I have tried latest trunk and get same issue. Paolo - I tried that but it makes no difference. Anthony is correct. The problem is: that the eval(decodeURIComponent(command)) happens in ajax.success then the t.html(html); On Thursday, 29 August 2013 14:54:19 UTC+1, Paolo Valleri wrote: Just to understand better what is going on, try to comment line 257 in web2py.js or even better the whole success block. Paolo On Thursday, August 29, 2013 3:42:29 AM UTC+2, Anthony wrote: Looks like this changehttps://code.google.com/p/web2py/source/browse/applications/admin/static/js/web2py.js?r=b995ca36cd33a28339d54f15bcf8eebb6d58f2e6was actually made in January in response to this issue https://code.google.com/p/web2py/issues/detail?id=1254. Technically, I suppose it does break backward compatibility because previously web2py-component-command (i.e., the content of response.js) was executed synchronously after the component content loaded, and now it is run asynchronously. Actually, this was probably not a good move, because you might need the JS to run after the component content has loaded, so we might want to revert this change. The web2py-component-command and web2py-component-flash headers were intended for use specifically with components. If we want to enable such functionality more generally, perhaps we should use alternative headers for that purpose. Please open an issue about this and link back to this thread. Anthony On Wednesday, August 28, 2013 1:20:53 PM UTC-7, simon wrote: I have some very simple jquery scripts for creating dialog boxes. This was all working fine until the replacement of web2py.js in release 5113. However now it no longer works. The pre-5113 version had a web2py_ajax_page complete function that first filled my dialog box and then executed response.js in that order. The new version does these two things asynchronously. Response.js is executed within event_handler and generally this happens before the ajax_page complete function. Is there some reason why this was changed or could it be changed back so things happen in the same sequence? This does break backward compatibility. -- --- You received this message because you are subscribed to the Google Groups web2py-users group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[web2py] Re: new web2py.js changes the sequence of execution
New version of web2py.js executes: eval(decodeURIComponent(command))in ajax.success t.html(html) in ajax.complete However in the previous version these two commands executed in the reverse order. If I change doc.ajaxSuccess to doc.ajaxComplete then it works.Not sure if this breaks something else though! Have logged as an issue. On Thursday, 29 August 2013 14:54:19 UTC+1, Paolo Valleri wrote: Just to understand better what is going on, try to comment line 257 in web2py.js or even better the whole success block. Paolo On Thursday, August 29, 2013 3:42:29 AM UTC+2, Anthony wrote: Looks like this changehttps://code.google.com/p/web2py/source/browse/applications/admin/static/js/web2py.js?r=b995ca36cd33a28339d54f15bcf8eebb6d58f2e6was actually made in January in response to this issue https://code.google.com/p/web2py/issues/detail?id=1254. Technically, I suppose it does break backward compatibility because previously web2py-component-command (i.e., the content of response.js) was executed synchronously after the component content loaded, and now it is run asynchronously. Actually, this was probably not a good move, because you might need the JS to run after the component content has loaded, so we might want to revert this change. The web2py-component-command and web2py-component-flash headers were intended for use specifically with components. If we want to enable such functionality more generally, perhaps we should use alternative headers for that purpose. Please open an issue about this and link back to this thread. Anthony On Wednesday, August 28, 2013 1:20:53 PM UTC-7, simon wrote: I have some very simple jquery scripts for creating dialog boxes. This was all working fine until the replacement of web2py.js in release 5113. However now it no longer works. The pre-5113 version had a web2py_ajax_page complete function that first filled my dialog box and then executed response.js in that order. The new version does these two things asynchronously. Response.js is executed within event_handler and generally this happens before the ajax_page complete function. Is there some reason why this was changed or could it be changed back so things happen in the same sequence? This does break backward compatibility. -- --- You received this message because you are subscribed to the Google Groups web2py-users group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[web2py] Re: new web2py.js changes the sequence of execution
We have a somewhat different fix -- should be pushed to trunk shortly. Please test it once it's there. Thanks. Anthony On Thursday, August 29, 2013 11:46:26 AM UTC-7, simon wrote: New version of web2py.js executes: eval(decodeURIComponent(command))in ajax.success t.html(html) in ajax.complete However in the previous version these two commands executed in the reverse order. If I change doc.ajaxSuccess to doc.ajaxComplete then it works.Not sure if this breaks something else though! Have logged as an issue. On Thursday, 29 August 2013 14:54:19 UTC+1, Paolo Valleri wrote: Just to understand better what is going on, try to comment line 257 in web2py.js or even better the whole success block. Paolo On Thursday, August 29, 2013 3:42:29 AM UTC+2, Anthony wrote: Looks like this changehttps://code.google.com/p/web2py/source/browse/applications/admin/static/js/web2py.js?r=b995ca36cd33a28339d54f15bcf8eebb6d58f2e6was actually made in January in response to this issue https://code.google.com/p/web2py/issues/detail?id=1254. Technically, I suppose it does break backward compatibility because previously web2py-component-command (i.e., the content of response.js) was executed synchronously after the component content loaded, and now it is run asynchronously. Actually, this was probably not a good move, because you might need the JS to run after the component content has loaded, so we might want to revert this change. The web2py-component-command and web2py-component-flash headers were intended for use specifically with components. If we want to enable such functionality more generally, perhaps we should use alternative headers for that purpose. Please open an issue about this and link back to this thread. Anthony On Wednesday, August 28, 2013 1:20:53 PM UTC-7, simon wrote: I have some very simple jquery scripts for creating dialog boxes. This was all working fine until the replacement of web2py.js in release 5113. However now it no longer works. The pre-5113 version had a web2py_ajax_page complete function that first filled my dialog box and then executed response.js in that order. The new version does these two things asynchronously. Response.js is executed within event_handler and generally this happens before the ajax_page complete function. Is there some reason why this was changed or could it be changed back so things happen in the same sequence? This does break backward compatibility. -- --- You received this message because you are subscribed to the Google Groups web2py-users group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[web2py] Re: new web2py.js changes the sequence of execution
On Wednesday, August 28, 2013 10:20:53 PM UTC+2, simon wrote: I have some very simple jquery scripts for creating dialog boxes. This was all working fine until the replacement of web2py.js in release 5113. However now it no longer works. What commit identifies release 5113 ? The pre-5113 version had a web2py_ajax_page complete function that first filled my dialog box and then executed response.js in that order. The new version does these two things asynchronously. Response.js is executed within event_handler and generally this happens before the ajax_page complete function. I'm a little bit baffled. trunk (and up until lots of time ago) executes the response.js command hooking up on the global ajaxSuccess event. Can you switch your web2py.js with the one in trunk and try ? if it has the same problem, would you move line 268 to after line 274 and see if it fixes the problem? Is there some reason why this was changed or could it be changed back so things happen in the same sequence? This does break backward compatibility. No, it doesn't. If you had a fully working app before, you have it also right now. If you want to leverage new features with - I assume - the newest web2py.js, then theoretically you should adapt accordingly your code. -- --- You received this message because you are subscribed to the Google Groups web2py-users group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[web2py] Re: new web2py.js changes the sequence of execution
Looks like this changehttps://code.google.com/p/web2py/source/browse/applications/admin/static/js/web2py.js?r=b995ca36cd33a28339d54f15bcf8eebb6d58f2e6was actually made in January in response to this issue https://code.google.com/p/web2py/issues/detail?id=1254. Technically, I suppose it does break backward compatibility because previously web2py-component-command (i.e., the content of response.js) was executed synchronously after the component content loaded, and now it is run asynchronously. Actually, this was probably not a good move, because you might need the JS to run after the component content has loaded, so we might want to revert this change. The web2py-component-command and web2py-component-flash headers were intended for use specifically with components. If we want to enable such functionality more generally, perhaps we should use alternative headers for that purpose. Please open an issue about this and link back to this thread. Anthony On Wednesday, August 28, 2013 1:20:53 PM UTC-7, simon wrote: I have some very simple jquery scripts for creating dialog boxes. This was all working fine until the replacement of web2py.js in release 5113. However now it no longer works. The pre-5113 version had a web2py_ajax_page complete function that first filled my dialog box and then executed response.js in that order. The new version does these two things asynchronously. Response.js is executed within event_handler and generally this happens before the ajax_page complete function. Is there some reason why this was changed or could it be changed back so things happen in the same sequence? This does break backward compatibility. -- --- You received this message because you are subscribed to the Google Groups web2py-users group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.