Hi Rod and Tony, This looks like it has been fixed. I tried replacing the String with the KeyPath and (NS)Operation seems to work like a charm.
Thank you so much guys !!! Love KeyPath … am so excited. :D I will close the bug report that I created. Regards, Muthu > On 17 Jun 2017, at 8:02 AM, somu subscribe <somu.subscr...@gmail.com> wrote: > > Hi Rod and Tony, > > Thanks a lot ! > > Regards, > Muthu > > On 17 Jun 2017, at 12:11 AM, Tony Parker <anthony.par...@apple.com > <mailto:anthony.par...@apple.com>> wrote: > >> Hi Rod, >> >> Thanks, we’re looking into it. >> >> - Tony >> >>> On Jun 15, 2017, at 9:14 PM, Rod Brown <rodney.bro...@icloud.com >>> <mailto:rodney.bro...@icloud.com>> wrote: >>> >>> Hi Tony and Somu, >>> >>> I have an open radar for this one which has been outstanding for a few >>> months. >>> >>> Radar #32191242 >>> >>> Hope this helps. >>> >>> - Rod >>> >>> >>> >>>> On 15 Jun 2017, at 10:27 am, Tony Parker via swift-users >>>> <swift-users@swift.org <mailto:swift-users@swift.org>> wrote: >>>> >>>> Hi Somu, >>>> >>>> You can certainly file a bug for us. It may be something we are already >>>> tracking or already fixed, but the bug report will let us double check >>>> that. >>>> >>>> Thanks, >>>> - Tony >>>> >>>>> On Jun 13, 2017, at 12:33 PM, somu subscribe via swift-users >>>>> <swift-users@swift.org <mailto:swift-users@swift.org>> wrote: >>>>> >>>>> Thanks a lot Jordan for pointing out the root cause. >>>>> >>>>> The underlying executing and finished properties are readonly properties. >>>>> >>>>> For an Asynchronous operation I had to override it tell when the >>>>> asynchronous operation completes. >>>>> >>>>> Since they are readonly properties I am unable to call the super on them >>>>> to set values. >>>>> >>>>> I can still use String, was just wondering if there was a way to do it >>>>> using KeyPath. It is more out of enthusiasm to try out the KeyPath >>>>> feature in the project :) >>>>> >>>>> Would it be appropriate to file a bug report for the implementation of >>>>> Operation ? >>>>> >>>>> Thanks and regards, >>>>> Muthu >>>>> >>>>> >>>>> >>>>>> On 14 Jun 2017, at 1:32 AM, Jordan Rose <jordan_r...@apple.com >>>>>> <mailto:jordan_r...@apple.com>> wrote: >>>>>> >>>>>> Hi, Muthu. This is a longstanding issue with Operation—the Objective-C >>>>>> name of the property is just "executing", but the KVO keys that the >>>>>> implementors used is "isExecuting". Swift isn't set up to deal with this >>>>>> difference. >>>>>> >>>>>> Fortunately, the base implementation of Operation already knows how to >>>>>> send the KVO notifications, so you shouldn't have to override these >>>>>> properties at all. If you still want to for some other reason, you can >>>>>> call super instead of storing to a private property. >>>>>> >>>>>> Hope that helps, >>>>>> Jordan >>>>>> >>>>>> >>>>>>> On Jun 13, 2017, at 06:40, somu subscribe via swift-users >>>>>>> <swift-users@swift.org <mailto:swift-users@swift.org>> wrote: >>>>>>> >>>>>>> Hi, >>>>>>> >>>>>>> I am having trouble using KeyPath to KVC (Key Value Code) in Swift 4. >>>>>>> >>>>>>> I have a subclass of Operation and I am overriding the isFinished and >>>>>>> isExecuting property. >>>>>>> >>>>>>> Problem: >>>>>>> - When I use KeyPath, the completionBlock of the operation is not >>>>>>> invoked. >>>>>>> - However when I use String instead of KeyPath, the completionBlock is >>>>>>> invoked. >>>>>>> >>>>>>> Questions: >>>>>>> - Am I missing something ? >>>>>>> - Is there a way to fix it using KeyPath ? >>>>>>> >>>>>>> Code: >>>>>>> >>>>>>> override var isExecuting : Bool { >>>>>>> >>>>>>> get { >>>>>>> return _executing //property in the class >>>>>>> } >>>>>>> >>>>>>> set { >>>>>>> willChangeValue(for: \.isExecuting) >>>>>>> _executing = newValue >>>>>>> didChangeValue(for: \.isExecuting) >>>>>>> } >>>>>>> } >>>>>>> >>>>>>> override var isFinished : Bool { >>>>>>> >>>>>>> get { >>>>>>> return _finished //property in the class >>>>>>> } >>>>>>> >>>>>>> set { >>>>>>> willChangeValue(for: \.isFinished) >>>>>>> _finished = newValue >>>>>>> didChangeValue(for: \.isFinished) >>>>>>> } >>>>>>> } >>>>>>> >>>>>>> >>>>>>> Configuration: >>>>>>> - Xcode - 9.0 beta (9M136h) >>>>>>> - Tested on Simulator (iOS 11) >>>>>>> - macOS Sierra - 10.12.5 (16F73) >>>>>>> >>>>>>> >>>>>>> Thanks and Regards, >>>>>>> Muthu >>>>>>> _______________________________________________ >>>>>>> swift-users mailing list >>>>>>> swift-users@swift.org <mailto:swift-users@swift.org> >>>>>>> https://lists.swift.org/mailman/listinfo/swift-users >>>>>>> <https://lists.swift.org/mailman/listinfo/swift-users> >>>>>> >>>>> >>>>> _______________________________________________ >>>>> swift-users mailing list >>>>> swift-users@swift.org <mailto:swift-users@swift.org> >>>>> https://lists.swift.org/mailman/listinfo/swift-users >>>>> <https://lists.swift.org/mailman/listinfo/swift-users> >>>> >>>> _______________________________________________ >>>> swift-users mailing list >>>> swift-users@swift.org <mailto:swift-users@swift.org> >>>> https://lists.swift.org/mailman/listinfo/swift-users >>>> <https://lists.swift.org/mailman/listinfo/swift-users> >>> >>
_______________________________________________ swift-users mailing list swift-users@swift.org https://lists.swift.org/mailman/listinfo/swift-users