ReactiveX / RxSwift

Reactive Programming in Swift
MIT License
24.37k stars 4.17k forks source link

Getting Apple store warnings in spite of upgrading to RxSwift 5.1.0 #2229

Closed shalinipk closed 4 years ago

shalinipk commented 4 years ago

Short description of the issue:

Getting warning from Apple Store "ITMS-90809: Deprecated API Usage - App updates that use UIWebView will no longer be accepted as of December 2020. Instead, use WKWebView for improved security and reliability. Learn more (https://developer.apple.com/documentation/uikit/uiwebview)."

I am using RxSwift 5.1.0

I did a grep on RxSwift binary folder downloaded from Releases. I see this:

grep -rnw . -e 'UIWebView' Binary file ./RxCocoa.framework.dSYM/Contents/Resources/DWARF/RxCocoa matches

Expected outcome:

Expecting no references to UIWebview

What actually happens:

References to UIWebview exists in RxCocoa.framework.dSYM

Self contained code example that reproduces the issue:

grep -rnw . -e 'UIWebView' Binary file ./RxCocoa.framework.dSYM/Contents/Resources/DWARF/RxCocoa matches

RxSwift/RxCocoa/RxBlocking/RxTest version/commit

5.1.0

Platform/Environment

iOS

How easy is to reproduce? (chances of successful reproduce after running the self contained code)

easy, 100% repro

Xcode version:

11.3

freak4pc commented 4 years ago

@shalinipk Hey there. I'm 100% positive 5.1.x in itself doesn't include any UIWebView references (since our app is also a consumer and we're not getting warnings).

What seems to happen here to me is a Carthage issue or an issue with the prebuilt binary.

Please try carthage update --platform iOS --no-use-binaries and see if you're getting a similar effect.

I don't have Xcode 11.3 available to make a new pre-built binary version for this, but we can possibly build it on Xcode 11.7, instead. If that helps.

shalinipk commented 4 years ago

Thank you for your quick response. I deleted everything in my carthage/Builds folder, also deleted contents of XCode/DerivedData. Then ran carthage update --platform iOS --no-use-binaries

Still seeing 'Binary file ./RxCocoa.framework.dSYM/Contents/Resources/DWARF/RxCocoa matches' when I grep for UIWebview.

The RXCocoa binary itself seems ok. It seems like the dsym file is the problem.

I am on Carthage 0.35.0, XCode 11.3

Much appreciate your help. Thank you.

freak4pc commented 4 years ago

I don't have a great idea about this and it sounds Carthage-specific. We also have another app using Carthage in our systems and it's not rejected so it sounds like some sort of a configuration issue unfortunately.

shalinipk commented 4 years ago

Thank you. I am seeing the same results if I do a grep on the zip file directly downloaded from github. Wonder why!

freak4pc commented 4 years ago

As I mentioned, it sounds like something specific to Carthage itself. It's too specific for me to help unfortunately but I'm not too sure if I have a good idea how to help beyond this point.

shalinipk commented 4 years ago

Thank you for your response. Let me try to dig around this dsym issue a little bit more. Right now, the only thing I can think of is to get rid of the dsym files & build my app - with obvious consequences of course. Want to keep that as a last resort. If I find anything, will post it here.

Thanks again for the prompt responses.

freak4pc commented 4 years ago

I'm closing this for now but feel free to keep commenting if you find anything :)

shalinipk commented 4 years ago

Update on this one. My app passed Apple review in spite of UIWebview references in dsym files. Phew! Thanks for all the help freak4pc!!