Re: I've fixed an issue. What's next?
plugman info org.apache.cordova.inappbrowser Returns a list of published plugin versions, a set of supported platforms, and a set of engine requirements for the current version plugman info org.apache.cordova.inappbrowser@0.5.3 Returns info for a particular older version. With these tools, we could change cordova-cli to first call info, and iterate backwards through the published versions until a compatible plugin is found. I don't think we should auto-install older versions, but we could say warning, the latest versions of plugin-FOO is not compatible with platform-BAR, you can install plugin-FOO@x.y.z instead. Josh is right, that we can get into hairy situations since we do not have platform-specific plugin installs (there were proposals for this before). I don't actually think it will come up often, so lets solve that issue when we get there. For now, would be nice to let shaz add the new engine requirement to the plugin without breaking plugin install for everyone who doesn't update cordova-ios first. -Michal On Fri, Nov 14, 2014 at 3:33 PM, Josh Soref jso...@blackberry.com wrote: Steven Gill wrote: Maybe we should have it auto grab an older version of the plugin that is supported? Or at least a better error message telling them to try older versions of the plugin with cordova plugin add org.apache.cordova.file@VERSION Ian Clelland wrote: I'd love to have the plugin registry automatically serve the most-recent-still-compatible version of a plugin. I don't know how that works when you install plugins *before* platforms, though. I think plugman or someone at a prepare stage when a platform installs could warn and try (network could be offline) to get a compatible version. Note that there's an interesting problem here: Suppose I have 1 plugin, and I install version 20 of it to my project. I then install platform A which is happy w/ version 20. I then install platform B which only works w/ version 19, so something automatically installs version 19 for this platform. If the API between the two versions isn't compatible (and we don't have an api validator to tell the developer if it is), then the resulting app won't work properly on that platform.
Re: I've fixed an issue. What's next?
I updated the pull request yesterday to add the iOS 8 macro code (and other change proposed by Shazron), so it can work on Xcode 5
Re: I've fixed an issue. What's next?
Well, I think what you've just done (pinging the list) is pretty close to the right next step. You should probably assign the issue back to Shaz with a note directed to him asking him to take a look and merge it in. (I'd merge it, but I haven't been following iOS 8 development closely enough to judge its correctness) And thanks for taking it on! Ian On Fri Nov 14 2014 at 2:32:14 AM julio cesar sanchez jcesarmob...@gmail.com wrote: CB-7734 (https://issues.apache.org/jira/browse/CB-7734) was reported and I asked if it could be assigned to me. Shazron assigned to me and I fixed it with this pull request https://github.com/apache/cordova-plugin-dialogs/pull/39 It's been 3 weeks and it hasn't been merged, so I don't know if I have to do something else, it's the first issue assigned to me.
Re: I've fixed an issue. What's next?
Thanks Julio! I'll comment on the PR itself. Shaz On Fri, Nov 14, 2014 at 8:42 AM, Ian Clelland iclell...@chromium.org wrote: Well, I think what you've just done (pinging the list) is pretty close to the right next step. You should probably assign the issue back to Shaz with a note directed to him asking him to take a look and merge it in. (I'd merge it, but I haven't been following iOS 8 development closely enough to judge its correctness) And thanks for taking it on! Ian On Fri Nov 14 2014 at 2:32:14 AM julio cesar sanchez jcesarmob...@gmail.com wrote: CB-7734 (https://issues.apache.org/jira/browse/CB-7734) was reported and I asked if it could be assigned to me. Shazron assigned to me and I fixed it with this pull request https://github.com/apache/cordova-plugin-dialogs/pull/39 It's been 3 weeks and it hasn't been merged, so I don't know if I have to do something else, it's the first issue assigned to me.
Re: I've fixed an issue. What's next?
General question to everybody: The patch requires the iOS 8 SDK (i.e. Xcode 6). We require Xcode 6 in cordova-ios 3.7.0 and there was consensus on it. However, the plugin.xml itself does not have an engine tag to specify what it supports. Question: Do we have engine tag support in the CLI, where it won't install a plugin if the requirements are not met? If not, we would have to do a #ifdef __IPHONE_8_0 macro in the code. On Fri, Nov 14, 2014 at 11:18 AM, Shazron shaz...@gmail.com wrote: Thanks Julio! I'll comment on the PR itself. Shaz On Fri, Nov 14, 2014 at 8:42 AM, Ian Clelland iclell...@chromium.org wrote: Well, I think what you've just done (pinging the list) is pretty close to the right next step. You should probably assign the issue back to Shaz with a note directed to him asking him to take a look and merge it in. (I'd merge it, but I haven't been following iOS 8 development closely enough to judge its correctness) And thanks for taking it on! Ian On Fri Nov 14 2014 at 2:32:14 AM julio cesar sanchez jcesarmob...@gmail.com wrote: CB-7734 (https://issues.apache.org/jira/browse/CB-7734) was reported and I asked if it could be assigned to me. Shazron assigned to me and I fixed it with this pull request https://github.com/apache/cordova-plugin-dialogs/pull/39 It's been 3 weeks and it hasn't been merged, so I don't know if I have to do something else, it's the first issue assigned to me.
Re: I've fixed an issue. What's next?
On Fri Nov 14 2014 at 2:24:41 PM Shazron shaz...@gmail.com wrote: General question to everybody: The patch requires the iOS 8 SDK (i.e. Xcode 6). We require Xcode 6 in cordova-ios 3.7.0 and there was consensus on it. However, the plugin.xml itself does not have an engine tag to specify what it supports. Question: Do we have engine tag support in the CLI, where it won't install a plugin if the requirements are not met? We certainly do, for Android at least -- I've been using it for Crosswalk development, and it works (I get caught every time I switch back to master, and the crosswalk plugin refuses to install :) ) If not, we would have to do a #ifdef __IPHONE_8_0 macro in the code. On Fri, Nov 14, 2014 at 11:18 AM, Shazron shaz...@gmail.com wrote: Thanks Julio! I'll comment on the PR itself. Shaz On Fri, Nov 14, 2014 at 8:42 AM, Ian Clelland iclell...@chromium.org wrote: Well, I think what you've just done (pinging the list) is pretty close to the right next step. You should probably assign the issue back to Shaz with a note directed to him asking him to take a look and merge it in. (I'd merge it, but I haven't been following iOS 8 development closely enough to judge its correctness) And thanks for taking it on! Ian On Fri Nov 14 2014 at 2:32:14 AM julio cesar sanchez jcesarmob...@gmail.com wrote: CB-7734 (https://issues.apache.org/jira/browse/CB-7734) was reported and I asked if it could be assigned to me. Shazron assigned to me and I fixed it with this pull request https://github.com/apache/cordova-plugin-dialogs/pull/39 It's been 3 weeks and it hasn't been merged, so I don't know if I have to do something else, it's the first issue assigned to me.
Re: I've fixed an issue. What's next?
Nope, just wait patiently. Someone will get to it soon. @purplecabbage risingj.com On Thu, Nov 13, 2014 at 11:31 PM, julio cesar sanchez jcesarmob...@gmail.com wrote: CB-7734 (https://issues.apache.org/jira/browse/CB-7734) was reported and I asked if it could be assigned to me. Shazron assigned to me and I fixed it with this pull request https://github.com/apache/cordova-plugin-dialogs/pull/39 It's been 3 weeks and it hasn't been merged, so I don't know if I have to do something else, it's the first issue assigned to me.
Re: I've fixed an issue. What's next?
Maybe we should have it auto grab an older version of the plugin that is supported? Or at least a better error message telling them to try older versions of the plugin with cordova plugin add org.apache.cordova.file@VERSION On Fri, Nov 14, 2014 at 11:49 AM, Michal Mocny mmo...@chromium.org wrote: I just added this to org.apache.cordova.file's plugin.xml as a test: engines engine name=cordova-ios version==4.0.0 / /engines Then tried to install that version locally in a project, and got: Installing org.apache.cordova.file for ios Failed to install 'org.apache.cordova.file':CordovaError: Plugin doesn't support this project's cordova-ios version. cordova-ios: 3.6.3, failed version requirement: =4.0.0 Would probably prefer to clean up the error a bit, but seems to work well. On Fri, Nov 14, 2014 at 2:33 PM, Ian Clelland iclell...@chromium.org wrote: On Fri Nov 14 2014 at 2:24:41 PM Shazron shaz...@gmail.com wrote: General question to everybody: The patch requires the iOS 8 SDK (i.e. Xcode 6). We require Xcode 6 in cordova-ios 3.7.0 and there was consensus on it. However, the plugin.xml itself does not have an engine tag to specify what it supports. Question: Do we have engine tag support in the CLI, where it won't install a plugin if the requirements are not met? We certainly do, for Android at least -- I've been using it for Crosswalk development, and it works (I get caught every time I switch back to master, and the crosswalk plugin refuses to install :) ) If not, we would have to do a #ifdef __IPHONE_8_0 macro in the code. On Fri, Nov 14, 2014 at 11:18 AM, Shazron shaz...@gmail.com wrote: Thanks Julio! I'll comment on the PR itself. Shaz On Fri, Nov 14, 2014 at 8:42 AM, Ian Clelland iclell...@chromium.org wrote: Well, I think what you've just done (pinging the list) is pretty close to the right next step. You should probably assign the issue back to Shaz with a note directed to him asking him to take a look and merge it in. (I'd merge it, but I haven't been following iOS 8 development closely enough to judge its correctness) And thanks for taking it on! Ian On Fri Nov 14 2014 at 2:32:14 AM julio cesar sanchez jcesarmob...@gmail.com wrote: CB-7734 (https://issues.apache.org/jira/browse/CB-7734) was reported and I asked if it could be assigned to me. Shazron assigned to me and I fixed it with this pull request https://github.com/apache/cordova-plugin-dialogs/pull/39 It's been 3 weeks and it hasn't been merged, so I don't know if I have to do something else, it's the first issue assigned to me.
Re: I've fixed an issue. What's next?
Michal Mocny wrote: I just added this to org.apache.cordova.file's plugin.xml as a test: engines engine name=cordova-ios version==4.0.0 / /engines Then tried to install that version locally in a project, and got: Installing org.apache.cordova.file for ios Failed to install 'org.apache.cordova.file':CordovaError: Plugin doesn't support this project's cordova-ios version. cordova-ios: 3.6.3, failed version requirement: =4.0.0 Would probably prefer to clean up the error a bit, but seems to work well. Hrm, does that mean that someone using an old version of a platform can't install *any* version of a plugin (easily) if the latest version requires a newer platform? That'd be rather unfortunateā¦
Re: I've fixed an issue. What's next?
I know that it is unfortunate that's why I think the macro solution instead of the engine solution is best for core plugins (I discovered from the spec I could use 'apple-xcode' and 'apple-ios' to further differentiate, but never mind). We can take care of this as committers for the core plugins by using the macros, but a lot of plugin authors and contributors are careless in that: 1. They either don't use an engine tag 2. Or they don't adequately protect newer iOS SDK calls from crashing on older iOS runtime. Sure, it compiles in iOS 8 SDK, but if a user runs it on an iOS 6 or 7 device, it will crash when it reaches that iOS 8 API function. I don't think there are any open source linters out there that will help us with this (there is a commercial one: http://www.deploymateapp.com) On Fri, Nov 14, 2014 at 11:54 AM, Josh Soref jso...@blackberry.com wrote: Michal Mocny wrote: I just added this to org.apache.cordova.file's plugin.xml as a test: engines engine name=cordova-ios version==4.0.0 / /engines Then tried to install that version locally in a project, and got: Installing org.apache.cordova.file for ios Failed to install 'org.apache.cordova.file':CordovaError: Plugin doesn't support this project's cordova-ios version. cordova-ios: 3.6.3, failed version requirement: =4.0.0 Would probably prefer to clean up the error a bit, but seems to work well. Hrm, does that mean that someone using an old version of a platform can't install *any* version of a plugin (easily) if the latest version requires a newer platform? That'd be rather unfortunateā¦
Re: I've fixed an issue. What's next?
Steven Gill wrote: Maybe we should have it auto grab an older version of the plugin that is supported? Or at least a better error message telling them to try older versions of the plugin with cordova plugin add org.apache.cordova.file@VERSION Ian Clelland wrote: I'd love to have the plugin registry automatically serve the most-recent-still-compatible version of a plugin. I don't know how that works when you install plugins *before* platforms, though. I think plugman or someone at a prepare stage when a platform installs could warn and try (network could be offline) to get a compatible version. Note that there's an interesting problem here: Suppose I have 1 plugin, and I install version 20 of it to my project. I then install platform A which is happy w/ version 20. I then install platform B which only works w/ version 19, so something automatically installs version 19 for this platform. If the API between the two versions isn't compatible (and we don't have an api validator to tell the developer if it is), then the resulting app won't work properly on that platform.
I've fixed an issue. What's next?
CB-7734 (https://issues.apache.org/jira/browse/CB-7734) was reported and I asked if it could be assigned to me. Shazron assigned to me and I fixed it with this pull request https://github.com/apache/cordova-plugin-dialogs/pull/39 It's been 3 weeks and it hasn't been merged, so I don't know if I have to do something else, it's the first issue assigned to me.