Skip to content
This repository was archived by the owner on Apr 24, 2026. It is now read-only.

V4.1.10#9

Draft
ov1d1u wants to merge 119 commits into
masterfrom
v4.1.10
Draft

V4.1.10#9
ov1d1u wants to merge 119 commits into
masterfrom
v4.1.10

Conversation

@ov1d1u

@ov1d1u ov1d1u commented Dec 22, 2021

Copy link
Copy Markdown

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

humblehacker and others added 30 commits July 15, 2019 22:06
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>
bsneed and others added 30 commits October 28, 2020 13:44
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
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.