Nick Cooke 962e3dd1dc [Auth] Update sample plist to have URL scheme for phone auth (#13487) 1 rok temu
..
api_diff_report cf1b9419ea [Firestore] Remove FirestoreSwift (#13085) 1 rok temu
create_spec_repo 9efe60a849 [Infra] Cleanup and small fixes for prerelease.yml (#13439) 1 rok temu
gha-encrypted 962e3dd1dc [Auth] Update sample plist to have URL scheme for phone auth (#13487) 1 rok temu
health_metrics ecfc563e0d Fix typo of all scripts (#13314) 1 rok temu
lib ca522d2d2a [Infra] Rename references from `master` to `main` (#12203) 2 lat temu
lldb 96de8fb74b Add LLDB type summaries for Firestore types (#5407) 6 lat temu
nanopb 11229b59c6 Format nanopb generator scripts (#10448) 3 lat temu
spm_test_schemes 901844a921 [Vertex AI] Add simple integration tests (#13075) 1 rok temu
third_party 627ebdcd45 CI: retry only 2 times (#7659) 5 lat temu
README.md 18db6d8ba7 [Vertex AI] Add README for unit test mock files (#13233) 1 rok temu
binary_to_array.py 4ea4340285 Upgrade clang-format (#5265) 6 lat temu
build.sh ea0d787b70 [Auth] Investigate and fix v11 integration test CI failures (#13254) 1 rok temu
build_non_firebase_sdks.sh 9e475a5c58 [v9] End beta period and update release tooling for select products (#9603) 4 lat temu
build_private_module_map.rb 3a8e3a397a [auth-swift] Remove module.modulemap as it is unneeded (#10778) 2 lat temu
build_zip.sh 53cb121639 [Firebase 11] Default back to building static frameworks for RCs (#13316) 1 rok temu
buildcache.sh 87e3523028 Add scripts/README.md and delete unused scripts (#9915) 3 lat temu
change_headers.swift ce3b40a56b Remove FirebaseStorageInternal (#10118) 3 lat temu
check.sh ecfc563e0d Fix typo of all scripts (#13314) 1 rok temu
check_copyright.sh f18260f229 [Infra] Update check_copyright.sh to ignore root `third_party` directories (#13403) 1 rok temu
check_filename_spaces.sh 97d4ab1410 Add travis check for filename spaces (#2821) 7 lat temu
check_firestore_symbols.sh 77ba80bc17 [v11] Release tooling should default to building dynamic frameworks (#13261) 1 rok temu
check_imports.swift 3d09cc0ca6 Merge remote-tracking branch 'origin/main' into auth-swift 2 lat temu
check_lint.py ca522d2d2a [Infra] Rename references from `master` to `main` (#12203) 2 lat temu
check_secrets.sh ca522d2d2a [Infra] Rename references from `master` to `main` (#12203) 2 lat temu
check_test_inclusion.py 3e3bcb41f7 Rewrite lint.sh as check_lint.py (#3161) 6 lat temu
check_whitespace.sh 34932ce9ec Patch LevelDB so Firestore can support international paths on Windows (#11276) 2 lat temu
collect_metrics.sh 00247dd50d Fix the metric collection on postsubmit. (#2972) 6 lat temu
configure_test_keychain.sh 9a3bcfd904 Configure test keychain for macOS tests (#8494) 4 lat temu
cpplint.py ecfc563e0d Fix typo of all scripts (#13314) 1 rok temu
create_pull_request.rb ca522d2d2a [Infra] Rename references from `master` to `main` (#12203) 2 lat temu
decrypt_gha_secret.sh d653c9584c Update copyright presubmit and fix 2020 copyrights (#5944) 5 lat temu
encrypt_gha_secret.sh 4ab5dc5f19 GHA Project Maintenance (#8632) 4 lat temu
fuzzing_ci.sh 93ad9fc551 Make fuzzing less verbose to avoid exceeding Travis log limit (#2126) 7 lat temu
generate_access_token.sh 5bba5242e2 Update remote `generate_access_token` script (#9089) 4 lat temu
install_prereqs.sh c24966dcd8 [auth-swift] Build and test Sample with SPM instead of CocoaPods (#12924) 1 rok temu
localize_podfile.swift 90c33e404f [Rollouts] Feature rollouts merge to main (#12410) 2 lat temu
make_release_notes.py 85882da7e7 use correct variable (#12971) 1 rok temu
pod_lib_lint.rb b85e5a6639 [Infra] Convert `*.podspec.json`s to Ruby podspecs (#9829) 3 lat temu
release_testing_setup.sh 27d462b4fb [Infra] Removing 'release.yml' special casing in 'scripts/release_testing_setup.sh' (#13447) 1 rok temu
remove_data.sh 9fbbaeef28 [Infra] Migrate release.yml to use `Firebase/SpecsReleasing` repo (#13213) 1 rok temu
rotate_secrets.sh ecfc563e0d Fix typo of all scripts (#13314) 1 rok temu
run_database_emulator.sh ecfc563e0d Fix typo of all scripts (#13314) 1 rok temu
run_firestore_emulator.sh c3999178d4 Firestore VectorValue type (#13404) 1 rok temu
setup_bundler.sh 7fd97ea3e5 Update setup_bundler.sh (#9098) 4 lat temu
setup_check.sh 5797426f04 Upgrade `clang-format` to v18 (#12483) 2 lat temu
setup_quickstart.sh 9fbbaeef28 [Infra] Migrate release.yml to use `Firebase/SpecsReleasing` repo (#13213) 1 rok temu
setup_quickstart_framework.sh 973f8dfdda [Release Tooling] Update XCFramework structure (#12595) 2 lat temu
setup_spm_tests.sh 98e218b686 [SPM] Require Xcode 13.3+ (Swift 5.6) (#11046) 3 lat temu
style.sh 8c5e777a83 Move swiftformat options to a config file (#13423) 1 rok temu
sync_project.rb 992dd55adc [Firestore] Consolidate Firestore and FirestoreSwift (Post-Rollback) (#11954) 2 lat temu
test_archiving.sh fbeb1cf435 Archive workflow now needs xcpretty (#9770) 3 lat temu
test_catalyst.sh 8d65537335 Fix typos (#9802) 3 lat temu
test_quickstart.sh 6751623a44 Update quickstart tests based on quickstart-ios/issues/1260 (#8568) 4 lat temu
test_quickstart_framework.sh 2d6980f360 Include Swift extensions in zip and Carthage (#9471) 4 lat temu
test_quickstart_ftl.sh 257d948548 Add jobs to build quickstart apps and run tests on FTL (#10519) 3 lat temu
update_vertexai_responses.sh 18e5d6b116 VertexAI: use shared repository for test golden files (#13186) 1 rok temu
update_xcode_target.rb 7b9125a2e9 Update links to `main` branches (#12375) 2 lat temu
xcresult_logs.py 60ac2d8391 Add Xcode 15 CI for Storage (#11983) 2 lat temu
zip_quickstart_test.sh 3ac376caad Add Xcode 15 CI for zip qs tests (#12101) 2 lat temu

README.md

Firebase Apple Scripts

This directory provides a set of scripts for development, test, and continuous integration of the Firebase Apple SDKs.

check.sh

Used by the check CI workflow to run several static analysis checks. It calls the following scripts:

style.sh

Runs clang-format and swiftformat across the repo.

check_whitespace.sh

Verify there are no files with trailing whitespace.

check_filename_spaces.sh

Spaces in filenames are not allowed.

check_copyright.sh

Verify existence and format of copyrights.

check_test_inclusion.py

Test existence check for the internal Firestore Xcode project.

check_imports.swift

Verify import style complies with repo standards.

check_firestore_core_api_absl.sh

Check Firestore absl usages for g3 build issues.

check_lint.sh

Run cpplint.

sync_project.rb

Used by Firestore to to keep the Xcode project in sync after adding/removing tests.

Other Scripts

binary_to_array.py

Firestore script to convert binary data into a C/C++ array.

build.sh

Script used by CI jobs to wrap xcodebuild invocations with options.

build_non_firebase_sdks.sh

CI script to build binary versions of non-Firebase SDKs for QuickStart testing.

build_zip.sh

CI script for building the zip distribution.

buildcache.sh

Clang options for the buildcache GitHub action.

change_headers.swift

Utility script to update source to repo-relative headers.

check_secrets.sh

CI script to test if secrets are available (not running on a fork).

collect_metrics.sh

CI script to collect project health metrics and upload them to a database.

configure_test_keychain.sh

CI script to setup the keychain for macOS and Catalyst testing.

cpplint.py

Firestore script for C++ linting.

create_pull_request.rb

Utility used by CI scripts to create issues and PRs.

decrypt_gha_secret.sh

CI script to decrypt a GitHub Actions secret.

encrypt_gha_secret.sh

CI script to encrypt a GitHub Actions secret.

fuzzing_ci.sh

Firestore CI script to run fuzz testing.

generate_access_token.sh

Script to generate a Firebase access token used by Remote config integration tests.

install_prereqs.sh

Utility CI script to provide configuration for build.sh

localize_podfile.swift

Utility script to update a Podfile to point to local podspecs.

make_release_notes.py

Converts GitHub-flavored markdown changelogs to devsite-compatible release notes.

pod_lib_lint.rb

Wrapper script for running pod lib lint tests to include dependencies from the monorepo.

release_testing_setup.sh

Utility script for the release workflow.

remove_data.sh

Cleanup script for CI workflows.

run_database_emulator.sh

Run the RTDB emulator.

run_firestore_emulator.sh

Run the Firestore emulator.

setup_bundler.sh

Set up the Ruby bundler.

setup_check.sh

Install tooling for the check workflow.

setup_quickstart.sh

Set up a QuickStart for integration testing.

setup_quickstart_framework.sh

Set up a QuickStart for zip distribution testing.

setup_spm_tests.sh

Configuration for SPM testing.

spm_test_schemes/

Schemes used by above script to enable test target schemes.

test_archiving.sh

Test Xcode Archive build.

test_catalyst.sh

Test catalyst build.

test_quickstart.sh

Test QuickStart.

test_quickstart_framework.sh

Test QuickStart with the zip distribution.

update_xcode_target.rb

Script to add a file to an Xcode target.

update_vertexai_responses.sh

Downloads mock response files for Vertex AI unit tests.

xcresult_logs.py

Tooling used by build.sh to get the log output for an xcodebuild invocation.

zip_quickstart_test.sh

Run the tests associated with a QuickStart with a zip distribution.

Script Subdirectories

create_spec_repo

Swift utility to build a podspec repo.

gha-encrypted

Store for GitHub secret encrypted resources.

health_metrics

Code coverage and binary size tooling.

lib

Support libraries for xcresult_logs.py.

lldb

Firestore utilities.

third_party

Use Travis's MIT licensed retry.sh script.