Files
firebase-ios-sdk/FirebaseAILogic.podspec
Andrew Heard 555203f373 refactor(ai)!: remove legacy Foundation Models integration (#16693)
Clean up the interim integration with Apple's Foundation Models
framework in Firebase AI Logic for Firebase 13.

Apple now natively supports third-party providers in the Foundation
Models framework via LanguageModel, which is implemented directly by
GeminiLanguageModel. The custom GenerativeModelSession,
SystemLanguageModel, HybridModel, custom GenerationSchema, and related
bridging types and protocols are now obsolete.

- Remove GenerativeModelSession, SystemLanguageModel, HybridModel,
  GeminiModel, and related session protocols and provider types.
- Remove custom GenerationSchema, GeneratedContent, and related
  structured output protocols.
- Remove internal responseJSONSchema support from GenerationConfig and
  associated test permutations in FirebaseAILogic and TestApp.
- Remove IS_FOUNDATION_MODELS_SUPPORTED_PLATFORM build settings from
  Package.swift and FirebaseAILogic.podspec.

BREAKING CHANGE: GenerativeModelSession, SystemLanguageModel,
HybridModel, GeminiModel, and associated interim integration types and
protocols have been removed. Use GeminiLanguageModel with Apple's
Foundation Models framework instead.
2026-09-24 10:01:14 -04:00

80 lines
2.4 KiB
Ruby

Pod::Spec.new do |s|
s.name = 'FirebaseAILogic'
s.version = '13.0.0'
s.summary = 'Firebase AI Logic SDK'
s.description = <<-DESC
Build AI-powered apps and features with the Gemini API using the Firebase AI Logic SDK.
DESC
s.homepage = 'https://firebase.google.com'
s.license = { :type => 'Apache-2.0', :file => 'LICENSE' }
s.authors = 'Google, Inc.'
s.source = {
:git => 'https://github.com/firebase/firebase-ios-sdk.git',
:tag => 'CocoaPods-' + s.version.to_s
}
s.social_media_url = 'https://twitter.com/Firebase'
ios_deployment_target = '15.0'
osx_deployment_target = '11.0'
tvos_deployment_target = '15.0'
watchos_deployment_target = '8.0'
s.ios.deployment_target = ios_deployment_target
s.osx.deployment_target = osx_deployment_target
s.tvos.deployment_target = tvos_deployment_target
s.watchos.deployment_target = watchos_deployment_target
s.cocoapods_version = '>= 1.12.0'
s.prefix_header_file = false
s.source_files = [
'FirebaseAI/Sources/**/*.swift',
]
s.swift_version = '6.0'
s.framework = 'Foundation'
s.ios.framework = 'UIKit'
s.osx.framework = 'AppKit'
s.tvos.framework = 'UIKit'
s.watchos.framework = 'WatchKit'
s.pod_target_xcconfig = {
'PRODUCT_BUNDLE_IDENTIFIER' => 'com.google.firebase.FirebaseAILogic'
}
# Direct dependency on AppCheck for automatic token acquisition and
# management.
s.dependency 'FirebaseAppCheck', '~> 13.0.0'
# Despite the direct dependency on App Check, the AI Logic SDK still uses
# AppCheck through the interop.
s.dependency 'FirebaseAppCheckInterop', '~> 13.0.0'
s.dependency 'FirebaseAuthInterop', '~> 13.0.0'
s.dependency 'FirebaseCore', '~> 13.0.0'
s.dependency 'FirebaseCoreExtension', '~> 13.0.0'
s.test_spec 'unit' do |unit_tests|
unit_tests_dir = 'FirebaseAI/Tests/Unit/'
unit_tests.scheme = { :code_coverage => true }
unit_tests.platforms = {
:ios => ios_deployment_target,
:osx => osx_deployment_target,
:tvos => tvos_deployment_target
}
unit_tests.source_files = [
unit_tests_dir + '**/*.swift',
]
unit_tests.exclude_files = [
unit_tests_dir + 'Snippets/**/*.swift',
]
unit_tests.resources = [
unit_tests_dir + 'vertexai-sdk-test-data/mock-responses',
unit_tests_dir + 'Resources/**/*',
]
end
end