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

Use preserve_paths instead of CocoaPods private #5758

Merged
merged 25 commits into from
Jun 9, 2020

Conversation

paulb777
Copy link
Member

@paulb777 paulb777 commented Jun 6, 2020

Standardize and simplify internal FirebaseCore imports. Note the fast-follow #5760 changes the preserve_path to source_files so that the headers show up in generated Xcode projects.

  • Change all client library Core imports to import the new umbrella FirebaseCore/Sources/Private/FirebaseCoreInternal.h instead of any specific header files.
  • __has_include test so old IID used by FIS tests can find the Core private headers since the old podspec doesn't know how to find repo-relative headers. Also necessary for the latest Core to work with other old Firebase 6.x pods.
  • Bump FirebaseCore minor version and the FirebaseCore dependency version in all dependents.
  • Fix localize_podfile script to include ABTesting as an inner pod.
  • Update some sample code that was unnecessarily using private headers.
  • Fix an RC/Core symbol collision on FIRErrorCodeConfigFailed
  • Add #if __cplusplus for public header imports from the Core Firebase-internal headers since Objective C++ modules don't work for unqualified public header names. I changed this back to a #if SWIFT_PACKAGE check in Migrate from interop pods to source_files header access #5760 since other issues came up with public header references from private headers there - so this can mostly be disregarded.

The first commit is large, but purely the mechanical change of all of the import changes (from a small Swift script). The interesting changes are in the commits that follow.

I tested with the private_headers removed from the FirebaseCore podspec. I'm restored the private_headers before merging to avoid a breaking change before 7.0.

@google-oss-bot
Copy link

1 Warning
⚠️ Did you forget to add a changelog entry? (Add #no-changelog to the PR description to silence this warning.)

Generated by 🚫 Danger

@paulb777 paulb777 mentioned this pull request Jun 6, 2020
@paulb777 paulb777 marked this pull request as ready for review June 7, 2020 00:40
@paulb777 paulb777 force-pushed the pb-transition-core-private branch from 510bd08 to fb95b88 Compare June 8, 2020 16:37
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

Copy link
Member

Choose a reason for hiding this comment

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

One minor request - it may be helpful for future readers to have a comment at the top of this file specifying why it exists and why it's necessary.

Copy link
Member Author

Choose a reason for hiding this comment

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

Will add in #5760

@paulb777 paulb777 merged commit d4621a6 into master Jun 9, 2020
@paulb777 paulb777 deleted the pb-transition-core-private branch June 9, 2020 12:24
@lizhaobomb
Copy link

I run into this error FirebaseCore/Sources/Private/FirebaseCoreInternal.h not find

Flutter project

@firebase firebase locked and limited conversation to collaborators Jul 10, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants