Skip to content

3.1.0

Compare
Choose a tag to compare
@MSNev MSNev released this 15 Feb 19:48
· 38 commits to main since this release
02d4c4b

Changelog

Interface changes / Breaking changes

This release includes support for a new Offline Channel which has changed the IChannelsControls interface to include additional support for the new offline channel. This change is to support the new offline channel and is a breaking change for any custom channels that implement the IChannelsControls interface. If you have a custom channel that implements the IChannelsControls interface you will need to update your implementation to include the new offline channel.

Configuration default changes

As this is a minor version bump we have also change some default values for the following configuration options:

  • disableUserInitMessage is now true by default to disable the user init message.

Potential breaking change

This release contains a potential break change with 'tags' type change

While the interface changes are breaking changes, the changes are not expected to affect the majority of users as when the code attempted to serialize the tags property it would have failed due to the Tags[] type being used instead of the correct Tags type.

Old

    tags?: Tags & Tags[]; 

New

    tags?: Tags;

New Offline Channel

This release also includes the new offline channel which is a new channel that is designed to support offline scenarios. The offline channel is designed to store telemetry items in local storage and then send them when the user comes back online.
To take full advantage of the initial version you will need to implement your own IOfflineListener to handle situations where you may have "network" connectivity but not internet access. As the navigator.onLine property if available will only tell you if you have network connectivity and not internet access.

Changelog

  • #2186 [main] offlineListener preparation
  • #2241 [Main][Task]26451789: Add Offline Support
  • #2259 [Main][Task]26694421: Add Offline Support Publish Group
  • #2267 [Main][Task]26681220: Better handle timers in offline channel
  • #2028 [BUG] AI (Internal): 72 tracking
    • Sets the default value for the disableUserInitMessage to true (was previously false since adding)
  • #2193 [main] Add extra config in sender to let users define transports type
  • #2200 [main] [doc] Highlight an issue with the default UMD module format when loading from the CDN into an environment that may have require.js
  • #2208 [Main][Task]26079397: Add disableBeaconSplit sender config and fix potential duplicated events during unload/fallback sender
    • #2236 [Main][Task]26396663: Set default disableBeaconSplit to true
  • #2204 [BUG] Beacon sender reports error for success when diagnostics are enabled
  • #2214 [main] Merge Release-3.0 to main
  • #2221 [main] Fixup the ci.yml to address internal hash changes between different node versions
  • #2216 [Main][Task]26138416: Fix FetchKeepAliveSender send duplicated events during unload
  • #2228 [main] minor release preparation
  • #2229 [main] [doc] add requireJs problem in SdkLoadFailure.md
  • #2132 [BUG] Submitting NaN via trackEvent results in HTTP 400 Error Code
  • #2238 [Main] Merge release-3.0 to main
  • #2244 Internal Task: Update npm pack sequence
  • #2249 [main][1ds] Enhance Retry Policy Testing for Alignment with Collector Policy
  • #2245 [main] [snippet update] add functions to set configs of snippet
  • #2250 [main] [doc] minor comment update for avoidOptions
  • #2251 [Main][1DS][Post] Add support for the ext.metadata to NOT be included
  • #2253 [Main] Update Tests to support upcoming change in nevware21/tsutils dumpObj to better support JSON stringify and handle PURE comments
  • #2255 [main] #2225 pass customer exception id into telemetry
  • #2247 [main] [1ds-post] export add header func for auth-plugin to consume
  • #2209 [BUG] stopTrackEvent requires property values to be strings
    • #2268 [main] Add example of how to use stopTrackEvent #2209
    • #2270 [main] correct types define for stopTrackEvent and stopTrackPage for #2209
  • #2258 [BUG] ITelemetryItem uses intersection type instead of union type for tags property
    • #2269 [main] [Possible Break] Removed Tags[] from ITelemetryItem as this was breaking later versions of TypeScript by using the intersection type instead of union type for tags property
  • #2272 [release 3.0.8] Fix channel test
  • #2271 Cherry-pick from release-3.0 branch
    • [Release-3.0] [Release] Increase version to 3.0.8 ([Release-3.0] [Release] Increase version to 3.0.8 #2264)
    • [Release-3.0] Update namespaced types (DTS) generation to include referenced bundles

What's Changed

  • [Main] Include Config sync in publish group by @MSNev in #2160
  • [main] update snippet ver to 7 and set gbl moudle as default by @siyuniu-ms in #2156
  • [main] use proper URL for tracking when fetch is passed an empty string by @jorupp in #2165
  • [main] correct throttle configdefault setting in aisku by @siyuniu-ms in #2166
  • [Main][Task]16238553: Provide an override option for the Sender by @Karlie-777 in #2113
  • [Main][Task]24499167: add cfgSync plugin doc by @Karlie-777 in #2168
  • [Main][Task]24499172: add throttle manager doc by @Karlie-777 in #2169
  • [Main][Task]24499174: Add service notification doc by @Karlie-777 in #2170
  • [main] test aisku config could correctly merge new config fetch from cdn by @siyuniu-ms in #2171
  • [main] Update Service Notifications to not send message twice by @siyuniu-ms in #2175
  • Add Issue state reporting script by @MSNev in #2173
  • [main] remove double slash for endPointUrl by @siyuniu-ms in #2174
  • [main] use helper func to get window by @siyuniu-ms in #2178
  • [Main]Set CfgSync version to 3.0.3 by @siyuniu-ms in #2177
  • [main] fix startTime timestamp by @siyuniu-ms in #2183
  • [Main][Release] Increase version to 3.0.4 by @siyuniu-ms in #2176
  • [main] retrieve reponseText when fetch in HttpManager by @siyuniu-ms in #2185
  • [main] deactive send beacon when local storage is available by @siyuniu-ms in #2184
  • [main] generate typedoc by @siyuniu-ms in #2188
  • [Main][Task]25648004: Export ISenderConfig from Sender by @Karlie-777 in #2190
  • [Main][Task]25649658: Update AISKU Light to add default baseType and baseData when calling track function by @Karlie-777 in #2191
  • [Main][Release] Increase version to 3.0.5 by @siyuniu-ms in #2192
  • [main] offlineListener preparation by @siyuniu-ms in #2186
  • [main] Add config to let user disable the UserAgent AI Internal for #2028 by @siyuniu-ms in #2196
  • [main] Add extra config in sender to let users define transports type by @siyuniu-ms in #2193
  • [main] [doc] Highlight an issue with the default UMD module format when loading from the CDN into an environment that may have require.js #14493816 by @siyuniu-ms in #2200
  • [main] fix 3.0.3 release note for missing pr by @siyuniu-ms in #2206
  • [Main][Task]26079397: Add disableBeaconSplit sender config and fix potential duplicated events during unload/fallback sender by @Karlie-777 in #2208
  • [Main][BUG] Beacon sender reports error for success when diagnostics are enabled #2204 by @MSNev in #2212
  • [main] Merge Release-3.0 to main by @MSNev in #2214
  • [main] Fixup the ci.yml to address internal hash changes between different node versions by @MSNev in #2221
  • [Main][Task]26138416: Fix FetchKeepAliveSender send duplicated events during unload by @Karlie-777 in #2216
  • [main] disable sdk load error send #1672 by @siyuniu-ms in #2207
  • [main] minor release preparation by @siyuniu-ms in #2228
  • [main] [doc] add requireJs problem in SdkLoadFailure.md by @siyuniu-ms in #2229
  • [Main] v3.1.x change Disable UserAgent config to true by default #2028 by @siyuniu-ms in #2231
  • [Main][Task]26396663: Set default disableBeaconSplit to true by @Karlie-777 in #2236
  • [main] [BUG] Submitting NaN via trackEvent results in HTTP 400 Error Code #2132 by @siyuniu-ms in #2232
  • Update GitHub Status script by @MSNev in #2240
  • [main] instrument the typedoc github pages with ApplicationInsights by @siyuniu-ms in #2237
  • [main] typedoc github action fix for #2237 by @siyuniu-ms in #2243
  • [Main] Merge release-3.0 to main by @MSNev in #2238
  • [main] typedoc github action second fix for #2237 #2243 by @siyuniu-ms in #2246
  • Internal Task: Update npm pack sequence by @MSNev in #2244
  • [main] typedoc instrumentation ikey change, related to #2237 by @siyuniu-ms in #2248
  • [main][1ds] Enhance Retry Policy Testing for Alignment with Collector Policy by @siyuniu-ms in #2249
  • [main] [snippet update] add functions to set configs of snippet by @siyuniu-ms in #2245
  • [main] [doc] minor comment update for avoidOptions by @siyuniu-ms in #2250
  • [Main][1DS][Post] Add support for the ext.metadata to NOT be included by @MSNev in #2251
  • [Main] Update Tests to support upcoming change in nevware21/tsutils dumpObj … by @nev21 in #2253
  • [main] #2225 pass customer exception id into telemetry by @siyuniu-ms in #2255
  • [Main][Task]26451789: Add Offline Support by @Karlie-777 in #2241
  • [Main][Task]26694421: Add Offline Support Publish Group by @Karlie-777 in #2259
  • Update github status tool by @MSNev in #2257
  • [main] [1ds-post] export add header func for auth-plugin to consume by @siyuniu-ms in #2247
  • [main] Add example of how to use stopTrackEvent #2209 by @siyuniu-ms in #2268
  • [Main][Task]26681220: Better handle timers in offline channel by @Karlie-777 in #2267
  • [main] [Possible Break] Removed Tags[] from ITelemetryItem as this was breaking later versions of TypeScript by using the intersection type instead of union type for tags property #2258 by @siyuniu-ms in #2269
  • [main] correct types define for stopTrackEvent and stopTrackPage for #2209 by @siyuniu-ms in #2270
  • [release 3.0.8] Fix channel test by @Karlie-777 in #2272
  • Cherry-pick from release-3.0 branch by @MSNev in #2271
  • [Main] [Release] Increase version to 3.1.0 by @MSNev in #2273

Full Changelog: 3.0.3...3.1.0