Closed hschouman closed 2 years ago
When using the last version of Firebase (9.4.0) with Xcode 14 beta 5 and the Thread Performance Checker on I have a new warning :
And a console trace :
Thread Performance Checker: Thread running at QOS_CLASS_USER_INITIATED waiting on a lower QoS thread running at QOS_CLASS_DEFAULT. Investigate ways to avoid priority inversions PID: 90987, TID: 1699225 Backtrace ================================================================= 3 FirebaseDatabase 0x00000001055c85e4 -[_FSRRunLoopThread runLoop] + 44 4 FirebaseDatabase 0x00000001055c8330 __45+[NSRunLoop(FSRWebSocket) FSR_networkRunLoop]_block_invoke + 116 5 libdispatch.dylib 0x000000010a8b5dbc _dispatch_client_callout + 16 6 libdispatch.dylib 0x000000010a8b7860 _dispatch_once_callout + 80 7 FirebaseDatabase 0x00000001055c8294 +[NSRunLoop(FSRWebSocket) FSR_networkRunLoop] + 84 8 FirebaseDatabase 0x00000001055c1f0c -[FSRWebSocket _connect] + 68 9 FirebaseDatabase 0x00000001055c0d48 -[FSRWebSocket open] + 216 10 FirebaseDatabase 0x00000001055eaa1c -[FWebSocketConnection open] + 248 11 FirebaseDatabase 0x000000010556b50c -[FConnection open] + 112 12 FirebaseDatabase 0x00000001055a0534 -[FPersistentConnection openNetworkConnectionWithContext:] + 588 13 FirebaseDatabase 0x00000001055a01a8 __45-[FPersistentConnection tryScheduleReconnect]_block_invoke_2 + 332 14 FirebaseDatabase 0x000000010557ba64 __80-[FIRDatabaseConnectionContextProvider fetchContextForcingRefresh:withCallback:]_block_invoke.51 + 120 15 libdispatch.dylib 0x000000010a8b45f4 _dispatch_call_block_and_release + 24 16 libdispatch.dylib 0x000000010a8b5dbc _dispatch_client_callout + 16 17 libdispatch.dylib 0x000000010a8be0a0 _dispatch_lane_serial_drain + 928 18 libdispatch.dylib 0x000000010a8bede0 _dispatch_lane_invoke + 428 19 libdispatch.dylib 0x000000010a8ccb40 _dispatch_workloop_worker_thread + 1720 20 libsystem_pthread.dylib 0x00000001ae4d4b40 _pthread_wqthread + 284 21 libsystem_pthread.dylib 0x00000001ae4d3904 start_wqthread + 8
Launch an app on Xcode beta 5 and Thread Performance Checker turned on with Firebase Database installed.
9.4.0
14.0 beta 5 (14A5294e)
CocoaPods
Analytics, Authentication, Crashlytics, Database, DynamicLinks, Firestore, Functions, In-App Messaging, Messaging, Performance, Storage
iOS
Podfile.lock
I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.
Thanks for the report. I've reproduced in the Firebase Quickstart and will continue to investigate.
Description
When using the last version of Firebase (9.4.0) with Xcode 14 beta 5 and the Thread Performance Checker on I have a new warning :
And a console trace :
Reproducing the issue
Launch an app on Xcode beta 5 and Thread Performance Checker turned on with Firebase Database installed.
Firebase SDK Version
9.4.0
Xcode Version
14.0 beta 5 (14A5294e)
Installation Method
CocoaPods
Firebase Product(s)
Analytics, Authentication, Crashlytics, Database, DynamicLinks, Firestore, Functions, In-App Messaging, Messaging, Performance, Storage
Targeted Platforms
iOS
Relevant Log Output
If using CocoaPods, the project's Podfile.lock
Expand
Podfile.lock
snippet```yml PODS: - abseil/algorithm (1.20211102.0): - abseil/algorithm/algorithm (= 1.20211102.0) - abseil/algorithm/container (= 1.20211102.0) - abseil/algorithm/algorithm (1.20211102.0): - abseil/base/config - abseil/algorithm/container (1.20211102.0): - abseil/algorithm/algorithm - abseil/base/core_headers - abseil/meta/type_traits - abseil/base (1.20211102.0): - abseil/base/atomic_hook (= 1.20211102.0) - abseil/base/base (= 1.20211102.0) - abseil/base/base_internal (= 1.20211102.0) - abseil/base/config (= 1.20211102.0) - abseil/base/core_headers (= 1.20211102.0) - abseil/base/dynamic_annotations (= 1.20211102.0) - abseil/base/endian (= 1.20211102.0) - abseil/base/errno_saver (= 1.20211102.0) - abseil/base/fast_type_id (= 1.20211102.0) - abseil/base/log_severity (= 1.20211102.0) - abseil/base/malloc_internal (= 1.20211102.0) - abseil/base/pretty_function (= 1.20211102.0) - abseil/base/raw_logging_internal (= 1.20211102.0) - abseil/base/spinlock_wait (= 1.20211102.0) - abseil/base/strerror (= 1.20211102.0) - abseil/base/throw_delegate (= 1.20211102.0) - abseil/base/atomic_hook (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/base/base (1.20211102.0): - abseil/base/atomic_hook - abseil/base/base_internal - abseil/base/config - abseil/base/core_headers - abseil/base/dynamic_annotations - abseil/base/log_severity - abseil/base/raw_logging_internal - abseil/base/spinlock_wait - abseil/meta/type_traits - abseil/base/base_internal (1.20211102.0): - abseil/base/config - abseil/meta/type_traits - abseil/base/config (1.20211102.0) - abseil/base/core_headers (1.20211102.0): - abseil/base/config - abseil/base/dynamic_annotations (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/base/endian (1.20211102.0): - abseil/base/base - abseil/base/config - abseil/base/core_headers - abseil/base/errno_saver (1.20211102.0): - abseil/base/config - abseil/base/fast_type_id (1.20211102.0): - abseil/base/config - abseil/base/log_severity (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/base/malloc_internal (1.20211102.0): - abseil/base/base - abseil/base/base_internal - abseil/base/config - abseil/base/core_headers - abseil/base/dynamic_annotations - abseil/base/raw_logging_internal - abseil/base/pretty_function (1.20211102.0) - abseil/base/raw_logging_internal (1.20211102.0): - abseil/base/atomic_hook - abseil/base/config - abseil/base/core_headers - abseil/base/log_severity - abseil/base/spinlock_wait (1.20211102.0): - abseil/base/base_internal - abseil/base/core_headers - abseil/base/errno_saver - abseil/base/strerror (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/base/errno_saver - abseil/base/throw_delegate (1.20211102.0): - abseil/base/config - abseil/base/raw_logging_internal - abseil/container/common (1.20211102.0): - abseil/meta/type_traits - abseil/types/optional - abseil/container/compressed_tuple (1.20211102.0): - abseil/utility/utility - abseil/container/container_memory (1.20211102.0): - abseil/base/config - abseil/memory/memory - abseil/meta/type_traits - abseil/utility/utility - abseil/container/fixed_array (1.20211102.0): - abseil/algorithm/algorithm - abseil/base/config - abseil/base/core_headers - abseil/base/dynamic_annotations - abseil/base/throw_delegate - abseil/container/compressed_tuple - abseil/memory/memory - abseil/container/flat_hash_map (1.20211102.0): - abseil/algorithm/container - abseil/container/container_memory - abseil/container/hash_function_defaults - abseil/container/raw_hash_map - abseil/memory/memory - abseil/container/hash_function_defaults (1.20211102.0): - abseil/base/config - abseil/hash/hash - abseil/strings/cord - abseil/strings/strings - abseil/container/hash_policy_traits (1.20211102.0): - abseil/meta/type_traits - abseil/container/hashtable_debug_hooks (1.20211102.0): - abseil/base/config - abseil/container/hashtablez_sampler (1.20211102.0): - abseil/base/base - abseil/base/core_headers - abseil/container/have_sse - abseil/debugging/stacktrace - abseil/memory/memory - abseil/profiling/exponential_biased - abseil/profiling/sample_recorder - abseil/synchronization/synchronization - abseil/utility/utility - abseil/container/have_sse (1.20211102.0) - abseil/container/inlined_vector (1.20211102.0): - abseil/algorithm/algorithm - abseil/base/core_headers - abseil/base/throw_delegate - abseil/container/inlined_vector_internal - abseil/memory/memory - abseil/container/inlined_vector_internal (1.20211102.0): - abseil/base/core_headers - abseil/container/compressed_tuple - abseil/memory/memory - abseil/meta/type_traits - abseil/types/span - abseil/container/layout (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/meta/type_traits - abseil/strings/strings - abseil/types/span - abseil/utility/utility - abseil/container/raw_hash_map (1.20211102.0): - abseil/base/throw_delegate - abseil/container/container_memory - abseil/container/raw_hash_set - abseil/container/raw_hash_set (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/base/endian - abseil/container/common - abseil/container/compressed_tuple - abseil/container/container_memory - abseil/container/hash_policy_traits - abseil/container/hashtable_debug_hooks - abseil/container/hashtablez_sampler - abseil/container/have_sse - abseil/memory/memory - abseil/meta/type_traits - abseil/numeric/bits - abseil/utility/utility - abseil/debugging/debugging_internal (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/base/dynamic_annotations - abseil/base/errno_saver - abseil/base/raw_logging_internal - abseil/debugging/demangle_internal (1.20211102.0): - abseil/base/base - abseil/base/config - abseil/base/core_headers - abseil/debugging/stacktrace (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/debugging/debugging_internal - abseil/debugging/symbolize (1.20211102.0): - abseil/base/base - abseil/base/config - abseil/base/core_headers - abseil/base/dynamic_annotations - abseil/base/malloc_internal - abseil/base/raw_logging_internal - abseil/debugging/debugging_internal - abseil/debugging/demangle_internal - abseil/strings/strings - abseil/functional/bind_front (1.20211102.0): - abseil/base/base_internal - abseil/container/compressed_tuple - abseil/meta/type_traits - abseil/utility/utility - abseil/functional/function_ref (1.20211102.0): - abseil/base/base_internal - abseil/base/core_headers - abseil/meta/type_traits - abseil/hash/city (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/base/endian - abseil/hash/hash (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/base/endian - abseil/container/fixed_array - abseil/hash/city - abseil/hash/low_level_hash - abseil/meta/type_traits - abseil/numeric/int128 - abseil/strings/strings - abseil/types/optional - abseil/types/variant - abseil/utility/utility - abseil/hash/low_level_hash (1.20211102.0): - abseil/base/config - abseil/base/endian - abseil/numeric/bits - abseil/numeric/int128 - abseil/memory (1.20211102.0): - abseil/memory/memory (= 1.20211102.0) - abseil/memory/memory (1.20211102.0): - abseil/base/core_headers - abseil/meta/type_traits - abseil/meta (1.20211102.0): - abseil/meta/type_traits (= 1.20211102.0) - abseil/meta/type_traits (1.20211102.0): - abseil/base/config - abseil/numeric/bits (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/numeric/int128 (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/numeric/bits - abseil/numeric/representation (1.20211102.0): - abseil/base/config - abseil/profiling/exponential_biased (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/profiling/sample_recorder (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/synchronization/synchronization - abseil/time/time - abseil/random/distributions (1.20211102.0): - abseil/base/base_internal - abseil/base/config - abseil/base/core_headers - abseil/meta/type_traits - abseil/numeric/bits - abseil/random/internal/distribution_caller - abseil/random/internal/fast_uniform_bits - abseil/random/internal/fastmath - abseil/random/internal/generate_real - abseil/random/internal/iostream_state_saver - abseil/random/internal/traits - abseil/random/internal/uniform_helper - abseil/random/internal/wide_multiply - abseil/strings/strings - abseil/random/internal/distribution_caller (1.20211102.0): - abseil/base/config - abseil/base/fast_type_id - abseil/utility/utility - abseil/random/internal/fast_uniform_bits (1.20211102.0): - abseil/base/config - abseil/meta/type_traits - abseil/random/internal/fastmath (1.20211102.0): - abseil/numeric/bits - abseil/random/internal/generate_real (1.20211102.0): - abseil/meta/type_traits - abseil/numeric/bits - abseil/random/internal/fastmath - abseil/random/internal/traits - abseil/random/internal/iostream_state_saver (1.20211102.0): - abseil/meta/type_traits - abseil/numeric/int128 - abseil/random/internal/nonsecure_base (1.20211102.0): - abseil/base/core_headers - abseil/meta/type_traits - abseil/random/internal/pool_urbg - abseil/random/internal/salted_seed_seq - abseil/random/internal/seed_material - abseil/types/optional - abseil/types/span - abseil/random/internal/pcg_engine (1.20211102.0): - abseil/base/config - abseil/meta/type_traits - abseil/numeric/bits - abseil/numeric/int128 - abseil/random/internal/fastmath - abseil/random/internal/iostream_state_saver - abseil/random/internal/platform (1.20211102.0): - abseil/base/config - abseil/random/internal/pool_urbg (1.20211102.0): - abseil/base/base - abseil/base/config - abseil/base/core_headers - abseil/base/endian - abseil/base/raw_logging_internal - abseil/random/internal/randen - abseil/random/internal/seed_material - abseil/random/internal/traits - abseil/random/seed_gen_exception - abseil/types/span - abseil/random/internal/randen (1.20211102.0): - abseil/base/raw_logging_internal - abseil/random/internal/platform - abseil/random/internal/randen_hwaes - abseil/random/internal/randen_slow - abseil/random/internal/randen_engine (1.20211102.0): - abseil/base/endian - abseil/meta/type_traits - abseil/random/internal/iostream_state_saver - abseil/random/internal/randen - abseil/random/internal/randen_hwaes (1.20211102.0): - abseil/base/config - abseil/random/internal/platform - abseil/random/internal/randen_hwaes_impl - abseil/random/internal/randen_hwaes_impl (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/numeric/int128 - abseil/random/internal/platform - abseil/random/internal/randen_slow (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/base/endian - abseil/numeric/int128 - abseil/random/internal/platform - abseil/random/internal/salted_seed_seq (1.20211102.0): - abseil/container/inlined_vector - abseil/meta/type_traits - abseil/random/internal/seed_material - abseil/types/optional - abseil/types/span - abseil/random/internal/seed_material (1.20211102.0): - abseil/base/core_headers - abseil/base/dynamic_annotations - abseil/base/raw_logging_internal - abseil/random/internal/fast_uniform_bits - abseil/strings/strings - abseil/types/optional - abseil/types/span - abseil/random/internal/traits (1.20211102.0): - abseil/base/config - abseil/random/internal/uniform_helper (1.20211102.0): - abseil/base/config - abseil/meta/type_traits - abseil/random/internal/traits - abseil/random/internal/wide_multiply (1.20211102.0): - abseil/base/config - abseil/numeric/bits - abseil/numeric/int128 - abseil/random/internal/traits - abseil/random/random (1.20211102.0): - abseil/random/distributions - abseil/random/internal/nonsecure_base - abseil/random/internal/pcg_engine - abseil/random/internal/pool_urbg - abseil/random/internal/randen_engine - abseil/random/seed_sequences - abseil/random/seed_gen_exception (1.20211102.0): - abseil/base/config - abseil/random/seed_sequences (1.20211102.0): - abseil/container/inlined_vector - abseil/random/internal/nonsecure_base - abseil/random/internal/pool_urbg - abseil/random/internal/salted_seed_seq - abseil/random/internal/seed_material - abseil/random/seed_gen_exception - abseil/types/span - abseil/status/status (1.20211102.0): - abseil/base/atomic_hook - abseil/base/config - abseil/base/core_headers - abseil/base/raw_logging_internal - abseil/container/inlined_vector - abseil/debugging/stacktrace - abseil/debugging/symbolize - abseil/functional/function_ref - abseil/strings/cord - abseil/strings/str_format - abseil/strings/strings - abseil/types/optional - abseil/status/statusor (1.20211102.0): - abseil/base/base - abseil/base/core_headers - abseil/base/raw_logging_internal - abseil/meta/type_traits - abseil/status/status - abseil/strings/strings - abseil/types/variant - abseil/utility/utility - abseil/strings/cord (1.20211102.0): - abseil/base/base - abseil/base/config - abseil/base/core_headers - abseil/base/endian - abseil/base/raw_logging_internal - abseil/container/fixed_array - abseil/container/inlined_vector - abseil/functional/function_ref - abseil/meta/type_traits - abseil/strings/cord_internal - abseil/strings/cordz_functions - abseil/strings/cordz_info - abseil/strings/cordz_statistics - abseil/strings/cordz_update_scope - abseil/strings/cordz_update_tracker - abseil/strings/internal - abseil/strings/str_format - abseil/strings/strings - abseil/types/optional - abseil/strings/cord_internal (1.20211102.0): - abseil/base/base_internal - abseil/base/config - abseil/base/core_headers - abseil/base/endian - abseil/base/raw_logging_internal - abseil/base/throw_delegate - abseil/container/compressed_tuple - abseil/container/inlined_vector - abseil/container/layout - abseil/functional/function_ref - abseil/meta/type_traits - abseil/strings/strings - abseil/types/span - abseil/strings/cordz_functions (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/base/raw_logging_internal - abseil/profiling/exponential_biased - abseil/strings/cordz_handle (1.20211102.0): - abseil/base/base - abseil/base/config - abseil/base/raw_logging_internal - abseil/synchronization/synchronization - abseil/strings/cordz_info (1.20211102.0): - abseil/base/base - abseil/base/config - abseil/base/core_headers - abseil/base/raw_logging_internal - abseil/container/inlined_vector - abseil/debugging/stacktrace - abseil/strings/cord_internal - abseil/strings/cordz_functions - abseil/strings/cordz_handle - abseil/strings/cordz_statistics - abseil/strings/cordz_update_tracker - abseil/synchronization/synchronization - abseil/types/span - abseil/strings/cordz_statistics (1.20211102.0): - abseil/base/config - abseil/strings/cordz_update_tracker - abseil/strings/cordz_update_scope (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/strings/cord_internal - abseil/strings/cordz_info - abseil/strings/cordz_update_tracker - abseil/strings/cordz_update_tracker (1.20211102.0): - abseil/base/config - abseil/strings/internal (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/base/endian - abseil/base/raw_logging_internal - abseil/meta/type_traits - abseil/strings/str_format (1.20211102.0): - abseil/strings/str_format_internal - abseil/strings/str_format_internal (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/functional/function_ref - abseil/meta/type_traits - abseil/numeric/bits - abseil/numeric/int128 - abseil/numeric/representation - abseil/strings/strings - abseil/types/optional - abseil/types/span - abseil/strings/strings (1.20211102.0): - abseil/base/base - abseil/base/config - abseil/base/core_headers - abseil/base/endian - abseil/base/raw_logging_internal - abseil/base/throw_delegate - abseil/memory/memory - abseil/meta/type_traits - abseil/numeric/bits - abseil/numeric/int128 - abseil/strings/internal - abseil/synchronization/graphcycles_internal (1.20211102.0): - abseil/base/base - abseil/base/base_internal - abseil/base/config - abseil/base/core_headers - abseil/base/malloc_internal - abseil/base/raw_logging_internal - abseil/synchronization/kernel_timeout_internal (1.20211102.0): - abseil/base/core_headers - abseil/base/raw_logging_internal - abseil/time/time - abseil/synchronization/synchronization (1.20211102.0): - abseil/base/atomic_hook - abseil/base/base - abseil/base/base_internal - abseil/base/config - abseil/base/core_headers - abseil/base/dynamic_annotations - abseil/base/malloc_internal - abseil/base/raw_logging_internal - abseil/debugging/stacktrace - abseil/debugging/symbolize - abseil/synchronization/graphcycles_internal - abseil/synchronization/kernel_timeout_internal - abseil/time/time - abseil/time (1.20211102.0): - abseil/time/internal (= 1.20211102.0) - abseil/time/time (= 1.20211102.0) - abseil/time/internal (1.20211102.0): - abseil/time/internal/cctz (= 1.20211102.0) - abseil/time/internal/cctz (1.20211102.0): - abseil/time/internal/cctz/civil_time (= 1.20211102.0) - abseil/time/internal/cctz/time_zone (= 1.20211102.0) - abseil/time/internal/cctz/civil_time (1.20211102.0): - abseil/base/config - abseil/time/internal/cctz/time_zone (1.20211102.0): - abseil/base/config - abseil/time/internal/cctz/civil_time - abseil/time/time (1.20211102.0): - abseil/base/base - abseil/base/core_headers - abseil/base/raw_logging_internal - abseil/numeric/int128 - abseil/strings/strings - abseil/time/internal/cctz/civil_time - abseil/time/internal/cctz/time_zone - abseil/types (1.20211102.0): - abseil/types/any (= 1.20211102.0) - abseil/types/bad_any_cast (= 1.20211102.0) - abseil/types/bad_any_cast_impl (= 1.20211102.0) - abseil/types/bad_optional_access (= 1.20211102.0) - abseil/types/bad_variant_access (= 1.20211102.0) - abseil/types/compare (= 1.20211102.0) - abseil/types/optional (= 1.20211102.0) - abseil/types/span (= 1.20211102.0) - abseil/types/variant (= 1.20211102.0) - abseil/types/any (1.20211102.0): - abseil/base/config - abseil/base/core_headers - abseil/base/fast_type_id - abseil/meta/type_traits - abseil/types/bad_any_cast - abseil/utility/utility - abseil/types/bad_any_cast (1.20211102.0): - abseil/base/config - abseil/types/bad_any_cast_impl - abseil/types/bad_any_cast_impl (1.20211102.0): - abseil/base/config - abseil/base/raw_logging_internal - abseil/types/bad_optional_access (1.20211102.0): - abseil/base/config - abseil/base/raw_logging_internal - abseil/types/bad_variant_access (1.20211102.0): - abseil/base/config - abseil/base/raw_logging_internal - abseil/types/compare (1.20211102.0): - abseil/base/core_headers - abseil/meta/type_traits - abseil/types/optional (1.20211102.0): - abseil/base/base_internal - abseil/base/config - abseil/base/core_headers - abseil/memory/memory - abseil/meta/type_traits - abseil/types/bad_optional_access - abseil/utility/utility - abseil/types/span (1.20211102.0): - abseil/algorithm/algorithm - abseil/base/core_headers - abseil/base/throw_delegate - abseil/meta/type_traits - abseil/types/variant (1.20211102.0): - abseil/base/base_internal - abseil/base/config - abseil/base/core_headers - abseil/meta/type_traits - abseil/types/bad_variant_access - abseil/utility/utility - abseil/utility/utility (1.20211102.0): - abseil/base/base_internal - abseil/base/config - abseil/meta/type_traits - Amplitude (8.12.0): - AnalyticsConnector (~> 1.0.0) - AnalyticsConnector (1.0.0) - BEMCheckBox (1.4.1) - BoringSSL-GRPC (0.0.24): - BoringSSL-GRPC/Implementation (= 0.0.24) - BoringSSL-GRPC/Interface (= 0.0.24) - BoringSSL-GRPC/Implementation (0.0.24): - BoringSSL-GRPC/Interface (= 0.0.24) - BoringSSL-GRPC/Interface (0.0.24) - Cache (6.0.0) - Cluster (3.0.3) - CodableFirebase (0.2.1) - CountdownLabel (4.0.1) - DatadogSDK (1.11.1) - DeviceKit (4.6.0) - DifferenceKit (1.2.0): - DifferenceKit/Core (= 1.2.0) - DifferenceKit/UIKitExtension (= 1.2.0) - DifferenceKit/Core (1.2.0) - DifferenceKit/UIKitExtension (1.2.0): - DifferenceKit/Core - Firebase/Analytics (9.4.0): - Firebase/Core - Firebase/Auth (9.4.0): - Firebase/CoreOnly - FirebaseAuth (~> 9.4.0) - Firebase/Core (9.4.0): - Firebase/CoreOnly - FirebaseAnalytics (~> 9.4.0) - Firebase/CoreOnly (9.4.0): - FirebaseCore (= 9.4.0) - Firebase/Crashlytics (9.4.0): - Firebase/CoreOnly - FirebaseCrashlytics (~> 9.4.0) - Firebase/Database (9.4.0): - Firebase/CoreOnly - FirebaseDatabase (~> 9.4.0) - Firebase/DynamicLinks (9.4.0): - Firebase/CoreOnly - FirebaseDynamicLinks (~> 9.4.0) - Firebase/Firestore (9.4.0): - Firebase/CoreOnly - FirebaseFirestore (~> 9.4.0) - Firebase/Functions (9.4.0): - Firebase/CoreOnly - FirebaseFunctions (~> 9.4.0) - Firebase/InAppMessaging (9.4.0): - Firebase/CoreOnly - FirebaseInAppMessaging (~> 9.4.0-beta) - Firebase/Messaging (9.4.0): - Firebase/CoreOnly - FirebaseMessaging (~> 9.4.0) - Firebase/Performance (9.4.0): - Firebase/CoreOnly - FirebasePerformance (~> 9.4.0) - FirebaseABTesting (9.4.0): - FirebaseCore (~> 9.0) - FirebaseAnalytics (9.4.0): - FirebaseAnalytics/AdIdSupport (= 9.4.0) - FirebaseCore (~> 9.0) - FirebaseInstallations (~> 9.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.7) - GoogleUtilities/MethodSwizzler (~> 7.7) - GoogleUtilities/Network (~> 7.7) - "GoogleUtilities/NSData+zlib (~> 7.7)" - nanopb (< 2.30910.0, >= 2.30908.0) - FirebaseAnalytics/AdIdSupport (9.4.0): - FirebaseCore (~> 9.0) - FirebaseInstallations (~> 9.0) - GoogleAppMeasurement (= 9.4.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.7) - GoogleUtilities/MethodSwizzler (~> 7.7) - GoogleUtilities/Network (~> 7.7) - "GoogleUtilities/NSData+zlib (~> 7.7)" - nanopb (< 2.30910.0, >= 2.30908.0) - FirebaseAppCheckInterop (9.4.0) - FirebaseAuth (9.4.0): - FirebaseCore (~> 9.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.7) - GoogleUtilities/Environment (~> 7.7) - GTMSessionFetcher/Core (< 3.0, >= 1.7) - FirebaseAuthInterop (9.4.0) - FirebaseCore (9.4.0): - FirebaseCoreDiagnostics (~> 9.0) - FirebaseCoreInternal (~> 9.0) - GoogleUtilities/Environment (~> 7.7) - GoogleUtilities/Logger (~> 7.7) - FirebaseCoreDiagnostics (9.4.0): - GoogleDataTransport (< 10.0.0, >= 9.1.4) - GoogleUtilities/Environment (~> 7.7) - GoogleUtilities/Logger (~> 7.7) - nanopb (< 2.30910.0, >= 2.30908.0) - FirebaseCoreExtension (9.4.0): - FirebaseCore (~> 9.0) - FirebaseCoreInternal (9.4.0): - "GoogleUtilities/NSData+zlib (~> 7.7)" - FirebaseCrashlytics (9.4.0): - FirebaseCore (~> 9.0) - FirebaseInstallations (~> 9.0) - GoogleDataTransport (< 10.0.0, >= 9.1.4) - GoogleUtilities/Environment (~> 7.7) - nanopb (< 2.30910.0, >= 2.30908.0) - PromisesObjC (~> 2.1) - FirebaseDatabase (9.4.0): - FirebaseCore (~> 9.0) - leveldb-library (~> 1.22) - FirebaseDynamicLinks (9.4.0): - FirebaseCore (~> 9.0) - FirebaseFirestore (9.4.0): - abseil/algorithm (~> 1.20211102.0) - abseil/base (~> 1.20211102.0) - abseil/container/flat_hash_map (~> 1.20211102.0) - abseil/memory (~> 1.20211102.0) - abseil/meta (~> 1.20211102.0) - abseil/strings/strings (~> 1.20211102.0) - abseil/time (~> 1.20211102.0) - abseil/types (~> 1.20211102.0) - FirebaseCore (~> 9.0) - "gRPC-C++ (~> 1.44.0)" - leveldb-library (~> 1.22) - nanopb (< 2.30910.0, >= 2.30908.0) - FirebaseFunctions (9.4.0): - FirebaseAppCheckInterop (~> 9.0) - FirebaseAuthInterop (~> 9.0) - FirebaseCore (~> 9.0) - FirebaseCoreExtension (~> 9.0) - FirebaseMessagingInterop (~> 9.0) - FirebaseSharedSwift (~> 9.0) - GTMSessionFetcher/Core (< 3.0, >= 1.7) - FirebaseInAppMessaging (9.4.0-beta): - FirebaseABTesting (~> 9.0) - FirebaseCore (~> 9.0) - FirebaseInstallations (~> 9.0) - GoogleUtilities/Environment (~> 7.7) - nanopb (< 2.30910.0, >= 2.30908.0) - FirebaseInstallations (9.4.0): - FirebaseCore (~> 9.0) - GoogleUtilities/Environment (~> 7.7) - GoogleUtilities/UserDefaults (~> 7.7) - PromisesObjC (~> 2.1) - FirebaseMessaging (9.4.0): - FirebaseCore (~> 9.0) - FirebaseInstallations (~> 9.0) - GoogleDataTransport (< 10.0.0, >= 9.1.4) - GoogleUtilities/AppDelegateSwizzler (~> 7.7) - GoogleUtilities/Environment (~> 7.7) - GoogleUtilities/Reachability (~> 7.7) - GoogleUtilities/UserDefaults (~> 7.7) - nanopb (< 2.30910.0, >= 2.30908.0) - FirebaseMessagingInterop (9.4.0) - FirebasePerformance (9.4.0): - FirebaseCore (~> 9.0) - FirebaseInstallations (~> 9.0) - FirebaseRemoteConfig (~> 9.0) - GoogleDataTransport (< 10.0.0, >= 9.1.4) - GoogleUtilities/Environment (~> 7.7) - GoogleUtilities/ISASwizzler (~> 7.7) - GoogleUtilities/MethodSwizzler (~> 7.7) - nanopb (< 2.30910.0, >= 2.30908.0) - FirebaseRemoteConfig (9.4.0): - FirebaseABTesting (~> 9.0) - FirebaseCore (~> 9.0) - FirebaseInstallations (~> 9.0) - GoogleUtilities/Environment (~> 7.7) - "GoogleUtilities/NSData+zlib (~> 7.7)" - FirebaseSharedSwift (9.4.0) - FirebaseStorage (9.3.0): - FirebaseAppCheckInterop (~> 9.0) - FirebaseAuthInterop (~> 9.0) - FirebaseCore (~> 9.0) - FirebaseCoreExtension (~> 9.0) - FirebaseStorageInternal (~> 9.0) - FirebaseStorageInternal (9.3.0): - FirebaseCore (~> 9.0) - GTMSessionFetcher/Core (< 3.0, >= 1.7) - FirebaseStorageUI (12.2.0): - FirebaseStorage (< 10.0, >= 8.0) - SDWebImage (~> 5.6) - FirebaseUI/Storage (12.2.0): - FirebaseStorageUI (~> 12.0) - Geodesy (1.1.1) - GoogleAppMeasurement (9.4.0): - GoogleAppMeasurement/AdIdSupport (= 9.4.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.7) - GoogleUtilities/MethodSwizzler (~> 7.7) - GoogleUtilities/Network (~> 7.7) - "GoogleUtilities/NSData+zlib (~> 7.7)" - nanopb (< 2.30910.0, >= 2.30908.0) - GoogleAppMeasurement/AdIdSupport (9.4.0): - GoogleAppMeasurement/WithoutAdIdSupport (= 9.4.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.7) - GoogleUtilities/MethodSwizzler (~> 7.7) - GoogleUtilities/Network (~> 7.7) - "GoogleUtilities/NSData+zlib (~> 7.7)" - nanopb (< 2.30910.0, >= 2.30908.0) - GoogleAppMeasurement/WithoutAdIdSupport (9.4.0): - GoogleUtilities/AppDelegateSwizzler (~> 7.7) - GoogleUtilities/MethodSwizzler (~> 7.7) - GoogleUtilities/Network (~> 7.7) - "GoogleUtilities/NSData+zlib (~> 7.7)" - nanopb (< 2.30910.0, >= 2.30908.0) - GoogleDataTransport (9.2.0): - GoogleUtilities/Environment (~> 7.7) - nanopb (< 2.30910.0, >= 2.30908.0) - PromisesObjC (< 3.0, >= 1.2) - GoogleUtilities/AppDelegateSwizzler (7.7.0): - GoogleUtilities/Environment - GoogleUtilities/Logger - GoogleUtilities/Network - GoogleUtilities/Environment (7.7.0): - PromisesObjC (< 3.0, >= 1.2) - GoogleUtilities/ISASwizzler (7.7.0) - GoogleUtilities/Logger (7.7.0): - GoogleUtilities/Environment - GoogleUtilities/MethodSwizzler (7.7.0): - GoogleUtilities/Logger - GoogleUtilities/Network (7.7.0): - GoogleUtilities/Logger - "GoogleUtilities/NSData+zlib" - GoogleUtilities/Reachability - "GoogleUtilities/NSData+zlib (7.7.0)" - GoogleUtilities/Reachability (7.7.0): - GoogleUtilities/Logger - GoogleUtilities/UserDefaults (7.7.0): - GoogleUtilities/Logger - "gRPC-C++ (1.44.0)": - "gRPC-C++/Implementation (= 1.44.0)" - "gRPC-C++/Interface (= 1.44.0)" - "gRPC-C++/Implementation (1.44.0)": - abseil/base/base (= 1.20211102.0) - abseil/base/core_headers (= 1.20211102.0) - abseil/container/flat_hash_map (= 1.20211102.0) - abseil/container/inlined_vector (= 1.20211102.0) - abseil/functional/bind_front (= 1.20211102.0) - abseil/hash/hash (= 1.20211102.0) - abseil/memory/memory (= 1.20211102.0) - abseil/random/random (= 1.20211102.0) - abseil/status/status (= 1.20211102.0) - abseil/status/statusor (= 1.20211102.0) - abseil/strings/cord (= 1.20211102.0) - abseil/strings/str_format (= 1.20211102.0) - abseil/strings/strings (= 1.20211102.0) - abseil/synchronization/synchronization (= 1.20211102.0) - abseil/time/time (= 1.20211102.0) - abseil/types/optional (= 1.20211102.0) - abseil/types/variant (= 1.20211102.0) - abseil/utility/utility (= 1.20211102.0) - "gRPC-C++/Interface (= 1.44.0)" - gRPC-Core (= 1.44.0) - "gRPC-C++/Interface (1.44.0)" - gRPC-Core (1.44.0): - gRPC-Core/Implementation (= 1.44.0) - gRPC-Core/Interface (= 1.44.0) - gRPC-Core/Implementation (1.44.0): - abseil/base/base (= 1.20211102.0) - abseil/base/core_headers (= 1.20211102.0) - abseil/container/flat_hash_map (= 1.20211102.0) - abseil/container/inlined_vector (= 1.20211102.0) - abseil/functional/bind_front (= 1.20211102.0) - abseil/hash/hash (= 1.20211102.0) - abseil/memory/memory (= 1.20211102.0) - abseil/random/random (= 1.20211102.0) - abseil/status/status (= 1.20211102.0) - abseil/status/statusor (= 1.20211102.0) - abseil/strings/cord (= 1.20211102.0) - abseil/strings/str_format (= 1.20211102.0) - abseil/strings/strings (= 1.20211102.0) - abseil/synchronization/synchronization (= 1.20211102.0) - abseil/time/time (= 1.20211102.0) - abseil/types/optional (= 1.20211102.0) - abseil/types/variant (= 1.20211102.0) - abseil/utility/utility (= 1.20211102.0) - BoringSSL-GRPC (= 0.0.24) - gRPC-Core/Interface (= 1.44.0) - Libuv-gRPC (= 0.0.10) - gRPC-Core/Interface (1.44.0) - GTMSessionFetcher/Core (2.1.0) - InputBarAccessoryView (5.4.0): - InputBarAccessoryView/Core (= 5.4.0) - InputBarAccessoryView/Core (5.4.0) - leveldb-library (1.22.1) - Libuv-gRPC (0.0.10): - Libuv-gRPC/Implementation (= 0.0.10) - Libuv-gRPC/Interface (= 0.0.10) - Libuv-gRPC/Implementation (0.0.10): - Libuv-gRPC/Interface (= 0.0.10) - Libuv-gRPC/Interface (0.0.10) - lottie-ios (3.3.0) - MarqueeLabel (4.0.5) - nanopb (2.30909.0): - nanopb/decode (= 2.30909.0) - nanopb/encode (= 2.30909.0) - nanopb/decode (2.30909.0) - nanopb/encode (2.30909.0) - NVActivityIndicatorView (4.8.0): - NVActivityIndicatorView/Presenter (= 4.8.0) - NVActivityIndicatorView/Presenter (4.8.0) - PhoneNumberKit (3.3.4): - PhoneNumberKit/PhoneNumberKitCore (= 3.3.4) - PhoneNumberKit/UIKit (= 3.3.4) - PhoneNumberKit/PhoneNumberKitCore (3.3.4) - PhoneNumberKit/UIKit (3.3.4): - PhoneNumberKit/PhoneNumberKitCore - PromisesObjC (2.1.1) - Resolver (1.5.0) - Reusable (4.1.2): - Reusable/Storyboard (= 4.1.2) - Reusable/View (= 4.1.2) - Reusable/Storyboard (4.1.2) - Reusable/View (4.1.2) - RSKImageCropper (3.0.2) - RxCocoa (6.5.0): - RxRelay (= 6.5.0) - RxSwift (= 6.5.0) - RxRelay (6.5.0): - RxSwift (= 6.5.0) - RxSwift (6.5.0) - RxSwiftExt (6.0.1): - RxSwiftExt/Core (= 6.0.1) - RxSwiftExt/RxCocoa (= 6.0.1) - RxSwiftExt/Core (6.0.1): - RxSwift (~> 6.0) - RxSwiftExt/RxCocoa (6.0.1): - RxCocoa (~> 6.0) - RxSwiftExt/Core - SDWebImage (5.13.2): - SDWebImage/Core (= 5.13.2) - SDWebImage/Core (5.13.2) - SnapKit (5.0.1) - SnapSDK/SCSDKCoreKit (2.0.0) - SnapSDK/SCSDKCreativeKit (2.0.0): - SnapSDK/SCSDKCoreKit - StreamChat (4.20.0) - StreamChatUI (4.20.0): - StreamChat (= 4.20.0) - SwiftFormat/CLI (0.49.9) - SwiftGen (6.5.1) - SwiftLint (0.47.1) - TrueTime (5.0.3) - UAParserSwift (1.2.1) - XLPagerTabStrip (9.0.0) DEPENDENCIES: - Amplitude (~> 8.12) - BEMCheckBox (~> 1.4.1) - Cache (~> 6.0) - Cluster (~> 3.0.3) - CodableFirebase - CountdownLabel (from `CustomPods/CountdownLabel`) - DatadogSDK (~> 1.11) - DeviceKit (~> 4.6) - DifferenceKit (~> 1.2) - Firebase/Analytics (~> 9.4) - Firebase/Auth (~> 9.4) - Firebase/Crashlytics (~> 9.4) - Firebase/Database (~> 9.4) - Firebase/DynamicLinks (~> 9.4) - Firebase/Firestore (~> 9.4) - Firebase/Functions (~> 9.4) - Firebase/InAppMessaging (~> 9.4) - Firebase/Messaging (~> 9.4) - Firebase/Performance (~> 9.4) - FirebaseUI/Storage (~> 12.2) - Geodesy (from `https://github.com/proxpero/Geodesy.git`, tag `1.2.0`) - InputBarAccessoryView (~> 5.4.0) - lottie-ios (~> 3.3.0) - NVActivityIndicatorView (~> 4.8) - PhoneNumberKit (~> 3.3) - Resolver (~> 1.5) - Reusable (~> 4.1) - RSKImageCropper (~> 3.0.2) - RxCocoa (~> 6.5) - RxSwift (~> 6.5) - RxSwiftExt (from `https://github.com/RxSwiftCommunity/RxSwiftExt`, tag `6.1.0`) - SDWebImage (~> 5.13) - SnapSDK/SCSDKCreativeKit - StreamChat (~> 4.20) - StreamChatUI (~> 4.20) - SwiftFormat/CLI (~> 0.48) - SwiftGen (~> 6.5.1) - SwiftLint (~> 0.45) - TrueTime (~> 5.0) - UAParserSwift - XLPagerTabStrip (from `CustomPods/XLPagerTabStrip`) SPEC REPOS: trunk: - abseil - Amplitude - AnalyticsConnector - BEMCheckBox - BoringSSL-GRPC - Cache - Cluster - CodableFirebase - DatadogSDK - DeviceKit - DifferenceKit - Firebase - FirebaseABTesting - FirebaseAnalytics - FirebaseAppCheckInterop - FirebaseAuth - FirebaseAuthInterop - FirebaseCore - FirebaseCoreDiagnostics - FirebaseCoreExtension - FirebaseCoreInternal - FirebaseCrashlytics - FirebaseDatabase - FirebaseDynamicLinks - FirebaseFirestore - FirebaseFunctions - FirebaseInAppMessaging - FirebaseInstallations - FirebaseMessaging - FirebaseMessagingInterop - FirebasePerformance - FirebaseRemoteConfig - FirebaseSharedSwift - FirebaseStorage - FirebaseStorageInternal - FirebaseStorageUI - FirebaseUI - GoogleAppMeasurement - GoogleDataTransport - GoogleUtilities - "gRPC-C++" - gRPC-Core - GTMSessionFetcher - InputBarAccessoryView - leveldb-library - Libuv-gRPC - lottie-ios - MarqueeLabel - nanopb - NVActivityIndicatorView - PhoneNumberKit - PromisesObjC - Resolver - Reusable - RSKImageCropper - RxCocoa - RxRelay - RxSwift - SDWebImage - SnapKit - SnapSDK - StreamChat - StreamChatUI - SwiftFormat - SwiftGen - SwiftLint - TrueTime - UAParserSwift EXTERNAL SOURCES: CountdownLabel: :path: CustomPods/CountdownLabel Geodesy: :git: https://github.com/proxpero/Geodesy.git :tag: 1.2.0 RxSwiftExt: :git: https://github.com/RxSwiftCommunity/RxSwiftExt :tag: 6.1.0 XLPagerTabStrip: :path: CustomPods/XLPagerTabStrip CHECKOUT OPTIONS: Geodesy: :git: https://github.com/proxpero/Geodesy.git :tag: 1.2.0 RxSwiftExt: :git: https://github.com/RxSwiftCommunity/RxSwiftExt :tag: 6.1.0 SPEC CHECKSUMS: abseil: ebe5b5529fb05d93a8bdb7951607be08b7fa71bc Amplitude: dd7170426ed983dd5aeafa694db40180cff62bd6 AnalyticsConnector: 4c386d5972ac9da86e22d668564dbbac97558754 BEMCheckBox: 5ba6e37ade3d3657b36caecc35c8b75c6c2b1a4e BoringSSL-GRPC: 3175b25143e648463a56daeaaa499c6cb86dad33 Cache: 4ca7e00363fca5455f26534e5607634c820ffc2d Cluster: d72510594f60d901905953aafdc811d1888177ae CodableFirebase: 0bf201991eeec35eb9fcd987d271ea463cf34a80 CountdownLabel: a327424fddddced4e1b926282f5d67efde251c78 DatadogSDK: ba0b08e235f938871691678efc4fb4032e7e27b2 DeviceKit: 834dd8aa1be53cd85364d8f49aa5d98bfac397c4 DifferenceKit: 5659c430bb7fe45876fa32ce5cba5d6167f0c805 Firebase: 7703fc4022824b6d6db1bf7bea58d13b8e17ec46 FirebaseABTesting: e59eec91fafce74a0f5261809ed0025b7e450db1 FirebaseAnalytics: a1a24e72b7ba7f47045a4633f1abb545c07bd29c FirebaseAppCheckInterop: 63119cdfc94b16c3e9421513c17f597aee2ea225 FirebaseAuth: ae5d4402e1516497357d909162b091b3ca2a2e9c FirebaseAuthInterop: 826d3d772b554e3675ceaab8c665008277ca9d1c FirebaseCore: 9a2b10270a854731c4d4d8a97d0aa8380ec3458d FirebaseCoreDiagnostics: aaa87098082c4d4bdd1a9557b1186d18ca85ce8c FirebaseCoreExtension: 2cf8c542b54ad3c2d4b746c22e8828b670dcd9b0 FirebaseCoreInternal: a13302b0088fbf5f38b79b6ece49c2af7d3e05d6 FirebaseCrashlytics: 121ea1d37f4906c94c4c9307297af5121b98b789 FirebaseDatabase: e93f5441b549ea4492a8d8a0c7d612ac46c1b12a FirebaseDynamicLinks: 311bb05788180e31a502bd0d413215413a4b3357 FirebaseFirestore: 945196dd78f4e92de6fc47b38569a1e7088af81f FirebaseFunctions: cea54b689fb87b59b692989c0a5472c36df98aa1 FirebaseInAppMessaging: f6e2095f66788c7f2dc8ec27e81a1143ed96c30e FirebaseInstallations: 61db1054e688d2bdc4e2b3f744c1b086e913b742 FirebaseMessaging: 4e220eddd356181469ba2ec5f7d5fafbc2312841 FirebaseMessagingInterop: a4bec680b953ddde5be175f4a2afce89c38cdc5f FirebasePerformance: 89697044484c366e9b3214163e10034a4b42353b FirebaseRemoteConfig: 6d9982bc64548a6e3c1b497b9fa53938ad135f2d FirebaseSharedSwift: 812ad75bf1a79968b2da3d75fdde9ce7cd172301 FirebaseStorage: 1414d27e15fa04f6350ef6602accef0e951c8bca FirebaseStorageInternal: f1a6d64cace780580d2b8ffa0a0c8cf3c376f3f8 FirebaseStorageUI: 952bb91b93ae0ee00d0033af011c918606c35d37 FirebaseUI: 33ee19f70792fae68bee5cbbbf93733baa2cc7fa Geodesy: 6de88996dbe22c338687b5a8668850dbf9bef3cf GoogleAppMeasurement: 5d69e04287fc2c10cc43724bfa4bf31fc12c3dff GoogleDataTransport: 1c8145da7117bd68bbbed00cf304edb6a24de00f GoogleUtilities: e0913149f6b0625b553d70dae12b49fc62914fd1 "gRPC-C++": 9675f953ace2b3de7c506039d77be1f2e77a8db2 gRPC-Core: 943e491cb0d45598b0b0eb9e910c88080369290b GTMSessionFetcher: ffbb25ec00ebcb5201adab0a56d808f6f1902d9f InputBarAccessoryView: 74d471ab1fa1736806be50328df79257e52865a9 leveldb-library: 50c7b45cbd7bf543c81a468fe557a16ae3db8729 Libuv-gRPC: 55e51798e14ef436ad9bc45d12d43b77b49df378 lottie-ios: 6ac74dcc09904798f59b18cb3075c089d76be9ae MarqueeLabel: 00cc0bcd087111dca575878b3531af980559707d nanopb: b552cce312b6c8484180ef47159bc0f65a1f0431 NVActivityIndicatorView: d24b7ebcf80af5dcd994adb650e2b6c93379270f PhoneNumberKit: 441e8b26ec88d598e3591de9061eff18f5dd12e8 PromisesObjC: ab77feca74fa2823e7af4249b8326368e61014cb Resolver: 68984624572763018fd8ec7b8e3e8df0e3b6bba5 Reusable: 6bae6a5e8aa793c9c441db0213c863a64bce9136 RSKImageCropper: 1ac71e9a82e3f41eea3eedfff8eacb0d3821c9ec RxCocoa: 94f817b71c07517321eb4f9ad299112ca8af743b RxRelay: 1de1523e604c72b6c68feadedd1af3b1b4d0ecbd RxSwift: 5710a9e6b17f3c3d6e40d6e559b9fa1e813b2ef8 RxSwiftExt: d61c4b9b06e0a448041b1c659e0f1b5c5a035afc SDWebImage: 72f86271a6f3139cc7e4a89220946489d4b9a866 SnapKit: 97b92857e3df3a0c71833cce143274bf6ef8e5eb SnapSDK: f3d3b54a68dfa16f0f8ecad53ab2f45ad3bf787b StreamChat: 77b530475e396f53877aadb54660d1299142a59f StreamChatUI: b4dfc604be443d1f7a42e40acc107c94f7e85e21 SwiftFormat: 016c15401d06959ef9f81d7956462e91f55b8ac5 SwiftGen: a6d22010845f08fe18fbdf3a07a8e380fd22e0ea SwiftLint: f80f1be7fa96d30e0aa68e58d45d4ea1ccaac519 TrueTime: b49551ffafb28a9dee04e51b226f42a416010842 UAParserSwift: dc5e2717debc6e78a40487148d29649a0b311caf XLPagerTabStrip: 6af5fe7b41c21f371860df6bac2ddf12818c5103 PODFILE CHECKSUM: 6adbaf60f28f667a093ee8fd47e08bc1a72c683d COCOAPODS: 1.11.3 ```