Skip to content

Conversation

@hansemannn
Copy link
Owner

This pull request introduces several updates to the ti.googlemaps module, including dependency updates, feature enhancements, deprecations, and privacy compliance improvements. The changes modernize the module by upgrading dependencies, improving compatibility with newer iOS versions, and adding support for Swift Package Manager (SPM). Below is a summary of the most significant changes:

Dependency and Compatibility Updates:

  • Removed outdated Google Maps and Google Places binary dependencies from Cartfile and Cartfile.resolved to transition to Swift Package Manager for dependency management. [1] [2]
  • Updated the minimum iOS SDK requirement to 12.0 and incremented the module version to 10.0.0 in the manifest file. [1] [2]

Feature Enhancements:

  • Added a new injectSPMPackage function in hooks/ti.spm.js to integrate Swift Package Manager dependencies into the Xcode project, replacing the previous manual binary integration.
  • Updated the map initialization in TiGooglemapsView.m to use GMSMapViewOptions for better configuration flexibility, including setting a default background color.

Deprecations and Warnings:

  • Deprecated the enableMetalRenderer method in TiGooglemapsModule.m with a warning message, as Metal is now the default renderer.

Privacy Compliance:

  • Added a PrivacyInfo.xcprivacy file to the GooglePlaces.bundle, detailing data collection and usage practices for compliance with Apple's privacy guidelines.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This pull request migrates the module to Swift Package Manager and updates the SDK to version 9.4.0 while removing legacy Git LFS–managed header files.

  • Removed Git LFS pointer metadata files for various Google Maps headers as they are no longer needed.
  • Introduced the new hooks/ti.spm.js file with an injectSPMPackage function to integrate Swift Package Manager dependencies into the Xcode project.

Reviewed Changes

Copilot reviewed 850 out of 858 changed files in this pull request and generated 1 comment.

File Description
platform/GoogleMaps.xcframework/ios-arm64/GoogleMaps.framework/Headers/*.h Removed Git LFS pointer files for legacy dependency management.
hooks/ti.spm.js Added new hook for injecting Swift Package Manager dependencies.
Files not reviewed (8)
  • Cartfile: Language not supported
  • Cartfile.resolved: Language not supported
  • Classes/TiGooglemapsModule.m: Language not supported
  • Classes/TiGooglemapsView.m: Language not supported
  • Resources/GooglePlaces.bundle/PrivacyInfo.xcprivacy: Language not supported
  • manifest: Language not supported
  • platform/GoogleMaps.xcframework/Info.plist: Language not supported
  • platform/GoogleMaps.xcframework/ios-arm64/GoogleMaps.framework/GoogleMaps: Language not supported
Comments suppressed due to low confidence (1)

hooks/ti.spm.js:64

  • [nitpick] Confirm that the string concatenation for packageProductDependencies adheres to the pbxproj format. If a structured array format is supported, using that might improve readability and maintainability.
nativeTarget["packageProductDependencies"] = "(\n\t\t\t\t" + swiftProductUUID + " /* " + swiftPackageProductName + " */,\n\t\t\t)";

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants