[jira] [Commented] (CB-1388) Add reset() to plugin API and fix callback collisions on all platforms
[ https://issues.apache.org/jira/browse/CB-1388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13931850#comment-13931850 ] ASF GitHub Bot commented on CB-1388: Github user asfgit closed the pull request at: https://github.com/apache/cordova-plugin-battery-status/pull/2 > Add reset() to plugin API and fix callback collisions on all platforms > -- > > Key: CB-1388 > URL: https://issues.apache.org/jira/browse/CB-1388 > Project: Apache Cordova > Issue Type: Bug > Components: Bada, BlackBerry, CordovaJS, Qt, Tizen, webOS >Affects Versions: 2.0.0, 2.1.0, 2.2.0, 2.3.0, 2.4.0 >Reporter: Braden Shepherdson >Assignee: Braden Shepherdson > Fix For: 2.8.0 > > > There are three parts to this bug. > First, platform-specific: we should add a reset() function to the plugin API > which is called on top-level navigation or refresh, so that plugins can know > to cancel any long-running requests and reinitialize themselves. This won't > be relevant to some platforms > Second, platform-independent: the callback IDs generated on the Javascript > side should be randomized in some way to prevent collisions after navigation. > Otherwise a request might get the ID "Service1", and before it has a chance > to complete we navigate and a new request is made, also receiving "Service1". > Then the first response comes back and the new Service1 callback is handed > the old results. > Third, we should add a test for this to Mobile Spec, if possible. This is a > tricky thing to reproduce reliably, unfortunately. > I'll tackle the second and third parts, and Android for the first part. It > would be great if people who work on other platforms would add the reset() > logic, or close the platform bugs if the platform is all-Javascript and fully > reloaded on navigation. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CB-1388) Add reset() to plugin API and fix callback collisions on all platforms
[ https://issues.apache.org/jira/browse/CB-1388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13951381#comment-13951381 ] ASF GitHub Bot commented on CB-1388: Github user asfgit closed the pull request at: https://github.com/apache/cordova-blackberry/pull/79 > Add reset() to plugin API and fix callback collisions on all platforms > -- > > Key: CB-1388 > URL: https://issues.apache.org/jira/browse/CB-1388 > Project: Apache Cordova > Issue Type: Bug > Components: Bada, BlackBerry, CordovaJS, Qt, Tizen, webOS >Affects Versions: 2.0.0, 2.1.0, 2.2.0, 2.3.0, 2.4.0 >Reporter: Braden Shepherdson >Assignee: Braden Shepherdson > Fix For: 2.8.0 > > > There are three parts to this bug. > First, platform-specific: we should add a reset() function to the plugin API > which is called on top-level navigation or refresh, so that plugins can know > to cancel any long-running requests and reinitialize themselves. This won't > be relevant to some platforms > Second, platform-independent: the callback IDs generated on the Javascript > side should be randomized in some way to prevent collisions after navigation. > Otherwise a request might get the ID "Service1", and before it has a chance > to complete we navigate and a new request is made, also receiving "Service1". > Then the first response comes back and the new Service1 callback is handed > the old results. > Third, we should add a test for this to Mobile Spec, if possible. This is a > tricky thing to reproduce reliably, unfortunately. > I'll tackle the second and third parts, and Android for the first part. It > would be great if people who work on other platforms would add the reset() > logic, or close the platform bugs if the platform is all-Javascript and fully > reloaded on navigation. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CB-1388) Add reset() to plugin API and fix callback collisions on all platforms
[ https://issues.apache.org/jira/browse/CB-1388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13984306#comment-13984306 ] ASF GitHub Bot commented on CB-1388: Github user asfgit closed the pull request at: https://github.com/apache/cordova-plugin-battery-status/pull/3 > Add reset() to plugin API and fix callback collisions on all platforms > -- > > Key: CB-1388 > URL: https://issues.apache.org/jira/browse/CB-1388 > Project: Apache Cordova > Issue Type: Bug > Components: Bada, BlackBerry, CordovaJS, Qt, Tizen, webOS >Affects Versions: 2.0.0, 2.1.0, 2.2.0, 2.3.0, 2.4.0 >Reporter: Braden Shepherdson >Assignee: Braden Shepherdson > Fix For: 2.8.0 > > > There are three parts to this bug. > First, platform-specific: we should add a reset() function to the plugin API > which is called on top-level navigation or refresh, so that plugins can know > to cancel any long-running requests and reinitialize themselves. This won't > be relevant to some platforms > Second, platform-independent: the callback IDs generated on the Javascript > side should be randomized in some way to prevent collisions after navigation. > Otherwise a request might get the ID "Service1", and before it has a chance > to complete we navigate and a new request is made, also receiving "Service1". > Then the first response comes back and the new Service1 callback is handed > the old results. > Third, we should add a test for this to Mobile Spec, if possible. This is a > tricky thing to reproduce reliably, unfortunately. > I'll tackle the second and third parts, and Android for the first part. It > would be great if people who work on other platforms would add the reset() > logic, or close the platform bugs if the platform is all-Javascript and fully > reloaded on navigation. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CB-1388) Add reset() to plugin API and fix callback collisions on all platforms
[ https://issues.apache.org/jira/browse/CB-1388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14046304#comment-14046304 ] ASF GitHub Bot commented on CB-1388: Github user asfgit closed the pull request at: https://github.com/apache/cordova-plugin-device-motion/pull/4 > Add reset() to plugin API and fix callback collisions on all platforms > -- > > Key: CB-1388 > URL: https://issues.apache.org/jira/browse/CB-1388 > Project: Apache Cordova > Issue Type: Bug > Components: Bada, BlackBerry, CordovaJS, Qt, Tizen, webOS >Affects Versions: 2.0.0, 2.1.0, 2.2.0, 2.3.0, 2.4.0 >Reporter: Braden Shepherdson >Assignee: Braden Shepherdson > Fix For: 2.8.0 > > > There are three parts to this bug. > First, platform-specific: we should add a reset() function to the plugin API > which is called on top-level navigation or refresh, so that plugins can know > to cancel any long-running requests and reinitialize themselves. This won't > be relevant to some platforms > Second, platform-independent: the callback IDs generated on the Javascript > side should be randomized in some way to prevent collisions after navigation. > Otherwise a request might get the ID "Service1", and before it has a chance > to complete we navigate and a new request is made, also receiving "Service1". > Then the first response comes back and the new Service1 callback is handed > the old results. > Third, we should add a test for this to Mobile Spec, if possible. This is a > tricky thing to reproduce reliably, unfortunately. > I'll tackle the second and third parts, and Android for the first part. It > would be great if people who work on other platforms would add the reset() > logic, or close the platform bugs if the platform is all-Javascript and fully > reloaded on navigation. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CB-1388) Add reset() to plugin API and fix callback collisions on all platforms
[ https://issues.apache.org/jira/browse/CB-1388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14046303#comment-14046303 ] ASF GitHub Bot commented on CB-1388: Github user asfgit closed the pull request at: https://github.com/apache/cordova-plugin-device-motion/pull/3 > Add reset() to plugin API and fix callback collisions on all platforms > -- > > Key: CB-1388 > URL: https://issues.apache.org/jira/browse/CB-1388 > Project: Apache Cordova > Issue Type: Bug > Components: Bada, BlackBerry, CordovaJS, Qt, Tizen, webOS >Affects Versions: 2.0.0, 2.1.0, 2.2.0, 2.3.0, 2.4.0 >Reporter: Braden Shepherdson >Assignee: Braden Shepherdson > Fix For: 2.8.0 > > > There are three parts to this bug. > First, platform-specific: we should add a reset() function to the plugin API > which is called on top-level navigation or refresh, so that plugins can know > to cancel any long-running requests and reinitialize themselves. This won't > be relevant to some platforms > Second, platform-independent: the callback IDs generated on the Javascript > side should be randomized in some way to prevent collisions after navigation. > Otherwise a request might get the ID "Service1", and before it has a chance > to complete we navigate and a new request is made, also receiving "Service1". > Then the first response comes back and the new Service1 callback is handed > the old results. > Third, we should add a test for this to Mobile Spec, if possible. This is a > tricky thing to reproduce reliably, unfortunately. > I'll tackle the second and third parts, and Android for the first part. It > would be great if people who work on other platforms would add the reset() > logic, or close the platform bugs if the platform is all-Javascript and fully > reloaded on navigation. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CB-1388) Add reset() to plugin API and fix callback collisions on all platforms
[ https://issues.apache.org/jira/browse/CB-1388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14046305#comment-14046305 ] ASF GitHub Bot commented on CB-1388: Github user asfgit closed the pull request at: https://github.com/apache/cordova-plugin-geolocation/pull/6 > Add reset() to plugin API and fix callback collisions on all platforms > -- > > Key: CB-1388 > URL: https://issues.apache.org/jira/browse/CB-1388 > Project: Apache Cordova > Issue Type: Bug > Components: Bada, BlackBerry, CordovaJS, Qt, Tizen, webOS >Affects Versions: 2.0.0, 2.1.0, 2.2.0, 2.3.0, 2.4.0 >Reporter: Braden Shepherdson >Assignee: Braden Shepherdson > Fix For: 2.8.0 > > > There are three parts to this bug. > First, platform-specific: we should add a reset() function to the plugin API > which is called on top-level navigation or refresh, so that plugins can know > to cancel any long-running requests and reinitialize themselves. This won't > be relevant to some platforms > Second, platform-independent: the callback IDs generated on the Javascript > side should be randomized in some way to prevent collisions after navigation. > Otherwise a request might get the ID "Service1", and before it has a chance > to complete we navigate and a new request is made, also receiving "Service1". > Then the first response comes back and the new Service1 callback is handed > the old results. > Third, we should add a test for this to Mobile Spec, if possible. This is a > tricky thing to reproduce reliably, unfortunately. > I'll tackle the second and third parts, and Android for the first part. It > would be great if people who work on other platforms would add the reset() > logic, or close the platform bugs if the platform is all-Javascript and fully > reloaded on navigation. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CB-1388) Add reset() to plugin API and fix callback collisions on all platforms
[ https://issues.apache.org/jira/browse/CB-1388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14046309#comment-14046309 ] ASF GitHub Bot commented on CB-1388: Github user asfgit closed the pull request at: https://github.com/apache/cordova-plugin-media/pull/2 > Add reset() to plugin API and fix callback collisions on all platforms > -- > > Key: CB-1388 > URL: https://issues.apache.org/jira/browse/CB-1388 > Project: Apache Cordova > Issue Type: Bug > Components: Bada, BlackBerry, CordovaJS, Qt, Tizen, webOS >Affects Versions: 2.0.0, 2.1.0, 2.2.0, 2.3.0, 2.4.0 >Reporter: Braden Shepherdson >Assignee: Braden Shepherdson > Fix For: 2.8.0 > > > There are three parts to this bug. > First, platform-specific: we should add a reset() function to the plugin API > which is called on top-level navigation or refresh, so that plugins can know > to cancel any long-running requests and reinitialize themselves. This won't > be relevant to some platforms > Second, platform-independent: the callback IDs generated on the Javascript > side should be randomized in some way to prevent collisions after navigation. > Otherwise a request might get the ID "Service1", and before it has a chance > to complete we navigate and a new request is made, also receiving "Service1". > Then the first response comes back and the new Service1 callback is handed > the old results. > Third, we should add a test for this to Mobile Spec, if possible. This is a > tricky thing to reproduce reliably, unfortunately. > I'll tackle the second and third parts, and Android for the first part. It > would be great if people who work on other platforms would add the reset() > logic, or close the platform bugs if the platform is all-Javascript and fully > reloaded on navigation. -- This message was sent by Atlassian JIRA (v6.2#6252)