Paul Beusterien ae871b9dc1 Update to swiftformat 0.51.12 (#11531) 2 lat temu
..
api_diff_report 30c70f5ece fix diff report missing api (#11325) 2 lat temu
create_spec_repo ae871b9dc1 Update to swiftformat 0.51.12 (#11531) 2 lat temu
gha-encrypted 9876601e14 [Sessions] Add Test App and Integration tests for the Sessions SDK (#10396) 3 lat temu
health_metrics ae871b9dc1 Update to swiftformat 0.51.12 (#11531) 2 lat temu
lib 92ac9fcf0f Scripts cleanup: remove python `six` usage and get `ruby` from `PATH` (#11039) 3 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 a2230e26ba [App Check] Prefix test module names with Firebase (#11359) 2 lat temu
third_party 627ebdcd45 CI: retry only 2 times (#7659) 5 lat temu
README.md 87e3523028 Add scripts/README.md and delete unused scripts (#9915) 3 lat temu
binary_to_array.py 4ea4340285 Upgrade clang-format (#5265) 6 lat temu
build.sh f22918d064 [Infra] Add sample app to test building SPM distro across supported platforms (#11150) 2 lat temu
build_non_firebase_sdks.sh 9e475a5c58 [v9] End beta period and update release tooling for select products (#9603) 4 lat temu
build_zip.sh d9343f6c56 Build release zip from GHA (#8093) 4 lat 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 782f0832c6 Remove script to check for absl reference from Firestore/core/api (#10066) 3 lat temu
check_copyright.sh 1d1ae87cfe Merge 6.33 SPM fixes back to master (#6530) 5 lat temu
check_filename_spaces.sh 97d4ab1410 Add travis check for filename spaces (#2821) 7 lat temu
check_firestore_symbols.sh 7452958df4 [Infra] Avoid subshells in test script (#11094) 3 lat temu
check_imports.swift bb4c6382cd [Sessions] Add Sessions SDK nanopb and proto (#10351) 3 lat temu
check_lint.py e447417fc0 Fix cpplint.py to work under Python 3 (#6201) 5 lat temu
check_secrets.sh eeced5d565 Fix travis quickstart tests (#5169) 6 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 84a8b5030c Count from server (#10193) 3 lat temu
create_pull_request.rb 05f9b2d0d6 Update NOTICES workflow. (#9754) 3 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 67ae9555da [Messaging] Standalone Watch App Sample (#10552) 3 lat temu
localize_podfile.swift 729eb40cb2 Merge sessions-main with master (#10787) 3 lat temu
make_release_notes.py 92ac9fcf0f Scripts cleanup: remove python `six` usage and get `ruby` from `PATH` (#11039) 3 lat temu
pod_lib_lint.rb b85e5a6639 [Infra] Convert `*.podspec.json`s to Ruby podspecs (#9829) 3 lat temu
release_testing_setup.sh 55a81467e5 Preinstall FirebaseCore for release testing. (#9833) 3 lat temu
remove_data.sh 49a72594e7 Remove potentially unnecessary secret (#8644) 4 lat temu
run_database_emulator.sh 3cf318460c Bump RTDB emulator version (#7250) 5 lat temu
run_firestore_emulator.sh 52ebbbf19d Sum and average (#11108) 2 lat temu
setup_bundler.sh 7fd97ea3e5 Update setup_bundler.sh (#9098) 4 lat temu
setup_check.sh 867697b8f3 [Infra] Upgrade to clang-format16 (#10973) 3 lat temu
setup_quickstart.sh 3a1e4699bd v9 quickstarts have merged to master (#9766) 3 lat temu
setup_quickstart_framework.sh 3a1e4699bd v9 quickstarts have merged to master (#9766) 3 lat temu
setup_spm_tests.sh 98e218b686 [SPM] Require Xcode 13.3+ (Swift 5.6) (#11046) 3 lat temu
style.sh 7d2ece61c7 [Tooling] Add FIR_CLANG_FORMAT_PATH env var to style.sh (#11097) 3 lat temu
sync_project.rb 92ac9fcf0f Scripts cleanup: remove python `six` usage and get `ruby` from `PATH` (#11039) 3 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_xcode_target.rb 10e364c54b Restore RC SwiftAPI Tests (#8792) 4 lat temu
xcresult_logs.py 8af6c20977 xcresult_logs.py: Fix potential UnicodeEncodeError (#9645) 4 lat temu
zip_quickstart_test.sh 2d6980f360 Include Swift extensions in zip and Carthage (#9471) 4 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.

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.