Legend
π₯ - Breaking change.
β¨ - New feature.
π - Bug fix.
β‘οΈ - Performance improvement.
π - Documentation.
β - Experimental.
- π [RUM-4629] accept
null
as env/version/service (#2781) - π [RUM-4493] do not compute selectors for detached elements (#2766)
- π [RUM-2720] Send logs without session id when session inactive (#2578)
- π [RUM-1666] Don't set negative action loading time (#2764)
- π [RUM-4434] fix timing matching for the same resource requested twice at the same time (#2747)
- π [RUM-4436] fix detached node memory leak on CLS (#2749)
- β fix clearing cookies between tests (#2780)
- π₯ Cleanup experimental features (#2768)
- βοΈ various comment fixes (#2760)
- π[RUM-4360] monitor more API usages (#2745)
- π collect pre start telemetry (#2755)
- π Deduplicate telemetry events (#2746)
- π [RUM-97] Sanitize tags parameter in configuration (#2744)
- πfix deploy script (#2742)
- β¨ [RUM-4052] Sanitize
site
parameter in configuration (#2735) - β¨ [RUM-4287] Enable feature flags API (#2728)
- β¨ [RUM-3710] Update session ID handling to support cookie deletion (#2673)
- β¨βοΈ [RUM-4179] vital: collect
computed_value
property (#2723) - β»οΈ use browser.execute and browser.executeAsync directly (#2700)
- β»οΈ move createHandlingStack to the tools folder (#2727)
- β¨ [RUM-3684] Capture scroll record on shadow dom elements (#2708)
- β¨[RUM-3798] Report the cpu impact as a pr comment (#2702)
- β¨ [RUM-162] Truncate resources URL containing data URLs (#2690)
- π[RUM-4109] Mask iframe srcdoc with privacy override (#2714)
- β [RUM-2782] Validate resource timings more granularly
- π fix beforeSend type definition for logs (#2686)
- π [RUM-2782] remove buggy redirect timing estimation based on fetchStart (#2683)
- [ci-visibility] Implement driver-agnostic integration with CI Visibility (#2639)
- β¨ [RUM-3387] forward to beforeSend context (#2665)
- π [RUM-3581] Fix the selector computation due to properties partially supported on IE (#2663)
- π [RUM-96] Ignore frustrations on clicks resulting in scrolls (#2669)
- β»οΈβ Harmonize record observers (#2659)
- β¨ [RUM-3542] Add trace context injection control in rum configuration (#2656)
- π [RUM-3599] do not define undefined instrumented method (#2662)
- π [RUM-3598] Ignore collecting requests to logs PCI intake as RUM resources (#2655)
- β‘ [RUM-2633] Optimize DOM iteration in the recorder (#2657)
- β¨ [RUM-3546] Add support of PCI compliant intake for browser logs (#2648)
- β¨ [RUM 3352] Extra resource event attributes to enable performance CWV troubleshooting (#2646)
- β¨ [RUM-2885] Collect CSP disposition (#2635)
- π [RUM-3440] Fix INP CSS selector computation
- π [RUM-3502] fix fetch(url) tracing (#2642)
- π§ Enforce snake case for event type properties (#2649)
- π [RUM-3501] add
tracking_consent
to configuration telemetry (#2640) - π§ configure renovate to deduplicate subdependencies (#2643)
- β¨ [RUM-3349] enable the consent management API (#2634)
- β¨ [RUM-2203] Forward replay records to the bridge (#2470)
- π [RUM-2445] fix unexpected session renewal after expire() (#2632)
- βοΈ [RUM-3234] Discard outdated vitals (#2610)
- β¨ [RUM-2902] Add error causes to context when logging an error (#2602)
- β¨ [RUM-3151] Report bundle sizes to logs (#2605)
- β¨ [RUM-160] Collect PerformanceResourceTiming.responseStatus (#2587)
- π [RUM-3039] Fix missing pending mutations at view end (#2598)
- βοΈ[RUM-3235] collect vital.name attribute (#2609)
- βοΈ[RUM-2889] custom vitals improvements (#2606)
- π§ ignore karma-webpack for now (#2604)
- βοΈ[RUM-2889] Bootstrap custom vital APIs (#2591)
- β οΈβ¨ [RUM-2445] implement Tracking Consent management (#2589)
- β¨[Developer extension] npm setup override support (#2304)
- π Fix LCP with size < previous LCP (#2586)
- π [RUM-2940] fix normalize URL for relative paths (#2576)
- β»οΈ register setupBuilder.cleanup as a cleanup task (#2590)
- β»οΈ [RUM-2445] split RUM and Logs public APIs modules (#2575)
- β‘οΈ [RUM-2893] optimize getNodePrivacyLevel by adding a cache (#2579)
- β»οΈ [RUM-2203] Move record logic from startRecording to the record module (#2574)
- β¨[RUM-2729] collect connectivity data (#2560)
- π[RUM-2752] Replay: generate censored images with custom dimensions (#2565)
- π[RUM-2735] Track request with undefined/null method
- π Document addTiming API relative time issue (#2570)
- β»οΈ [RUM-2445] simplify context manager sync with local storage (#2562)
- β»οΈ [RUM-2445] align rum and logs common context implementation (#2564)
- β»οΈ [RUM-2445] use recorderApi directly (#2563)
- π [RUM-2689] fix recorder crash when restarted quickly (#2553)
- π [RUM-253] adjust heavy customer data warning when compression is enabled (#2529)
- β»οΈ [RUMF-1436] instrument method improvements (#2551)
- β¨β [RUM-2682] writable resource.graphql field on Resource events (#2550)
- π add @datadog/browser-worker package to readme (#2537)
- β»οΈ pass the Observable instance to the onFirstSubscribe callback (#2539)
- β¨[RUM-2436] add partitioned support for third party cookies (#2535)
- π[RUM-2324] Telemetry on other wrong LCP cases (#2531)
- π [RUM-2280] fix duplicated mutations when using Shadow DOM (#2527)
- π[RUM-2324] Telemetry on LCP with startTime to 0 (#2515)
- β import JSON schemas dynamically in tests (#2521)
- β¨ Expose original report events in beforeSend (#2510)
- β¨ Developer Extension improvements (#2516)
- β»οΈ [Logs] reorganise some components (#2519)
- β¨ [RUM-1214] Collect core web vitals target selectors (#2506)
- β¨ [RUM-2158] Allow more flexible proxy URL (#2502)
- β¨ [RUM-253] enable compression via the compressIntakeRequests parameter (#2500)
- π [RUM-1561] Fix CLS selector computation on detached node (#2480)
- π [RUM-2016] don't collect useless resources events (#2493)
- π [RUM-1863] fix iOS webview detection (#2486)
- β‘οΈ[RUM-2017] optimize cookie accesses (#2497)
- β [RUM-253] add E2E tests related to compression (#2416)
- βοΈβ¨ [RUM-253] compress RUM data (#2400)
- π [RUM-1658] Add extra field to identify sessions recorded manually (#2479)
- π Add CLS target selector telemetry (#2477)
- β¨ [RUM-1215] Collect INP #2355 (#2448)
- π Prevent console warning on Firefox on route change (#2469)
- π [RUM-1360] Cap INP outliers (#2466)
- β»οΈ [RUM-1329] Merge tracekit into error folder (#2450)
See our upgrade guide for a comprehensive list of breaking changes introduced by this major version.
- π₯ [RUMF-1589] automatically start recording (#2275)
- π₯ [RUMF-1587] Remove
premiumSampleRate
andreplaySampleRate
(#2256) - π₯ [RUMF-1597] Drop plan and send sampled_for_replay (#2293)
- π₯ [RUMF-1578] Promote track frustration as default action behaviour (#2232)
- π₯ [RUMF-1230] Only apply main logger configuration to its own logs (#2298)
- π₯ [RUM-1210] Add W3C tracecontext to default propagator types (#2443)
- π₯ [RUMF-1473] Ignore untrusted event (#2308)
- π₯ [RUMF-1564] remove intake subdomains (#2309)
- π₯ [RUMF-1577] Stop collecting foreground periods (#2311)
- π₯ [RUMF-1557] beforeSend domain context: use PerformanceEntry (#2300)
- π₯ [RUMF-1556] Typings: consistent beforeSend return type (#2303)
- π₯ [RUMF-1229] Logs: remove
error.origin
attribute (#2294) - π₯ [RUMF-1228] Remove console error message prefix (#2289)
- π₯ [RUMF-1555] Rework logger context APIs (#2285)
- π₯ [RUMF-1152] sanitize resource method names (#2288)
- π₯ [RUMF-1555] Remove
event
in action domain context (#2286) - π₯ [RUMF-1588] Update default session replay behaviour (#2257)
- π₯ [RUMF-1554] Drop some deprecated public APIs (#2241)
- π₯ [RUMF-1554] Drop some deprecated config parameters (#2238)
- β¨ [RUM-255] add allowUntrustedEvents config parameter (#2347)
- π [RUMF-1499] Don't send duration for resources crossing a page frozen state (#2271)
- π₯ [RUMF-1555] Remove
startTime
in xhr start context (#2287) - β»οΈ [RUMF-1555] Remove deprecated context manager APIs (#2284)
- π [RUM-1325] fix memory leak when using shadow dom (#2451)
- π [RUM-1325] propagate privacy defined on shadow hosts (#2454)
- π [RUM-1196] escape CSS rules containing a colon for Safari compatibility (#2440)
- π [RUM-1062] remove message prefix when using the console handler (#2452)
- π [RUM-1211] fix compatibility with TS4.6/4.7 using ES2022 (#2455)
- β¨ [RUM-1062] add a prefix to all console message displayed by the SDK (#2432)
- β¨ [extension] add columns to the event list (#2372)
- β¨ [extension] revamp event description and JSON viz (#2371)
- β¨ [extension] revamp filter UI (#2370)
- β¨ [extension] filter outdated events (#2369)
- π [RUM-1085] Remove lock usage from Local Storage strategy (#2435)
- β»οΈ rename scroll fields (#2439)
- π Remove cwv attribution telemetry
- β»οΈ [RUM-1039] Harmonize view tests (#2430)
- Report scroll metrics when page is resized (#2399)
- β»οΈ [RUM-253] adapt transport to send encoded data (#2415)
- π [RUM-253] customize deflate worker failure logs (#2414)
- β»οΈ Use performance entry fixtures in tests (#2428)
- βοΈ [RUM-1020] Collect core web vitals target selectors (#2418)
- β¨[RUM-265] Store contexts across pages (#2378)
- β¨[RUM-1016] Allow to change "view.name" (#2396)
- β¨[RUM-1013] Early exit when no configuration provided (#2417)
- π[RUM-89] Do not count discarded resources (#2410)
- π fix dynamic style serialization (#2397)
- π fix INP support detection (#2405)
- β¨ [RUM-252] optimistic worker creation (#2377)
- π do not ignore @import rules pointing to inaccessible stylesheets (#2398)
- π¨ [RUM-262] Move view metrics in dedicated files (#2386)
- β»οΈ [RUM-253] refactor batch creation (#2390)
- βοΈ [RUM-257] Collect INP (#2355)
- β»οΈ [RUM-250] introduce a DeflateEncoder (#2376)
- β¨ [RUM-233] add workerUrl initialization parameter (#2354)
- π[RUM-142] fix the generation of some invalid selectors (#2375)
- β¨ enable scrollmap collection (#2374)
- π [RUM-254] Document extension internally available on store (#2368)
- β»οΈ Cherry-pick some changes from v5 to limit conflicts (#2357)
- β [RUM][REPLAY] Try to reduce the size of the replay payload (#2348)
- β»οΈ [RUM-249] update worker protocol (#2346)
- π Add web vital attribution telemetry debug (#2344)
- π [developer-extension] Update extension instructions (#2343)
- π [developer-extension] bootstrap monitoring (#2337)
- π Avoid setting non-object values for contexts (#2341)
- β¨ [RUM-235] add sample rates fields (#2323)
- π [RUM-238] Handle tracekit multilines message parsing (#2332)
- ππ· Fix scope packages npm publication (#2334)
- π monitor reported errors (#2335)
- ππ· [RUM-232] fix worker/string package (#2331)
- π Fix RUM slim npm package publication (#2325)
- π [RUM-231] Fix location.origin is "null" for file: URIs (#2306)
- β»οΈ [RUM-232] create a
@datadog/browser-worker
package (#2319) - π Add tracekit try parse message failing telemetry (#2322)
- π¬ Update heavy customer data warning (#2316)
- β¨ Collect replay privacy level in views (#2299)
- π [RUMF-1613] fix session replay performance regression (#2313)
- β»οΈ Base foreground computation on page lifecycle states (#2253)
- β Collect scroll metrics (#2180)
- β¨ [RUMF-1580] Implement storage fallback (#2261)
- β¨ [RUMF-1580] Implement Local Storage (#2260)
- π Telemetry: do not scrub staging and canary frames (#2273)
- β»οΈ [RUMF-1580] Decouple storage mechanism (#2259)
- βοΈ [RUMF-1499] Don't send duration for resources crossing a page frozen state (#2255)
- π [RUMF-1577] Collect page lifecycle states (#2229)
- π Fix TypeError when document.cookie is empty (#2216)
- π [RUMF-1583][recorder] do not ignore empty text node during serialization (#2237)
- π Fix
use_excluded_activity_urls
telemetry (#2236) - π when bridge is present, send a final view update on page exit (#2234)
- π Update FCP browser support (#2187)
- π· use a separate job to deploy US1 (#2228)
- π fix isolatedModules support (#2209)
- π [RUMF-1576] fix support for tools that removes console.* references (#2210)
- π¦π· include webpack, typescript and @types/express in common upgrades (#2222)
- β‘ remove spec files from npm packages (#2224)
- π¦ [RUMF-1532] update webpack-related dependencies (#2212)
- π¦ update vulnerable subdependency engine.io (#2211)
- β¨[RUMF-1573] Allow to provide custom fingerprint to RUM errors (#2189)
- β¨[RUMF-1508] Provide stack trace for all uncaught exceptions (#2182)
- β¨[RUMF-1573] allow to add modifiable field paths with beforeSend (#2186)
- π Revert Errors serialization behavior (#2197)
- β»οΈ [RUMF-1508] reorganise error handling (#2181)
- β¨ [RUMF-1470] enable sanitize for user-provided data (#2175)
- β»οΈ [RUMF-1508] refactor error types / constants (#2179)
- β¨ [RUMF-1530] enable sending replay metadata as json (#2177)
- β¨ [RUMF-1479] enable heatmaps collection (#2178)
- β¨ [RUMF-1534] send a view update when session is expiring (#2166)
- β¨ [RUMF-1534] allow (some) view updates after session expiration (#2167)
- π Fix exception when using wrong tracing parameters (#2173)
- π¨ add require-await rule and remove useless async (#2132)
- β¨ [RUMF-1530] send replay metadata as json (#2125)
- β¨ [RUMF-1533] flush pending data on session expiration (#2150)
- β»οΈ factorize LifeCycle and simplify its types (#2165)
- β»οΈ [RUMF-1533] extract the Flush logic into a reusable component (#2144)
- π₯ Cleanup unnecessary flags (#2145)
- [REPLAY] Add public function to get the link to current Replay (#2047)
- π [RUMF-1544] Fix badly polyfilled URL (#2141)
- Add an eslint rule to disallow the use of too generic utility file names (#2101)
- β»οΈ [RUMF-1517] split tools utils (#2128)
- β»οΈ [RUMF-1505] make sure we don't use Zone.js addEventListener (#2129)
- π·οΈ improve addEventListener typings (#2127)
- π[RUMF-1517] Remove specHelper export in src code (#2126)
- β»οΈ rename performance utils (#2136)
- β¨ Support snippet as a valid file url for stack trace computation (#2077)
- β Remove feature flag test warning noise
- β¨ [RUMF-1510] Warn the user when a heavy context is used (#2120)
- β»οΈ [RUMF-1517] reorganise some components (#2124)
- π [RUMF-1470] Sanitize - Fix size computation (#2116)
- β improve async calls collection (#2123)
- π Collect url and base on failing URL build telemetry (#2062)
- π [RUMF-1526] simplify rum package README.md (#2122)
- π [RUMF-1526] simplify logs package README.md (#2121)
- β»οΈ [RUMF-1529] use an enum for experimental features (#2113)
- β»οΈ [RUMF-1517] split rum test utils (#2117)
- β»οΈ [RUMF-1517] split core specHelper (#2111)
- β»οΈ [RUMF-1517] rework test utils (#2118)
- β»οΈ [RUMF-1517] add test index files (#2115)
- β»οΈ [RUMF-1517] split domain utils (#2105)
- β»οΈ[RUMF-1517] split rum-core specHelper (#2106)
- β»οΈ[RUMF-1517] split scripts utils (#2102)
- β¨[RUMF-1500] Remove some references to legacy bundles (#2097)
- π RUMF-1497 Update logger API documentation (#2098)
- β¨ [RUMF-1518] implement a new API to stop the RUM session (#2064)
- π β»οΈ [RUMF 1470] Fix serialization issues (#1971)
- β»οΈ [RUMF-1505] introduce a safe
setInterval
helper function (#2044)
- β¨ [RUMF-1497] Allow logger APIs to pass an Error parameter (#2029)
- βοΈ [RUMF-1522] Expose addFeatureFlagEvaluation (#2096)
- π [RUMF-1491] fix error when calling
fetch
with an unexpected value as first parameter (#2061)
- β¨[RUMF-1500] deploy new datacenter files (#2049)
- π Handle undefined cancel idle callback (#2045)
- β»οΈ [RUMF-1500] tweak deployment scripts (#2046)
- β»οΈ [RUMF-1505] introduce and use a safe
setTimeout
helper function (#2032) - β»οΈ [REPLAY] Avoid casting & add proper check instead of relying on try/catch (#2016)
- π [RUMF-1443] fix Zone.js/Angular crash when recording the session (#2030)
- π [REPLAY] Fix serialization for checkbox & radio (#2021)
- βοΈ [RUMF-1484] use pagehide as unload event (#2020)
- π [RUMF-1493] Avoid infinite loop on
form > input[name="host"]
element (#2017) - π [RUMF-1485] Flush event when page becomes frozen (#2015)
- π [RUMF-1296][rumf-1293] Fix dead click computation (#1998)
- π fix Shadow DOM support on Microsoft Edge (#2003)
- β¨ [RUMF-1469] introduce a new
proxy
initialization parameter (#1947)
- π fix frustration animation in session replay (#1999)
- β¨ Add new intake strategy for ap1 (#1997)
- Revert "π add view document_count in non-view events (#1892)" (#1959)
- π [REPLAY] Discard mouse/touch event without x/y position (#1993)
- π[RUMF-1450] stop computing coordinates for focus/blur records (#1985)
- π ignore contenteditable elements for dead clicks (#1986)
- π [RUMF-1476] Fix removednodes.foreach is not a function (#1984)
- πβ [RUMF-1293] discard dead clicks when activity occurs on pointerdown (#1979)
- β¬οΈ fix flaky test (#1982)
- π Enable customer data telemetry (#1983)
- βπ [RUMF-1296] use pointerup to trigger click actions (#1958)
- [REPLAY] Add telemetry for shadow dom (#1978)
- β¬οΈ fix Jasmine deprecation warning on unit tests/IE (#1974)
- π[RUMF-1465] collect data for disturbed response (#1977)
- π [REPLAY] Add telemetry for shadow DOM (#1975)
- β¨[REPLAY] Add support for shadow dom (#1969)
- β¨[REPLAY] Keep Href from link even when importing CSS (#1960)
- π[RUMF-1465] fix missing data when fetch instrumented by zone.js (#1942)
- βοΈ π reset input state at the beginning of each click (#1968)
- βοΈ π[RUMF-1467] Collect user data telemetry (#1941)
- βοΈ π [RUMF-1445] Check if the page was discarded before a resource (#1945)
- βοΈ [REPLAY] Add support for
adoptedStyleSheets
(#1916) - π [RUMF-1345] Revert log first untrusted events of each type (#1940)
- π Fix
getInitConfiguration()
behaviour (#1893) - β‘ Ignore modulepreload and prefetch in link tags (#1921)
- βοΈπ Collect page lifecycle states in resources (#1890)
- β¨[RUMF-1397] init parameter standardisation (#1917)
- βοΈ [REPLAY] Experiment support for shadow DOM (#1787)
- π [RUMF-1345] add telemetry logs on untrusted events (#1910)
- π add view document_count in non-view events (#1892)
- π [RUMF-1435] do not retry status 0 request while online (#1891)
- β¨ [RUMF-1236] Add support for OTel headers (#1832)
- π[RUMF-1435] don't retry opaque response (#1877)
- β¨ [RUMF-1425] enable request retry/throttle for replay intake (#1819)
- π [RUMF-1421] keep updating the view event counters after view end (#1864)
- Re-release v4.28.0 to work around a NPM packaging issue
- π [RUMF-1337] Fix incorrect fetch duration (#1875)
- π [RUMF-1449] fix Zone support when symbol is missing (#1872)
- β¨Allow internal analytics subdomain (#1863)
- π Collect computed and perf entry durations (#1861)
- π [RUMF-1449] workaround for Firefox memory leak when using Zone.js (#1860)
- β¨ send data from the SDK to the extension (#1850)
- β»οΈ [RUMF-1440] improve feature flag collection implementation (#1839)
- π [RUMF-1421] improve counters by filtering child events (#1837)
- β¨ [RUMF-1435] Add transport api on events (#1840)
- βοΈ [RUMF-1337] add
fetch_duration
experiment to resolve incorrect fetch duration (#1810) - β¨ Move extension settings to a Settings panel (#1847)
- β¨ Clear event list on page reload for SDK extension (#1825)
- β¬οΈ [RUMF-1434] fix yarn failing to install puppeteer on M1 mac (#1843)
- β¬οΈ [RUMF-1434] fix running e2e tests on M1 macs (#1842)
- β¨ Improve event description message in developer extension (#1831)
- β¨ [RUMF-1396] migrate extension to manifest v3 (#1828)
- βͺ Revert "π [RUMF-1410] Allow serialization of objects with cyclic references (#1783)" (#1821)
- π[RUMF-1432] Collect trackResources and trackLongTasks configs (#1814)
- ποΈ [RUMF-1433] Remove Preflight request Performance Entry check (#1813)
- β¨[RUMF-1435] Add some retry info on events (#1817)
- βοΈβ¨ [RUMF-1379] heatmaps: enable descendant combined selectors (#1811)
- β¨ [RUMF-1409] Provide setUser and related functions for logs SDK (#1801)
- βοΈ β¨ [RUMF-1425] use the retry/throttle transport strategy to send segments (#1807)
- β»οΈ [RUMF-1424] factorize page exit logic (#1805)
- π Clarify log SDK usage in the readme (#1767)
- π [REPLAY-1075] Convert relative URLS to absolute in stylesheets (#1792)
- π [RUMF-1423] prevent unexpected behavior when our xhr are reused (#1797)
- π [RUMF-1410] Allow serialization of objects with cyclic references (#1783)
- π[RUMF-1423] Investigation for retry issue - part 2 (#1793)
- π[RUMF-1423] Add debug log for retry issue (#1790)
- β¨[RUMF-1377] Enable new request strategy (#1770)
- π [RUMF-1393] don't mask attributes used to create CSS selectors (#1737)
- β [RUMF-1379] heatmap: experiment improved selector regarding unicity (#1741)
- β‘οΈ Enable telemetry configuration (#1780)
- π [RUMF-1416] Use service distinguish log rum telemetry configuration (#1774)
- β¨ accept functions in allowedTracingOrigins/excludedActivityUrls arguments list (#1775)
- βοΈ [RUMF-1405] remove mechanism to simulate intake issue (#1768)
- π Collect configuration telemetry event (#1760)
- βοΈ [RUMF-1405] add mechanism to simulate intake issue (#1757)
- π npm publish: skip publish confirmation (#1755)
- β¨ [RUMF-1353] Collect error causes (#1740)
- π [RUMF-1276] handle performance entry without
toJSON
(#1751) - π handle undefined policy (#1752)
- β¨ [RUMF-1391] Introduce trackResources, trackLongTasks and sessionReplaySampleRate (#1744)
- β»οΈ [RUMF-1368] use the PointerDown event target for click actions (#1731)
- β [RUMF-1379] use experimented CSS selectors strategies by default (#1738)
- π [RUMF-1369] Exclude error message from stacktrace parsing (#1725)
- π [RUMF-1384] Filter abnormal TTFB values (#1729)
- π [RUMF-1378] do not mask action name attributes (#1721)
- βοΈ [RUMF-1378] use stable attributes when computing heatmap selector (#1724)
- βοΈ [RUMF-1379] heatmaps: refine selectors pass 2 (#1726)
- βοΈ [RUMF-1351] tweak retry strategy (#1723)
- βοΈ [RUMF-1351] retry request on timeout (#1728)
- β¨ [RUMF-1286] test for expected features before starting recording (#1719)
- β¨ [RUMF-1371] Collect view time to first byte (#1717)
- π Fix
actionNameAttribute
broken link (#1708) - βοΈπ [RUMF-1351] add error when reaching max events size queued for upload (#1716)
- βοΈπ [RUMF-1351] retry: add extra context to queue full log (#1714)
- βοΈβ¨[RUMF-1351] experiment request retry strategy (#1700)
- π [RUMF-1333] fix keepalive support check (#1712)
- β¨ [RUMF-1306] Send the tracing sample rate in rule_psr for resources (#1669), (#1705)
- β¨ [RUMF-1333] Send request with fetch keepalive + fallback (#1701), (#1682)
- β¨ [RUMF-1309] Implement nested CSS support (#1699)
- π Fix instrumention of null function with 3rd party wrapper (#1570) (#1697)
- π [RUMF-1344] scroll positions: remove fallback for null scrollingElement (#1694)
- βοΈ [RUMF-1356] selectors using stable attributes and no class names (#1689)
- π· [RUMF-1357] Add a peer dependency between rum and logs packages (#1668)
- π [RUMF-1344] try to improve document scrolling element handling (#1688)
- β¨β [RUMF-1355] add selector with stable attributes (#1684)
- β¨ [RUMF-1315] Extend user object methods (#1641)
- β‘[RUMF-1344] Serialize scroll positions only for full snapshots (#1670)
- β‘ [RUMF-1344] Access scroll attributes only on initial full snapshot (#1680)
- βοΈ [RUMF-1346] heatmaps: move action event attributes (#1667)
- π [RUMF-1239] Hide placeholder value when privacy set to mask (#1660)
- π fix compatibility check (#1685)
- π [RUMF-1274] track request to undefined/null URL (#1665)
- β¨ [REPLAY-898] Recording Frustration signals (dead, error & rage clicks) for session replay (#1632)
- π [RUMF-1310] handle extra stacktrace parsing cases (#1647)
- π improve
jsonStringify
implementation (#1653) - π [RUMF-1335] fix incorrect string escape (#1651)
- π frustration signals: track window open (#1631)
- π [RUMF-1327] rum synthetics: fix logs session conflict (#1629)
- π Add feature flags to telemetry events (#1625)
- β¨[RUMF-1314] Expose a DD_LOGS.getInternalContext (#1626)
- π [RUMF-1273] fix BUILD_MODE scope (#1627)
- β¨ [RUMF-1211] release Frustration Signals publicly (#1617)
- π [RUMF-1294] ignore dead clicks based on the click event target (#1610)
- π Fixing intrapage broken links (#1613)
- π Removes Extra Link (#1612)
- π [RUMF-1297] frustration signals: track input changes (#1603)
- π DOCS-2277 Browser Monitoring Edits (#1572)
- π [RUMF-1209] frustration signals: track selection change (#1596)
- β¨ Enable service and version update on startView (#1601)
- π [RUMF-1305] forbid the usage of
Date.now
(#1600) - π Clear batch before send to allow telemetry in httpRequest.send (#1594)
- ββ¨ [RUMF-1288] Collect viewport size (#1584)
- π [RUMF-1303] stop forwarding network errors when forwardErrorsToLogs is false (#1591)
- β»οΈ Simplify RUM assembly (#1588)
- π·οΈ adjust types to allow updating the SDK in Datadog app (#1587)
- [RUMF-1280] collect click position (#1566)
- π·οΈ [RUMF-1256] adjust StyleSheetRule records to support index paths (#1571)
- π [RUMF-1267] resolve remaining cyclic dependencies related to telemetry (#1567)
- π Browser Monitoring Edits (#1563)
- β»οΈ [RUMF-1190] cleanup telemetry (#1560)
- β»οΈ [RUMF-1267] remove circular dependencies part 1 (#1559)
- β»οΈ [RUMF-1277] rename frustration types (#1557)
- β¨ [RUMF-1262] ignore some URLs when watching the page activity (#1536)
- β¨ [RUMF-1191] enable telemetry on us1 site (#1554)
- β¨ [RUMF-1191] enable telemetry on eu site (#1551)
- β¨ [RUMF-1264] scrub customer frames from telemetry errors (#1546)
- π Fix dependency issue (#1549)
- β¨ enable telemetry on us5 site (#1540)
- β¨[RUMF-1253] add
tracingSampleRate
option (#1526) - βοΈβ¨ [RUMF-1258] stop ongoing action on view end (#1528)
- π [RUMF-1259] support Zone.js < 0.8.6 (#1530)
- β¨ add a button to clear events in the developer extension (#1527)
- ββ¨ [RUMF-1210] add a
trackFrustrations
initialization parameter (#1524) - β¨[RUMF-1257] prevent dual shipping of telemetry events (#1523)
- β¨ [RUMF-1251] allow to enable telemetry by site (#1520)
- β¨ Upgraded console logger to log the proper levels (#1501)
- β»οΈ [RUMF-1178] New logger assembly flow (#1497)
- ββ¨ [RUMF-1209] introduce "dead" and "error" frustration types (#1487)
- ββ¨ [RUMF-1209] collect rage clicks (#1488)
- ββ¨ [RUMF-1214] implement frustration signals counters (#1511)
- π [RUMF-1240] fix attribute mutating to an empty value (#1512)
- βοΈ [RUMF-1182] add telemetry sample rate (#1510)
- π‘ Update links to api key docs (#1508)
- β¨ [RUMF-1192] forward Reports to Datadog (#1506)
- β¨ [RUMF-1192] forward
console.*
logs to Datadog (#1505) - π fix documentation for
proxyUrl
documentation (#1503) - β¨ [RUMF-1237] The event bridge allowed hosts should also match subdomains (#1499)
- π add
replaySampleRate
to README examples (#1370)
- π Adjust records generated during view change so their date matches the view date (#1486)
- ββ¨ [RUMF-1224] remove console APIs prefix (#1479)
- β»οΈ [RUMF-1178] improve logs assembly part 2 (#1463)
- ββ¨ Allow update service version with start view (#1448)
- ββ¨ [RUMF-1208] don't discard automatic action on view creation (#1451)
- ββ¨ [RUMF-1207] collect concurrent actions (#1434)
- β»οΈ [RUMF-1207] collect concurrent actions groundwork - move action history closer to action collection (#1432)
Note: The Logs Browser SDK 3.10.1 (released on December 21th, 2021) unexpectedly changed the initialization parameter forwardErrorsToLogs
default value from true
to false
. This release restores the default value to true
, so Logs Browser SDK users who don't specify this parameter will have errors forwarded as logs.
- π [RUMF-1217] restore forwardErrorsToLogs default value to
true
(#1433) - π [RUMF-1203] fix
stopSessionReplayRecording
instrumentation cleanup (#1442) - β»οΈ π [RUMF-1178] fix logs displayed twice in the console (#1425)
- π Update browser config to include SDK version (#1380)
- π fix build-env replacement in npm packages (#1389)
- π¦ [RUMF-1162] update developer-extension (#1379)
- π₯ [RUMF-1198] remove problematic and useless code from the DeflateWorker (#1378)
- βοΈβ¨ [RUMF-1175] collect reports and csp violation (#1332)
- βοΈ [RUMF-1181] collect telemetry events (#1374)
- π Update documentation (#1362)
- β»οΈ [RUMF-1181] preliminary refactorings for telemetry events collection (#1371)
- π¨ Avoid template syntax when not needed (#1372)
- π¦ [RUMF-1168] update typescript (#1368)
- β‘οΈ [RUMF-1171] prefer const enums (#1364)
- π₯ Clear remaining code of network error removal (#1367)
- β‘οΈ Process buffered performance entries in an idle callback (#1337)
- β‘οΈ [RUMF-1043] remove TSLib dependency (#1347)
- βοΈβ¨[RUMF-1188] add telemetry event types (#1353)
- β‘οΈ [RUMF-1115] throttle view updates by addTiming (#1355)
- π Update the configuration of the Browser Sessions (#1322)
- β¨ [RUMF-1177] add index_in_view to segment meta (#1342)
- β¨ [RUMF-1103] enable RUM tracking inside mobile webviews (#1333)
- β [RUMF-1176] collect other console logs new (#1316)
- β¨ [RUMF-1180] add
error.source_type
attribute (#1328) - β‘οΈ [RUMF-1169] cleanup compute stack trace (#1335)
- π [RUMF-1079] limit session inconsistencies issue on chromium browsers (#1327)
- β¨ [RUMF-1135] expose SDK version through global variable (#1278)
- β¨ [RUMF-1174] forward event to bridge with rum type (#1309)
- π [RUMF-1153] fix initial view loading time computation (#1315)
- β [RUMF-1079] restrict cookie-lock to chromium browsers (#1283)
- β‘οΈ [RUMF-1113] Notify performance entries by batch (#1255)
- π [RUMF-1147] Implement TextEncoder().encode fallback for replay encorder (#1269)
- β¨ [RUMF-1146] add 'source:browser' to all RUM events (#1271)
- β‘οΈ [RUMF-1111] limit the number of bytes read from the response (#1264)
- β¨ [REPLAY-564] enable visual viewport recording (#1247)
- π add clarification to config example (#1268)
- β‘οΈ [RUMF-1111] compute response text in trackNetworkError (#1263)
- π [RUMF-1137] replace major changes description by links to the upgrade guide (#1265)
- β [RUMF-1079] tweak max number of lock retries (#1262)
- π [RUMF-1143] make sure to drop LCP timings if the page was previously hidden (#1259)
- βπ [RUMF-1079] add lock mechanism for session cookie writes (#1230)
- β¨ [RUMF-1119] Implement dual ship for other orgs (#1248)
- β¨ [RUMF-1109] Add event rate limiters for loggers (#1243)
- β‘οΈ [REPLAY-565] β»οΈ Remove URL "relative to absolute" transformation (#1244)
- π let the backend to most of the tags sanitization (#1252)
- π remove child with action-names innerText instead of replacing them (#1251)
- π Add module convention to contributing (#1240)
- β‘οΈ [RUMF-1030] Decrease BoundedBuffer limitation to 500 (#1242)
See our upgrade guide for a comprehensive list of breaking changes introduced by this major version.
- π₯ improve privacy computation on a single node (#1226)
- π₯ [RUMF-1098] move init options into their related interfaces (#1232)
- π₯ [RUMF-1093] deprecated proxyhost option (#1227)
- π₯ [RUMF-1124] Use the programmatic action attribute instead of innertext (#1200)
- π₯ [RUMF-1094] remove deprecated privacy attributes (#1224)
- π₯ [RUMF-1092] use a WeakMap to store XHR context (#1222)
- π₯ [RUMF-1090] update minimal version to 3.8.2 (#1219)
- π₯ [RUMF-827] sanitize tags (#1218)
- π₯ [RUMF-1089] Cleanup legacy intake URLs (#1214)
- β¨ [ci-visibility] Link CI Visibility and RUM (#1192)
- β»οΈ [RUMF-1097] revamp configuration - rum (#1221)
- π [RUMF-1122] fix view updates while session is expired (#1228)
- π Fix proxy url intake detection (#1223)
- β»οΈ [RUMF-1097] revamp configuration - logs (#1217)
- β» [RUMF-1097] revamp internal configuration - core (#1216)
- β»οΈ [RUMF-1083] rework session management API (#1197)
- β»οΈ [RUMF-1083] introduce session context history (#1187)
- β»οΈ [RUMF-1083] rework session cookie cache (#1180)
- π remove readonly from all LogsEvent properties (#1198)
- ββ¨ [RUMF-1085] implement the
synthetics.injected
field (#1194) - ββ¨ [RUMF-1047] implement a RUM synthetics entry point (#1188)
- β¨ [RUMF-1082] enable record-at-dom-loaded (#1182)
- π improve site parameter doc (#1189)
- ββ¨ [RUMF-1071] forward internal monitoring to bridge (#1177)
- ββ¨ [RUMF-1070] forward logs event to bridge (#1155)
- β [RUMF-1068] Forward browser_sdk_version to mobile (#1162)
- π add details about sampling configuration (#1186)
- ββ¨ [RUMF-1084] ignore init if a RUM instance is or will be injected by synthetics (#1170)
- β [RUMF-1082] start recording when the DOM is ready (#1164)
- π [RUMF-1077] use cookies to get Synthetics context (#1161)
- β¨ [RUMF-1074] bridge host checking (#1157)
- β[REPLAY-341] Add VisualViewport tracking (Pinch Zoom) (#1118)
- β¨ [RUMF-1067] forward rum event to bridge (#1148)
- π [RUMF-1062] fix support for Safari 11.0 (#1154)
- π [RUMF-1075] add missing initialization parameters (#1152)
- π [Internal monitoring] use monitoring api key for monitoring requests (#1147)
- π [RUMF-1060] fix failing worker detection in Firefox (#1139)
- π Do not trace requests when the session is not tracked (#1131)
- π [RUMF-1041] add lcp info on view events (#1129)
- π [RUMF-1021] remove monitoring on cookie (#1132)
- π Discard views and actions with negative loading time (#1122)
- β»οΈ [RUMF-1046] instrument method implementation (#1117)
- π [RUMF-1021] improve cookie monitoring (#1120)
- [RUMF-1045] rely on browser detection to check for innerText support (#1110)
- β[REPLAY-341] Add VisualViewport tracking (Pinch Zoom) (#1089)
- π [RUMF-1040] Remove long task for lite plan (#1103)
- β [REPLAY-465] Base tag support (feature flagged): Remove URL transformation from relative to absolute (#1106)
- π [RUMF-1036] Add negative loading time internal monitoring (#1095)
- π [RUMF-1021] fix regression on renew session (#1096)
- π [RUMF-1033] request parameters into proxy url (#1087)
- [RUMF-1034] allow passing
undefined
options to RUM and Logs init (#1082) - π [RUMF-1021] add extra monitoring on session type change (#1091)
- β¨ [RUMF-1000] add a custom time parameter to
addTiming
(#1079) - π [RUMF-1021] clear cookie cache before expanding cookie (#1080)
- [REPLAY-328][rumf-1035] gracefully handle recorder Worker initialisation crash (#1068)
- π Add monitoring on session type change (#1075)
- π Add extra monitoring info on lite session with replay (#1072)
- β‘ [RUMF-1022] remove
__sn
property in nodes (#1069) - β»οΈ [RUMF-1015] use the url corresponding to the start of the event (#1063)
- β¨ Add rate limit on actions (#1058)
- β¨ Remove focus feature flag (#1053)
- β¨ [RUMF-1029] remove the limit on view.loading_time (#1054)
- β¨ Discard long FCP and LCP (#1045)
- π Add proxyUrl option documentation (#1050)
- β‘οΈIntroducing new max for foreground periods (#1032)
- π [RUMF-976] add info to monitor failing xhr fallback (#1035)
- π MutationObserver bug fix for privacy level (#1038)
- ForegroundContext: Remove monitoring & ignore untrusted events (#1029)
- β¨ [RUMF-992] New CLS implementation (#1026)
- π [RUMF-1005] Fix dd-request-id endpoint query param (#1018)
- β¨ [RUMF-993] New proxy strategy (#1016)
- π [RUMF-1012] fix console.error loop on npm setup (#1027)
- π [REPLAY-371] Truncate long "data:" URIs (#1021)
- β¨ [RUMF-994] support intake v2 (#1013)
- β¨ [RUMF-998] introduce the initialPrivacyLevel configuration option (#1004)
- π [RUMF-997] dont take a FullSnapshot on view creation during session renew (#1011)
- π prevent recording to start when session renewed before onload (#1009)
- β¨ [RUMF-996] set synthetics ids on RUM events (#1007)
- ββ¨[REPLAY-336] Privacy by Default (#951)
- ββ¨ [REPLAY-379] add replay stats on view (getter edition) (#994)
- π Update Readme for v3 cdn links (#999)
- π[RUMF-990] restore global check to detect synthetics sessions (#997)
- β¨[RUMF-970] enable buffered PerformanceObserver (#995)
- Limit log monitoring + add more details (#990)
- ποΈ Remove deprecated trace endpoint (#992)
- β [RUMF-970] Buffered PerformanceObserver: add fallback for older browsers (#978)
- β [RUMF-971] experiment to detect when the computer goes to sleep (#976)
- π [RUMF-971] add some context on suspicious LCP and FCP monitoring (#979)
Note: this is the first 3.x release for the Logs SDK. See migration notes in v3.0.0.
- ππ deprecate the XHR context, to be removed in V4 (#973)
- β [RUMF-970] experiment with buffered PerformanceObserver (#972)
- π [RUMF-984] update CHANGELOG for logs breaking changes (#971)
- β¨ [RUMF-974] use user-agent to detect synthetics sessions (#969)
- π₯ [RUMF-982] remove deprecated LogsUserConfiguration type (#968)
- π₯ [RUMF-981] remove deprecated logs options (#967)
- π document
trackViewsManually
option (#965)
- [RUMF-972] Revert "π₯ always use alternative domains for RUM (#944)" (#963)
- π update CDN URLs for V3 (#962)
- π fix recording session renewal (#955)
See our upgrade guide for a comprehensive list of breaking changes introduced by this major version.
- π₯ always use alternative domains for RUM (#944)
- π₯ remove deprecated rum init options (#940)
- π₯ remove deprecated types (#942)
- π₯ [RUMF-951] merge rum-recorder into rum (#941)
- π· [RUMF-937] create the rum-slim package (#935)
- π₯ remove deprecated RUM.addUserAction (#939)
- β¨ [RUMF-940] implement the replay sample rate option and remove resource sample rate option (#931)
- π₯ Remove addError 'source' argument (#936)
- π· Versioned CDN files (#932)
- π· Increase browser cache to 4 hours (#933)
- π ensure that test cookie is correctly deleted after the test (#927)
- π add
actionNameAttribute
initialization parameter (#923)
- β¨ [RUMF-928] enable manual view tracking (#924)
- β¨ [PROF-3535] expose init configuration via
getInitConfiguration()
API (#897)
- β¨ [RUMF-932] allow context edition in logs beforeSend (#909)
- β¨ [RUMF-945] allow users to customize the attribute used to define the action name (#919)
- π fix new view segment starting with an IncrementalSnapshot (#908)
- π [REPLAY-325] add verbose error details on XHR transport failure (#902)
- β¨ [RUMF-920] keep trace id on aborted requests (#898)
- β¨ [RUMF-922] stack trace on handled calls (#889)
- π [RUMF-931] check if PerformanceEntry is defined before using it (#891)
- β¨ [RUMF-921] differentiate handled and unhandled errors (#886)
- π [RUMF-876] Improve proxy behavior for xhr reuse (#865)
- β manual view mode: create new view on renew session (#887)
- β¨ [RUMF-909] add beforeSend context (#883)
- β¨ [RUMF-909] allow event context edition in beforeSend (#869)
- π[RUMF-927] monitor timings with high values (#884)
- β [RUMF-878] add trackViewsManually option (disabled) (#867)
- π monitor potential invalid date (#880)
- β‘οΈ start mutation observer only when needed (#858)
- π¦ bump ws from 7.4.2 to 7.4.6 (#875)
- β¨ track foreground (#854)
- β¨ add id on rum events (#873)
- π do not break the recorder when an URL fails to parse (#871)
- π [REPLAY-312] use unpatched MutationObserver object (#866)
- π ignore full snapshots taken before "load" event (#861)
- ββ¨ [RUMF-878] add startView API (#850)
- π·οΈ update events format (#864)
- β¨ [RUMF-913] allow masking input values (#860)
- β¨[RUMF-889] enable system clock usages (#845)
- π [logs] Fix IE11 console.log issue (#852)
- β¨[RUMF-907] Use unaltered console functions when displaying console messages (#847)
- β¨[RUMF-910] handle logs console and http simultaneously (#844)
- β‘οΈ [RUMF-902] enable new mutation observer (#842)
- β¨[RUMF-908] attach current drift value to events (#843)
- β¨ Clear previously set user context (#840)
- π add a warning in the RUM-recorder readme (#838)
- π Restructure tables in docs page for improved readability (#835)
- π¦ [RUMF-905] update vulnerable dependencies (#836)
- β‘οΈ [RUMF-896] process mutations asynchronously (#832)
- π [RUMF-870] Max errors threshold should not take into account errors excluded by beforeSend (#828)
- β¨ [RUMF-901] allow to run the 'performances' script with rum-recorder (#818)
- βπ allow 1 ms error for matching request (#824)
- βπ [RUMF-889] apply correction only for positive drift (#821)
- ββ‘οΈ [RUMF-902] implement a new mutation observer (#810)
- π [RUMF-900] clear parent view context when view end (#816)
- π [RUMF-900] prevent events to be sent from expired session (#814)
- βπ [RUMF-889] fix relative time rounding (#817)
- β [RUMF-889] use preferred clock (#809)
- [RUMF-868] ignore paramaters stored in the hash (#792)
- π fallback to xhr when sendBeacon throws (#796)
- π [RUMF-886] don't start recording when 'postpone_start_recording' is enabled (#790)
- π [RUMF-882] Segments can be flushed because of the max_size limit even if the max_size isn't reached (#787)
- β¨ [RUMF-863] Enable console error with stack traces (#781)
- β [RUMF-869] Ensure the "Focus" records are emited in the same segment as the "FullSnapshot" (#779)
- β [RUMF-853] introduce a feature flag for aborted network errors (#777)
- β [RUMF-853] don't emit error for requests aborted by the application (#768)
- β [RUMF-867] implement stop recording (#771)
- β [RUMF-857] round CLS to 4 decimals (#773)
- π Revert negative FID monitoring and adjust to 0 (#775)
- β [RUMF-866] adjust postpone start recording (#769)
- π [RUMF-862] fix export MediaInteractions enum (#761)
- β [RUMF-863] rework console error calls containing error instances (#762)
- π [RUMF-855] discard negative first-input delays (#758)
- β performance impact summary tool (#755)
- β [RUMF-858] add monotonic batch time (#748)
- β¨ [RUM] Catch errors thrown by user callbacks (#745)
- π Doc: remove resourceSampleRate (#747)
- π [REPLAY-187] flush pending records before taking a fullsnapshot (#742)
- β¨ [RUMF-854] Enable beforeSend to dismiss events (#743)
- β [RUMF-815] import RRWeb integration tests (#738)
- β¨ [RUMF-847] Add onNewLocation to configuration (#724)
- β Remove mutation buffer global instance (#728)
- β replay: set data-dd-privacy attribute on snapshot node if hidden (#726)
- β replay: add dd-privacy attribute for obfuscation & ignoring input (#715)
- β [RUMF-843] monitor rrweb codebase (#721)
- β‘οΈ Remove unused parameters (#723)
- β [RUMF-823] monitor deflate worker (#722)
- π recorder: remove forEach polyfills (#719)
- β [RUMF-821] remove unused record types (#717)
- βπ [RUMF-834] fix loop direction (#714)
- ββ‘οΈ [RUMF-841] remove session renew support in rum recorder (#713)
- ββ¨ [REPLAY-149] implement ViewEnd record (#711)
- β¨ Allow logs collection on file:// URL (#709)
- π[RUMF-836] sanitize unsupported characters in timing name (#706)
- rum-recorder: import rrweb-snapshot code (#700)
- [REPLAY-164] track Focus records (#707)
- β¨[RUMF-820] expose API to add custom timings to the current view (#702)
- π·[RUMF-324] Replace TSLint with ESLint (#681)
- β»οΈ Remove automatic snake case (#699)
- β¨ [RUMF-826] Allow classic intake only for us and eu (#694)
- [recorder] set 'hasReplay' to undefined by defaultb (#697)
- [RUMF-819] postpone start recording (#688)
- β¨[RUMF-802] add support for capacitor app stack traces (#685)
- π[RUMF-824] support Request instances in tracing (#684)
- π[RUMF-809] URL encode tags in intake requests (#689)
- β[RUMF-804] implement a minimal version of the recorder (#670)
- β Implement addTiming (#668)
- π [RUMF-810] force alternate intake for us3 (#677)
- β¨ [RUMF-783] collect view.first_input_time (#676)
- β Create a rum-core package (#673)
- β [RUMF-803] import RRWeb (#658)
- β [RUMF-801] create a new package for rum-recorder (#657)
- π [CDN cache] remove stale-while-revalidate (#665)
- β¨ [RUMF-794] Add isActive attribute to view events (#648)
- π handle direct onerror calls with objects (#659)
- π sanitize error properties even when there is a valid stack (#655)
- π fix tracekit handling of exotic errors (#651)
- π₯ [RUMF-730] prefer object and type alias over enum in APIs (#630)
- π₯ [RUMF-730] use v2 events format (#627)
- πβ‘οΈ [RUMF-793] tweak the cache-control header (#642)
- β¨ [RUMF-764] Use new intake domain for US (#616)
- β¨ [RUMF-770] Disable tracing for cancelled requests (#635)
- π [RUMF-791] prevent IE11 performance entry error (#633)
- β¨ [RUMF-777] implement Cumulative Layout Shift (#628)
- β¨ [RUMF-776] implement First Input Delay (#626)
- β¨ [RUMF-775] implement Largest Contentful Paint (#624)
- β¨ [RUMF-758] keep internal context in v1 format (#625)
- β¨ [RUMF-780] implement track first hidden (#621)
- β¨ [RUMF-771] Add getLoggerGlobalContext and getRumGlobalContext (#614)
- β¨ [RUMF-762] include the context when using console handler (#613)
- Revert "βοΈ[RUMF-766] add match request timing debug infos (experimental) (#609)" (#612)
- βοΈ[RUMF-766] add match request timing debug infos (experimental) (#609)
- [RUMF-766] prevent request duration override by wrong matching timing (#604)
- β»οΈ [RUMF-748] cleanup add user add action events (#602)
- π Fix unit test format validation (#598)
- [RUMF-748] use RAW_RUM_EVENT_COLLECTED to compute event counts (#596)
- [RUMF-729] validate rum events in e2e (#597)
- [RUMF-756] cyclic reference support in Context (#595)
- β¨[RUMF-518] migrate internal context to v2 format (experimental) (#593)
- β¨[RUMF-740] migrate error to v2 format (experimental) (#592)
- [logs] add choose the right installation method (#594)
- β¨ [RUMF-724] implement API to capture an error (#585)
- β¨ [RUMF-739] migrate action to v2 format (experimental) (#588)
- β¨ [RUMF-738] migrate view to v2 format (experimental) (#586)
- β¨ [RUMF-737] migrate resource to v2 format (experimental) (#584)
- π [RUMF-745] fix V2 context (#579)
- π Added async installation method (#571)
- π DOCS-1257 Browser Log Collection (#575)
- π [RUMF-742] fix cookie creation domain when trackSessionAcrossSubdomains: true (#573)
- β¨ [RUMF-727] introduce v2 format (experimental) (#570)
- π Use the same options to test and set cookies (#555)
- β¨ [RUMF-534] implement logs.onReady and rum.onReady (#564)
- π [Core] dereference
combine
sources recursively (#560) - β¨ [RUMF-530][rum] allow using RUM API before init (#551)
- π[RUMF-716] fix invalid action name (#557)
- π consider proxy host with custom path request as intake request (#550)
- β¨ [RUMF-530][logs] allow using logs API before init (#545)
- β¨ [RUMF-709][core] support 'null' as a context value (#546)
- π [RUMF-620]: Dual-ship "service" as tag and attribute (#543)
- π [RUMF-699] allow collecting requests with the same origin as the proxy (#537)
- π include sources in NPM backage (#535)
- π fix issue when using proxy (#530)
- π [RUMF-650] exclude intake request from performance/request collection (#528)
- β¨ [RUM] add new functionality to remove global context to SDK (#527)
- π [RUMF-670] wait for the DOM to be ready before getting the trace id (#525)
- β¨ [RUMF-648] add cookie configuration options (#523)
- π [RUMF-684] fix error collection when Logs and RUM configuration diverge (#522)
- β¨ [RUMF-634] add resource id for traced request (#515)
- π [RUMF-617] fix missing headers on traced requests (#517)
- β¨ [RUMF-617] integrate tracing from rum (#511)
- π [RUMF-645] do not track intake request errors (#506)
- β¨ [RUMF-621] set view referrer to the previous view URL (#507)
- β¨ [RUMF-636] initial document trace id (#492)
- π [RUM] do not return internal context if the session is untracked (#498)
- π [RUM] fix loading measures conversion to nanoseconds (#490)
- π [RUMF-622] attach loading measures to initial view (#479)
- π [RUMF-639] xhr proxy: do not instrument xhr already opened (#484)
- β¨ [RUMF-626] use site configuration and deprecate suffixed bundle (#476)
- β¨ Update context api to include removeContext method (#478)
- [RUMF-617] Extract XHR and Fetch proxies (#468)
- β¨ [RUMF-592] support for hash navigation (#467)
- π [RUMF-625] make sure view url doesn't change (#469)
- β¨ [RUMF-605] enable event association to parent context by start date (#460)
- β¨ [RUMF-605] associate event to parent context by start date (behind flag) (#445)
- π fix current action context reset on custom action (#444)
- β»οΈ [RUMF-604] introduce parentContexts to return current contexts (#440)
- β¨[RUMF-603] Introduce and use new lifecycle events (#438)
- β¨[RUMF-609] export Datacenter enum from logs and rum (#436)
- π use Datacenter enum in setup doc (#435)
- β¨[RUMF-594] specify same site attribute on cookies (#431)
- β¨[resources] resolve .ico resources as kind:image (#428)
- π[RUMF-559] prevent event without sessionId (#425)
- β¨[RUMF-513] enable keep alive mechanism (#421)
- π·[build] improve core tree-shaking (#417)
- β‘οΈ[RUMF-510] Improve sizeInByte calculation performance (#413)
- β¨[RUMF-513] add a session keep alive mechanism (#394)
- β¨ [RUMF-549] add an option to enable the user interaction tracking (#414)
- β¨ [RUMF-385] implement a declarative API to set the action names (#412)
- β¨ [RUMF-385] improve click action naming (#406)
- π· [RUM] add application id as query parameter (#405)
- π· Removing lodash dependencies (#396)
- β¨[RUMF-473] collect view loading time in ns and integrate the load event timing in the loading time calculation (#401)
- β¨[RUMF-373] Add View load duration and load type (#388)
- β¨[RUMF-465] collect client service, env and version (#392)
- β»οΈ[RUMF-471] rename version (#382)
- [RUMF-447]: Only collect first-contentful-paint if page is visible (#361)
- π[RUMF-451] compute session type for each event (#375)
- π [RUM] fix angular compatibility (#376)
- π [RUM] fix view update after its end (#373)
- Change view logic to emit LifeCycle events (#366)
- [RUMF-441] Track event counts for user actions (#358)
- β¨[RUMF-430] enable new session strategy (#360)
- π[RUMF-383] fix custom user action type case (#356)
- β¨[RUMF-43] add proxyHost init option (#354)
- β¨ [RUMF-438] add user action reference to the internal context (#352)
- β¨[RUMF-435] add session type on all events (#347)
- π[RUMF-431] fix CSP issue with global object strategy (#345)
- β¨[RUMF-430] new session strategy (disabled) (#343)
- β¨[RUMF-383] automatic click user action collection (disabled) (#338)
- π₯[RUMF-430] stop maintaining old cookies (#342)
- β¨[RUMF-430] new session cookie format (#337)
- π [RUMF-430] fix rollback (#334)
- π₯ [RUMF-430] handle potential session rollback (#329)
- πfix feature check (#320)
- π[RUMF-408] add new session check logs (#318)
- [RUMF-407] improve resource timings collection (#315)
- π§ improve CBT test names (#314)
- [RUMF-382] prepare support for multiple feature flags (#312)
- π§ update cbt chrome mobile (#313)
- β¨add an option to silent multiple Init errors (#310)
- π replace console.error by console.warn when cookies are not supported (#307)
- π upgrade vulnerable packages (#306)
- π[RUMF-403] fix checkURLSupported (#302)
- β add cbt error case (#299)
- [RUM] enable request with batch time by default (#297)
- π[RUMF-396] try to fix view date shift (#295)
- π[RUMF-320] Remove url-polyfill dependency (#294)
- β¨[RUMF-375] do not collect irrelevant timings (#292)
- π[RUMF-266] xhr tracker: add fallback on event listener (#287)
- βοΈ[RUMF-371] add batch time to rum intake requests (#285)
- π[RUMF-266] fix xhr incorrect status reported on late abortion (#283)
- π[RUMF-330] fix intake requests exclusion (#281)
- β¨[RUMF-315] collect initial document timing (#276)
- β¬οΈ Bump codecov from 3.6.1 to 3.6.5 (#277)
- β¨[RUMF-342] use startTime for events timestamp (#275)
- β¨[RUMF-264] add compatibility with server side rendering (#273)
- π§ add repository link for each package (#271)
- π [RUM] fix retrieving early timings (#268)
- π[RUMF-257] remove logging (#265)
- π [RUMF-71] do not report negative performance timing duration (#264)
- [MRO] update Node version (#263)
- β¨ [Browser SDK][rum-291] Allow logs when cookies are disabled (#255)
- π[RUMF-257] rework logging (#261)
- π[RUMF-308] do not track session without id (#260)
- π add check-licenses script (#258)
- π [RUMF-71] add internal logs messages when an abnormal duration is spoted (#251)
- π[RUMF-257] report abnormal performance.now() (#254)
- β [e2e] wait for browser url loaded (#253)
- π[RUMF-293][fetch] handle fetch response text error (#252)
- π[jsonStringify] do not crash on serialization error (#242)
- π[init] remove deprecate prerender check (#240)
- π· [TypeScript] ensure 3.0 minimal support (#237)
- β [e2e] cleaner tests (#233)
- π§[coverage] setup codecov (#232)
- π[e2e] add extra logging (#231)
- π₯[rum/logs] remove outdated attributes (#230)
- β»οΈ[e2e] wait request to reach server before assertions (#229)
- β‘οΈ[batch] limit view update events (#228)
- π[e2e] output server response in logs (#226)
- π§[e2e cbt] add retry case (#227)
- π[e2e] output test server log (#225)
- π§[e2e] fix local tests on chrome 79 (#224)
- [RUMF-188] add traceId to fetch calls (#221)
- π [RUMF-201] use timing.navigationStart to compute fake timings (#217)
- β fix e2e cbt tests on Edge (#222)
- ππ [RUMF-201] add internal logs for abnormal timeOrigin (#219)
- π§[e2e cbt] setup retry (#218)
- π[types] do not globally override ts types (#215)
- [RUMF-201] add debug monitoring for navigation timing entries (#214)
- [RUMF-158] fix view id associated to different session id (#211)
- π§[packages] add scripts to release & publish (#212)
- π[packages] improve README.md (#209)
- π§[packages] force exact version (#208)
- π[ci] publish npm packages on tag (#207)
- β¨[packages] allow to publish publicly (#206)
- ππ [RUMF-201] add internal logs for buggy load event measures (#204)
- β¨[packages] use new names (#203)
- β¬οΈ[security] fix alert by upgrading webpack (#202)
- [e2e cbt] add android browser (#200)
- π[gitlab] use new project name (#199)
- π[request] do not consider opaque response as error (#197)
- β [e2e cbt] add edge and firefox (#196)
- β [e2e cbt] make scenarios compatible with safari (#195)
- β [karma cbt] add retry for UnhandledException (#194)
- π[request] do not monitor xhr.send monkey patch (#193)
- π₯[RUM] remove deprecated count (#192)
- β¨[init] add extra checks (#191)
- π[core] ensure that document.cookie is not null (#190)
- β¨[RUM] add view resource count (#189)
- β¨[RUM] do not snake case user defined contexts (#188)
- π[Readme] Remove deployment part (#187)
- Rename repository (#186)
- β¨[RUM] exclude trace intake requests (#185)
- π[RUM] fix wrong url on spa last view event (#184)
- π[license] update third parties (#183)
- π§[ci] fix cbt fail on release (#182)