Update dependency posthog-js to v1.425.1 - #334
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
Contributor
Author
|
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
August 20, 2026 15:55
cdbe3a2 to
e2b64fa
Compare
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
August 20, 2026 21:55
e2b64fa to
65b6061
Compare
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
August 21, 2026 15:32
65b6061 to
38d57fe
Compare
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
August 25, 2026 12:46
38d57fe to
793275b
Compare
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
August 25, 2026 22:03
793275b to
1a3138b
Compare
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
August 26, 2026 11:45
1a3138b to
9a3076e
Compare
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
August 26, 2026 22:21
9a3076e to
e2c60ea
Compare
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
August 27, 2026 11:56
e2c60ea to
ffa44de
Compare
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
August 27, 2026 16:54
ffa44de to
a9c1e04
Compare
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
August 27, 2026 22:14
a9c1e04 to
c45c75c
Compare
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
August 28, 2026 12:51
c45c75c to
6cc1f3c
Compare
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
August 28, 2026 21:10
6cc1f3c to
e467100
Compare
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
September 1, 2026 18:13
e467100 to
2b95db8
Compare
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
September 1, 2026 22:08
2b95db8 to
49c673c
Compare
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
September 2, 2026 11:59
49c673c to
815e220
Compare
renovate
Bot
force-pushed
the
renovate/posthog-js-1.x-lockfile
branch
from
September 2, 2026 21:49
815e220 to
80824d7
Compare
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This PR contains the following updates:
1.363.6→1.425.1Release Notes
PostHog/posthog-js (posthog-js)
v1.425.1Compare Source
1.425.1
Patch Changes
#4731
9b4008aThanks @fasyy612! - fix(replay): re-adopt constructed stylesheets when a shadow host is removed and re-added mid-replay. An SPA navigation can detach and reattach the same web component element; the browser keeps its shadow root and adopted sheets, so the recorder (which already tracks that shadow root) emits no new AdoptedStyleSheet event. The replayer rebuilds the element with a fresh shadow root and previously dropped the adopted styles for the rest of playback, rendering the component unstyled. The replayer now remembers the last adopted styleIds per host and re-adopts them when the shadow root is rebuilt, in both live playback and fast-forward. Fixes playback of existing recordings.(2026-09-02)
#4744
77797c9Thanks @fasyy612! - fix(replay): keep recording through a session-id rotation when the persisted remote config is past its TTL. A rotation restart transits through stop() before start(), which made the config TTL check treat it as a cold boot: the stale config was discarded, start() bailed silently, and the recorder died with session attribution stuck on the old session id. The rotated session then shipped events with no initial full snapshot, producing recordings whose prefix cannot be played until something else restarted recording. Affects any rotation on a session older than one hour, most visibly posthog.reset() on logout. Cold-boot TTL behavior is unchanged.(2026-09-02)
v1.425.0Compare Source
1.425.0
Minor Changes
61a26e5Thanks @veryayskiy! - Forward generic server-signed identity claims with conversations widget requests.(2026-09-02)
Patch Changes
61a26e5]:v1.424.1Compare Source
1.424.1
Patch Changes
d90b3c5Thanks @posthog! - Prevent failed replay network body reads from escaping into the host page's ownfetch()call(2026-09-01)
v1.424.0Compare Source
1.424.0
Minor Changes
e87820aThanks @turnipdabeets! - Addos.nameandos.versionresource attributes to logs from the browser SDK, overridable vialogs.resourceAttributes(2026-09-01)
Patch Changes
e87820a]:v1.423.2Compare Source
v1.423.1Compare Source
1.423.1
Patch Changes
5931638Thanks @skvark! - Prevent stale session recorders from initializing after consent or session teardown, and dispose of recorders when switching to cookieless mode.(2026-09-01)
v1.423.0Compare Source
1.423.0
Minor Changes
#4663
6ae173fThanks @pauldambra! - Detect the Claude, Codex, and ChatGPT apps from their user agent markers:$browsernow reports the app name instead ofChrome.ChatGPT versions its apps differently per platform, so its
$browser_versionis not comparable across platforms. (2026-09-01)#4659
1406e04Thanks @marandaneto! - Synchronize feature flag and early access enrollment persistence across browser tabs. Keep successful partial evaluations authoritative for payload updates and removals, including falsy payload values, while retaining cached state for failed evaluations.(2026-09-01)
Patch Changes
#4696
aa72a36Thanks @github-actions! - Preferdata-ph-capture-attribute-*values from the closest element when the same property is defined on multiple ancestors.(2026-09-01)
#4683
6309cb2Thanks @posthog! - Harden the directly importablegetElementsChainStringutility against runtime JavaScript callers that pass a non-array value. It now returns an empty string instead of calling.mapon malformed input.(2026-09-01)
#4708
6723395Thanks @turnipdabeets! - Changebigintattributes on logs, metrics and spans to send as an int64 rather than as a string.(2026-09-01)
#4692
ec550b8Thanks @mhornbacher! - Respectnavigator.globalPrivacyControlwhenrespect_dntis enabled(2026-09-01)
#4697
6d6091eThanks @yfwmaniish! - Fix a memory leak in Session Replay recording:MutationBufferskipped its own cleanup whenever a mutation batch normalized to an empty payload (e.g. a node added and removed within the same task), leaving the buffer holding strong references to DOM nodes indefinitely.(2026-09-01)
#4672
0cddefeThanks @posthog! - Error tracking now drops a known uBlock Origin Lite exception thrown by its Safari extension. Safari masks extension content-script URLs aswebkit-masked-url://hidden/, but also uses that URL for application code, so the filter requires the extension's error signature before dropping an all-masked stack. A remaining unmaskedin_appframe still preserves the exception as first-party.(2026-09-01)
#4704
cee2280Thanks @veryayskiy! - back off support widget polling to stop starving sends(2026-09-01)
#4684
5874d1cThanks @yfwmaniish! - Fall back to in-memory storage when neither web storage nor cookies are available, instead of selecting a backend that cannot store anything. In contexts like adata:URL — a Figma plugin, for example — Chrome disables localStorage and cookies alike, and both the persistence and consent paths previously committed to an unusable store, logging a SecurityError on every capture.cookieStore._is_supported()now round-trips a probe cookie rather than only checking thatdocumentexists, andmemoryStoreno longer reports a stored falsy value (such as the0consent writes for "opted out") as absent.(2026-09-01)
#4662
e7f5733Thanks @posthog! - Warn at init whenpersistenceis'memory'or'sessionStorage'and nobootstrap.distinctIDis set. In this setup the SDK mints a fresh distinct ID on every page load, so eachidentify()call merges another ID onto the same person. A person can then pass the distinct-ID limit, after which person pages and the session tab load only a truncated slice and the rest of the events look missing even though ingestion is fine. The warning points at the two fixes: switch tolocalStorage+cookie, or keep this persistence and pass a stable ID throughbootstrap.distinctID.(2026-09-01)
#4682
5c6ab6fThanks @posthog! - Fix an uncaughtTypeErrorin the web vitals attribution bundle. The attributed INP observer readstartTimefrom the first entry without a guard, so a report with no entries (for example after a bfcache restore or soft navigation) threw and stopped the metric capture. Bumpweb-vitalsto 6.2.1, which guards the empty-entry case: instead of throwing, it reports the metric with fallback attribution that carries no interaction details (zeroed input and processing delays).(2026-09-01)
Updated dependencies [
444bf35,6ae173f,6309cb2,6723395]:v1.422.5Compare Source
1.422.5
Patch Changes
a895e7e]:v1.422.4Compare Source
1.422.4
Patch Changes
3c650a1Thanks @nandinitiw! - Re-translate popover surveys when the display language changes while the survey is on screen, either from a browserlanguagechangeevent or fromidentify()updating thelanguageperson property. In-progress answers are preserved.$survey_questions[].questionand$survey_languageonsurvey sent/survey dismissednow report the text and language the user saw when they answered, not the language active when the event fired. Feedback-button (widget) surveys are unchanged.(2026-08-28)
3c650a1]:v1.422.3Compare Source
1.422.3
Patch Changes
d0279e5Thanks @posthog! - Autocapture no longer throws aRangeErrorinto the host page when it sorts element attributes. It now sorts attribute keys with a plain lexical comparator instead oflocaleCompare, which can throw on browsers with faulty ICU data.(2026-08-28)
d0279e5]:v1.422.2Compare Source
1.422.2
Patch Changes
d5ef459Thanks @fasyy612! - Session replay can now bound DOM mutation bytes with an opt-in budget. Set__mutationBytesBucketSize(e.g. 1MB) to enable: mutations beyond the sustained budget (__mutationBytesRefillRate, default 25KB/s) are dropped and the recording resyncs with a full snapshot, keeping recordings from apps with very high DOM churn playable. Off by default.(2026-08-28)
d5ef459]:v1.422.1Compare Source
v1.422.0Compare Source
1.422.0
Minor Changes
db8687cThanks @posthog! - Report$sdk_debug_replay_throttled_mutations_droppedon captured events, counting the attribute changes the session recorder discarded during that session. The recorder throttles elements that change hundreds of times a second, and a discardedclassorstylechange never reaches the player — so a recording can keep showing an element the live page had already hidden. Query this property to see whether your app is affected.(2026-08-27)
v1.421.2Compare Source
1.421.2
Patch Changes
#4653
712223aThanks @posthog! - Fix request timeouts never firing on pages where a browser extension makesError.prototype.namenon-writable(2026-08-27)
#4036
718beeeThanks @emmayusufu! - Fixlogs.captureConsoleLogsset ininit()not enabling console autocapture, captureconsolecalls made before the logs script loads, and drop captured console records when the user opts out(2026-08-27)
#4036
718beeeThanks @emmayusufu! - Fix session replay and posthog-js leaving each other'sconsolewrapper in the call path when either one stops(2026-08-27)
Updated dependencies [
718beee,712223a]:v1.421.1Compare Source
1.421.1
Patch Changes
#4657
9c09bd4Thanks @marandaneto! - Use the best available compression for browser feature flag requests, preferring gzip when supported.(2026-08-27)
#4520
362d081Thanks @veksa! - DropsourcesContentfrom the source maps published to npm. The maps themselves still ship, so downstream source-map chaining and the//# sourceMappingURLreferences are unaffected — only the copy of our TypeScript sources embedded in each map is gone, taking the package from 40.8 MB to 17.4 MB unpacked. CDN artifacts are built separately and keep their inlined sources.(2026-08-27)
Updated dependencies [
7902e44,e899b1c]:v1.421.0Compare Source
1.421.0
Minor Changes
4f80973Thanks @robbie-c! - Add the2026-08-30config defaults. These defaults enable sanitized JSON-LD replay events.(2026-08-26)
Patch Changes
4f80973]:v1.420.0Compare Source
1.420.0
Minor Changes
0d2cf49Thanks @robbie-c! - Add opt-in Schema.org JSON-LD capture to session replay throughsession_recording.captureJsonLd. When enabled, the recorder emits sanitized JSON-LD as custom replay events and excludes all script elements from replay snapshots.(2026-08-26)
Patch Changes
#4635
ab1383aThanks @robbie-c! - Capture paste interactions with clipboard autocapture without collecting pasted text.(2026-08-26)
#4594
1d88b4eThanks @posthog! - Fix session replay playback ending when a recording contains a shadow host the browser refuses. The player now skips that one subtree instead of aborting the rebuild.(2026-08-26)
Updated dependencies [
ab1383a,0d2cf49]:v1.419.4Compare Source
1.419.4
Patch Changes
#4592
ca540f9Thanks @dustinbyrne! - Add typed stable-name lookup for installed browser extensions and use it when independently loaded survey code resolves feature flags.(2026-08-25)
#4533
53fcb2dThanks @dustinbyrne! - Fix console log autocapture silently failing when an olderposthog-jscore loads a newer logs bundle.(2026-08-25)
#4476
ed4dd97Thanks @posthog! - fix(browser): refresh configured feature flags when a hidden tab becomes visibleFeature flags now own their automatic refresh timer and visibility listener.
Hidden tabs reload due flags when they become visible. The existing five-minute
default and
remote_config_refresh_interval_msbehavior remain unchanged. (2026-08-25)Updated dependencies [
53fcb2d,ca540f9,ed4dd97]:v1.419.3Compare Source
v1.419.2Compare Source
1.419.2
Patch Changes
#4645
cb7cc12Thanks @turnipdabeets! - Type declarations no longer import theJSXnamespace fromreact, so they typecheck against@types/reactback to the declared 16.8.0 floor. Component return types are now spelledReactElement<any, any>, which is the definition ofJSX.Element— the same type, so consuming code is unaffected.JSXonly became an exported member of thereacttypes module in@types/react@18.2.6, so projects on older React types previously sawTS2305: Module '"react"' has no exported member 'JSX'when checking these declarations withskipLibCheck: false. (2026-08-25)v1.419.1Compare Source
1.419.1
Patch Changes
#4638
d166e54Thanks @github-actions! - Declarereactand@types/reactas optional peer dependencies so theposthog-js/reactentry point can resolve React on strictnode_moduleslayouts — pnpm and bun isolated linkers backed by a global store, where the package is installed outside the project tree and Node's directory walk never reaches the app's React.Projects that do not import
posthog-js/reactare unaffected: the peers are optional, so npm, pnpm, yarn, and bun install them only when React is already present and emit no unmet-peer warnings. (2026-08-25)v1.419.0Compare Source
1.419.0
Minor Changes
334159bThanks @posthog! - Web vitals now capture attribution by default for INP and LCP, so a slow interaction or paint arrives with the target element and phase breakdown that make it diagnosable. CLS stays without attribution by default, because its attribution holds detached DOM nodes and can leak memory in single-page apps. Setcapture_performance.web_vitals_attributiontofalseto opt out,truefor every metric, or an array to name the metrics. The captured metric also drops the emptyentriesarray and bounds attribution to a small set of useful fields, and the attributed INP observer no longer collects theprocessedEventEntrieswe never read.(2026-08-25)
Patch Changes
334159b]:v1.418.17Compare Source
1.418.17
Patch Changes
#4612
e8a2c2aThanks @marandaneto! - Prevent session recordings from emitting failed CSSOM changes and fix shadow DOM, cross-origin iframe, blocked and unsupported canvas, and deep DOM serialization edge cases.(2026-08-25)
#4611
d4eee8fThanks @marandaneto! - Share survey property matching between the browser and React Native SDKs while preserving their existing missing-value behavior.(2026-08-25)
Updated dependencies [
930de19,d4eee8f]:v1.418.16Compare Source
1.418.16
Patch Changes
7ec4f0dThanks @posthog! - Drop exceptions thrown by user scripts the browser injects into every page (Firefox for iOS, Chrome for iOS) instead of reporting them as the page's own errors. Seterror_tracking.captureExtensionExceptions: trueto keep capturing them.(2026-08-24)
7ec4f0d]:v1.418.15Compare Source
1.418.15
Patch Changes
60ee0acThanks @dustinbyrne! - Migrate surveys to the shared browser extension lifecycle.(2026-08-24)
60ee0ac]:v1.418.14Compare Source
1.418.14
Patch Changes
#4513
cb7e4a6Thanks @dustinbyrne! - Migrate browser autocapture to the shared extension lifecycle.(2026-08-24)
#4623
be299dfThanks @turnipdabeets! - Fix logs and metrics batches being dropped instead of retried after HTTP 408(2026-08-24)
Updated dependencies [
be299df]:v1.418.13Compare Source
1.418.13
Patch Changes
#4418
be2161dThanks @posthog! - feat: add granular automatic pageview options for SPA navigationcapture_pageviewnow accepts an object withpath,search, andhashoptions. Each selected URL component triggers a$pageviewwhen it changes, including direct hash changes used by hash-based routers. The existing'history_change'option continues to capture pathname changes. (2026-08-24)Updated dependencies [
be2161d]:v1.418.12Compare Source
1.418.12
Patch Changes
9e853c1Thanks @posthog! - Session replay: fixed a stale element left rendered in the player when a mutation re-added a node id with changed attributes. Affects bothuseVirtualDommodes.(2026-08-24)
v1.418.11Compare Source
1.418.11
Patch Changes
#4603
ca030a6Thanks @martinfrancois! - Stop adding PostHog's optional feature scripts, such as the session replay recorder and exception autocapture, to the page more than once. Sites that proxy PostHog through their own domain, by settingapi_hostto a path like/ingestrather than a full URL, ended up with the same<script>tag three or four times: the check meant to spot the duplicate compared the browser's resolved absolute URL against the relative one, so it never matched. The network tab showed a single request either way, because the browser served the repeats from its cache, which is why this was easy to miss. Nothing measurable got slower as a result, so this is a correctness fix rather than a speed one.(2026-08-24)
#4453
325870aThanks @posthog! - When session replay is waiting on a trigger, debug mode now names the conditions that haven't matched yet (for examplebuffering: URL condition not matched, or the named trigger group whose condition is pending) instead of only reportingbuffering. Enable it withposthog.debug(). Logged once per change, not once per flush.(2026-08-24)
v1.418.10Compare Source
1.418.10
Patch Changes
#4451
e1d993cThanks @posthog! - Guard the replayer's hover handling against non-element and detached hover targets, which previously threw an unhandledTypeError(querySelectorAllon a node without that method) and stopped session recording playback mid-stream.(2026-08-21)
#4557
4451274Thanks @posthog! - Keep replay playback running when a recording adopts constructed stylesheets across a document swap. A constructed stylesheet can only be adopted by the document that created it, so a sheet held over a swap is rejected and the error previously stopped the player. Adoption now falls back to whatever is already applied.(2026-08-21)
v1.418.9Compare Source
1.418.9
Patch Changes
c8df61cThanks @clr182! - fix(replay): attribute the backdated sessionIdle marker to the session that went idle, so a rotation-born session's recording no longer starts hours before its first snapshot(2026-08-21)
v1.418.8Compare Source
1.418.8
Patch Changes
6322f09Thanks @turnipdabeets! - Fix logs and metrics being silently dropped when an attribute holds a very large integer, a function, a symbol, a sparse array, or a truncated emoji.Cap log and metric attributes at 20 levels of nesting, 1,000 entries per object and 10,000 values in total, marking anything beyond as
[Truncated].Type
OtlpAnyValue.intValueasstring | number— code reading that field must handle both. (2026-08-21)6322f09]:v1.418.7Compare Source
v1.418.6Compare Source
1.418.6
Patch Changes
#4578
bae46bfThanks @marandaneto! - Drop events when a before-send hook throws instead of sending the unmodified event.(2026-08-20)
#4582
aef2f49Thanks @ablaszkiewicz! - Stop building a stack frame for awindow.onerrorreport that carries no code position, such as theResizeObserverloop warning. The frame named the document URL rather than a script, so no source map could resolve it. These exceptions now arrive with no stack trace.(2026-08-20)
Updated dependencies [
bae46bf,aef2f49]:v1.418.5Compare Source
1.418.5
Patch Changes
9701637Thanks @ablaszkiewicz! - Stop counting Chromium<anonymous>stack frames (extension-injected, devtools or string-evaluated code) as in-app code.(2026-08-19)
9701637]:v1.418.4Compare Source
1.418.4
Patch Changes
b564d61Thanks @posthog! - Fix session recording in the full browser bundles.array.full.jsandmodule.full.es.jsonly inlined rrweb, so they still fetched the recorder script at runtime - the request the full bundles exist to avoid. They now inline the whole recorder. Also flags the session with$sdk_debug_recording_script_not_loadedwhen the recorder script fails to load, so a blocked recorder is visible in analytics rather than only in the console.(2026-08-19)
v1.418.3Compare Source
1.418.3
Patch Changes
3f9ba71Thanks @posthog! - Fall back to the synthetic exception stack when a capturedErrorhas no stack, so frameless failures (such as a Firefox networkfetchTypeError) keep their call-site frames and group per call site instead of merging into one issue.(2026-08-19)
3f9ba71]:v1.418.2Compare Source
1.418.2
Patch Changes
#4555
3e0edffThanks @HaynesPostHog! - Fix a Chrome renderer crash (grey "Aw, Snap" tab, "Error code: 5") that could still occur when closing an in-app survey on a heavy page such as a large dashboard.Closing a survey animated the fade-out with
document.startViewTransition, which snapshots the entire page viewport. The survey applied noview-transition-namescoping, so on a heavy host page capturing that whole-page snapshot could exhaust renderer memory and crash the tab. A previous fix addressed a related crash (a snapshot pointing at a removed node) but left the document-level transition — and its whole-page snapshot cost — in place.The survey renders in an isolated shadow root, so it never needed a document-level transition. The close now fades the popup out with a plain CSS opacity transition scoped to the survey's own container, then unmounts it once the fade has run. No whole-page snapshot, no crash, same fade-out UX. (2026-08-19)
v1.418.1Compare Source
1.418.1
Patch Changes
0599fe0Thanks @ablaszkiewicz! - Recognise Firefox and Safari extension frames when filtering extension exceptions, and stop counting Safari's maskedwebkit-masked-url://frames as in-app code.(2026-08-18)
0599fe0]:v1.418.0Compare Source
1.418.0
Minor Changes
1ade666Thanks @marandaneto! - AddcookieWinsOnConflictto keep shared cross-subdomain identity and session state ahead of stale per-origin localStorage, deprecate__preview_cookie_wins_on_conflict, and enable the new behavior for the2026-08-29defaults.(2026-08-18)
Patch Changes
1ade666]:v1.417.4Compare Source
1.417.4
Patch Changes
8d74821Thanks @ksvat! - Take a full snapshot when session recording wakes from idle if DOM mutations were dropped while idle, so replay no longer shows duplicated or overlapping DOM after an idle period.(2026-08-17)
v1.417.3Compare Source
1.417.3
Patch Changes
ce8fc13Thanks @marandaneto! - Restore exception autocapture compatibility for posthog-js clients through version 1.141.0.(2026-08-17)
v1.417.2Compare Source
1.417.2
Patch Changes
7b61aa4Thanks @posthog! - Fix error tracking coercion reporting the wrong exception type for non-Errorobjects (e.g.TypeError,ReferenceError) that are thrown by browser extensions or other cross-realm code. Previously these always reported as typeError, burying the real type in the message string. Also fixed a localisErrorhelper shadowing the more robust cross-realm-aware implementation, which caused some errors thrown from iframes or extension isolated worlds to be misclassified.(2026-08-17)
7b61aa4]:v1.417.1Compare Source
1.417.1
Patch Changes
#4521
0a0206fThanks @marandaneto! - Normalize capture timestamp overrides to equivalent UTC ISO strings in the browser and Node.js SDKs and shared core.(2026-08-14)
#4523
6230b5bThanks @marandaneto! - Prevent swallowed rrweb observer initialization errors from breaking session replay teardown and subsequent recorder restarts.(2026-08-14)
#4503
eb05237Thanks @pauldambra! - fix(dead-clicks): treat visibility and focus changes as liveness signals, not dead-click evidenceThe dead-click detector treated a
visibilitychangeas evidence a click was dead: it measuredMath.abs(clickTimestamp - lastVisibilityChange)and, once that exceeded the threshold, timed the click out as dead. Because it only recorded the tab becoming visible, any click in a session where the tab had ever been backgrounded (median gap ~1 minute) was flagged.A visibility or focus change near a click is the opposite — a sign the click did something (it woke/focused the tab, opened a new tab, or opened a new window/popup) — so these signals now only ever suppress a dead click, never cause one:
hidden), and a windowfocus/blurobserver is added, since a click that opens a new window/popup may leave the tab visible and only surface as the current window losing focus.$dead_click_visibility_changed_timeoutstays in the payload (always false) for shape compatibility, and a new$dead_click_focus_changed_delay_msis emitted for observability.Updated dependencies [
0a0206f,eb05237]:v1.417.0Compare Source
1.417.0
Minor Changes
8bc63c3Thanks @dustinbyrne! - Default external dependency loading to versioned asset paths with automatic fallback to legacy paths, and add astrict_script_versioning: 'fallback'mode.(2026-08-13)
Patch Changes
8bc63c3]:v1.416.1Compare Source
1.416.1
Patch Changes
Configuration
📅 Schedule: (in timezone America/New_York)
* 0-23 * * *)🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.