GitHawkApp / GitHawk

The (second) best iOS app for GitHub.
http://githawk.com
MIT License
2.88k stars 384 forks source link

Big IPA? #798

Closed rnystrom closed 6 years ago

rnystrom commented 6 years ago

I'm uploading to TestFlight and the IPA is a whopping 124mb! 😱

screen shot 2017-10-29 at 10 16 28 pm

Trying to brainstorm if something changed or what could have caused this. Build 1106 was uploaded on 10/24 with only 19.4mb App Store size.

screen shot 2017-10-29 at 10 19 01 pm
rizwankce commented 6 years ago

Easiest way would be UnArchive the IPA and select app file under Payload. Then right click “show package content” and go through the files.

Sent with GitHawk

Sherlouk commented 6 years ago

SwiftLint binary?

edit// FWIW Finder is telling me the SwiftLint directory in Pods/ is coming out as 16MB. Not sure if App Store archiving is making it bigger/smaller but ya maybe not the only issue

Iron-Ham commented 6 years ago

@Sherlouk y'know, in retrospect maybe it should've been flagged as a debug only include like flex

Sherlouk commented 6 years ago

@heshamsalman Probably not a disastrous idea, but I feel like someone on SwiftLint's side would've identified this and thought "maybe this isn't a great idea"?

Personally I'd move the SwiftLint binary into it's own directory (See how I've done license-plist) and avoid the issue entirely?

Iron-Ham commented 6 years ago

@Sherlouk definitely the right move if that's actually the culprit

Sherlouk commented 6 years ago

@heshamsalman Updated my original comment (should've posted new comment in hindsight) but looks like SwiftLint is only 16MB on my local machine. That doesn't account for any archival weirdness Xcode does but I doubt it's causing over 100MB increase in IPA size.

I might download an IPA later and see if I can identify any big files!

Sherlouk commented 6 years ago

Okay further analysis:

I've expanded the IPA, SwiftLint is not in the frameworks list so it must get compiled out somewhere somehow.

In the IPA the culprits are the dylib files, specifically: libswiftCore.dylib, libswiftFoundation.dylib making just under 100MB between them.

Hazarding a complete guess here, I wonder if this is something to do with the version of Xcode being used? Or more likely updating to Swift 4? 🤷‍♂️

From what Buddybuild is printing under "iTunesConnect IPA" it's been 124MB since we started creating builds on it. Granted this doesn't tell us much since we've been using it only since we've been on Xcode 9.

@rnystrom Wonder if this prompts anything in your mind? @BasThomas from Swift perspective?

edit// also worth noting that by the time it goes through the app store, the version users download will always be a lot smaller!

BasThomas commented 6 years ago

No red flags regarding Swift libs or whatever. Re: App Store makes it smaller: curious to see this - what is the size when uploaded to iTunes Connect? With App Thinning the app will be even smaller in the App Store, but that wouldn't explain the size difference in IPAs.

rnystrom commented 6 years ago

For my own curiosity, I tried

pod 'SwiftLint', :configurations => ['Debug']

And it didn't change.

rnystrom commented 6 years ago

Latest build is only 19.5mb on App Store even though uploaded IPA is 124mb. Weird! I called this out b/c uploading on airplane wifi was taking a lot time lol. I guess this is normal?

screen shot 2017-11-01 at 9 38 46 am