grpc / grpc-ios

gRPC for iOS
Apache License 2.0
37 stars 22 forks source link

Fix spm load time #236

Closed paulb777 closed 3 months ago

paulb777 commented 3 months ago

Reduce SPM load time from 20 minutes to about 10 seconds.

10 seconds is still not good enough for a single library, but probably ok for the upcoming release.

More speedups may be possible by further consolidating only needed files to a single source directory for SPM.

Note that https://github.com/grpc/grpc-ios/actions/runs/8217485955 is now 19 minutes versus times ranging from 33 to 71 minutes for previous runs.

Firebase/Firestore integration testing in https://github.com/firebase/firebase-ios-sdk/pull/12508. The spm-source tests pass in https://github.com/firebase/firebase-ios-sdk/actions/runs/8217864323/job/22474043936?pr=12508

This PR also eliminates the symbolic linking of Package.swift because integration testing was failing because SPM does not support symbolic links:

Screenshot 2024-03-09 at 3 00 43 PM
HannahShiSFB commented 3 months ago

Thanks for the effort. I'll create a new release soon. In the mean while, will figure a new way generating the swift package file.