- #1166
9e6db285
Thanks @danieljackins! - Add sampling logic and block non debug traffic
- #1160
bedea03b
Thanks @MichaelGHSeg! - Adding apiHost to the readonly data available from Analytics.settings
- #1157
3f58366b
Thanks @MichaelGHSeg! - Refactoring CDN Url to be available from analytics settings
- Updated dependencies [
c45d445b
,9ece2726
]:- @segment/[email protected]
- #1084
5647624c
Thanks @MichaelGHSeg! - Adding support for 429 response from the server
- Updated dependencies [
5647624c
]:- @segment/[email protected]
- #1125
7aed96e
Thanks @silesky! - Update init to allow for asset path overriding and fix debugging experience
- #1121
d98dcd2
Thanks @silesky! - Fix enrichment plugins not waiting for .load to resolve when plugin is registered manually
- #1100
e60f625
Thanks @danieljackins! - Flush large keepalive requests
- #1088
2299e9a
Thanks @silesky! - Refactor to change interface name fromlegacySettings
->cdnSettings
, in order to clarify code.
- #1090
b611746
Thanks @silesky! - - Add public settings API- Do not expose loadLegacySettings / loadCDNSettings (private API)
- #1080
e884b61
Thanks @silesky! - Addresses an issue where, if one of the non-destination actions fails to load/is blocked, the entire SDK fails to load. This is most notable in GA4, where, if GA was blocked, Segment initialization would fail.
- Updated dependencies [
e884b61
,e884b61
]:- @segment/[email protected]
- #1045
3c37def
Thanks @silesky! - - Remove validation plugin- Remove
spark-md5
dependency - Update messageId algorithm to be consistent with node (analytics-next-[epoch time]-[uuid])
- Browser Validation:
- Throws errors in the EventFactory (not just in a plugin) if the event is invalid
- Remove
- Updated dependencies [
3c37def
,1635e42
]:- @segment/[email protected]
- #1053
fd09fbc
Thanks @silesky! - Allow*
in integration name field to apply middleware to all destinations plugins.addDestinationMiddleware('*', ({ ... }) => { ... })
- #1037
e435279
Thanks @danieljackins! - Allow custom metrics endpoint on load
- #945
d212633
Thanks @zikaari! - Load destinations lazily and start sending events as each becomes available instead of waiting for all to load first
-
#1036
f65c131
Thanks @danieljackins! - Fix schema-filter bug -
Updated dependencies [
95fd2fd
,d212633
]:- @segment/[email protected]
- @segment/[email protected]
- #1032
5c1511f
Thanks @zikaari! - Support loading analytics into a custom global variable when using snippet version 5.2.1 or later
- #1008
e57960e
Thanks @danieljackins! - Change segmentio to destination type
- #1023
b5b929e
Thanks @silesky! - Deprecate AnalyticsNode class (in favor of the standalone @segment/analytics-node)
-
#1009
f476038
Thanks @silesky! - If initialPageview is true, capture page context as early as possible -
Updated dependencies [
7b93e7b
]:- @segment/[email protected]
- @segment/[email protected]
- #992
a72f473
Thanks @silesky! - Add 'disable' boolean option to allow for disabling Segment in a testing environment.
-
#1001
57be1ac
Thanks @silesky! - add hasUnmappedDestinations property to types -
Updated dependencies [
d9b47c4
,d9b47c4
]:- @segment/[email protected]
- @segment/[email protected]
- #852
897f4cc
Thanks @silesky! - - Capture page context information faster, so context.campaign and context.page are more resilient to quick navigation changes.- Parse UTM params into context.campaign if users pass an object to a page call.
- Updated dependencies [
897f4cc
]:- @segment/[email protected]
- #956
f5cdb82
Thanks @danieljackins! - Set timezone and allow userAgentData to be overridden
- #928
7f4232c
Thanks @oscb! - AddsglobalAnalyticsKey
option for setting custom global window buffers
- #949
fcf42f6
Thanks @silesky! - Fix regression where we no longer export UniversalStorage (used in destinations)
- Updated dependencies [
ee855ba
]:- @segment/[email protected]
- #908
1b95946
Thanks @oscb! - Adds storage option in analytics client to specify priority of storage (e.g use cookies over localstorage)
- #932
b1584fc
Thanks @oscb! -sentAt
is not set at batch upload time once per the whole batch. Individual eventsentAt
property is stripped when doing batch uploading.
- #915
7072377
Thanks @danieljackins! - Fix batching after page navigation
- #888
f3183f2
Thanks @danieljackins! - Fix query string parsing bug that was causing events containing the 'search' property with a non string value to be dropped
- #864
6cba535
Thanks @danieljackins! - Add Client Hints API support
- Updated dependencies [
6cba535
]:- @segment/[email protected]
- #867
2b3e5e4
Thanks @zikaari! - Device mode destination filters will now filter properties within arrays, just like they do in cloud mode
- #861
99402e9
Thanks @chrisradek! - Fixes issue related to how retried events are stored in localStorage to prevent analytics.js from reading events for a different writeKey when that writeKey is used on the same domain as the current analytics.js.
- Updated dependencies [
7dcafa2
]:- @segment/[email protected]
- #838
55a48a0
Thanks @silesky! - Refactor page enrichment to only call page defaults once, and simplify logic
-
#839
fdc004b
Thanks @silesky! - Fixes a utm-parameter parsing bug where overridden page.search properties would not be reflected in the context.campaign objectanalytics.page(undefined, undefined, {search: "?utm_source=123&utm_content=content" ) analytics.track("foo", {url: "....", search: "?utm_source=123&utm_content=content" ) // should result in a context.campaign of: { source: 123, content: 'content'}
-
#835
9353e09
Thanks @silesky! - Refactor shared validation logic. Create granular error message if user ID does not match string type. -
Updated dependencies [
9353e09
]:- @segment/[email protected]
-
Updated dependencies [
afb027a
]:- @segment/[email protected]
- #800
fe98d5e
Thanks @silesky! - Fix staging-only bug where integrations URL would not respect CDN URL overrides
- Updated dependencies [
69154c3
]:- @segment/[email protected]
-
#758
ef47e9e
Thanks @zikaari! - Remove direct wirings for Segment Inspector -
Updated dependencies [
43897d6
]:- @segment/[email protected]
- #738
fed489c
Thanks @silesky! - Make trait fields nullable. Type traits for group() differently than identify() call.
- #722
61688e2
Thanks @silesky! - Improve core interfaces. Refactor analytics-next to use shared EventQueue, dispatch, and other methods. Augment Browser interface with traits and context options type.
-
#742
e29a21a
Thanks @silesky! - Fix webdriver.io interception bug. Refactor to use native fetch where unfetch is unavailable. -
Updated dependencies [
fed489c
,61688e2
]:- @segment/[email protected]
- #714
9fc8f43
Thanks @chrisradek! - Improves Segment.io retries to include exponential backoff and work across page loads.
-
#721
779e66b
Thanks @pooyaj! - Expose universal storage directly on analytics object -
Updated dependencies [
80e0d0a
]:- @segment/[email protected]
-
#710
ef5cd39
Thanks @chrisradek! - Fixes an issue impacting a small number of destinations where explicitly enabling or disabling an integration on load would not work as expected. -
Updated dependencies [
90b915a
,108c77e
]:- @segment/[email protected]
- Updated dependencies [
ecb4b8d
]:- @segment/[email protected]
- Updated dependencies [
0b9f4d7
]:- @segment/[email protected]
- #688
c21734e
Thanks @arielsilvestri! - Fixes issue where options object would not be properly assigned if properties arg was explicitly undefined
- #666
5269a3e
Thanks @ryder-wendt! - Do not throw errors if localStorage becomes unavailable
- Updated dependencies [
98d1b12
]:- @segment/[email protected]
-
#655
5e3f077
Thanks @silesky! - Fix analytics reset clears anonymous ID bug -
#637
b335096
Thanks @silesky! - Add ability to delay initialization
- #635
222d4ec
Thanks @chrisradek! - Adds a new load optiondisableAutoISOConversions
that turns off converting ISO strings in event fields to Dates for integrations.
-
Updated dependencies [
409cae4
]:- @segment/[email protected]
- #619
6c35799
Thanks @silesky! - Do not expose jquery / zepto as ambient globals. Add dom.iterable lib to typescript.
- #629
21f05ad
Thanks @danieljackins! - Fix bug where destination middleware were applying to other plugin types
- #597
18dc5b0
Thanks @danieljackins! - Added destination filter support to action destinations
- #611
29c3bd7
Thanks @chrisradek! - Fixes analytics.reset() so that it clears group data.
-
#613
503bea2
Thanks @silesky! - fix change detection bug and add ability to detect tab focus loss events -
Updated dependencies [
4644afc
,598fc31
,ce90543
,7b5d3df
]:- @segment/[email protected]
- #573
6203c20
Thanks @arielsilvestri! - Enhances console error logging when requests to settings api fail
- #582
ebafece
Thanks @chrisradek! - Updates error message when sending metrics fails to indicate that metrics failed to send.
- #577
8d48bdc
Thanks @chrisradek! - Fixes an issue where the 'secure' cookie setting was not being applied correctly when specified.
- #578
ab8cea3
Thanks @silesky! - Loosen SegmentEvent and Traits typescript interface (Fixes #570, #575).
- #567
5cd9358
Thanks @silesky! - Do not allow the "user" method to change its return types over its lifecycle. We should always return a promise for wrapped methods in AnalyticsBrowser, regardless if the underlying Analytics method is sync or async.
- #561
1af2a9f
Thanks @silesky! - Add 'screen', 'register', 'deregister', 'user' method and 'VERSION' property on AnalyticsBrowser. Allow buffering of 'screen', 'register', 'deregister' methods for snippet users.
- Updated dependencies [
93c8f1f
]:- @segment/[email protected]
- #541
2e0a91c
Thanks @silesky! - Export AnalyticsSnippet type and add directions (for snippet users).
- #505
b9c6356
Thanks @chrisradek! - Addscontext.failedDelivery()
to improve detection of events that could not be delivered due to plugin errors.