You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cordova.apache.org by "Chris Brody (JIRA)" <ji...@apache.org> on 2012/04/24 07:26:45 UTC
[jira] [Created] (CB-560) Cordova breaking iOS plugins
Chris Brody created CB-560:
------------------------------
Summary: Cordova breaking iOS plugins
Key: CB-560
URL: https://issues.apache.org/jira/browse/CB-560
Project: Apache Callback
Issue Type: Bug
Components: iOS
Affects Versions: 1.6.1
Environment: From https://groups.google.com/forum/?fromgroups#!topic/phonegap/2G5OPKV_FdQ someone apparently tried upgrading from PhoneGap 1.1 to 1.6.
Reporter: Chris Brody
Assignee: Shazron Abdullah
Fix For: 1.7.0
>From 1.4 to 1.5, the namespace was changed from PhoneGap to Cordova which was breaking all of the existing plugins. I eventually provided a shim class but it was too late to stop the pain. Then in Javascript only Cordova was changed to cordova, breaking the iOS plugins yet again. I noticed in cordova (1.6.0) JS:
if (!window.PhoneGap) {
window.PhoneGap = cordova;
}
This should have been done for Cordova like:
if (!Cordova) {
Cordova = cordova;
}
Yes we should be deprecating the old namespaces for removal in another major release. Any API changes made before a major release should be made with a workaround, to be deprecated, and tested with some plugins before shipping.
--
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] [Resolved] (CB-560) Cordova breaking iOS plugins
Posted by "Shazron Abdullah (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CB-560?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Shazron Abdullah resolved CB-560.
---------------------------------
Resolution: Fixed
Closing this, re-opening CB-298 instead
> Cordova breaking iOS plugins
> ----------------------------
>
> Key: CB-560
> URL: https://issues.apache.org/jira/browse/CB-560
> Project: Apache Callback
> Issue Type: Bug
> Components: CordovaJS
> Affects Versions: 1.6.1
> Environment: From https://groups.google.com/forum/?fromgroups#!topic/phonegap/2G5OPKV_FdQ someone apparently tried upgrading from PhoneGap 1.1 to 1.6.
> Reporter: Chris Brody
> Assignee: Filip Maj
> Fix For: 1.7.0
>
> Original Estimate: 4h
> Remaining Estimate: 4h
>
> From 1.4 to 1.5, the namespace was changed from PhoneGap to Cordova which was breaking all of the existing plugins. I eventually provided a shim class but it was too late to stop the pain. Then in Javascript only Cordova was changed to cordova, breaking the iOS plugins yet again. I noticed in cordova (1.6.0) JS:
> if (!window.PhoneGap) {
> window.PhoneGap = cordova;
> }
> This should have been done for Cordova like:
> if (!Cordova) {
> Cordova = cordova;
> }
> Yes we should be deprecating the old namespaces for removal in another major release. Any API changes made before a major release should be made with a workaround, to be deprecated, and tested with some plugins before shipping.
--
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] [Commented] (CB-560) Cordova breaking iOS plugins
Posted by "Shazron Abdullah (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CB-560?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13265510#comment-13265510 ]
Shazron Abdullah commented on CB-560:
-------------------------------------
Found the problem, it's a timing issue:
Before this function is called:
https://github.com/apache/incubator-cordova-js/blob/master/lib/cordova.js#L281
... cordova.exec is not defined yet.
> Cordova breaking iOS plugins
> ----------------------------
>
> Key: CB-560
> URL: https://issues.apache.org/jira/browse/CB-560
> Project: Apache Callback
> Issue Type: Bug
> Components: CordovaJS
> Affects Versions: 1.6.1
> Environment: From https://groups.google.com/forum/?fromgroups#!topic/phonegap/2G5OPKV_FdQ someone apparently tried upgrading from PhoneGap 1.1 to 1.6.
> Reporter: Chris Brody
> Assignee: Filip Maj
> Fix For: 1.7.0
>
> Original Estimate: 4h
> Remaining Estimate: 4h
>
> From 1.4 to 1.5, the namespace was changed from PhoneGap to Cordova which was breaking all of the existing plugins. I eventually provided a shim class but it was too late to stop the pain. Then in Javascript only Cordova was changed to cordova, breaking the iOS plugins yet again. I noticed in cordova (1.6.0) JS:
> if (!window.PhoneGap) {
> window.PhoneGap = cordova;
> }
> This should have been done for Cordova like:
> if (!Cordova) {
> Cordova = cordova;
> }
> Yes we should be deprecating the old namespaces for removal in another major release. Any API changes made before a major release should be made with a workaround, to be deprecated, and tested with some plugins before shipping.
--
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] [Commented] (CB-560) Cordova breaking iOS plugins
Posted by "Shazron Abdullah (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CB-560?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13266048#comment-13266048 ]
Shazron Abdullah commented on CB-560:
-------------------------------------
Of course it does - it worked without using the deprecateFunctions call when doing window.PhoneGap = cordova for example, but after applying CB-298 PhoneGap.exec is missing - thus CB-298 broke this. Like I said it's a timing issue (see my previous comment).
Moving them to common.js will fix this but essentially CB-298 (deprecations) is not applied to PhoneGap and Cordova globals at all.
> Cordova breaking iOS plugins
> ----------------------------
>
> Key: CB-560
> URL: https://issues.apache.org/jira/browse/CB-560
> Project: Apache Callback
> Issue Type: Bug
> Components: CordovaJS
> Affects Versions: 1.6.1
> Environment: From https://groups.google.com/forum/?fromgroups#!topic/phonegap/2G5OPKV_FdQ someone apparently tried upgrading from PhoneGap 1.1 to 1.6.
> Reporter: Chris Brody
> Assignee: Filip Maj
> Fix For: 1.7.0
>
> Original Estimate: 4h
> Remaining Estimate: 4h
>
> From 1.4 to 1.5, the namespace was changed from PhoneGap to Cordova which was breaking all of the existing plugins. I eventually provided a shim class but it was too late to stop the pain. Then in Javascript only Cordova was changed to cordova, breaking the iOS plugins yet again. I noticed in cordova (1.6.0) JS:
> if (!window.PhoneGap) {
> window.PhoneGap = cordova;
> }
> This should have been done for Cordova like:
> if (!Cordova) {
> Cordova = cordova;
> }
> Yes we should be deprecating the old namespaces for removal in another major release. Any API changes made before a major release should be made with a workaround, to be deprecated, and tested with some plugins before shipping.
--
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] [Commented] (CB-560) Cordova breaking iOS plugins
Posted by "Filip Maj (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CB-560?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13260392#comment-13260392 ]
Filip Maj commented on CB-560:
------------------------------
Yeah, sorry about the removal of the various namespaces sans notice. Since 1.6, we have agreed on a [deprecation policy|http://wiki.apache.org/cordova/DeprecationPolicy] but obviously dropped the ball on this again.
I have added back in the upper-case {{Cordova}} global in commit [2557ed|http://git-wip-us.apache.org/repos/asf?p=incubator-cordova-js.git;a=commit;h=2557edf0]. Will be more careful about this stuff moving forward.
Related is CB-298, wherein we actually add the deprecation notices.
> Cordova breaking iOS plugins
> ----------------------------
>
> Key: CB-560
> URL: https://issues.apache.org/jira/browse/CB-560
> Project: Apache Callback
> Issue Type: Bug
> Components: CordovaJS
> Affects Versions: 1.6.1
> Environment: From https://groups.google.com/forum/?fromgroups#!topic/phonegap/2G5OPKV_FdQ someone apparently tried upgrading from PhoneGap 1.1 to 1.6.
> Reporter: Chris Brody
> Assignee: Filip Maj
> Fix For: 1.7.0
>
> Original Estimate: 4h
> Remaining Estimate: 4h
>
> From 1.4 to 1.5, the namespace was changed from PhoneGap to Cordova which was breaking all of the existing plugins. I eventually provided a shim class but it was too late to stop the pain. Then in Javascript only Cordova was changed to cordova, breaking the iOS plugins yet again. I noticed in cordova (1.6.0) JS:
> if (!window.PhoneGap) {
> window.PhoneGap = cordova;
> }
> This should have been done for Cordova like:
> if (!Cordova) {
> Cordova = cordova;
> }
> Yes we should be deprecating the old namespaces for removal in another major release. Any API changes made before a major release should be made with a workaround, to be deprecated, and tested with some plugins before shipping.
--
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] (CB-560) Cordova breaking iOS plugins
Posted by "Shazron Abdullah (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CB-560?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Shazron Abdullah updated CB-560:
--------------------------------
Component/s: (was: iOS)
CordovaJS
Changed the component to CordovaJS.
> Cordova breaking iOS plugins
> ----------------------------
>
> Key: CB-560
> URL: https://issues.apache.org/jira/browse/CB-560
> Project: Apache Callback
> Issue Type: Bug
> Components: CordovaJS
> Affects Versions: 1.6.1
> Environment: From https://groups.google.com/forum/?fromgroups#!topic/phonegap/2G5OPKV_FdQ someone apparently tried upgrading from PhoneGap 1.1 to 1.6.
> Reporter: Chris Brody
> Assignee: Shazron Abdullah
> Fix For: 1.7.0
>
> Original Estimate: 4h
> Remaining Estimate: 4h
>
> From 1.4 to 1.5, the namespace was changed from PhoneGap to Cordova which was breaking all of the existing plugins. I eventually provided a shim class but it was too late to stop the pain. Then in Javascript only Cordova was changed to cordova, breaking the iOS plugins yet again. I noticed in cordova (1.6.0) JS:
> if (!window.PhoneGap) {
> window.PhoneGap = cordova;
> }
> This should have been done for Cordova like:
> if (!Cordova) {
> Cordova = cordova;
> }
> Yes we should be deprecating the old namespaces for removal in another major release. Any API changes made before a major release should be made with a workaround, to be deprecated, and tested with some plugins before shipping.
--
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] [Reopened] (CB-560) Cordova breaking iOS plugins
Posted by "Shazron Abdullah (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CB-560?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Shazron Abdullah reopened CB-560:
---------------------------------
When CB-298 was implemented, it broke this.
> Cordova breaking iOS plugins
> ----------------------------
>
> Key: CB-560
> URL: https://issues.apache.org/jira/browse/CB-560
> Project: Apache Callback
> Issue Type: Bug
> Components: CordovaJS
> Affects Versions: 1.6.1
> Environment: From https://groups.google.com/forum/?fromgroups#!topic/phonegap/2G5OPKV_FdQ someone apparently tried upgrading from PhoneGap 1.1 to 1.6.
> Reporter: Chris Brody
> Assignee: Filip Maj
> Fix For: 1.7.0
>
> Original Estimate: 4h
> Remaining Estimate: 4h
>
> From 1.4 to 1.5, the namespace was changed from PhoneGap to Cordova which was breaking all of the existing plugins. I eventually provided a shim class but it was too late to stop the pain. Then in Javascript only Cordova was changed to cordova, breaking the iOS plugins yet again. I noticed in cordova (1.6.0) JS:
> if (!window.PhoneGap) {
> window.PhoneGap = cordova;
> }
> This should have been done for Cordova like:
> if (!Cordova) {
> Cordova = cordova;
> }
> Yes we should be deprecating the old namespaces for removal in another major release. Any API changes made before a major release should be made with a workaround, to be deprecated, and tested with some plugins before shipping.
--
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] [Commented] (CB-560) Cordova breaking iOS plugins
Posted by "Chris Brody (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CB-560?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13260414#comment-13260414 ]
Chris Brody commented on CB-560:
--------------------------------
Awesome, thanks for your attention.
Chris
> Cordova breaking iOS plugins
> ----------------------------
>
> Key: CB-560
> URL: https://issues.apache.org/jira/browse/CB-560
> Project: Apache Callback
> Issue Type: Bug
> Components: CordovaJS
> Affects Versions: 1.6.1
> Environment: From https://groups.google.com/forum/?fromgroups#!topic/phonegap/2G5OPKV_FdQ someone apparently tried upgrading from PhoneGap 1.1 to 1.6.
> Reporter: Chris Brody
> Assignee: Filip Maj
> Fix For: 1.7.0
>
> Original Estimate: 4h
> Remaining Estimate: 4h
>
> From 1.4 to 1.5, the namespace was changed from PhoneGap to Cordova which was breaking all of the existing plugins. I eventually provided a shim class but it was too late to stop the pain. Then in Javascript only Cordova was changed to cordova, breaking the iOS plugins yet again. I noticed in cordova (1.6.0) JS:
> if (!window.PhoneGap) {
> window.PhoneGap = cordova;
> }
> This should have been done for Cordova like:
> if (!Cordova) {
> Cordova = cordova;
> }
> Yes we should be deprecating the old namespaces for removal in another major release. Any API changes made before a major release should be made with a workaround, to be deprecated, and tested with some plugins before shipping.
--
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] [Resolved] (CB-560) Cordova breaking iOS plugins
Posted by "Filip Maj (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CB-560?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Filip Maj resolved CB-560.
--------------------------
Resolution: Fixed
[2557ed|http://git-wip-us.apache.org/repos/asf?p=incubator-cordova-js.git;a=commit;h=2557edf0]
> Cordova breaking iOS plugins
> ----------------------------
>
> Key: CB-560
> URL: https://issues.apache.org/jira/browse/CB-560
> Project: Apache Callback
> Issue Type: Bug
> Components: CordovaJS
> Affects Versions: 1.6.1
> Environment: From https://groups.google.com/forum/?fromgroups#!topic/phonegap/2G5OPKV_FdQ someone apparently tried upgrading from PhoneGap 1.1 to 1.6.
> Reporter: Chris Brody
> Assignee: Filip Maj
> Fix For: 1.7.0
>
> Original Estimate: 4h
> Remaining Estimate: 4h
>
> From 1.4 to 1.5, the namespace was changed from PhoneGap to Cordova which was breaking all of the existing plugins. I eventually provided a shim class but it was too late to stop the pain. Then in Javascript only Cordova was changed to cordova, breaking the iOS plugins yet again. I noticed in cordova (1.6.0) JS:
> if (!window.PhoneGap) {
> window.PhoneGap = cordova;
> }
> This should have been done for Cordova like:
> if (!Cordova) {
> Cordova = cordova;
> }
> Yes we should be deprecating the old namespaces for removal in another major release. Any API changes made before a major release should be made with a workaround, to be deprecated, and tested with some plugins before shipping.
--
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] [Assigned] (CB-560) Cordova breaking iOS plugins
Posted by "Filip Maj (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CB-560?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Filip Maj reassigned CB-560:
----------------------------
Assignee: Filip Maj (was: Shazron Abdullah)
> Cordova breaking iOS plugins
> ----------------------------
>
> Key: CB-560
> URL: https://issues.apache.org/jira/browse/CB-560
> Project: Apache Callback
> Issue Type: Bug
> Components: CordovaJS
> Affects Versions: 1.6.1
> Environment: From https://groups.google.com/forum/?fromgroups#!topic/phonegap/2G5OPKV_FdQ someone apparently tried upgrading from PhoneGap 1.1 to 1.6.
> Reporter: Chris Brody
> Assignee: Filip Maj
> Fix For: 1.7.0
>
> Original Estimate: 4h
> Remaining Estimate: 4h
>
> From 1.4 to 1.5, the namespace was changed from PhoneGap to Cordova which was breaking all of the existing plugins. I eventually provided a shim class but it was too late to stop the pain. Then in Javascript only Cordova was changed to cordova, breaking the iOS plugins yet again. I noticed in cordova (1.6.0) JS:
> if (!window.PhoneGap) {
> window.PhoneGap = cordova;
> }
> This should have been done for Cordova like:
> if (!Cordova) {
> Cordova = cordova;
> }
> Yes we should be deprecating the old namespaces for removal in another major release. Any API changes made before a major release should be made with a workaround, to be deprecated, and tested with some plugins before shipping.
--
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] [Commented] (CB-560) Cordova breaking iOS plugins
Posted by "Filip Maj (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CB-560?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13266001#comment-13266001 ]
Filip Maj commented on CB-560:
------------------------------
Do not think CB-298 has anything to do with this. We are missing adding the cordova/exec JS module on the {{Cordova}} and {{PhoneGap}} globals; for the {{cordova}} global, this is done [via the common.js platform definition|https://github.com/apache/incubator-cordova-js/blob/master/lib/common/common.js#L3-L10], but that is missing for {{Cordova}} and {{PhoneGap}}.
> Cordova breaking iOS plugins
> ----------------------------
>
> Key: CB-560
> URL: https://issues.apache.org/jira/browse/CB-560
> Project: Apache Callback
> Issue Type: Bug
> Components: CordovaJS
> Affects Versions: 1.6.1
> Environment: From https://groups.google.com/forum/?fromgroups#!topic/phonegap/2G5OPKV_FdQ someone apparently tried upgrading from PhoneGap 1.1 to 1.6.
> Reporter: Chris Brody
> Assignee: Filip Maj
> Fix For: 1.7.0
>
> Original Estimate: 4h
> Remaining Estimate: 4h
>
> From 1.4 to 1.5, the namespace was changed from PhoneGap to Cordova which was breaking all of the existing plugins. I eventually provided a shim class but it was too late to stop the pain. Then in Javascript only Cordova was changed to cordova, breaking the iOS plugins yet again. I noticed in cordova (1.6.0) JS:
> if (!window.PhoneGap) {
> window.PhoneGap = cordova;
> }
> This should have been done for Cordova like:
> if (!Cordova) {
> Cordova = cordova;
> }
> Yes we should be deprecating the old namespaces for removal in another major release. Any API changes made before a major release should be made with a workaround, to be deprecated, and tested with some plugins before shipping.
--
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