meta(changelog): Update changelog for v7.95.0 - #10298

Merged
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0
Jan 23, 2024
Merged

meta(changelog): Update changelog for v7.95.0#10298
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0

Conversation

@mydea

Copy link
Copy Markdown
Member

Just 5 more to go to 7.💯 !

mydeaand others added 16 commits January 19, 2024 09:39
…ns()` (#10243)
The current implementation has two problems:
1. It is weird that you can accidentally mutate the default integrations
of another package
2. We sometimes have logic-based default integrations - e.g. adding an
integration only if tracing is enabled, or similar. This means that
either we have to add some logic in the _upstream_ SDK to ensure this is
still added even if downstream SDKs overwrite default integrations, or
we need to duplicate the logic in the _downstream_ SDKs. With this new
method, we can instead centralize this, and downstream SDKs simply need
to call upstream `getDefaultIntegrations(options)`.
The usage of this was not really working well to begin with, and even
worse with the new functional integrations. Because if the user adds the
integration themselves (e.g. `integrations: [new RewriteFrames()]`), it
will not actually get the correct iteratee at all.
Overall it is much cleaner anyhow to just fork the integrations properly
and use them instead of the default one - then we can rely on the
standard behavior of merging integrations etc.
We need to do the same for basically all usages of
`addOrUpdateIntegration`, as that actually does not work at all anymore
with the functional integrations 😬 (and in many instances never really
worked properly if users passed in a custom integration themselves).
Co-authored-by: Abhijeet Prasad <aprasad@sentry.io>
We should wait for
#10243 to merge this,
as otherwise we'll get a deprecation/eslint error there.
[Gitflow] Merge master into develop
There have been tries to do this before, but let's see how things stand
today...
Deprecate the `Span.parentSpanId` field on the interface and class. This required only a couple of code replacements and a bunch of test
adjustments. Also went ahead and changed the integration test event type
in the tests I was modifying.
…bute (#10260)
Deprecate the `Span.origin` field on the class and the
interface. It will be replaced in v8 by the semantic `sentry.op`
attribute.
We should think about moving the wasm integration into `@sentry/browser`
and removing `@sentry/wasm` all together. What do you think?
By using functional integrations in #10230, we started importing from
`@sentry/core` in the WASM integration. However, we didn't register
`@sentry/core` as a dependency, making rollup bundle core into the
package output. This changed the `build/npm` directory structure, making
our entry points in `package.json` invalid.
This PR fixes things by simply registering core as a dependency of wasm.
If we move WASM to core (which I strongly think we should do), we'll be
able to get rid of this again.
… API (#10085)
Move `parameterize` function to core, export it to upstream packages via browser and node.
Co-authored-by: Luca Forstner <luca.forstner@sentry.io>
Instead, users should use the new functional styles.
Note that we'll probably actually un-deprecate `Replay` in some form in
v8, as we'll be keeping the class around there for sure (as there is a
lot of logic in there...). But users should not use it, so deprecating
this now!
While at it, I also deprecated the old `InitSentryForEmber` method in
favor of `init()`.
It's slightly unfortunate that I missed this, but we probably shouldn't
have exposed `ReplayCanvas` as a class anymore at all 😬 maybe we wait
before we document this etc. until we merged the functional style. cc
@billyvg
…OrUpdateIntegration` (#10263)
This updates the last usage of `addOrUpdateIntegration` and deprecates
it.
Adds ability to configure all border radiuses on feedback widget
Closes#10256
…nt` (#10296)
Currently, you can use `Sentry.getClient() !== undefined` to check if
Sentry was initialized. In v8, we want to change this so that this
_always_ returns a client (possibly a Noop client), so this check will
not work anymore there. Instead, we can provide a new util that does
this explicitly, where we can control what it checks under the hood.
As per
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceResourceTiming/responseStart,
`responseStart` can be 0 if the request is coming straight from the
cache. This might lead us to calculate a negative ttfb.
To account for these scenarios, use `Math.max` to make sure we always
set to 0 in the case of a negative value.
@mydeamydea self-assigned this Jan 23, 2024
Comment threadCHANGELOG.md

@Lms24Lms24 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

5️⃣

@github-actions

github-actionsBot commented Jan 23, 2024

Copy link
Copy Markdown
Contributor

size-limit report 📦

PathSize
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped)77.79 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped)68.96 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped)72.85 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped)62.6 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing) - Webpack (gzipped)32.97 KB (+0.05% 🔺)
@sentry/browser (incl. Feedback) - Webpack (gzipped)31.24 KB (0%)
@sentry/browser (incl. sendFeedback) - Webpack (gzipped)31.25 KB (0%)
@sentry/browser - Webpack (gzipped)22.53 KB (0%)
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped)75.46 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped)67.03 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped)32.85 KB (+0.05% 🔺)
@sentry/browser - ES6 CDN Bundle (gzipped)24.36 KB (0%)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed)211.12 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed)99.11 KB (+0.04% 🔺)
@sentry/browser - ES6 CDN Bundle (minified & uncompressed)72.91 KB (0%)
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped)35.95 KB (+0.05% 🔺)
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped)69.37 KB (+0.03% 🔺)
@sentry/react - Webpack (gzipped)22.58 KB (0%)
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped)85.98 KB (+0.02% 🔺)
@sentry/nextjs Client - Webpack (gzipped)50.27 KB (+0.03% 🔺)
@sentry-internal/feedback - Webpack (gzipped)17.21 KB (0%)

@mydea
mydeaforce-pushed the prepare-release/7.95.0 branch from 7e9f16c to d98bd74CompareJanuary 23, 2024 16:18
@mydea
mydea merged commit 9fcfd51 into masterJan 23, 2024
@mydea
mydea deleted the prepare-release/7.95.0 branch January 23, 2024 16:55
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mydea@Lms24@AbhiPrasad@AleshaOleg@Methuselah96@c298lee
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all \u003cpre\u003e\u003ccode\u003e blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks"); } } catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); } })(); (function(){ try { var __m = "github.com"; var __re = new RegExp('^' + "github\\.com" + '
Skip to content

meta(changelog): Update changelog for v7.95.0 - #10298

Merged
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0
Jan 23, 2024
Merged

meta(changelog): Update changelog for v7.95.0#10298
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0

Conversation

@mydea

Copy link
Copy Markdown
Member

Just 5 more to go to 7.💯 !

mydeaand others added 16 commits January 19, 2024 09:39
…ns()` (#10243)
The current implementation has two problems:
1. It is weird that you can accidentally mutate the default integrations
of another package
2. We sometimes have logic-based default integrations - e.g. adding an
integration only if tracing is enabled, or similar. This means that
either we have to add some logic in the _upstream_ SDK to ensure this is
still added even if downstream SDKs overwrite default integrations, or
we need to duplicate the logic in the _downstream_ SDKs. With this new
method, we can instead centralize this, and downstream SDKs simply need
to call upstream `getDefaultIntegrations(options)`.
The usage of this was not really working well to begin with, and even
worse with the new functional integrations. Because if the user adds the
integration themselves (e.g. `integrations: [new RewriteFrames()]`), it
will not actually get the correct iteratee at all.
Overall it is much cleaner anyhow to just fork the integrations properly
and use them instead of the default one - then we can rely on the
standard behavior of merging integrations etc.
We need to do the same for basically all usages of
`addOrUpdateIntegration`, as that actually does not work at all anymore
with the functional integrations 😬 (and in many instances never really
worked properly if users passed in a custom integration themselves).
Co-authored-by: Abhijeet Prasad <aprasad@sentry.io>
We should wait for
#10243 to merge this,
as otherwise we'll get a deprecation/eslint error there.
[Gitflow] Merge master into develop
There have been tries to do this before, but let's see how things stand
today...
Deprecate the `Span.parentSpanId` field on the interface and class. This required only a couple of code replacements and a bunch of test
adjustments. Also went ahead and changed the integration test event type
in the tests I was modifying.
…bute (#10260)
Deprecate the `Span.origin` field on the class and the
interface. It will be replaced in v8 by the semantic `sentry.op`
attribute.
We should think about moving the wasm integration into `@sentry/browser`
and removing `@sentry/wasm` all together. What do you think?
By using functional integrations in #10230, we started importing from
`@sentry/core` in the WASM integration. However, we didn't register
`@sentry/core` as a dependency, making rollup bundle core into the
package output. This changed the `build/npm` directory structure, making
our entry points in `package.json` invalid.
This PR fixes things by simply registering core as a dependency of wasm.
If we move WASM to core (which I strongly think we should do), we'll be
able to get rid of this again.
… API (#10085)
Move `parameterize` function to core, export it to upstream packages via browser and node.
Co-authored-by: Luca Forstner <luca.forstner@sentry.io>
Instead, users should use the new functional styles.
Note that we'll probably actually un-deprecate `Replay` in some form in
v8, as we'll be keeping the class around there for sure (as there is a
lot of logic in there...). But users should not use it, so deprecating
this now!
While at it, I also deprecated the old `InitSentryForEmber` method in
favor of `init()`.
It's slightly unfortunate that I missed this, but we probably shouldn't
have exposed `ReplayCanvas` as a class anymore at all 😬 maybe we wait
before we document this etc. until we merged the functional style. cc
@billyvg
…OrUpdateIntegration` (#10263)
This updates the last usage of `addOrUpdateIntegration` and deprecates
it.
Adds ability to configure all border radiuses on feedback widget
Closes#10256
…nt` (#10296)
Currently, you can use `Sentry.getClient() !== undefined` to check if
Sentry was initialized. In v8, we want to change this so that this
_always_ returns a client (possibly a Noop client), so this check will
not work anymore there. Instead, we can provide a new util that does
this explicitly, where we can control what it checks under the hood.
As per
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceResourceTiming/responseStart,
`responseStart` can be 0 if the request is coming straight from the
cache. This might lead us to calculate a negative ttfb.
To account for these scenarios, use `Math.max` to make sure we always
set to 0 in the case of a negative value.
@mydeamydea self-assigned this Jan 23, 2024
Comment threadCHANGELOG.md

@Lms24Lms24 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

5️⃣

@github-actions

github-actionsBot commented Jan 23, 2024

Copy link
Copy Markdown
Contributor

size-limit report 📦

PathSize
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped)77.79 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped)68.96 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped)72.85 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped)62.6 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing) - Webpack (gzipped)32.97 KB (+0.05% 🔺)
@sentry/browser (incl. Feedback) - Webpack (gzipped)31.24 KB (0%)
@sentry/browser (incl. sendFeedback) - Webpack (gzipped)31.25 KB (0%)
@sentry/browser - Webpack (gzipped)22.53 KB (0%)
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped)75.46 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped)67.03 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped)32.85 KB (+0.05% 🔺)
@sentry/browser - ES6 CDN Bundle (gzipped)24.36 KB (0%)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed)211.12 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed)99.11 KB (+0.04% 🔺)
@sentry/browser - ES6 CDN Bundle (minified & uncompressed)72.91 KB (0%)
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped)35.95 KB (+0.05% 🔺)
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped)69.37 KB (+0.03% 🔺)
@sentry/react - Webpack (gzipped)22.58 KB (0%)
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped)85.98 KB (+0.02% 🔺)
@sentry/nextjs Client - Webpack (gzipped)50.27 KB (+0.03% 🔺)
@sentry-internal/feedback - Webpack (gzipped)17.21 KB (0%)

@mydea
mydeaforce-pushed the prepare-release/7.95.0 branch from 7e9f16c to d98bd74CompareJanuary 23, 2024 16:18
@mydea
mydea merged commit 9fcfd51 into masterJan 23, 2024
@mydea
mydea deleted the prepare-release/7.95.0 branch January 23, 2024 16:55
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mydea@Lms24@AbhiPrasad@AleshaOleg@Methuselah96@c298lee
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

meta(changelog): Update changelog for v7.95.0 - #10298

Merged
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0
Jan 23, 2024
Merged

meta(changelog): Update changelog for v7.95.0#10298
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0

Conversation

@mydea

Copy link
Copy Markdown
Member

Just 5 more to go to 7.💯 !

mydeaand others added 16 commits January 19, 2024 09:39
…ns()` (#10243)
The current implementation has two problems:
1. It is weird that you can accidentally mutate the default integrations
of another package
2. We sometimes have logic-based default integrations - e.g. adding an
integration only if tracing is enabled, or similar. This means that
either we have to add some logic in the _upstream_ SDK to ensure this is
still added even if downstream SDKs overwrite default integrations, or
we need to duplicate the logic in the _downstream_ SDKs. With this new
method, we can instead centralize this, and downstream SDKs simply need
to call upstream `getDefaultIntegrations(options)`.
The usage of this was not really working well to begin with, and even
worse with the new functional integrations. Because if the user adds the
integration themselves (e.g. `integrations: [new RewriteFrames()]`), it
will not actually get the correct iteratee at all.
Overall it is much cleaner anyhow to just fork the integrations properly
and use them instead of the default one - then we can rely on the
standard behavior of merging integrations etc.
We need to do the same for basically all usages of
`addOrUpdateIntegration`, as that actually does not work at all anymore
with the functional integrations 😬 (and in many instances never really
worked properly if users passed in a custom integration themselves).
Co-authored-by: Abhijeet Prasad <aprasad@sentry.io>
We should wait for
#10243 to merge this,
as otherwise we'll get a deprecation/eslint error there.
[Gitflow] Merge master into develop
There have been tries to do this before, but let's see how things stand
today...
Deprecate the `Span.parentSpanId` field on the interface and class. This required only a couple of code replacements and a bunch of test
adjustments. Also went ahead and changed the integration test event type
in the tests I was modifying.
…bute (#10260)
Deprecate the `Span.origin` field on the class and the
interface. It will be replaced in v8 by the semantic `sentry.op`
attribute.
We should think about moving the wasm integration into `@sentry/browser`
and removing `@sentry/wasm` all together. What do you think?
By using functional integrations in #10230, we started importing from
`@sentry/core` in the WASM integration. However, we didn't register
`@sentry/core` as a dependency, making rollup bundle core into the
package output. This changed the `build/npm` directory structure, making
our entry points in `package.json` invalid.
This PR fixes things by simply registering core as a dependency of wasm.
If we move WASM to core (which I strongly think we should do), we'll be
able to get rid of this again.
… API (#10085)
Move `parameterize` function to core, export it to upstream packages via browser and node.
Co-authored-by: Luca Forstner <luca.forstner@sentry.io>
Instead, users should use the new functional styles.
Note that we'll probably actually un-deprecate `Replay` in some form in
v8, as we'll be keeping the class around there for sure (as there is a
lot of logic in there...). But users should not use it, so deprecating
this now!
While at it, I also deprecated the old `InitSentryForEmber` method in
favor of `init()`.
It's slightly unfortunate that I missed this, but we probably shouldn't
have exposed `ReplayCanvas` as a class anymore at all 😬 maybe we wait
before we document this etc. until we merged the functional style. cc
@billyvg
…OrUpdateIntegration` (#10263)
This updates the last usage of `addOrUpdateIntegration` and deprecates
it.
Adds ability to configure all border radiuses on feedback widget
Closes#10256
…nt` (#10296)
Currently, you can use `Sentry.getClient() !== undefined` to check if
Sentry was initialized. In v8, we want to change this so that this
_always_ returns a client (possibly a Noop client), so this check will
not work anymore there. Instead, we can provide a new util that does
this explicitly, where we can control what it checks under the hood.
As per
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceResourceTiming/responseStart,
`responseStart` can be 0 if the request is coming straight from the
cache. This might lead us to calculate a negative ttfb.
To account for these scenarios, use `Math.max` to make sure we always
set to 0 in the case of a negative value.
@mydeamydea self-assigned this Jan 23, 2024
Comment threadCHANGELOG.md

@Lms24Lms24 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

5️⃣

@github-actions

github-actionsBot commented Jan 23, 2024

Copy link
Copy Markdown
Contributor

size-limit report 📦

PathSize
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped)77.79 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped)68.96 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped)72.85 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped)62.6 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing) - Webpack (gzipped)32.97 KB (+0.05% 🔺)
@sentry/browser (incl. Feedback) - Webpack (gzipped)31.24 KB (0%)
@sentry/browser (incl. sendFeedback) - Webpack (gzipped)31.25 KB (0%)
@sentry/browser - Webpack (gzipped)22.53 KB (0%)
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped)75.46 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped)67.03 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped)32.85 KB (+0.05% 🔺)
@sentry/browser - ES6 CDN Bundle (gzipped)24.36 KB (0%)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed)211.12 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed)99.11 KB (+0.04% 🔺)
@sentry/browser - ES6 CDN Bundle (minified & uncompressed)72.91 KB (0%)
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped)35.95 KB (+0.05% 🔺)
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped)69.37 KB (+0.03% 🔺)
@sentry/react - Webpack (gzipped)22.58 KB (0%)
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped)85.98 KB (+0.02% 🔺)
@sentry/nextjs Client - Webpack (gzipped)50.27 KB (+0.03% 🔺)
@sentry-internal/feedback - Webpack (gzipped)17.21 KB (0%)

@mydea
mydeaforce-pushed the prepare-release/7.95.0 branch from 7e9f16c to d98bd74CompareJanuary 23, 2024 16:18
@mydea
mydea merged commit 9fcfd51 into masterJan 23, 2024
@mydea
mydea deleted the prepare-release/7.95.0 branch January 23, 2024 16:55
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mydea@Lms24@AbhiPrasad@AleshaOleg@Methuselah96@c298lee
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length \u003e 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

meta(changelog): Update changelog for v7.95.0 - #10298

Merged
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0
Jan 23, 2024
Merged

meta(changelog): Update changelog for v7.95.0#10298
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0

Conversation

@mydea

Copy link
Copy Markdown
Member

Just 5 more to go to 7.💯 !

mydeaand others added 16 commits January 19, 2024 09:39
…ns()` (#10243)
The current implementation has two problems:
1. It is weird that you can accidentally mutate the default integrations
of another package
2. We sometimes have logic-based default integrations - e.g. adding an
integration only if tracing is enabled, or similar. This means that
either we have to add some logic in the _upstream_ SDK to ensure this is
still added even if downstream SDKs overwrite default integrations, or
we need to duplicate the logic in the _downstream_ SDKs. With this new
method, we can instead centralize this, and downstream SDKs simply need
to call upstream `getDefaultIntegrations(options)`.
The usage of this was not really working well to begin with, and even
worse with the new functional integrations. Because if the user adds the
integration themselves (e.g. `integrations: [new RewriteFrames()]`), it
will not actually get the correct iteratee at all.
Overall it is much cleaner anyhow to just fork the integrations properly
and use them instead of the default one - then we can rely on the
standard behavior of merging integrations etc.
We need to do the same for basically all usages of
`addOrUpdateIntegration`, as that actually does not work at all anymore
with the functional integrations 😬 (and in many instances never really
worked properly if users passed in a custom integration themselves).
Co-authored-by: Abhijeet Prasad <aprasad@sentry.io>
We should wait for
#10243 to merge this,
as otherwise we'll get a deprecation/eslint error there.
[Gitflow] Merge master into develop
There have been tries to do this before, but let's see how things stand
today...
Deprecate the `Span.parentSpanId` field on the interface and class. This required only a couple of code replacements and a bunch of test
adjustments. Also went ahead and changed the integration test event type
in the tests I was modifying.
…bute (#10260)
Deprecate the `Span.origin` field on the class and the
interface. It will be replaced in v8 by the semantic `sentry.op`
attribute.
We should think about moving the wasm integration into `@sentry/browser`
and removing `@sentry/wasm` all together. What do you think?
By using functional integrations in #10230, we started importing from
`@sentry/core` in the WASM integration. However, we didn't register
`@sentry/core` as a dependency, making rollup bundle core into the
package output. This changed the `build/npm` directory structure, making
our entry points in `package.json` invalid.
This PR fixes things by simply registering core as a dependency of wasm.
If we move WASM to core (which I strongly think we should do), we'll be
able to get rid of this again.
… API (#10085)
Move `parameterize` function to core, export it to upstream packages via browser and node.
Co-authored-by: Luca Forstner <luca.forstner@sentry.io>
Instead, users should use the new functional styles.
Note that we'll probably actually un-deprecate `Replay` in some form in
v8, as we'll be keeping the class around there for sure (as there is a
lot of logic in there...). But users should not use it, so deprecating
this now!
While at it, I also deprecated the old `InitSentryForEmber` method in
favor of `init()`.
It's slightly unfortunate that I missed this, but we probably shouldn't
have exposed `ReplayCanvas` as a class anymore at all 😬 maybe we wait
before we document this etc. until we merged the functional style. cc
@billyvg
…OrUpdateIntegration` (#10263)
This updates the last usage of `addOrUpdateIntegration` and deprecates
it.
Adds ability to configure all border radiuses on feedback widget
Closes#10256
…nt` (#10296)
Currently, you can use `Sentry.getClient() !== undefined` to check if
Sentry was initialized. In v8, we want to change this so that this
_always_ returns a client (possibly a Noop client), so this check will
not work anymore there. Instead, we can provide a new util that does
this explicitly, where we can control what it checks under the hood.
As per
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceResourceTiming/responseStart,
`responseStart` can be 0 if the request is coming straight from the
cache. This might lead us to calculate a negative ttfb.
To account for these scenarios, use `Math.max` to make sure we always
set to 0 in the case of a negative value.
@mydeamydea self-assigned this Jan 23, 2024
Comment threadCHANGELOG.md

@Lms24Lms24 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

5️⃣

@github-actions

github-actionsBot commented Jan 23, 2024

Copy link
Copy Markdown
Contributor

size-limit report 📦

PathSize
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped)77.79 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped)68.96 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped)72.85 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped)62.6 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing) - Webpack (gzipped)32.97 KB (+0.05% 🔺)
@sentry/browser (incl. Feedback) - Webpack (gzipped)31.24 KB (0%)
@sentry/browser (incl. sendFeedback) - Webpack (gzipped)31.25 KB (0%)
@sentry/browser - Webpack (gzipped)22.53 KB (0%)
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped)75.46 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped)67.03 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped)32.85 KB (+0.05% 🔺)
@sentry/browser - ES6 CDN Bundle (gzipped)24.36 KB (0%)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed)211.12 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed)99.11 KB (+0.04% 🔺)
@sentry/browser - ES6 CDN Bundle (minified & uncompressed)72.91 KB (0%)
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped)35.95 KB (+0.05% 🔺)
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped)69.37 KB (+0.03% 🔺)
@sentry/react - Webpack (gzipped)22.58 KB (0%)
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped)85.98 KB (+0.02% 🔺)
@sentry/nextjs Client - Webpack (gzipped)50.27 KB (+0.03% 🔺)
@sentry-internal/feedback - Webpack (gzipped)17.21 KB (0%)

@mydea
mydeaforce-pushed the prepare-release/7.95.0 branch from 7e9f16c to d98bd74CompareJanuary 23, 2024 16:18
@mydea
mydea merged commit 9fcfd51 into masterJan 23, 2024
@mydea
mydea deleted the prepare-release/7.95.0 branch January 23, 2024 16:55
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mydea@Lms24@AbhiPrasad@AleshaOleg@Methuselah96@c298lee
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

meta(changelog): Update changelog for v7.95.0 - #10298

Merged
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0
Jan 23, 2024
Merged

meta(changelog): Update changelog for v7.95.0#10298
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0

Conversation

@mydea

Copy link
Copy Markdown
Member

Just 5 more to go to 7.💯 !

mydeaand others added 16 commits January 19, 2024 09:39
…ns()` (#10243)
The current implementation has two problems:
1. It is weird that you can accidentally mutate the default integrations
of another package
2. We sometimes have logic-based default integrations - e.g. adding an
integration only if tracing is enabled, or similar. This means that
either we have to add some logic in the _upstream_ SDK to ensure this is
still added even if downstream SDKs overwrite default integrations, or
we need to duplicate the logic in the _downstream_ SDKs. With this new
method, we can instead centralize this, and downstream SDKs simply need
to call upstream `getDefaultIntegrations(options)`.
The usage of this was not really working well to begin with, and even
worse with the new functional integrations. Because if the user adds the
integration themselves (e.g. `integrations: [new RewriteFrames()]`), it
will not actually get the correct iteratee at all.
Overall it is much cleaner anyhow to just fork the integrations properly
and use them instead of the default one - then we can rely on the
standard behavior of merging integrations etc.
We need to do the same for basically all usages of
`addOrUpdateIntegration`, as that actually does not work at all anymore
with the functional integrations 😬 (and in many instances never really
worked properly if users passed in a custom integration themselves).
Co-authored-by: Abhijeet Prasad <aprasad@sentry.io>
We should wait for
#10243 to merge this,
as otherwise we'll get a deprecation/eslint error there.
[Gitflow] Merge master into develop
There have been tries to do this before, but let's see how things stand
today...
Deprecate the `Span.parentSpanId` field on the interface and class. This required only a couple of code replacements and a bunch of test
adjustments. Also went ahead and changed the integration test event type
in the tests I was modifying.
…bute (#10260)
Deprecate the `Span.origin` field on the class and the
interface. It will be replaced in v8 by the semantic `sentry.op`
attribute.
We should think about moving the wasm integration into `@sentry/browser`
and removing `@sentry/wasm` all together. What do you think?
By using functional integrations in #10230, we started importing from
`@sentry/core` in the WASM integration. However, we didn't register
`@sentry/core` as a dependency, making rollup bundle core into the
package output. This changed the `build/npm` directory structure, making
our entry points in `package.json` invalid.
This PR fixes things by simply registering core as a dependency of wasm.
If we move WASM to core (which I strongly think we should do), we'll be
able to get rid of this again.
… API (#10085)
Move `parameterize` function to core, export it to upstream packages via browser and node.
Co-authored-by: Luca Forstner <luca.forstner@sentry.io>
Instead, users should use the new functional styles.
Note that we'll probably actually un-deprecate `Replay` in some form in
v8, as we'll be keeping the class around there for sure (as there is a
lot of logic in there...). But users should not use it, so deprecating
this now!
While at it, I also deprecated the old `InitSentryForEmber` method in
favor of `init()`.
It's slightly unfortunate that I missed this, but we probably shouldn't
have exposed `ReplayCanvas` as a class anymore at all 😬 maybe we wait
before we document this etc. until we merged the functional style. cc
@billyvg
…OrUpdateIntegration` (#10263)
This updates the last usage of `addOrUpdateIntegration` and deprecates
it.
Adds ability to configure all border radiuses on feedback widget
Closes#10256
…nt` (#10296)
Currently, you can use `Sentry.getClient() !== undefined` to check if
Sentry was initialized. In v8, we want to change this so that this
_always_ returns a client (possibly a Noop client), so this check will
not work anymore there. Instead, we can provide a new util that does
this explicitly, where we can control what it checks under the hood.
As per
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceResourceTiming/responseStart,
`responseStart` can be 0 if the request is coming straight from the
cache. This might lead us to calculate a negative ttfb.
To account for these scenarios, use `Math.max` to make sure we always
set to 0 in the case of a negative value.
@mydeamydea self-assigned this Jan 23, 2024
Comment threadCHANGELOG.md

@Lms24Lms24 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

5️⃣

@github-actions

github-actionsBot commented Jan 23, 2024

Copy link
Copy Markdown
Contributor

size-limit report 📦

PathSize
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped)77.79 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped)68.96 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped)72.85 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped)62.6 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing) - Webpack (gzipped)32.97 KB (+0.05% 🔺)
@sentry/browser (incl. Feedback) - Webpack (gzipped)31.24 KB (0%)
@sentry/browser (incl. sendFeedback) - Webpack (gzipped)31.25 KB (0%)
@sentry/browser - Webpack (gzipped)22.53 KB (0%)
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped)75.46 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped)67.03 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped)32.85 KB (+0.05% 🔺)
@sentry/browser - ES6 CDN Bundle (gzipped)24.36 KB (0%)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed)211.12 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed)99.11 KB (+0.04% 🔺)
@sentry/browser - ES6 CDN Bundle (minified & uncompressed)72.91 KB (0%)
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped)35.95 KB (+0.05% 🔺)
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped)69.37 KB (+0.03% 🔺)
@sentry/react - Webpack (gzipped)22.58 KB (0%)
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped)85.98 KB (+0.02% 🔺)
@sentry/nextjs Client - Webpack (gzipped)50.27 KB (+0.03% 🔺)
@sentry-internal/feedback - Webpack (gzipped)17.21 KB (0%)

@mydea
mydeaforce-pushed the prepare-release/7.95.0 branch from 7e9f16c to d98bd74CompareJanuary 23, 2024 16:18
@mydea
mydea merged commit 9fcfd51 into masterJan 23, 2024
@mydea
mydea deleted the prepare-release/7.95.0 branch January 23, 2024 16:55
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mydea@Lms24@AbhiPrasad@AleshaOleg@Methuselah96@c298lee
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

meta(changelog): Update changelog for v7.95.0 - #10298

Merged
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0
Jan 23, 2024
Merged

meta(changelog): Update changelog for v7.95.0#10298
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0

Conversation

@mydea

Copy link
Copy Markdown
Member

Just 5 more to go to 7.💯 !

mydeaand others added 16 commits January 19, 2024 09:39
…ns()` (#10243)
The current implementation has two problems:
1. It is weird that you can accidentally mutate the default integrations
of another package
2. We sometimes have logic-based default integrations - e.g. adding an
integration only if tracing is enabled, or similar. This means that
either we have to add some logic in the _upstream_ SDK to ensure this is
still added even if downstream SDKs overwrite default integrations, or
we need to duplicate the logic in the _downstream_ SDKs. With this new
method, we can instead centralize this, and downstream SDKs simply need
to call upstream `getDefaultIntegrations(options)`.
The usage of this was not really working well to begin with, and even
worse with the new functional integrations. Because if the user adds the
integration themselves (e.g. `integrations: [new RewriteFrames()]`), it
will not actually get the correct iteratee at all.
Overall it is much cleaner anyhow to just fork the integrations properly
and use them instead of the default one - then we can rely on the
standard behavior of merging integrations etc.
We need to do the same for basically all usages of
`addOrUpdateIntegration`, as that actually does not work at all anymore
with the functional integrations 😬 (and in many instances never really
worked properly if users passed in a custom integration themselves).
Co-authored-by: Abhijeet Prasad <aprasad@sentry.io>
We should wait for
#10243 to merge this,
as otherwise we'll get a deprecation/eslint error there.
[Gitflow] Merge master into develop
There have been tries to do this before, but let's see how things stand
today...
Deprecate the `Span.parentSpanId` field on the interface and class. This required only a couple of code replacements and a bunch of test
adjustments. Also went ahead and changed the integration test event type
in the tests I was modifying.
…bute (#10260)
Deprecate the `Span.origin` field on the class and the
interface. It will be replaced in v8 by the semantic `sentry.op`
attribute.
We should think about moving the wasm integration into `@sentry/browser`
and removing `@sentry/wasm` all together. What do you think?
By using functional integrations in #10230, we started importing from
`@sentry/core` in the WASM integration. However, we didn't register
`@sentry/core` as a dependency, making rollup bundle core into the
package output. This changed the `build/npm` directory structure, making
our entry points in `package.json` invalid.
This PR fixes things by simply registering core as a dependency of wasm.
If we move WASM to core (which I strongly think we should do), we'll be
able to get rid of this again.
… API (#10085)
Move `parameterize` function to core, export it to upstream packages via browser and node.
Co-authored-by: Luca Forstner <luca.forstner@sentry.io>
Instead, users should use the new functional styles.
Note that we'll probably actually un-deprecate `Replay` in some form in
v8, as we'll be keeping the class around there for sure (as there is a
lot of logic in there...). But users should not use it, so deprecating
this now!
While at it, I also deprecated the old `InitSentryForEmber` method in
favor of `init()`.
It's slightly unfortunate that I missed this, but we probably shouldn't
have exposed `ReplayCanvas` as a class anymore at all 😬 maybe we wait
before we document this etc. until we merged the functional style. cc
@billyvg
…OrUpdateIntegration` (#10263)
This updates the last usage of `addOrUpdateIntegration` and deprecates
it.
Adds ability to configure all border radiuses on feedback widget
Closes#10256
…nt` (#10296)
Currently, you can use `Sentry.getClient() !== undefined` to check if
Sentry was initialized. In v8, we want to change this so that this
_always_ returns a client (possibly a Noop client), so this check will
not work anymore there. Instead, we can provide a new util that does
this explicitly, where we can control what it checks under the hood.
As per
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceResourceTiming/responseStart,
`responseStart` can be 0 if the request is coming straight from the
cache. This might lead us to calculate a negative ttfb.
To account for these scenarios, use `Math.max` to make sure we always
set to 0 in the case of a negative value.
@mydeamydea self-assigned this Jan 23, 2024
Comment threadCHANGELOG.md

@Lms24Lms24 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

5️⃣

@github-actions

github-actionsBot commented Jan 23, 2024

Copy link
Copy Markdown
Contributor

size-limit report 📦

PathSize
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped)77.79 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped)68.96 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped)72.85 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped)62.6 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing) - Webpack (gzipped)32.97 KB (+0.05% 🔺)
@sentry/browser (incl. Feedback) - Webpack (gzipped)31.24 KB (0%)
@sentry/browser (incl. sendFeedback) - Webpack (gzipped)31.25 KB (0%)
@sentry/browser - Webpack (gzipped)22.53 KB (0%)
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped)75.46 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped)67.03 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped)32.85 KB (+0.05% 🔺)
@sentry/browser - ES6 CDN Bundle (gzipped)24.36 KB (0%)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed)211.12 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed)99.11 KB (+0.04% 🔺)
@sentry/browser - ES6 CDN Bundle (minified & uncompressed)72.91 KB (0%)
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped)35.95 KB (+0.05% 🔺)
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped)69.37 KB (+0.03% 🔺)
@sentry/react - Webpack (gzipped)22.58 KB (0%)
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped)85.98 KB (+0.02% 🔺)
@sentry/nextjs Client - Webpack (gzipped)50.27 KB (+0.03% 🔺)
@sentry-internal/feedback - Webpack (gzipped)17.21 KB (0%)

@mydea
mydeaforce-pushed the prepare-release/7.95.0 branch from 7e9f16c to d98bd74CompareJanuary 23, 2024 16:18
@mydea
mydea merged commit 9fcfd51 into masterJan 23, 2024
@mydea
mydea deleted the prepare-release/7.95.0 branch January 23, 2024 16:55
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mydea@Lms24@AbhiPrasad@AleshaOleg@Methuselah96@c298lee
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

meta(changelog): Update changelog for v7.95.0 - #10298

Merged
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0
Jan 23, 2024
Merged

meta(changelog): Update changelog for v7.95.0#10298
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0

Conversation

@mydea

Copy link
Copy Markdown
Member

Just 5 more to go to 7.💯 !

mydeaand others added 16 commits January 19, 2024 09:39
…ns()` (#10243)
The current implementation has two problems:
1. It is weird that you can accidentally mutate the default integrations
of another package
2. We sometimes have logic-based default integrations - e.g. adding an
integration only if tracing is enabled, or similar. This means that
either we have to add some logic in the _upstream_ SDK to ensure this is
still added even if downstream SDKs overwrite default integrations, or
we need to duplicate the logic in the _downstream_ SDKs. With this new
method, we can instead centralize this, and downstream SDKs simply need
to call upstream `getDefaultIntegrations(options)`.
The usage of this was not really working well to begin with, and even
worse with the new functional integrations. Because if the user adds the
integration themselves (e.g. `integrations: [new RewriteFrames()]`), it
will not actually get the correct iteratee at all.
Overall it is much cleaner anyhow to just fork the integrations properly
and use them instead of the default one - then we can rely on the
standard behavior of merging integrations etc.
We need to do the same for basically all usages of
`addOrUpdateIntegration`, as that actually does not work at all anymore
with the functional integrations 😬 (and in many instances never really
worked properly if users passed in a custom integration themselves).
Co-authored-by: Abhijeet Prasad <aprasad@sentry.io>
We should wait for
#10243 to merge this,
as otherwise we'll get a deprecation/eslint error there.
[Gitflow] Merge master into develop
There have been tries to do this before, but let's see how things stand
today...
Deprecate the `Span.parentSpanId` field on the interface and class. This required only a couple of code replacements and a bunch of test
adjustments. Also went ahead and changed the integration test event type
in the tests I was modifying.
…bute (#10260)
Deprecate the `Span.origin` field on the class and the
interface. It will be replaced in v8 by the semantic `sentry.op`
attribute.
We should think about moving the wasm integration into `@sentry/browser`
and removing `@sentry/wasm` all together. What do you think?
By using functional integrations in #10230, we started importing from
`@sentry/core` in the WASM integration. However, we didn't register
`@sentry/core` as a dependency, making rollup bundle core into the
package output. This changed the `build/npm` directory structure, making
our entry points in `package.json` invalid.
This PR fixes things by simply registering core as a dependency of wasm.
If we move WASM to core (which I strongly think we should do), we'll be
able to get rid of this again.
… API (#10085)
Move `parameterize` function to core, export it to upstream packages via browser and node.
Co-authored-by: Luca Forstner <luca.forstner@sentry.io>
Instead, users should use the new functional styles.
Note that we'll probably actually un-deprecate `Replay` in some form in
v8, as we'll be keeping the class around there for sure (as there is a
lot of logic in there...). But users should not use it, so deprecating
this now!
While at it, I also deprecated the old `InitSentryForEmber` method in
favor of `init()`.
It's slightly unfortunate that I missed this, but we probably shouldn't
have exposed `ReplayCanvas` as a class anymore at all 😬 maybe we wait
before we document this etc. until we merged the functional style. cc
@billyvg
…OrUpdateIntegration` (#10263)
This updates the last usage of `addOrUpdateIntegration` and deprecates
it.
Adds ability to configure all border radiuses on feedback widget
Closes#10256
…nt` (#10296)
Currently, you can use `Sentry.getClient() !== undefined` to check if
Sentry was initialized. In v8, we want to change this so that this
_always_ returns a client (possibly a Noop client), so this check will
not work anymore there. Instead, we can provide a new util that does
this explicitly, where we can control what it checks under the hood.
As per
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceResourceTiming/responseStart,
`responseStart` can be 0 if the request is coming straight from the
cache. This might lead us to calculate a negative ttfb.
To account for these scenarios, use `Math.max` to make sure we always
set to 0 in the case of a negative value.
@mydeamydea self-assigned this Jan 23, 2024
Comment threadCHANGELOG.md

@Lms24Lms24 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

5️⃣

@github-actions

github-actionsBot commented Jan 23, 2024

Copy link
Copy Markdown
Contributor

size-limit report 📦

PathSize
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped)77.79 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped)68.96 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped)72.85 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped)62.6 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing) - Webpack (gzipped)32.97 KB (+0.05% 🔺)
@sentry/browser (incl. Feedback) - Webpack (gzipped)31.24 KB (0%)
@sentry/browser (incl. sendFeedback) - Webpack (gzipped)31.25 KB (0%)
@sentry/browser - Webpack (gzipped)22.53 KB (0%)
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped)75.46 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped)67.03 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped)32.85 KB (+0.05% 🔺)
@sentry/browser - ES6 CDN Bundle (gzipped)24.36 KB (0%)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed)211.12 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed)99.11 KB (+0.04% 🔺)
@sentry/browser - ES6 CDN Bundle (minified & uncompressed)72.91 KB (0%)
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped)35.95 KB (+0.05% 🔺)
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped)69.37 KB (+0.03% 🔺)
@sentry/react - Webpack (gzipped)22.58 KB (0%)
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped)85.98 KB (+0.02% 🔺)
@sentry/nextjs Client - Webpack (gzipped)50.27 KB (+0.03% 🔺)
@sentry-internal/feedback - Webpack (gzipped)17.21 KB (0%)

@mydea
mydeaforce-pushed the prepare-release/7.95.0 branch from 7e9f16c to d98bd74CompareJanuary 23, 2024 16:18
@mydea
mydea merged commit 9fcfd51 into masterJan 23, 2024
@mydea
mydea deleted the prepare-release/7.95.0 branch January 23, 2024 16:55
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mydea@Lms24@AbhiPrasad@AleshaOleg@Methuselah96@c298lee
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

meta(changelog): Update changelog for v7.95.0 - #10298

Merged
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0
Jan 23, 2024
Merged

meta(changelog): Update changelog for v7.95.0#10298
mydea merged 17 commits into
masterfrom
prepare-release/7.95.0

Conversation

@mydea

Copy link
Copy Markdown
Member

Just 5 more to go to 7.💯 !

mydeaand others added 16 commits January 19, 2024 09:39
…ns()` (#10243)
The current implementation has two problems:
1. It is weird that you can accidentally mutate the default integrations
of another package
2. We sometimes have logic-based default integrations - e.g. adding an
integration only if tracing is enabled, or similar. This means that
either we have to add some logic in the _upstream_ SDK to ensure this is
still added even if downstream SDKs overwrite default integrations, or
we need to duplicate the logic in the _downstream_ SDKs. With this new
method, we can instead centralize this, and downstream SDKs simply need
to call upstream `getDefaultIntegrations(options)`.
The usage of this was not really working well to begin with, and even
worse with the new functional integrations. Because if the user adds the
integration themselves (e.g. `integrations: [new RewriteFrames()]`), it
will not actually get the correct iteratee at all.
Overall it is much cleaner anyhow to just fork the integrations properly
and use them instead of the default one - then we can rely on the
standard behavior of merging integrations etc.
We need to do the same for basically all usages of
`addOrUpdateIntegration`, as that actually does not work at all anymore
with the functional integrations 😬 (and in many instances never really
worked properly if users passed in a custom integration themselves).
Co-authored-by: Abhijeet Prasad <aprasad@sentry.io>
We should wait for
#10243 to merge this,
as otherwise we'll get a deprecation/eslint error there.
[Gitflow] Merge master into develop
There have been tries to do this before, but let's see how things stand
today...
Deprecate the `Span.parentSpanId` field on the interface and class. This required only a couple of code replacements and a bunch of test
adjustments. Also went ahead and changed the integration test event type
in the tests I was modifying.
…bute (#10260)
Deprecate the `Span.origin` field on the class and the
interface. It will be replaced in v8 by the semantic `sentry.op`
attribute.
We should think about moving the wasm integration into `@sentry/browser`
and removing `@sentry/wasm` all together. What do you think?
By using functional integrations in #10230, we started importing from
`@sentry/core` in the WASM integration. However, we didn't register
`@sentry/core` as a dependency, making rollup bundle core into the
package output. This changed the `build/npm` directory structure, making
our entry points in `package.json` invalid.
This PR fixes things by simply registering core as a dependency of wasm.
If we move WASM to core (which I strongly think we should do), we'll be
able to get rid of this again.
… API (#10085)
Move `parameterize` function to core, export it to upstream packages via browser and node.
Co-authored-by: Luca Forstner <luca.forstner@sentry.io>
Instead, users should use the new functional styles.
Note that we'll probably actually un-deprecate `Replay` in some form in
v8, as we'll be keeping the class around there for sure (as there is a
lot of logic in there...). But users should not use it, so deprecating
this now!
While at it, I also deprecated the old `InitSentryForEmber` method in
favor of `init()`.
It's slightly unfortunate that I missed this, but we probably shouldn't
have exposed `ReplayCanvas` as a class anymore at all 😬 maybe we wait
before we document this etc. until we merged the functional style. cc
@billyvg
…OrUpdateIntegration` (#10263)
This updates the last usage of `addOrUpdateIntegration` and deprecates
it.
Adds ability to configure all border radiuses on feedback widget
Closes#10256
…nt` (#10296)
Currently, you can use `Sentry.getClient() !== undefined` to check if
Sentry was initialized. In v8, we want to change this so that this
_always_ returns a client (possibly a Noop client), so this check will
not work anymore there. Instead, we can provide a new util that does
this explicitly, where we can control what it checks under the hood.
As per
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceResourceTiming/responseStart,
`responseStart` can be 0 if the request is coming straight from the
cache. This might lead us to calculate a negative ttfb.
To account for these scenarios, use `Math.max` to make sure we always
set to 0 in the case of a negative value.
@mydeamydea self-assigned this Jan 23, 2024
Comment threadCHANGELOG.md

@Lms24Lms24 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

5️⃣

@github-actions

github-actionsBot commented Jan 23, 2024

Copy link
Copy Markdown
Contributor

size-limit report 📦

PathSize
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped)77.79 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped)68.96 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped)72.85 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped)62.6 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing) - Webpack (gzipped)32.97 KB (+0.05% 🔺)
@sentry/browser (incl. Feedback) - Webpack (gzipped)31.24 KB (0%)
@sentry/browser (incl. sendFeedback) - Webpack (gzipped)31.25 KB (0%)
@sentry/browser - Webpack (gzipped)22.53 KB (0%)
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped)75.46 KB (+0.03% 🔺)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped)67.03 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped)32.85 KB (+0.05% 🔺)
@sentry/browser - ES6 CDN Bundle (gzipped)24.36 KB (0%)
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed)211.12 KB (+0.02% 🔺)
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed)99.11 KB (+0.04% 🔺)
@sentry/browser - ES6 CDN Bundle (minified & uncompressed)72.91 KB (0%)
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped)35.95 KB (+0.05% 🔺)
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped)69.37 KB (+0.03% 🔺)
@sentry/react - Webpack (gzipped)22.58 KB (0%)
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped)85.98 KB (+0.02% 🔺)
@sentry/nextjs Client - Webpack (gzipped)50.27 KB (+0.03% 🔺)
@sentry-internal/feedback - Webpack (gzipped)17.21 KB (0%)

@mydea
mydeaforce-pushed the prepare-release/7.95.0 branch from 7e9f16c to d98bd74CompareJanuary 23, 2024 16:18
@mydea
mydea merged commit 9fcfd51 into masterJan 23, 2024
@mydea
mydea deleted the prepare-release/7.95.0 branch January 23, 2024 16:55
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mydea@Lms24@AbhiPrasad@AleshaOleg@Methuselah96@c298lee