google / google/GoogleDataTransport

Move strictly internal headers from Private to Internal directories

Open
#178 0 comments 0 reactions 1 assignee Claimed by @ncooke3 View on GitHub
cleanup
Dominant language
Objective-C
Stars
59
Forks
48
PR merge metrics
No merged PRs in 30d

Description

### Background
Headers within the `GDTCORLibrary/Private` and `GDTCCTLibrary/Private` directories are strictly internal to `GoogleDataTransport` targets. By convention, `Private` directories denote APIs shared with other frameworks (e.g. across the Firebase monorepo), while `Internal` directories denote APIs isolated to the framework's own target.

An audit confirms these headers are not used externally in production by any Firebase SDKs. To accurately reflect their scope, they should be migrated to `Internal` directories.

### Action Items
- [ ] Create the `GDTCCTLibrary/Internal` directory (currently missing).
- [ ] Move all headers from `GDTCORLibrary/Private` and `GDTCCTLibrary/Private` to `GDTCORLibrary/Internal` and `GDTCCTLibrary/Internal`.
- [ ] Run a global find-and-replace in the `GoogleDataTransport` codebase to update `#import` paths to the new `Internal` locations.
- [ ] **Coordinated Update**: Update the `#import` path for `GDTCORTransport_Private.h` in `firebase-ios-sdk` (specifically inside `FirebasePerformance/Tests/Unit/Loggers/FPRGDTLoggerTest.m`, which is the only external dependency and is isolated to a test).
- [ ] Run `GoogleDataTransport` unit and integration tests to verify successful compilation.

### Notes
* **Not a breaking change**: This is a purely internal refactor. It does not affect `public_header_files` or the public CocoaPods/SPM interface.
* Build files (Podspec/Package.swift) rely on folder globs so they shouldn't require structural changes, but verify no explicit `Private` paths remain hardcoded.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.