Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revert "Enable bitcode for ios native libraries" in v1.24.x #20233

Merged
merged 1 commit into from
Sep 12, 2019

Conversation

jtattermusch
Copy link
Contributor

Reverts #20113 in the release branch.
The size increase of the libgrpc.a is way too much to be shipped as part of Grpc.Core nuget (right now libgrpc.a is >250MB).

FYI @koshelevpavel if we don't figure out a good way how to decrease the size or iOS binaries, we'll need to revert.

@jtattermusch jtattermusch added lang/C# release notes: yes Indicates if PR needs to be in release notes labels Sep 11, 2019
@veblush veblush self-requested a review September 11, 2019 15:27
Copy link
Contributor

@veblush veblush left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

@veblush
Copy link
Contributor

veblush commented Sep 11, 2019

For a long term solution, can we split single big nuget package into several pieces? If nuget supports a way having multiple files depending on each platform like python, it'd be great. Otherwise, we might able to split a nuget package into several using dependency?

For example,

  • gRPC.Core package
    • Dependency (netstandard2.0) -> gRPC.Core.NetStandard2 package
    • Dependency (xamarinios) -> gRPC.Core.Xamarin.iOS package
    • ...

From the apple doc, bitcode is not mandatory for iOS but it is for watchOS and tvOS. I'm not sure how many watchOS and tvOS apps are written in .NET & gRPC but probably we will have to solve this problem in future.

@jtattermusch
Copy link
Contributor Author

@veblush yes, we want to split the Grpc.Core package, but the exact way of achieving that is not clear (and it's not really well documented by microsoft). We actually want to split packages by runtimes (linux, win, mac, ....) rather than by target frameworks, because it's the native libraries that are big.

@jtattermusch jtattermusch merged commit bf9e0cd into grpc:v1.24.x Sep 12, 2019
@lock lock bot locked as resolved and limited conversation to collaborators Dec 11, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
lang/C# release notes: yes Indicates if PR needs to be in release notes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants