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

Override CocoaPods module to lowercase #6464

Merged
merged 3 commits into from Aug 6, 2019

Conversation

@paulb777
Copy link
Contributor

commented Aug 2, 2019

Fix #3218

Implement suggestion from @BugsBunnyBR at #3218 (comment) to use module_name in podspec to make the module name consistent with the directory structure.

Presumably another change is needed to create the generated files properly?

@thomasvl

This comment has been minimized.

Copy link
Contributor

commented Aug 5, 2019

Presumably another change is needed to create the generated files properly?

https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/compiler/objectivec/objectivec_helpers.cc#L984

Should be the change to do it.

Then running generate_descriptor_proto.sh at the root of the tree should regenerate the files.

Having said that, I believe this still counts as a breaking api change because anyone that directly imports the headers in their code will have to update things because of the new module name? If they only import their own generate files I guess it should slide by without issue?

@paulb777

This comment has been minimized.

Copy link
Contributor Author

commented Aug 5, 2019

I'm not sure it's a breaking API change. At least with FirebaseMessaging, the warnings go away even though the imports are uppercase like in https://github.com/firebase/firebase-ios-sdk/blob/master/Firebase/Messaging/FIRMessagingSecureSocket.m#L19

@thomasvl

This comment has been minimized.

Copy link
Contributor

commented Aug 5, 2019

I'm not sure it's a breaking API change. At least with FirebaseMessaging, the warnings go away even though the imports are uppercase...

Lovely, just goes to show even more how Apple's impl of this warning wasn't complete. Since that case should be exactly what causes this, no?

@paulb777

This comment has been minimized.

Copy link
Contributor Author

commented Aug 5, 2019

Yep. It looks like as long as the module name is lowercase, imports compile without warning whether they reference it with an upper-case or lower-case module name.

@thomasvl
Copy link
Contributor

left a comment

🤞 this doesn't cause issues when the protobuf team cuts the next release.

@thomasvl thomasvl merged commit 479ba82 into protocolbuffers:master Aug 6, 2019

56 checks passed

Bazel Kokoro build successful
Details
Dist artifact installation Kokoro build successful
Details
Linux 32-bit Kokoro build successful
Details
Linux C# Kokoro build successful
Details
Linux C++ Distcheck Kokoro build successful
Details
Linux C++ TC Malloc Kokoro build successful
Details
Linux Golang Kokoro build successful
Details
Linux Java Compatibility Kokoro build successful
Details
Linux Java JDK 7 Kokoro build successful
Details
Linux Java Linkage Monitor Kokoro build successful
Details
Linux Java Oracle 7 Kokoro build successful
Details
Linux JavaScript Kokoro build successful
Details
Linux PHP Kokoro build successful
Details
Linux Python Kokoro build successful
Details
Linux Python 2.7 Kokoro build successful
Details
Linux Python 2.7 C++ Kokoro build successful
Details
Linux Python 3.3 Kokoro build successful
Details
Linux Python 3.3 C++ Kokoro build successful
Details
Linux Python 3.4 Kokoro build successful
Details
Linux Python 3.4 C++ Kokoro build successful
Details
Linux Python 3.5 Kokoro build successful
Details
Linux Python 3.5 C++ Kokoro build successful
Details
Linux Python 3.6 Kokoro build successful
Details
Linux Python 3.6 C++ Kokoro build successful
Details
Linux Python 3.7 Kokoro build successful
Details
Linux Python 3.7 C++ Kokoro build successful
Details
Linux Python C++ Kokoro build successful
Details
Linux Python Compatibility Kokoro build successful
Details
Linux Python Release Kokoro build successful
Details
Linux Ruby 2.3 Kokoro build successful
Details
Linux Ruby 2.4 Kokoro build successful
Details
Linux Ruby 2.5 Kokoro build successful
Details
Linux Ruby 2.6 Kokoro build successful
Details
Linux Ruby Release Kokoro build successful
Details
MacOS C++ Kokoro build successful
Details
MacOS C++ Distcheck Kokoro build successful
Details
MacOS JavaScript Kokoro build successful
Details
MacOS Obj-C CocoaPods Integration Kokoro build successful
Details
MacOS Obj-C OS X Kokoro build successful
Details
MacOS Obj-C iOS Debug Kokoro build successful
Details
MacOS Obj-C iOS Release Kokoro build successful
Details
MacOS PHP5.6 Kokoro build successful
Details
MacOS PHP7.0 Kokoro build successful
Details
MacOS Python Kokoro build successful
Details
MacOS Python C++ Kokoro build successful
Details
MacOS Python Release Kokoro build successful
Details
MacOS Ruby 2.3 Kokoro build successful
Details
MacOS Ruby 2.4 Kokoro build successful
Details
MacOS Ruby 2.5 Kokoro build successful
Details
MacOS Ruby 2.6 Kokoro build successful
Details
MacOS Ruby Release Kokoro build successful
Details
Mergeable Mergeable Run has been Completed!
Details
Windows C# Kokoro build successful
Details
Windows Csharp Release Kokoro build successful
Details
Windows Python Release Kokoro build successful
Details
cla/google All necessary CLAs are signed
@BugsBunnyBR

This comment has been minimized.

Copy link

commented Aug 12, 2019

@thomasvl any idea of when this will be in a cocoapods release?

@thomasvl

This comment has been minimized.

Copy link
Contributor

commented Aug 15, 2019

@thomasvl any idea of when this will be in a cocoapods release?

I'm not completely sure (I don't work directly on the team, I'm just responsible for the ObjC part). Hopefully they will have a release in the not too distant future.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
5 participants
You can’t perform that action at this time.