cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nikhil Khandelwal <nikhi...@microsoft.com>
Subject RE: [DISCUSS] cordova-ios 4.0.0 release
Date Wed, 21 Oct 2015 17:24:16 GMT
Sent the message before completing it.

What are good tasks to be poached on cordova-ios-4.x? In particular, my team can help out
with cordova-lib related ios tasks. Also, fixing plugins or filing issues for upcoming breakages
are great areas we can help out. ios 4.x has critical fixes for XCode 7 usage which people
need sooner rather than later [1]. Could you mark them with a tag 'poachable'? We can follow
up on slack as well if this requires back and forth. I'll ping you later today.

As for breaking change below, I've not been keeping up ios-4.x as closely - I must've missed
the communication on it. I understand there is a possibility of breaking because of how "categories"
work in Objective-C (I just read up on it - it's a nifty feature). I also understand that
they were not *intended* to be used. AFAIK we do not document our platform APIs and even our
core plugins (camera) was using this particular API. As we discussed in cordova F2F, developers
do not have high confidence with the version of plugins (particularly third party) to pick
and choose and anything we could do in how we version our API/manage breaking changes - will
make Cordova a smoother experience. The impact of this breaking change is HIGH from the small
sample set of plugins we tested. 

As far as I understand, Cordova-ios 3.9.x is not usable with XCODE 7 - ATS, ENABLE_BITCODE
being two issues[2]. Cordova-ios 4.x is not ready and will likely break the third-party plugins
they use when it releases. Should we really push for a patch release for cordova-ios 3.9.x
to fix XCODE 7 issues? @Shaz: How feasible would this be? I know some of us at Microsoft can
help do this with guidance.

[1] http://stackoverflow.com/search?q=ENABLE_BITCODE+%5Bcordova%5D
[2] http://stackoverflow.com/search?q=%22XCODE+7%22+%5Bcordova%5D

-----Original Message-----
From: Nikhil Khandelwal [mailto:nikhilkh@microsoft.com] 
Sent: Wednesday, October 21, 2015 7:09 AM
To: dev@cordova.apache.org
Subject: RE: [DISCUSS] cordova-ios 4.0.0 release

What are good tasks to be poached on cordova-ios-4.x? In particular, my team can help out
with cordova-lib related ios tasks. Also, fixing plugins or filing issues for upcoming breakages
are great areas we can help out. ios 4.x has critical fixes for XCode 7 usage which people
need sooner rather than later [1]. Could you mark them with a tag 'poachable'? We can follow
up on slack as well if this requires back and forth. I'll ping you later today.

As for breaking change below, I've not been keeping up ios-4.x as closely - I must've missed
the communication on it. I understand there is a possibility of breaking because of how "categories"
work in Objective-C (I just read up on it - it's a nifty feature). I also understand that
they were not *intended* to be used. AFAIK we do not document our platform APIs and even our
core plugins (camera) was using this particular API. As we discussed in cordova F2F

As far as I understand, Cordova-ios 3.9.x is not usable with XCODE 7 - ATS, ENABLE_BITCODE
being two issues[2]. Cordova-ios 4.x is not ready and will likely break the third-party plugins
they use when it releases. Should we really push for a patch release for cordova-ios 3.9.x
to fix XCODE 7 issues? @Shaz: How feasible would this be?

[1] https://na01.safelinks.protection.outlook.com/?url=http%3a%2f%2fstackoverflow.com%2fsearch%3fq%3dENABLE_BITCODE%2b%255Bcordova%255D&data=01%7c01%7cnikhilkh%40microsoft.com%7cea1259c06ea744fff37e08d2da213c72%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=EssE%2b0BTiymN1aS7HtBoOVM%2busvcGAKZHanRs9QZXYw%3d
[2] https://na01.safelinks.protection.outlook.com/?url=http%3a%2f%2fstackoverflow.com%2fsearch%3fq%3d%2522XCODE%2b7%2522%2b%255Bcordova%255D&data=01%7c01%7cnikhilkh%40microsoft.com%7cea1259c06ea744fff37e08d2da213c72%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=PBGhQ3sro1fE6Ft3ZOHBv3RkLdNMOg%2fp4gFgSq2Eets%3d


-Nikhil

-----Original Message-----
From: Shazron [mailto:shazron@gmail.com]
Sent: Tuesday, October 20, 2015 10:34 PM
To: dev@cordova.apache.org
Subject: Re: [DISCUSS] cordova-ios 4.0.0 release

This release will not be complete as long as the cordova-ios-4.x board has issues. The only
major issue is the plugin building stuff plus docs.

The removal was projected for some time - you might not have remembered the discussions in
JIRA. NSData+Base64 are "Categories" in Objective-C parlance. These were *never* documented
to be used outside of Cordova and are fair game for removal, particularly a major version
release. The problem with Categories are, other non-Cordova code can implement these Categories
with the same names as well -- and during runtime the implementation that is "chosen" is indeterminate.
We can't have that with Cordova since JSON serialization and deserialization are important
for the bridge.

Yes, a blog post and "migration guide" is coming, among other things on my plate -- see https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fissues.apache.org%2fjira%2fbrowse%2fCB-9785&data=01%7c01%7cnikhilkh%40microsoft.com%7c65695fee7d4149d0fd4108d2d9d9507f%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=sGf5ya8dvvT2BxunFhyA0X7IzCXRdEG4bxmbZT0rgu0%3d
My plan is to send pull requests to some plugins with the common issues, so people can see
how to update.



On Tue, Oct 20, 2015 at 9:45 PM, Nikhil Khandelwal <nikhilkh@microsoft.com> wrote:
> Where are we with this release?
>
> Alexander Sorokin did some analysis on plugin build failures because of this ios-4.0-dev
and there are quite a few.
>
> This spreadsheet summarizes the build failures with the build log in a comment:
> https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fdocs.
> google.com%2fspreadsheets%2fd%2f1sm8ioXY21z3RdyqT7J9n1Q_hmm9zgod5awToF
> F_X66U%2fedit%3fusp%3dsharing&data=01%7c01%7cnikhilkh%40microsoft.com%
> 7c65695fee7d4149d0fd4108d2d9d9507f%7c72f988bf86f141af91ab2d7cd011db47%
> 7c1&sdata=PTiv%2bPvncuJ4g0b%2bj8GTO1ovdCKL8Y%2fHFW4QEQt%2b6i8%3d
>
> Quite a few of the failures are because of the removal of NsData+Base64.h https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fgithub.com%2fapache%2fcordova-ios%2fblob%2fmaster%2fguides%2fAPI%2520changes%2520in%25204.0.md%23nsdatabase64h.&data=01%7c01%7cnikhilkh%40microsoft.com%7c65695fee7d4149d0fd4108d2d9d9507f%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=GS43mbEp5TKlUWs4A2mRMZ36sMaBxniFC%2fQbRkzzg24%3d
What's the rationale behind removing this? Did we deprecate these methods before we removed
them?
>
> I understand the changes for plugin developers are simple - but it does seem to require
a number of plugins to be updated to ensure apps are not broken.
>
> It will be great to publish a blog post on cordova blog about these breaking changes.
>
> -Nikhil
>
>
> -----Original Message-----
> From: Carlos Santana [mailto:csantana23@gmail.com]
> Sent: Wednesday, September 2, 2015 10:22 PM
> To: dev@cordova.apache.org
> Subject: Re: [DISCUSS] cordova-ios 4.0.0 release
>
> +1 Choo Choo ...
>
> I reviewed all links in your proposal and they look and don't have 
> concerns
>
> IBM MobileFirst was affected only by the API change of using 
> webviewengine now but that's so far the only major change
>
> In the kaban board for 4.0 there are some issues I consider nice to 
> have that are not blockers to get a 4.0 out for iOS if we get closed 
> to the ios9 launched date they can be deferred to a 4.0.1
>
> On Tue, Sep 1, 2015 at 7:38 PM Shazron <shazron@gmail.com> wrote:
>
>> Gotta get the train going again, it's been too long.
>>
>> The kanban board for this is at:
>> https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fissu
>> e
>> s.apache.org%2fjira%2fsecure%2fRapidBoard.jspa%3frapidView%3d76&data=
>> 0
>> 1%7c01%7cnikhilkh%40microsoft.com%7c457cbbc8d60c461beede08d2b41fb286%
>> 7
>> c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=b11%2bCUSw4d5Q9SN%2b8roAW
>> o
>> Ra2plB0lJXeCJb9RC2Sqw%3d
>>
>> Please help if you can by assigning an issue to yourself, and 
>> selecting the "Start Progress" button. This will show who is working 
>> on what in the middle "In Progress" column.
>>
>> I've trimmed this and it includes cordova-ios platform issues, and 
>> some plugin issues. Priority given to platform issues of course, and 
>> issues with iOS 9. If there is a pressing issue that needs to go in, 
>> assign it the label "cordova-ios-4.0.x" but propose it to this thread 
>> first so we don't get de-railed, there's only so much room on the 
>> train. Similarly if you think an issue can get thrown off the train 
>> to cordova-ios-5.0.x, post on this thread.
>>
>> Focus is on core plugin stability with the new platform, since it 
>> does have API changes. If downstream distribution people are on this 
>> list, this concerns your third-party plugins too.
>>
>> The easiest way to test if it affects your plugin building:
>>
>> ```
>> cordova platform add
>> https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fgith
>> u
>> b.com%2fapache%2fcordova-ios.git&data=01%7c01%7cnikhilkh%40microsoft.
>> c
>> om%7c457cbbc8d60c461beede08d2b41fb286%7c72f988bf86f141af91ab2d7cd011d
>> b 47%7c1&sdata=%2fyEILBHFok2F6BK9aeOOd3ibr3V4GNFhvhWWek%2fRqjs%3d
>> cordova plugin add your-plugin-id
>> cordova build
>> ```
>>
>> Plugin updates and highlights:
>>     - API changes doc:
>>
>> https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fgithub.com%2fapache%2fcordova-ios%2fblob%2fmaster%2fguides%2fAPI%2520changes%2520in%25204.0.md&data=01%7c01%7cnikhilkh%40microsoft.com%7c457cbbc8d60c461beede08d2b41fb286%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=oc6rb7Mbb2%2bDmKRPwtRBd3jyl0gh74mA5I%2fwiHLpqhM%3d
>>     - 3 new private core plugins to the platform:
>>
>> https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fgithub.com%2fapache%2fcordova-ios%2ftree%2fmaster%2fCordovaLib%2fClasses%2fPrivate%2fPlugins&data=01%7c01%7cnikhilkh%40microsoft.com%7c457cbbc8d60c461beede08d2b41fb286%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=xoM2X4%2bcjp9oqKHhtviNfEdimxiIR%2bTJrg80tI1Fbek%3d
>>     - Plugin localized strings and resource loading:
>>
>> https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fgithub.com%2fapache%2fcordova-ios%2fblob%2fmaster%2fCordovaLib%2fClasses%2fPublic%2fCDVPlugin%252BResources.h&data=01%7c01%7cnikhilkh%40microsoft.com%7c457cbbc8d60c461beede08d2b41fb286%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=m2xhhALHTJ8rb2aPg68hMWVcU9ebo51zGXwihQEr1LY%3d
>>    - Preferences helper:
>>
>> https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fgithub.com%2fapache%2fcordova-ios%2fblob%2fmaster%2fCordovaLib%2fClasses%2fPublic%2fNSDictionary%252BCordovaPreferences.h&data=01%7c01%7cnikhilkh%40microsoft.com%7c457cbbc8d60c461beede08d2b41fb286%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=jUUM60Yks2vRWVPJdeUc8Hhek3CuH6bYKwQlbXDZSxM%3d
>>    - WebViews as plugins. UIWebView is a private core plugin (see above).
>> WKWebView as a plugin installable
>> https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fgith
>> u
>> b.com%2fapache%2fcordova-plugins%2ftree%2fmaster%2fwkwebview-engine&d
>> a
>> ta=01%7c01%7cnikhilkh%40microsoft.com%7c457cbbc8d60c461beede08d2b41fb
>> 2
>> 86%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=oxWiqvoBbVXRKZVL64w2W
>> O
>> XjbBJ%2fdvVu2cBVnV4hf9Y%3d
>>
>> I also want to highlight this scenario which a lot of people will
>> encounter:
>> https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fissu
>> e
>> s.apache.org%2fjira%2fbrowse%2fCB-9592&data=01%7c01%7cnikhilkh%40micr
>> o
>> soft.com%7c457cbbc8d60c461beede08d2b41fb286%7c72f988bf86f141af91ab2d7
>> c d011db47%7c1&sdata=oMjN7hq1FiR8YIr7tk6t4L8cG6FwAlCHVCiV7MYZdQs%3d
>>
>> I had to trim features and push it off to cordova-ios-5.0.x:
>> https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fissu
>> e
>> s.apache.org%2fjira%2fsecure%2fRapidBoard.jspa%3frapidView%3d86&data=
>> 0
>> 1%7c01%7cnikhilkh%40microsoft.com%7c457cbbc8d60c461beede08d2b41fb286%
>> 7
>> c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=4N1dxtFBRjM%2fgJULVWBYLc0
>> Z
>> NH7rJArJX5KlvDBqC68%3d
>>
>> Planned ship/vote date is around iOS 9 release time, which I believe 
>> is in
>> 2 weeks or so (mid Sept 2015).
>>
>> Choo choo....
>>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@cordova.apache.org
For additional commands, e-mail: dev-help@cordova.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@cordova.apache.org
For additional commands, e-mail: dev-help@cordova.apache.org
Mime
View raw message