From 55a9bd3ecd9a80087b556cf5f204329b74feb06d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 10 May 2024 11:09:42 +0200 Subject: [PATCH] chore(deps): update dependency @sentry/browser to v7.114.0 (#11598) * chore(deps): update dependency @sentry/browser to v7.114.0 * js: Update vendored libraries --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: renovate[bot] --- scripts/yarn/package.json | 2 +- scripts/yarn/yarn.lock | 150 ++++++++++++++++---------------- weblate/static/vendor/sentry.js | 71 ++++++++++----- 3 files changed, 127 insertions(+), 96 deletions(-) diff --git a/scripts/yarn/package.json b/scripts/yarn/package.json index d493a0781a15..8707acdb2dfc 100644 --- a/scripts/yarn/package.json +++ b/scripts/yarn/package.json @@ -4,7 +4,7 @@ "main": "index.js", "license": "GPL-3.0+", "dependencies": { - "@sentry/browser": "7.113.0", + "@sentry/browser": "7.114.0", "@tarekraafat/autocomplete.js": "^10.2.7", "autosize": "6.0.1", "bootstrap-rtl": "3.3.4", diff --git a/scripts/yarn/yarn.lock b/scripts/yarn/yarn.lock index 9b7d5f5b52c6..1bcdca835207 100644 --- a/scripts/yarn/yarn.lock +++ b/scripts/yarn/yarn.lock @@ -2,87 +2,87 @@ # yarn lockfile v1 -"@sentry-internal/feedback@7.113.0": - version "7.113.0" - resolved "https://registry.yarnpkg.com/@sentry-internal/feedback/-/feedback-7.113.0.tgz#90a3c5493e289d589cfde79330fca549a24f41a4" - integrity sha512-eEmL8QXauUnM3FXGv0GT29RpL0Jo0pkn/uMu3aqjhQo7JKNqUGVYIUxJxiGWbVMbDXqPQ7L66bjjMS3FR1GM2g== - dependencies: - "@sentry/core" "7.113.0" - "@sentry/types" "7.113.0" - "@sentry/utils" "7.113.0" - -"@sentry-internal/replay-canvas@7.113.0": - version "7.113.0" - resolved "https://registry.yarnpkg.com/@sentry-internal/replay-canvas/-/replay-canvas-7.113.0.tgz#8a0165494b0a0ba7b1ae45166ca90a8749c38b7a" - integrity sha512-K8uA42aobNF/BAXf14el15iSAi9fonLBUrjZi6nPDq7zaA8rPvfcTL797hwCbqkETz2zDf52Jz7I3WFCshDoUw== - dependencies: - "@sentry/core" "7.113.0" - "@sentry/replay" "7.113.0" - "@sentry/types" "7.113.0" - "@sentry/utils" "7.113.0" - -"@sentry-internal/tracing@7.113.0": - version "7.113.0" - resolved "https://registry.yarnpkg.com/@sentry-internal/tracing/-/tracing-7.113.0.tgz#936f23205ab53be62f1753b923eddc243cefde86" - integrity sha512-8MDnYENRMnEfQjvN4gkFYFaaBSiMFSU/6SQZfY9pLI3V105z6JQ4D0PGMAUVowXilwNZVpKNYohE7XByuhEC7Q== - dependencies: - "@sentry/core" "7.113.0" - "@sentry/types" "7.113.0" - "@sentry/utils" "7.113.0" - -"@sentry/browser@7.113.0": - version "7.113.0" - resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-7.113.0.tgz#09b77812cbf476eacdccdc714ba4e4ba2c170a88" - integrity sha512-PdyVHPOprwoxGfKGsP2dXDWO0MBDW1eyP7EZlfZvM1A4hjk6ZRNfCv30g+TrqX4hiZDKzyqN3+AdP7N/J2IX0Q== - dependencies: - "@sentry-internal/feedback" "7.113.0" - "@sentry-internal/replay-canvas" "7.113.0" - "@sentry-internal/tracing" "7.113.0" - "@sentry/core" "7.113.0" - "@sentry/integrations" "7.113.0" - "@sentry/replay" "7.113.0" - "@sentry/types" "7.113.0" - "@sentry/utils" "7.113.0" - -"@sentry/core@7.113.0": - version "7.113.0" - resolved "https://registry.yarnpkg.com/@sentry/core/-/core-7.113.0.tgz#84307eabf03ece9304894ad24ee15581a220c5c7" - integrity sha512-pg75y3C5PG2+ur27A0Re37YTCEnX0liiEU7EOxWDGutH17x3ySwlYqLQmZsFZTSnvzv7t3MGsNZ8nT5O0746YA== - dependencies: - "@sentry/types" "7.113.0" - "@sentry/utils" "7.113.0" - -"@sentry/integrations@7.113.0": - version "7.113.0" - resolved "https://registry.yarnpkg.com/@sentry/integrations/-/integrations-7.113.0.tgz#cce71e07cf90c4bf9b22f85c3ce22d9ba926ae5a" - integrity sha512-w0sspGBQ+6+V/9bgCkpuM3CGwTYoQEVeTW6iNebFKbtN7MrM3XsGAM9I2cW1jVxFZROqCBPFtd2cs5n0j14aAg== - dependencies: - "@sentry/core" "7.113.0" - "@sentry/types" "7.113.0" - "@sentry/utils" "7.113.0" +"@sentry-internal/feedback@7.114.0": + version "7.114.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/feedback/-/feedback-7.114.0.tgz#8a1c3d8bbd014c1823d30b9b1128eb244d357c3e" + integrity sha512-kUiLRUDZuh10QE9JbSVVLgqxFoD9eDPOzT0MmzlPuas8JlTmJuV4FtSANNcqctd5mBuLt2ebNXH0MhRMwyae4A== + dependencies: + "@sentry/core" "7.114.0" + "@sentry/types" "7.114.0" + "@sentry/utils" "7.114.0" + +"@sentry-internal/replay-canvas@7.114.0": + version "7.114.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/replay-canvas/-/replay-canvas-7.114.0.tgz#b81e2c2ebec01c436ad6e687e563ba456e33b615" + integrity sha512-6rTiqmKi/FYtesdM2TM2U+rh6BytdPjLP65KTUodtxohJ+r/3m+termj2o4BhIYPE1YYOZNmbZfwebkuQPmWeg== + dependencies: + "@sentry/core" "7.114.0" + "@sentry/replay" "7.114.0" + "@sentry/types" "7.114.0" + "@sentry/utils" "7.114.0" + +"@sentry-internal/tracing@7.114.0": + version "7.114.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/tracing/-/tracing-7.114.0.tgz#bdcd364f511e2de45db6e3004faf5685ca2e0f86" + integrity sha512-dOuvfJN7G+3YqLlUY4HIjyWHaRP8vbOgF+OsE5w2l7ZEn1rMAaUbPntAR8AF9GBA6j2zWNoSo8e7GjbJxVofSg== + dependencies: + "@sentry/core" "7.114.0" + "@sentry/types" "7.114.0" + "@sentry/utils" "7.114.0" + +"@sentry/browser@7.114.0": + version "7.114.0" + resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-7.114.0.tgz#b0741bff89189d16c8b19f0775fe6e078147ec33" + integrity sha512-ijJ0vOEY6U9JJADVYGkUbLrAbpGSQgA4zV+KW3tcsBLX9M1jaWq4BV1PWHdzDPPDhy4OgfOjIfaMb5BSPn1U+g== + dependencies: + "@sentry-internal/feedback" "7.114.0" + "@sentry-internal/replay-canvas" "7.114.0" + "@sentry-internal/tracing" "7.114.0" + "@sentry/core" "7.114.0" + "@sentry/integrations" "7.114.0" + "@sentry/replay" "7.114.0" + "@sentry/types" "7.114.0" + "@sentry/utils" "7.114.0" + +"@sentry/core@7.114.0": + version "7.114.0" + resolved "https://registry.yarnpkg.com/@sentry/core/-/core-7.114.0.tgz#3efe86b92a5379c44dfd0fd4685266b1a30fa898" + integrity sha512-YnanVlmulkjgZiVZ9BfY9k6I082n+C+LbZo52MTvx3FY6RE5iyiPMpaOh67oXEZRWcYQEGm+bKruRxLVP6RlbA== + dependencies: + "@sentry/types" "7.114.0" + "@sentry/utils" "7.114.0" + +"@sentry/integrations@7.114.0": + version "7.114.0" + resolved "https://registry.yarnpkg.com/@sentry/integrations/-/integrations-7.114.0.tgz#baf249cfa9e359510f41e486a75bf184db18927d" + integrity sha512-BJIBWXGKeIH0ifd7goxOS29fBA8BkEgVVCahs6xIOXBjX1IRS6PmX0zYx/GP23nQTfhJiubv2XPzoYOlZZmDxg== + dependencies: + "@sentry/core" "7.114.0" + "@sentry/types" "7.114.0" + "@sentry/utils" "7.114.0" localforage "^1.8.1" -"@sentry/replay@7.113.0": - version "7.113.0" - resolved "https://registry.yarnpkg.com/@sentry/replay/-/replay-7.113.0.tgz#db41b792e5d9966a9b1ca4eb1695ad7100f39b50" - integrity sha512-UD2IaphOWKFdeGR+ZiaNAQ+wFsnwbJK6PNwcW6cHmWKv9COlKufpFt06lviaqFZ8jmNrM4H+r+R8YVTrqCuxgg== +"@sentry/replay@7.114.0": + version "7.114.0" + resolved "https://registry.yarnpkg.com/@sentry/replay/-/replay-7.114.0.tgz#f552e4803cacb233a2f5f2a4afbf5bed9052a744" + integrity sha512-UvEajoLIX9n2poeW3R4Ybz7D0FgCGXoFr/x/33rdUEMIdTypknxjJWxg6fJngIduzwrlrvWpvP8QiZXczYQy2Q== dependencies: - "@sentry-internal/tracing" "7.113.0" - "@sentry/core" "7.113.0" - "@sentry/types" "7.113.0" - "@sentry/utils" "7.113.0" + "@sentry-internal/tracing" "7.114.0" + "@sentry/core" "7.114.0" + "@sentry/types" "7.114.0" + "@sentry/utils" "7.114.0" -"@sentry/types@7.113.0": - version "7.113.0" - resolved "https://registry.yarnpkg.com/@sentry/types/-/types-7.113.0.tgz#2193c9933838302c82814771b03a8647fa684ffb" - integrity sha512-PJbTbvkcPu/LuRwwXB1He8m+GjDDLKBtu3lWg5xOZaF5IRdXQU2xwtdXXsjge4PZR00tF7MO7X8ZynTgWbYaew== +"@sentry/types@7.114.0": + version "7.114.0" + resolved "https://registry.yarnpkg.com/@sentry/types/-/types-7.114.0.tgz#ab8009d5f6df23b7342121083bed34ee2452e856" + integrity sha512-tsqkkyL3eJtptmPtT0m9W/bPLkU7ILY7nvwpi1hahA5jrM7ppoU0IMaQWAgTD+U3rzFH40IdXNBFb8Gnqcva4w== -"@sentry/utils@7.113.0": - version "7.113.0" - resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-7.113.0.tgz#1e6e790c9d84e4809b2bb529bbd33a506b6db7bd" - integrity sha512-nzKsErwmze1mmEsbW2AwL2oB+I5v6cDEJY4sdfLekA4qZbYZ8pV5iWza6IRl4XfzGTE1qpkZmEjPU9eyo0yvYw== +"@sentry/utils@7.114.0": + version "7.114.0" + resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-7.114.0.tgz#59d30a79f4acff3c9268de0b345f0bcbc6335112" + integrity sha512-319N90McVpupQ6vws4+tfCy/03AdtsU0MurIE4+W5cubHME08HtiEWlfacvAxX+yuKFhvdsO4K4BB/dj54ideg== dependencies: - "@sentry/types" "7.113.0" + "@sentry/types" "7.114.0" "@tarekraafat/autocomplete.js@^10.2.7": version "10.2.7" diff --git a/weblate/static/vendor/sentry.js b/weblate/static/vendor/sentry.js index 9834bb98b089..ba0348935329 100644 --- a/weblate/static/vendor/sentry.js +++ b/weblate/static/vendor/sentry.js @@ -3976,12 +3976,15 @@ function triggerHandlers(type, data) { } function instrumentCls() { - return getCLS.onCLS(metric => { - triggerHandlers('cls', { - metric, - }); - _previousCls = metric; - }); + return getCLS.onCLS( + metric => { + triggerHandlers('cls', { + metric, + }); + _previousCls = metric; + }, + { reportAllChanges: true }, + ); } function instrumentFid() { @@ -5288,7 +5291,10 @@ const onHidden = require('./lib/onHidden.js'); * hidden. As a result, the `callback` function might be called multiple times * during the same page load._ */ -const onCLS = (onReport) => { +const onCLS = ( + onReport, + options = {}, +) => { const metric = initMetric.initMetric('CLS', 0); let report; @@ -5334,7 +5340,7 @@ const onCLS = (onReport) => { const po = observe.observe('layout-shift', handleEntries); if (po) { - report = bindReporter.bindReporter(onReport, metric); + report = bindReporter.bindReporter(onReport, metric, options.reportAllChanges); const stopListening = () => { handleEntries(po.takeRecords() ); @@ -11930,6 +11936,7 @@ class BaseClient { if (this._dsn) { const url = api.getEnvelopeEndpointWithUrlEncodedAuth(this._dsn, options); this._transport = options.transport({ + tunnel: this._options.tunnel, recordDroppedEvent: this.recordDroppedEvent.bind(this), ...options.transportOptions, url, @@ -20062,6 +20069,7 @@ function makeOverrideReleaseTransport( const transport = createTransport(options); return { + ...transport, send: async (envelope) => { const event = eventFromEnvelope(envelope, ['event', 'transaction', 'profile', 'replay_event']); @@ -20070,11 +20078,23 @@ function makeOverrideReleaseTransport( } return transport.send(envelope); }, - flush: timeout => transport.flush(timeout), }; }; } +/** Overrides the DSN in the envelope header */ +function overrideDsn(envelope, dsn) { + return utils.createEnvelope( + dsn + ? { + ...envelope[0], + dsn, + } + : envelope[0], + envelope[1], + ); +} + /** * Creates a transport that can send events to different DSNs depending on the envelope contents. */ @@ -20084,26 +20104,31 @@ function makeMultiplexedTransport( ) { return options => { const fallbackTransport = createTransport(options); - const otherTransports = {}; + const otherTransports = new Map(); function getTransport(dsn, release) { // We create a transport for every unique dsn/release combination as there may be code from multiple releases in // use at the same time const key = release ? `${dsn}:${release}` : dsn; - if (!otherTransports[key]) { + let transport = otherTransports.get(key); + + if (!transport) { const validatedDsn = utils.dsnFromString(dsn); if (!validatedDsn) { return undefined; } - const url = api.getEnvelopeEndpointWithUrlEncodedAuth(validatedDsn); - otherTransports[key] = release + const url = api.getEnvelopeEndpointWithUrlEncodedAuth(validatedDsn, options.tunnel); + + transport = release ? makeOverrideReleaseTransport(createTransport, release)({ ...options, url }) : createTransport({ ...options, url }); + + otherTransports.set(key, transport); } - return otherTransports[key]; + return [dsn, transport]; } async function send(envelope) { @@ -20124,18 +20149,24 @@ function makeMultiplexedTransport( // If we have no transports to send to, use the fallback transport if (transports.length === 0) { - transports.push(fallbackTransport); + // Don't override the DSN in the header for the fallback transport. '' is falsy + transports.push(['', fallbackTransport]); } - const results = await Promise.all(transports.map(transport => transport.send(envelope))); + const results = await Promise.all( + transports.map(([dsn, transport]) => transport.send(overrideDsn(envelope, dsn))), + ); return results[0]; } async function flush(timeout) { - const allTransports = [...Object.keys(otherTransports).map(dsn => otherTransports[dsn]), fallbackTransport]; - const results = await Promise.all(allTransports.map(transport => transport.flush(timeout))); - return results.every(r => r); + const promises = [await fallbackTransport.flush(timeout)]; + for (const [, transport] of otherTransports) { + promises.push(await transport.flush(timeout)); + } + + return promises.every(r => r); } return { @@ -21213,7 +21244,7 @@ exports.spanToTraceHeader = spanToTraceHeader; },{"@sentry/utils":152}],118:[function(require,module,exports){ Object.defineProperty(exports, '__esModule', { value: true }); -const SDK_VERSION = '7.113.0'; +const SDK_VERSION = '7.114.0'; exports.SDK_VERSION = SDK_VERSION;