Add Firebase AI KSP Processor
- Adds the
GenerableandGuideannotations - Adds the KSP processor to turn them into firebase AI schema objects
- Adds publishing plugin to export maven repo for ADMRS
Using Gemini Code Assist
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.
| Feature | Command | Description |
|---|
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with :thumbsup: and :thumbsdown: on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.
📝 PRs merging into main branch
Our main branch should always be in a releasable state. If you are working on a larger change, or if you don't want this change to see the light of the day just yet, consider using a feature branch first, and only merge into the main branch when the code complete and ready to be released.
/gemini review
Size Report 1
Affected Products
firebase-aiType Base (ce4aa87) Merge (7597ec0) Diff aar 1.11 MB 1.14 MB +33.7 kB (+3.0%) apk (aggressive) 1.71 MB 1.74 MB +24.5 kB (+1.4%) apk (release) 11.0 MB 11.0 MB +38.9 kB (+0.4%)
Test Logs
Coverage Report 1
Affected Products
firebase-databaseOverall coverage changed from 50.38% (ce4aa87) to 50.39% (7597ec0) by +0.01%.
Filename Base (ce4aa87) Merge (7597ec0) Diff BooleanNode.java 100.00% 92.31% -7.69% ChildChangeAccumulator.java 83.33% 96.67% +13.33% QueryParams.java 90.36% 89.76% -0.60% ViewProcessor.java 92.10% 91.79% -0.30% firebase-firestoreOverall coverage changed from 46.03% (ce4aa87) to 46.04% (7597ec0) by +0.01%.
Filename Base (ce4aa87) Merge (7597ec0) Diff DeleteMutation.java 90.48% 95.24% +4.76% SetMutation.java 94.44% 97.22% +2.78% firebase-sessionsOverall coverage changed from ? (ce4aa87) to 80.97% (7597ec0) by ?.
49 individual files with coverage change
Filename Base (ce4aa87) Merge (7597ec0) Diff ApplicationInfo.kt ? 100.00% ? AutoSessionEventEncoder.java ? 100.00% ? CrashEventReceiver.kt ? 75.00% ? DaggerFirebaseSessionsComponent.java ? 92.45% ? EventGDTLogger.kt ? 70.00% ? EventGDTLogger_Factory.java ? 0.00% ? FirebaseSessions.kt ? 59.26% ? FirebaseSessionsComponent.kt ? 62.07% ? FirebaseSessionsComponent_MainModule_Companion_ApplicationInfoFactory.java ? 0.00% ? FirebaseSessionsComponent_MainModule_Companion_SessionConfigsDataStoreFactory.java ? 0.00% ? FirebaseSessionsComponent_MainModule_Companion_SessionDataStoreFactory.java ? 0.00% ? FirebaseSessionsComponent_MainModule_Companion_TimeProviderFactory.java ? 100.00% ? FirebaseSessionsComponent_MainModule_Companion_UuidGeneratorFactory.java ? 100.00% ? FirebaseSessionsDependencies.kt ? 92.00% ? FirebaseSessionsRegistrar.kt ? 90.70% ? FirebaseSessions_Factory.java ? 0.00% ? InstallationId.kt ? 78.57% ? LocalOverrideSettings.kt ? 100.00% ? LocalOverrideSettings_Factory.java ? 0.00% ? ProcessDataManager.kt ? 72.41% ? ProcessDataManagerImpl_Factory.java ? 0.00% ? ProcessDetailsProvider.kt ? 76.92% ? RemoteSettings.kt ? 88.24% ? RemoteSettingsFetcher.kt ? 7.69% ? RemoteSettingsFetcher_Factory.java ? 0.00% ? RemoteSettings_Factory.java ? 0.00% ? SessionConfigs.kt ? 95.24% ? SessionData.kt ? 58.82% ? SessionDataSerializer_Factory.java ? 0.00% ? SessionDetails.kt ? 83.33% ? SessionEvent.kt ? 100.00% ? SessionEvents.kt ? 98.00% ? SessionFirelogPublisher.kt ? 82.93% ? SessionFirelogPublisherImpl_Factory.java ? 0.00% ? SessionGenerator.kt ? 100.00% ? SessionGenerator_Factory.java ? 0.00% ? SessionLifecycleService.kt ? 0.00% ? SessionsActivityLifecycleCallbacks.kt ? 18.75% ? SessionsActivityLifecycleCallbacks_Factory.java ? 0.00% ? SessionsSettings.kt ? 93.55% ? SessionsSettings_Factory.java ? 0.00% ? SessionSubscriber.kt ? 75.00% ? SettingsCache.kt ? 80.00% ? SettingsCacheImpl_Factory.java ? 0.00% ? SettingsProvider.kt ? 50.00% ? SharedSessionRepository.kt ? 83.58% ? SharedSessionRepositoryImpl_Factory.java ? 0.00% ? TimeProvider.kt ? 71.43% ? UuidGenerator.kt ? 100.00% ? firebase-storageOverall coverage changed from 84.93% (ce4aa87) to 85.31% (7597ec0) by +0.38%.
Filename Base (ce4aa87) Merge (7597ec0) Diff StorageException.java 65.45% 69.09% +3.64% StorageTask.java 83.38% 83.99% +0.60% UploadTask.java 81.52% 83.17% +1.65%
Test Logs
Startup Time Report 1
The report is too large (117,066 chars) to be displayed on GitHub. Please check this report on GCS.
The public api surface has changed for the subproject firebase-ai: error: Attempted to change parameter name from prompt to inputPrompt in method com.google.firebase.ai.Chat.sendMessage [ParameterNameChange] error: Added class com.google.firebase.ai.type.AutoFunctionDeclaration [AddedClass] error: Added class com.google.firebase.ai.type.JsonSchema [AddedClass] error: Removed method com.google.firebase.ai.type.Tool.functionDeclarations(java.util.List<com.google.firebase.ai.type.FunctionDeclaration>) [RemovedMethod] error: Added method com.google.firebase.ai.type.Tool.functionDeclarations(java.util.List<com.google.firebase.ai.type.FunctionDeclaration>,java.util.List extends com.google.firebase.ai.type.AutoFunctionDeclaration,?>>) [AddedMethod] error: Removed method com.google.firebase.ai.type.Tool.Companion.functionDeclarations(java.util.List<com.google.firebase.ai.type.FunctionDeclaration>) [RemovedMethod] error: Added method com.google.firebase.ai.type.Tool.Companion.functionDeclarations(java.util.List<com.google.firebase.ai.type.FunctionDeclaration>,java.util.List extends com.google.firebase.ai.type.AutoFunctionDeclaration,?>>) [AddedMethod]
Please update the api.txt files for the subprojects being affected by this change by running ./gradlew ${subproject}:generateApiTxtFile. Also perform a major/minor bump accordingly.
The public api surface has changed for the subproject firebase-ai: error: Attempted to change parameter name from inputPrompt to prompt in method com.google.firebase.ai.Chat.sendMessage [ParameterNameChange] error: Added method com.google.firebase.ai.type.Tool.functionDeclarations(java.util.List<com.google.firebase.ai.type.FunctionDeclaration>) [AddedMethod] error: Attempted to remove default value from parameter autoFunctionDeclarations in com.google.firebase.ai.type.Tool.functionDeclarations [DefaultValueChange] error: Added method com.google.firebase.ai.type.Tool.Companion.functionDeclarations(java.util.List<com.google.firebase.ai.type.FunctionDeclaration>) [AddedMethod] error: Attempted to remove default value from parameter autoFunctionDeclarations in com.google.firebase.ai.type.Tool.Companion.functionDeclarations [DefaultValueChange]
Please update the api.txt files for the subprojects being affected by this change by running ./gradlew ${subproject}:generateApiTxtFile. Also perform a major/minor bump accordingly.
The public api surface has changed for the subproject firebase-ai: error: Attempted to change parameter name from inputPrompt to prompt in method com.google.firebase.ai.Chat.sendMessage [ParameterNameChange] error: Added method com.google.firebase.ai.type.Tool.functionDeclarations(java.util.List<com.google.firebase.ai.type.FunctionDeclaration>) [AddedMethod] error: Attempted to remove default value from parameter autoFunctionDeclarations in com.google.firebase.ai.type.Tool.functionDeclarations [DefaultValueChange] error: Added method com.google.firebase.ai.type.Tool.Companion.functionDeclarations(java.util.List<com.google.firebase.ai.type.FunctionDeclaration>) [AddedMethod] error: Attempted to remove default value from parameter autoFunctionDeclarations in com.google.firebase.ai.type.Tool.Companion.functionDeclarations [DefaultValueChange]
Please update the api.txt files for the subprojects being affected by this change by running ./gradlew ${subproject}:generateApiTxtFile. Also perform a major/minor bump accordingly.