cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Shazron <shaz...@gmail.com>
Subject Re: [DISCUSS] cordova-ios 4.0.0 release
Date Wed, 18 Nov 2015 11:52:25 GMT
The board is almost clear -- now to test this for a bit before it's
ready for primetime.
https://issues.apache.org/jira/secure/RapidBoard.jspa?rapidView=76



On Mon, Oct 26, 2015 at 2:21 PM, Shazron <shazron@gmail.com> wrote:
> Thanks guys!
> I've commented on the PR, there is one more commit to add.
>
> Created the board:
> https://issues.apache.org/jira/secure/RapidBoard.jspa?rapidView=96
> (based off the label you created)
>
> On Mon, Oct 26, 2015 at 8:42 AM, Vladimir Kotikov (Akvelon)
> <v-vlkoti@microsoft.com> wrote:
>> Hi, guys.
>>
>> We've cherry-picked all the commits related to iOS9 / Xcode 7 issues into 3.9.x and
send corresponding PR to 3.9.x branch [1]. Shazrov, Steve please review when possible.
>>
>> Regarding new board for 3.9.2 release - neither Sergey nor me don't have a permissions
to create a shared queries, so we just tagged issues with <cordova-ios-3.9.2> label.
You can find all tagged issues using a query [2].
>>
>> ---
>> [1] https://github.com/apache/cordova-ios/pull/175
>> [2] https://issues.apache.org/jira/browse/CB-9729?jql=labels%20%3D%20cordova-ios-3.9.2
>>
>>
>> -----Original Message-----
>> From: Shazron [mailto:shazron@gmail.com]
>> Sent: Friday, October 23, 2015 3:29 PM
>> To: dev@cordova.apache.org
>> Subject: Re: [DISCUSS] cordova-ios 4.0.0 release
>>
>> Sorry for the late reply -- took a sick day.
>>
>> I'd really like to just get cordova-ios 4.x out without a patch release in between,
since there are just a few more issues left before we can clear the board (I'll triage it
again), and a 4.x release would follow closely a 3.9.2 release.
>>
>> After mulling it over -- what I want and what is needed is of course two things.
I really don't want the headache of third-party plugin breakage issues on the first day of
release, which will happen. The API removals (although our prerogative) never had a deprecation
warning. In a perfect world, after blogging about it and communicating it to plugin authors,
they would update their plugins in a backwards compatible way immediately (which I plan to
write a howto included in the platform and/or blog post -- there's a jira issue for it)
>>
>> No plugin author updates things without encountering a breakage after hearing from
their users -- blog posts just don't have the impact that code breakage does :) So -- here's
a plan:
>>
>> A cordova-ios-3.9.2 release, there should be two goals:
>> 1. iOS 9 / Xcode 7 fixes (scan the 4.x kanban board for all fixed issues) 2. Add
deprecation/removal warnings through the macro (https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fgithub.com%2fapache%2fcordova-ios%2fblob%2fmaster%2fCordovaLib%2fClasses%2fPublic%2fCDVAvailabilityDeprecated.h%23L23&data=01%7c01%7cv-vlkoti%40064d.mgd.microsoft.com%7cd6ed60025678403e0fd008d2dba59f1b%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=7p9BQz45eR6YUHUjiySQolzVCT9bNmqidrTQTVkn8OM%3d).
>> Not a deprecation, but a removal since that is our prerogative for major version
bumps.
>>
>> For #2, for the API items that have been removed (through the macros)
>> -- we include strong language and pointers on how to fix it, and/or instructions
for users to contact the plugin author to fix. Not sure how hard -- we could have some introspection
in the plugin to actually print out the plugin id responsible.
>>
>> For cordova-ios-3.9.2 I would create a kanban board "cordova-ios-3.9.2" (linked to
label 'cordova-ios-3.9.2'), then go through the cordova-ios-4.x board, see what issues apply,
then add the label "cordova-ios-3.9.2" which would automatically appear on the new board.
Go through the items in the new board, and cherry-pick the patches into the 3.9.x branch.
>>
>> Can Microsoft take on this 3.9.2 release while I continue to get the 4.x release
out?
>>
>> FYI -- ATS is handled by the CLI (should be in the next cli release) and is not dependent
on the cordova-ios platform.
>>
>> Thoughts?
>>
>>
>> On Wed, Oct 21, 2015 at 10:24 AM, Nikhil Khandelwal <nikhilkh@microsoft.com>
wrote:
>>> 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]
>>> https://na01.safelinks.protection.outlook.com/?url=http%3a%2f%2fstacko
>>> verflow.com%2fsearch%3fq%3dENABLE_BITCODE%2b%255Bcordova%255D&data=01%
>>> 7c01%7cv-vlkoti%40064d.mgd.microsoft.com%7cd6ed60025678403e0fd008d2dba
>>> 59f1b%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=6TZPBz5vNlDgL1A9c7%
>>> 2fsUoknh553FwrIqL7pjbsqcFE%3d [2]
>>> https://na01.safelinks.protection.outlook.com/?url=http%3a%2f%2fstacko
>>> verflow.com%2fsearch%3fq%3d%2522XCODE%2b7%2522%2b%255Bcordova%255D&dat
>>> a=01%7c01%7cv-vlkoti%40064d.mgd.microsoft.com%7cd6ed60025678403e0fd008
>>> d2dba59f1b%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=LKaFhkW05D%2fG
>>> ZcInG4LUTRm9Am2QMyMMxhrwcFtCIK0%3d
>>>
>>> -----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%2fstacko
>>> verflow.com%2fsearch%3fq%3dENABLE_BITCODE%2b%255Bcordova%255D&data=01%
>>> 7c01%7cnikhilkh%40microsoft.com%7cea1259c06ea744fff37e08d2da213c72%7c7
>>> 2f988bf86f141af91ab2d7cd011db47%7c1&sdata=EssE%2b0BTiymN1aS7HtBoOVM%2b
>>> usvcGAKZHanRs9QZXYw%3d [2]
>>> https://na01.safelinks.protection.outlook.com/?url=http%3a%2f%2fstacko
>>> verflow.com%2fsearch%3fq%3d%2522XCODE%2b7%2522%2b%255Bcordova%255D&dat
>>> a=01%7c01%7cnikhilkh%40microsoft.com%7cea1259c06ea744fff37e08d2da213c7
>>> 2%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=PBGhQ3sro1fE6Ft3ZOHBv3R
>>> kLdNMOg%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%2fissue
>>> s.apache.org%2fjira%2fbrowse%2fCB-9785&data=01%7c01%7cnikhilkh%40micro
>>> soft.com%7c65695fee7d4149d0fd4108d2d9d9507f%7c72f988bf86f141af91ab2d7c
>>> d011db47%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_hmm9zgod5awTo
>>>> F
>>>> 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%2fiss
>>>>> u
>>>>> e
>>>>> s.apache.org%2fjira%2fsecure%2fRapidBoard.jspa%3frapidView%3d76&data
>>>>> =
>>>>> 0
>>>>> 1%7c01%7cnikhilkh%40microsoft.com%7c457cbbc8d60c461beede08d2b41fb286
>>>>> %
>>>>> 7
>>>>> c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=b11%2bCUSw4d5Q9SN%2b8roA
>>>>> W
>>>>> 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%2fgit
>>>>> h
>>>>> u
>>>>> b.com%2fapache%2fcordova-ios.git&data=01%7c01%7cnikhilkh%40microsoft.
>>>>> c
>>>>> om%7c457cbbc8d60c461beede08d2b41fb286%7c72f988bf86f141af91ab2d7cd011
>>>>> d 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%2fgit
>>>>> h
>>>>> u
>>>>> b.com%2fapache%2fcordova-plugins%2ftree%2fmaster%2fwkwebview-engine&
>>>>> d
>>>>> a
>>>>> ta=01%7c01%7cnikhilkh%40microsoft.com%7c457cbbc8d60c461beede08d2b41f
>>>>> b
>>>>> 2
>>>>> 86%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=oxWiqvoBbVXRKZVL64w2
>>>>> W
>>>>> 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%2fiss
>>>>> u
>>>>> e
>>>>> s.apache.org%2fjira%2fbrowse%2fCB-9592&data=01%7c01%7cnikhilkh%40mic
>>>>> r
>>>>> o
>>>>> soft.com%7c457cbbc8d60c461beede08d2b41fb286%7c72f988bf86f141af91ab2d
>>>>> 7 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%2fiss
>>>>> u
>>>>> e
>>>>> s.apache.org%2fjira%2fsecure%2fRapidBoard.jspa%3frapidView%3d86&data
>>>>> =
>>>>> 0
>>>>> 1%7c01%7cnikhilkh%40microsoft.com%7c457cbbc8d60c461beede08d2b41fb286
>>>>> %
>>>>> 7
>>>>> c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=4N1dxtFBRjM%2fgJULVWBYLc
>>>>> 0
>>>>> 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
>>
>> ---------------------------------------------------------------------
>> 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