This repository was archived by the owner on Apr 24, 2026. It is now read-only.
Conversation
Inspired by comments from @f2prateek, simplify the the `SEGScreenReporting` protocol to replace the name and properties fields with a single method (`seg_trackScreen`) that can be implemented when screen tracking for a specific view controller that needs a custom name, properties, or options.
…#861) * Stops using UserDefaults for queue on tvOS and uses NSCachesDirectory Changes storage to fileStorage and userDefaultsStorage. Utilizes userDefaults on tvOS for information such as anonymousID and configuration, but moves tvOS's queue into the NSCachesDirectory. The reasoning is that tvOS has a 1mb limit for UserDefaults and the queue can grow rapidly in size, leading to app crashes when saving more than 1mb of data to UserDefaults. * Adds a constant for key. Seperate cache dir and appSupport dir functions. Removes unused init. * Adds functionality to remove old UserDefaults queue on tvOS. Updates migrated removal block to account for tvOS now that the queue is no longer in UserDefaults. Adds back in a #else and #endif that was accidently removed. * Adds tvOS unit test target * Adds new AnalyticsTestsTVOS scheme * Updates pods to include all test pods for AnalyticsTestsTVOS * Fixes unit test import for QuickTVOS * Add tvOS options for make file * Enabled code coverage on tvOS tests * Fix up unit test warning "result of expect is never nil" * Adds test to ensure that UserDefaults SEGQueue is cleared on initialization for tvOS & iOS * Adds test to ensure SEGQueue is empty when missing form file storage * Reverts unnecessary import for QuickTVOS * Adds test for FileStorage caches directory helper * Fix up: Adds SwiftTryCatch pod to tvOS test target * Fix up makefile to have correct build target for build-ios & build-tvos * Fix up: updates xcodebuild destination to match devices found on circleci * Break up ios and tvos build/test steps * Circleci: Cache pods * Fix up: tvOS test build * Fix up spacing * Fix up flaky unit test Co-authored-by: Connor Ricks <connor.ricks@gmail.com>
* Fixing a crash from plist->json conversion where result is not actually a dictionary. * Made code flow the same as non-conversion. * Set compatibility to 10.0. * Fixed issues around setting nil values even though they are expected.
…ation enablement (segmentio#863) * Address Issue segmentio#851; Expect dictionary as well for for integration enablement. * Fixed broken test.
segmentio#864) * Disabled tvOS tests temporarily. * Updated podfile lock. * Fixed LIB-1698; Differences observed in how ios/android pass userId/anonId in traits. * Another podfile lock update. * Fixed test. * Set swift version for tests. * Reverted podfile lock changes due to incompatibilities.
* LIB-1656: Added nanosecond timestamps * Actually use the timestamp we’re carrying around. * In case the context is modified, preserve the timestamp. * Bump timestamp nanosecond precision to 9. * Only carry over the timestamp during a modify if there was one to begin with. * Added experimental options to configuration. * Added a second version of 8601 date creation. * Respect experimental value now present in config. * Added nanosecond time test. Co-authored-by: Brandon Sneed <brandon.sneed@segment.com>
* Implement maximum request size * Add test when batch exceeds the size * Execute check before gzip * Remove stub request
* Added integration middleware support. * Fixed warnings; Updated project to recommended settings. * only signal the runner if there’s actually middleware to be processed. * Added & Updated tests. * Added experimental raw filter block. * Removed unnecessary logs. * Added logic to allow tests to function. Co-authored-by: Brandon Sneed <brandon.sneed@segment.com>
…g old SDK version (segmentio#880)
…g old SDK version (segmentio#880)
…events from background state.
Co-authored-by: Brandon Sneed <brandon.sneed@segment.com>
…o#957) Co-authored-by: Brandon Sneed <brandon.sneed@segment.com>
…o#962) Co-authored-by: Brandon Sneed <brandon.sneed@segment.com>
… be. (segmentio#963) Co-authored-by: Brandon Sneed <brandon.sneed@segment.com>
* Set target OS versions consistently across the board. * Fixed warning w/ shadow var * Use @import directive where possible. * Removed linked frameworks; Prefer language feature imports instead. * Fixed warning about viewDidAppear selector on macOS * Updated version numbers for all dependencies Co-authored-by: Brandon Sneed <brandon.sneed@segment.com>
* Added static lib support for cocoapods * Update README.md Co-authored-by: LRubin <sanscontext@users.noreply.github.com>
* Fixed warnings * Added data residency support. * Fixed test Co-authored-by: Brandon Sneed <brandon.sneed@segment.com>
…tio#982) Co-authored-by: Brandon Sneed <brandon.sneed@segment.com>
…egmentio#987) Co-authored-by: Brandon Sneed <brandon.sneed@segment.com>
…eger type 'unsigned int' from 'SEGReachability *'". (segmentio#986) Code copied for this specific function (currently unused) from https://github.com/tonymillion/Reachability/blob/ea5dd8d4646ecb2f0d07e6619827df1dfea809b8/Reachability.m#L501 Co-authored-by: Daniel McGloin <daniel_mcgloin@intuit.com>
* Pushed save of anonId higher up into the flow. * Removed api endpoint test. Co-authored-by: Brandon Sneed <brandon.sneed@segment.com>
Co-authored-by: Brandon Sneed <brandon.sneed@segment.com>
…o#993) * Fixed issue where incorrect segment settings could be built * Modified to use the segment destination name constant Co-authored-by: Brandon Sneed <brandon.sneed@segment.com>
* Revert static lib podspec change. * Mark SEGReachability.h as public. Co-authored-by: Brandon Sneed <brandon.sneed@segment.com>
* Added SPM support in README.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this PR do?
Syncs with the latest changes from Segment and drops renaming of some paths, which caused difficult merges.
Where should the reviewer start?
This is nothing special, just the changes described here and dropped renaming of some files, as they caused problems when merging changes from Segment