Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions agents.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,19 @@

This guide provides essential information for working within the `firebase-android-sdk` repository.

## Project Structure

The `subprojects.cfg` file lists all the subprojects in this repository. Each line in this file
follows the format `<project-path> # <project-type>`, where `project-type` can be one of the
following:

- `sdk`: A public-facing SDK that is published.
- `test`: A test application or a test-only module.
- `util`: A utility module that is not part of the public API.
- `directory`: A directory containing other subprojects.

This file is useful for understanding the role of each subproject in the repository.

## Environment Setup

To work with this repository, the Android SDK must be installed. Use the `sdkmanager` command-line
Expand Down
6 changes: 3 additions & 3 deletions settings.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -46,14 +46,14 @@ dependencyResolutionManagement {
*
* Expected file format:
* - Empty lines are ignored.
* - Lines starting with # are considered comments.
* - Text following a '#' character on the same line is treated as a comment.
* - Other lines are treated as project paths.
*/
fun discoverSubprojects(subprojectsFile: File): List<String> {
return subprojectsFile
.readLines()
.map { it.trim() }
.filter { it.isNotEmpty() && !it.startsWith("#") }
.map { it.split("#").firstOrNull()?.trim() ?: "" }
.filter { it.isNotEmpty() }
}

/**
Expand Down
126 changes: 63 additions & 63 deletions subprojects.cfg
Original file line number Diff line number Diff line change
@@ -1,71 +1,71 @@
appcheck
appcheck:firebase-appcheck-debug-testing
appcheck:firebase-appcheck-debug
appcheck:firebase-appcheck-interop
appcheck:firebase-appcheck-playintegrity
appcheck:firebase-appcheck-recaptchaenterprise
appcheck:firebase-appcheck
appcheck # directory
appcheck:firebase-appcheck-debug-testing # sdk
appcheck:firebase-appcheck-debug # sdk
appcheck:firebase-appcheck-interop # sdk
appcheck:firebase-appcheck-playintegrity # sdk
appcheck:firebase-appcheck-recaptchaenterprise # sdk
appcheck:firebase-appcheck # sdk

firebase-abt
firebase-ai
firebase-annotations
firebase-appdistribution
firebase-appdistribution-api
firebase-common
firebase-common:data-collection-tests
firebase-components
firebase-components:firebase-dynamic-module-support
firebase-config
firebase-config:bandwagoner
firebase-config:test-app
firebase-config-interop
firebase-crashlytics
firebase-crashlytics-ndk
firebase-database
firebase-database-collection
firebase-dataconnect
firebase-dataconnect:androidTestutil
firebase-dataconnect:connectors
firebase-dataconnect:testutil
firebase-datatransport
firebase-firestore
firebase-functions
firebase-messaging
firebase-messaging-directboot
firebase-inappmessaging
firebase-inappmessaging-display
firebase-installations-interop
firebase-installations
firebase-ml-modeldownloader
firebase-ml-modeldownloader:ml-data-collection-tests
firebase-perf
firebase-perf:dev-app
firebase-perf:e2e-app
firebase-sessions
firebase-sessions:benchmark
firebase-sessions:test-app
firebase-storage
protolite-well-known-types
firebase-abt # sdk
firebase-ai # sdk
firebase-annotations # sdk
firebase-appdistribution # sdk
firebase-appdistribution-api # sdk
firebase-common # sdk
firebase-common:data-collection-tests # test
firebase-components # sdk
firebase-components:firebase-dynamic-module-support # sdk
firebase-config # sdk
firebase-config:bandwagoner # test
firebase-config:test-app # test
firebase-config-interop # sdk
firebase-crashlytics # sdk
firebase-crashlytics-ndk # sdk
firebase-database # sdk
firebase-database-collection # sdk
firebase-dataconnect # sdk
firebase-dataconnect:androidTestutil # util
firebase-dataconnect:connectors # sdk
firebase-dataconnect:testutil # util
firebase-datatransport # sdk
firebase-firestore # sdk
firebase-functions # sdk
firebase-messaging # sdk
firebase-messaging-directboot # sdk
firebase-inappmessaging # sdk
firebase-inappmessaging-display # sdk
firebase-installations-interop # sdk
firebase-installations # sdk
firebase-ml-modeldownloader # sdk
firebase-ml-modeldownloader:ml-data-collection-tests # test
firebase-perf # sdk
firebase-perf:dev-app # test
firebase-perf:e2e-app # test
firebase-sessions # sdk
firebase-sessions:benchmark # util
firebase-sessions:test-app # test
firebase-storage # sdk
protolite-well-known-types # sdk

encoders
encoders:firebase-encoders
encoders:firebase-encoders-json
encoders:firebase-encoders-processor
encoders:firebase-encoders-proto
encoders:firebase-encoders-reflective
encoders:firebase-decoders-json
encoders:protoc-gen-firebase-encoders
encoders:protoc-gen-firebase-encoders:tests
encoders # directory
encoders:firebase-encoders # sdk
encoders:firebase-encoders-json # sdk
encoders:firebase-encoders-processor # sdk
encoders:firebase-encoders-proto # sdk
encoders:firebase-encoders-reflective # sdk
encoders:firebase-decoders-json # sdk
encoders:protoc-gen-firebase-encoders # sdk
encoders:protoc-gen-firebase-encoders:tests # test

integ-testing
integ-testing # util

tools:lint
tools:lint # util

transport
transport:transport-api
transport:transport-backend-cct
transport:transport-runtime
transport:transport-runtime-testing
transport # directory
transport:transport-api # sdk
transport:transport-backend-cct # sdk
transport:transport-runtime # sdk
transport:transport-runtime-testing # sdk

# Test Apps
# disabled since they require google-services.json to build which is not always available in CI.
Expand Down
Loading