meta: Update CHANGELOG for 8.21.0 - #13100

Merged
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0
Jul 30, 2024
Merged

meta: Update CHANGELOG for 8.21.0#13100
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0

Conversation

@Lms24

Copy link
Copy Markdown
Member

No description provided.

AbhiPrasadand others added 24 commits July 24, 2024 09:24
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Svelte SDK tests to do so.
ref #11084
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our server tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
I was also getting some ts errors in the tests, so addressed those as
well.
Reverts #12980
We no longer need to pin to Node 22.4 now that Node 22.5.1 has been
released.
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V22.md#22.5.1
…Hub Action (#13037)
Extending the "how to" with information about the new GitHub action.
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Replay SDK tests to do so.
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our non-browser tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
[Gitflow] Merge master into develop
…2983)
Co-authored-by: Francesco Novy <francesco.novy@sentry.io>
Changes wording to lead people sharing a reproduction example.
Adding the Vue BrowserTracing instrumentation to get parametrized
routes.
Figured having this written down might prove useful in the future :)
- [x] If you've added code that should be tested, please add tests.
- [x] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).fe
This addition adds an intuitive way to resize screenshots in the user
feedback widget. The draggable area is bound by the canvas box (so it
won't overflow) and is only draggable when cropped (when confirm/cancel
buttons present)
https://github.com/user-attachments/assets/7ddff991-a791-4d41-a2ad-b278e1ab4950
#13022)
Fixes#12849.
This is a bit tricky because `beforeSendTransaction` can return a
promise, so in order to avoid dealing with this I put the # of spans on
the sdk metadata, and then compare that afterwards.
When using the SDK without tracing, the span processor is not required -
we should reflect this in our validation logic.
While at it, I also improved the warning for not using the
SentrySampler.
Before reviewing this patch, I recommend reading through a writeup I did:
#13007
This PR adds `withSentry`, a method that wraps your cloudflare worker
handler to add Sentry instrumentation. The writeup above explains why we
need to do this over just a regular `Sentry.init` call.
The implementation of `withSentry` is fairly straightforward, wrapping
the fetch handler in the cloudflare worker with:
1. `withIsolationScope` to isolate it from other concurrent requests
2. helpers to update scope with relevant contexts/request
3. `continueTrace` to continue distributed tracing
4. `startSpan` to track spans
Usage looks something like so:
```ts
import * as Sentry from '@sentry/cloudflare';
export default withSentry(
(env) => ({
dsn: env.SENTRY_DSN,
tracesSampleRate: 1.0,
}),
{
async fetch(request, env, ctx) {
return new Response('Hello World!');
},
} satisfies ExportedHandler<Env>,
);
```
Next step here is to add more robust e2e tests, and then release an
initial version!
Explicitly add a changelog entry for cloudflare so it's ready to go
whenever the team decides to do a release.
Get `@sentry/cloudflare` ready for release.
Before submitting a pull request, please take a look at our
[Contributing](https://github.com/getsentry/sentry-javascript/blob/master/CONTRIBUTING.md)
guidelines and verify:
- [ ] If you've added code that should be tested, please add tests.
- [ ] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).
#13081)
Fixes#13080
This was basically just wrong - we need stuff from `browser` package
there, so we can't really build the final CDN bundle from the
feedback-internal package.
I moved this over and also adjusted tests to actually test this with
pluggable CDN integrations as well.
Also changes the `findDefaultSdkInitFile` function as the
backend-related file is located and named differently than the client
config file (`sentry.client.config.ts` and
`public/instrument.server.mjs`).
closes#13097
@Lms24
Lms24force-pushed the prepare-release/8.21.0 branch from 2a4eff1 to 67b978dCompareJuly 30, 2024 11:30
@Lms24
Lms24 changed the base branch from develop to masterJuly 30, 2024 12:06
@Lms24
Lms24 requested review from a team as code ownersJuly 30, 2024 12:06
@Lms24
Lms24 merged commit f609d05 into masterJul 30, 2024
@Lms24
Lms24 deleted the prepare-release/8.21.0 branch July 30, 2024 12:06
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.

7 participants

@Lms24@mydea@AbhiPrasad@s1gr1d@onurtemizkan@chargome@joemmalatesta
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 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: Update CHANGELOG for 8.21.0 - #13100

Merged
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0
Jul 30, 2024
Merged

meta: Update CHANGELOG for 8.21.0#13100
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0

Conversation

@Lms24

Copy link
Copy Markdown
Member

No description provided.

AbhiPrasadand others added 24 commits July 24, 2024 09:24
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Svelte SDK tests to do so.
ref #11084
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our server tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
I was also getting some ts errors in the tests, so addressed those as
well.
Reverts #12980
We no longer need to pin to Node 22.4 now that Node 22.5.1 has been
released.
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V22.md#22.5.1
…Hub Action (#13037)
Extending the "how to" with information about the new GitHub action.
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Replay SDK tests to do so.
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our non-browser tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
[Gitflow] Merge master into develop
…2983)
Co-authored-by: Francesco Novy <francesco.novy@sentry.io>
Changes wording to lead people sharing a reproduction example.
Adding the Vue BrowserTracing instrumentation to get parametrized
routes.
Figured having this written down might prove useful in the future :)
- [x] If you've added code that should be tested, please add tests.
- [x] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).fe
This addition adds an intuitive way to resize screenshots in the user
feedback widget. The draggable area is bound by the canvas box (so it
won't overflow) and is only draggable when cropped (when confirm/cancel
buttons present)
https://github.com/user-attachments/assets/7ddff991-a791-4d41-a2ad-b278e1ab4950
#13022)
Fixes#12849.
This is a bit tricky because `beforeSendTransaction` can return a
promise, so in order to avoid dealing with this I put the # of spans on
the sdk metadata, and then compare that afterwards.
When using the SDK without tracing, the span processor is not required -
we should reflect this in our validation logic.
While at it, I also improved the warning for not using the
SentrySampler.
Before reviewing this patch, I recommend reading through a writeup I did:
#13007
This PR adds `withSentry`, a method that wraps your cloudflare worker
handler to add Sentry instrumentation. The writeup above explains why we
need to do this over just a regular `Sentry.init` call.
The implementation of `withSentry` is fairly straightforward, wrapping
the fetch handler in the cloudflare worker with:
1. `withIsolationScope` to isolate it from other concurrent requests
2. helpers to update scope with relevant contexts/request
3. `continueTrace` to continue distributed tracing
4. `startSpan` to track spans
Usage looks something like so:
```ts
import * as Sentry from '@sentry/cloudflare';
export default withSentry(
(env) => ({
dsn: env.SENTRY_DSN,
tracesSampleRate: 1.0,
}),
{
async fetch(request, env, ctx) {
return new Response('Hello World!');
},
} satisfies ExportedHandler<Env>,
);
```
Next step here is to add more robust e2e tests, and then release an
initial version!
Explicitly add a changelog entry for cloudflare so it's ready to go
whenever the team decides to do a release.
Get `@sentry/cloudflare` ready for release.
Before submitting a pull request, please take a look at our
[Contributing](https://github.com/getsentry/sentry-javascript/blob/master/CONTRIBUTING.md)
guidelines and verify:
- [ ] If you've added code that should be tested, please add tests.
- [ ] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).
#13081)
Fixes#13080
This was basically just wrong - we need stuff from `browser` package
there, so we can't really build the final CDN bundle from the
feedback-internal package.
I moved this over and also adjusted tests to actually test this with
pluggable CDN integrations as well.
Also changes the `findDefaultSdkInitFile` function as the
backend-related file is located and named differently than the client
config file (`sentry.client.config.ts` and
`public/instrument.server.mjs`).
closes#13097
@Lms24
Lms24force-pushed the prepare-release/8.21.0 branch from 2a4eff1 to 67b978dCompareJuly 30, 2024 11:30
@Lms24
Lms24 changed the base branch from develop to masterJuly 30, 2024 12:06
@Lms24
Lms24 requested review from a team as code ownersJuly 30, 2024 12:06
@Lms24
Lms24 merged commit f609d05 into masterJul 30, 2024
@Lms24
Lms24 deleted the prepare-release/8.21.0 branch July 30, 2024 12:06
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.

7 participants

@Lms24@mydea@AbhiPrasad@s1gr1d@onurtemizkan@chargome@joemmalatesta
, '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: Update CHANGELOG for 8.21.0 - #13100

Merged
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0
Jul 30, 2024
Merged

meta: Update CHANGELOG for 8.21.0#13100
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0

Conversation

@Lms24

Copy link
Copy Markdown
Member

No description provided.

AbhiPrasadand others added 24 commits July 24, 2024 09:24
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Svelte SDK tests to do so.
ref #11084
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our server tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
I was also getting some ts errors in the tests, so addressed those as
well.
Reverts #12980
We no longer need to pin to Node 22.4 now that Node 22.5.1 has been
released.
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V22.md#22.5.1
…Hub Action (#13037)
Extending the "how to" with information about the new GitHub action.
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Replay SDK tests to do so.
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our non-browser tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
[Gitflow] Merge master into develop
…2983)
Co-authored-by: Francesco Novy <francesco.novy@sentry.io>
Changes wording to lead people sharing a reproduction example.
Adding the Vue BrowserTracing instrumentation to get parametrized
routes.
Figured having this written down might prove useful in the future :)
- [x] If you've added code that should be tested, please add tests.
- [x] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).fe
This addition adds an intuitive way to resize screenshots in the user
feedback widget. The draggable area is bound by the canvas box (so it
won't overflow) and is only draggable when cropped (when confirm/cancel
buttons present)
https://github.com/user-attachments/assets/7ddff991-a791-4d41-a2ad-b278e1ab4950
#13022)
Fixes#12849.
This is a bit tricky because `beforeSendTransaction` can return a
promise, so in order to avoid dealing with this I put the # of spans on
the sdk metadata, and then compare that afterwards.
When using the SDK without tracing, the span processor is not required -
we should reflect this in our validation logic.
While at it, I also improved the warning for not using the
SentrySampler.
Before reviewing this patch, I recommend reading through a writeup I did:
#13007
This PR adds `withSentry`, a method that wraps your cloudflare worker
handler to add Sentry instrumentation. The writeup above explains why we
need to do this over just a regular `Sentry.init` call.
The implementation of `withSentry` is fairly straightforward, wrapping
the fetch handler in the cloudflare worker with:
1. `withIsolationScope` to isolate it from other concurrent requests
2. helpers to update scope with relevant contexts/request
3. `continueTrace` to continue distributed tracing
4. `startSpan` to track spans
Usage looks something like so:
```ts
import * as Sentry from '@sentry/cloudflare';
export default withSentry(
(env) => ({
dsn: env.SENTRY_DSN,
tracesSampleRate: 1.0,
}),
{
async fetch(request, env, ctx) {
return new Response('Hello World!');
},
} satisfies ExportedHandler<Env>,
);
```
Next step here is to add more robust e2e tests, and then release an
initial version!
Explicitly add a changelog entry for cloudflare so it's ready to go
whenever the team decides to do a release.
Get `@sentry/cloudflare` ready for release.
Before submitting a pull request, please take a look at our
[Contributing](https://github.com/getsentry/sentry-javascript/blob/master/CONTRIBUTING.md)
guidelines and verify:
- [ ] If you've added code that should be tested, please add tests.
- [ ] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).
#13081)
Fixes#13080
This was basically just wrong - we need stuff from `browser` package
there, so we can't really build the final CDN bundle from the
feedback-internal package.
I moved this over and also adjusted tests to actually test this with
pluggable CDN integrations as well.
Also changes the `findDefaultSdkInitFile` function as the
backend-related file is located and named differently than the client
config file (`sentry.client.config.ts` and
`public/instrument.server.mjs`).
closes#13097
@Lms24
Lms24force-pushed the prepare-release/8.21.0 branch from 2a4eff1 to 67b978dCompareJuly 30, 2024 11:30
@Lms24
Lms24 changed the base branch from develop to masterJuly 30, 2024 12:06
@Lms24
Lms24 requested review from a team as code ownersJuly 30, 2024 12:06
@Lms24
Lms24 merged commit f609d05 into masterJul 30, 2024
@Lms24
Lms24 deleted the prepare-release/8.21.0 branch July 30, 2024 12:06
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.

7 participants

@Lms24@mydea@AbhiPrasad@s1gr1d@onurtemizkan@chargome@joemmalatesta
, '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 > 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: Update CHANGELOG for 8.21.0 - #13100

Merged
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0
Jul 30, 2024
Merged

meta: Update CHANGELOG for 8.21.0#13100
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0

Conversation

@Lms24

Copy link
Copy Markdown
Member

No description provided.

AbhiPrasadand others added 24 commits July 24, 2024 09:24
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Svelte SDK tests to do so.
ref #11084
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our server tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
I was also getting some ts errors in the tests, so addressed those as
well.
Reverts #12980
We no longer need to pin to Node 22.4 now that Node 22.5.1 has been
released.
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V22.md#22.5.1
…Hub Action (#13037)
Extending the "how to" with information about the new GitHub action.
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Replay SDK tests to do so.
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our non-browser tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
[Gitflow] Merge master into develop
…2983)
Co-authored-by: Francesco Novy <francesco.novy@sentry.io>
Changes wording to lead people sharing a reproduction example.
Adding the Vue BrowserTracing instrumentation to get parametrized
routes.
Figured having this written down might prove useful in the future :)
- [x] If you've added code that should be tested, please add tests.
- [x] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).fe
This addition adds an intuitive way to resize screenshots in the user
feedback widget. The draggable area is bound by the canvas box (so it
won't overflow) and is only draggable when cropped (when confirm/cancel
buttons present)
https://github.com/user-attachments/assets/7ddff991-a791-4d41-a2ad-b278e1ab4950
#13022)
Fixes#12849.
This is a bit tricky because `beforeSendTransaction` can return a
promise, so in order to avoid dealing with this I put the # of spans on
the sdk metadata, and then compare that afterwards.
When using the SDK without tracing, the span processor is not required -
we should reflect this in our validation logic.
While at it, I also improved the warning for not using the
SentrySampler.
Before reviewing this patch, I recommend reading through a writeup I did:
#13007
This PR adds `withSentry`, a method that wraps your cloudflare worker
handler to add Sentry instrumentation. The writeup above explains why we
need to do this over just a regular `Sentry.init` call.
The implementation of `withSentry` is fairly straightforward, wrapping
the fetch handler in the cloudflare worker with:
1. `withIsolationScope` to isolate it from other concurrent requests
2. helpers to update scope with relevant contexts/request
3. `continueTrace` to continue distributed tracing
4. `startSpan` to track spans
Usage looks something like so:
```ts
import * as Sentry from '@sentry/cloudflare';
export default withSentry(
(env) => ({
dsn: env.SENTRY_DSN,
tracesSampleRate: 1.0,
}),
{
async fetch(request, env, ctx) {
return new Response('Hello World!');
},
} satisfies ExportedHandler<Env>,
);
```
Next step here is to add more robust e2e tests, and then release an
initial version!
Explicitly add a changelog entry for cloudflare so it's ready to go
whenever the team decides to do a release.
Get `@sentry/cloudflare` ready for release.
Before submitting a pull request, please take a look at our
[Contributing](https://github.com/getsentry/sentry-javascript/blob/master/CONTRIBUTING.md)
guidelines and verify:
- [ ] If you've added code that should be tested, please add tests.
- [ ] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).
#13081)
Fixes#13080
This was basically just wrong - we need stuff from `browser` package
there, so we can't really build the final CDN bundle from the
feedback-internal package.
I moved this over and also adjusted tests to actually test this with
pluggable CDN integrations as well.
Also changes the `findDefaultSdkInitFile` function as the
backend-related file is located and named differently than the client
config file (`sentry.client.config.ts` and
`public/instrument.server.mjs`).
closes#13097
@Lms24
Lms24force-pushed the prepare-release/8.21.0 branch from 2a4eff1 to 67b978dCompareJuly 30, 2024 11:30
@Lms24
Lms24 changed the base branch from develop to masterJuly 30, 2024 12:06
@Lms24
Lms24 requested review from a team as code ownersJuly 30, 2024 12:06
@Lms24
Lms24 merged commit f609d05 into masterJul 30, 2024
@Lms24
Lms24 deleted the prepare-release/8.21.0 branch July 30, 2024 12:06
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.

7 participants

@Lms24@mydea@AbhiPrasad@s1gr1d@onurtemizkan@chargome@joemmalatesta
, '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: Update CHANGELOG for 8.21.0 - #13100

Merged
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0
Jul 30, 2024
Merged

meta: Update CHANGELOG for 8.21.0#13100
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0

Conversation

@Lms24

Copy link
Copy Markdown
Member

No description provided.

AbhiPrasadand others added 24 commits July 24, 2024 09:24
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Svelte SDK tests to do so.
ref #11084
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our server tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
I was also getting some ts errors in the tests, so addressed those as
well.
Reverts #12980
We no longer need to pin to Node 22.4 now that Node 22.5.1 has been
released.
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V22.md#22.5.1
…Hub Action (#13037)
Extending the "how to" with information about the new GitHub action.
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Replay SDK tests to do so.
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our non-browser tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
[Gitflow] Merge master into develop
…2983)
Co-authored-by: Francesco Novy <francesco.novy@sentry.io>
Changes wording to lead people sharing a reproduction example.
Adding the Vue BrowserTracing instrumentation to get parametrized
routes.
Figured having this written down might prove useful in the future :)
- [x] If you've added code that should be tested, please add tests.
- [x] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).fe
This addition adds an intuitive way to resize screenshots in the user
feedback widget. The draggable area is bound by the canvas box (so it
won't overflow) and is only draggable when cropped (when confirm/cancel
buttons present)
https://github.com/user-attachments/assets/7ddff991-a791-4d41-a2ad-b278e1ab4950
#13022)
Fixes#12849.
This is a bit tricky because `beforeSendTransaction` can return a
promise, so in order to avoid dealing with this I put the # of spans on
the sdk metadata, and then compare that afterwards.
When using the SDK without tracing, the span processor is not required -
we should reflect this in our validation logic.
While at it, I also improved the warning for not using the
SentrySampler.
Before reviewing this patch, I recommend reading through a writeup I did:
#13007
This PR adds `withSentry`, a method that wraps your cloudflare worker
handler to add Sentry instrumentation. The writeup above explains why we
need to do this over just a regular `Sentry.init` call.
The implementation of `withSentry` is fairly straightforward, wrapping
the fetch handler in the cloudflare worker with:
1. `withIsolationScope` to isolate it from other concurrent requests
2. helpers to update scope with relevant contexts/request
3. `continueTrace` to continue distributed tracing
4. `startSpan` to track spans
Usage looks something like so:
```ts
import * as Sentry from '@sentry/cloudflare';
export default withSentry(
(env) => ({
dsn: env.SENTRY_DSN,
tracesSampleRate: 1.0,
}),
{
async fetch(request, env, ctx) {
return new Response('Hello World!');
},
} satisfies ExportedHandler<Env>,
);
```
Next step here is to add more robust e2e tests, and then release an
initial version!
Explicitly add a changelog entry for cloudflare so it's ready to go
whenever the team decides to do a release.
Get `@sentry/cloudflare` ready for release.
Before submitting a pull request, please take a look at our
[Contributing](https://github.com/getsentry/sentry-javascript/blob/master/CONTRIBUTING.md)
guidelines and verify:
- [ ] If you've added code that should be tested, please add tests.
- [ ] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).
#13081)
Fixes#13080
This was basically just wrong - we need stuff from `browser` package
there, so we can't really build the final CDN bundle from the
feedback-internal package.
I moved this over and also adjusted tests to actually test this with
pluggable CDN integrations as well.
Also changes the `findDefaultSdkInitFile` function as the
backend-related file is located and named differently than the client
config file (`sentry.client.config.ts` and
`public/instrument.server.mjs`).
closes#13097
@Lms24
Lms24force-pushed the prepare-release/8.21.0 branch from 2a4eff1 to 67b978dCompareJuly 30, 2024 11:30
@Lms24
Lms24 changed the base branch from develop to masterJuly 30, 2024 12:06
@Lms24
Lms24 requested review from a team as code ownersJuly 30, 2024 12:06
@Lms24
Lms24 merged commit f609d05 into masterJul 30, 2024
@Lms24
Lms24 deleted the prepare-release/8.21.0 branch July 30, 2024 12:06
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.

7 participants

@Lms24@mydea@AbhiPrasad@s1gr1d@onurtemizkan@chargome@joemmalatesta
, '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: Update CHANGELOG for 8.21.0 - #13100

Merged
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0
Jul 30, 2024
Merged

meta: Update CHANGELOG for 8.21.0#13100
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0

Conversation

@Lms24

Copy link
Copy Markdown
Member

No description provided.

AbhiPrasadand others added 24 commits July 24, 2024 09:24
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Svelte SDK tests to do so.
ref #11084
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our server tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
I was also getting some ts errors in the tests, so addressed those as
well.
Reverts #12980
We no longer need to pin to Node 22.4 now that Node 22.5.1 has been
released.
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V22.md#22.5.1
…Hub Action (#13037)
Extending the "how to" with information about the new GitHub action.
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Replay SDK tests to do so.
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our non-browser tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
[Gitflow] Merge master into develop
…2983)
Co-authored-by: Francesco Novy <francesco.novy@sentry.io>
Changes wording to lead people sharing a reproduction example.
Adding the Vue BrowserTracing instrumentation to get parametrized
routes.
Figured having this written down might prove useful in the future :)
- [x] If you've added code that should be tested, please add tests.
- [x] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).fe
This addition adds an intuitive way to resize screenshots in the user
feedback widget. The draggable area is bound by the canvas box (so it
won't overflow) and is only draggable when cropped (when confirm/cancel
buttons present)
https://github.com/user-attachments/assets/7ddff991-a791-4d41-a2ad-b278e1ab4950
#13022)
Fixes#12849.
This is a bit tricky because `beforeSendTransaction` can return a
promise, so in order to avoid dealing with this I put the # of spans on
the sdk metadata, and then compare that afterwards.
When using the SDK without tracing, the span processor is not required -
we should reflect this in our validation logic.
While at it, I also improved the warning for not using the
SentrySampler.
Before reviewing this patch, I recommend reading through a writeup I did:
#13007
This PR adds `withSentry`, a method that wraps your cloudflare worker
handler to add Sentry instrumentation. The writeup above explains why we
need to do this over just a regular `Sentry.init` call.
The implementation of `withSentry` is fairly straightforward, wrapping
the fetch handler in the cloudflare worker with:
1. `withIsolationScope` to isolate it from other concurrent requests
2. helpers to update scope with relevant contexts/request
3. `continueTrace` to continue distributed tracing
4. `startSpan` to track spans
Usage looks something like so:
```ts
import * as Sentry from '@sentry/cloudflare';
export default withSentry(
(env) => ({
dsn: env.SENTRY_DSN,
tracesSampleRate: 1.0,
}),
{
async fetch(request, env, ctx) {
return new Response('Hello World!');
},
} satisfies ExportedHandler<Env>,
);
```
Next step here is to add more robust e2e tests, and then release an
initial version!
Explicitly add a changelog entry for cloudflare so it's ready to go
whenever the team decides to do a release.
Get `@sentry/cloudflare` ready for release.
Before submitting a pull request, please take a look at our
[Contributing](https://github.com/getsentry/sentry-javascript/blob/master/CONTRIBUTING.md)
guidelines and verify:
- [ ] If you've added code that should be tested, please add tests.
- [ ] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).
#13081)
Fixes#13080
This was basically just wrong - we need stuff from `browser` package
there, so we can't really build the final CDN bundle from the
feedback-internal package.
I moved this over and also adjusted tests to actually test this with
pluggable CDN integrations as well.
Also changes the `findDefaultSdkInitFile` function as the
backend-related file is located and named differently than the client
config file (`sentry.client.config.ts` and
`public/instrument.server.mjs`).
closes#13097
@Lms24
Lms24force-pushed the prepare-release/8.21.0 branch from 2a4eff1 to 67b978dCompareJuly 30, 2024 11:30
@Lms24
Lms24 changed the base branch from develop to masterJuly 30, 2024 12:06
@Lms24
Lms24 requested review from a team as code ownersJuly 30, 2024 12:06
@Lms24
Lms24 merged commit f609d05 into masterJul 30, 2024
@Lms24
Lms24 deleted the prepare-release/8.21.0 branch July 30, 2024 12:06
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.

7 participants

@Lms24@mydea@AbhiPrasad@s1gr1d@onurtemizkan@chargome@joemmalatesta
, '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: Update CHANGELOG for 8.21.0 - #13100

Merged
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0
Jul 30, 2024
Merged

meta: Update CHANGELOG for 8.21.0#13100
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0

Conversation

@Lms24

Copy link
Copy Markdown
Member

No description provided.

AbhiPrasadand others added 24 commits July 24, 2024 09:24
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Svelte SDK tests to do so.
ref #11084
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our server tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
I was also getting some ts errors in the tests, so addressed those as
well.
Reverts #12980
We no longer need to pin to Node 22.4 now that Node 22.5.1 has been
released.
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V22.md#22.5.1
…Hub Action (#13037)
Extending the "how to" with information about the new GitHub action.
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Replay SDK tests to do so.
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our non-browser tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
[Gitflow] Merge master into develop
…2983)
Co-authored-by: Francesco Novy <francesco.novy@sentry.io>
Changes wording to lead people sharing a reproduction example.
Adding the Vue BrowserTracing instrumentation to get parametrized
routes.
Figured having this written down might prove useful in the future :)
- [x] If you've added code that should be tested, please add tests.
- [x] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).fe
This addition adds an intuitive way to resize screenshots in the user
feedback widget. The draggable area is bound by the canvas box (so it
won't overflow) and is only draggable when cropped (when confirm/cancel
buttons present)
https://github.com/user-attachments/assets/7ddff991-a791-4d41-a2ad-b278e1ab4950
#13022)
Fixes#12849.
This is a bit tricky because `beforeSendTransaction` can return a
promise, so in order to avoid dealing with this I put the # of spans on
the sdk metadata, and then compare that afterwards.
When using the SDK without tracing, the span processor is not required -
we should reflect this in our validation logic.
While at it, I also improved the warning for not using the
SentrySampler.
Before reviewing this patch, I recommend reading through a writeup I did:
#13007
This PR adds `withSentry`, a method that wraps your cloudflare worker
handler to add Sentry instrumentation. The writeup above explains why we
need to do this over just a regular `Sentry.init` call.
The implementation of `withSentry` is fairly straightforward, wrapping
the fetch handler in the cloudflare worker with:
1. `withIsolationScope` to isolate it from other concurrent requests
2. helpers to update scope with relevant contexts/request
3. `continueTrace` to continue distributed tracing
4. `startSpan` to track spans
Usage looks something like so:
```ts
import * as Sentry from '@sentry/cloudflare';
export default withSentry(
(env) => ({
dsn: env.SENTRY_DSN,
tracesSampleRate: 1.0,
}),
{
async fetch(request, env, ctx) {
return new Response('Hello World!');
},
} satisfies ExportedHandler<Env>,
);
```
Next step here is to add more robust e2e tests, and then release an
initial version!
Explicitly add a changelog entry for cloudflare so it's ready to go
whenever the team decides to do a release.
Get `@sentry/cloudflare` ready for release.
Before submitting a pull request, please take a look at our
[Contributing](https://github.com/getsentry/sentry-javascript/blob/master/CONTRIBUTING.md)
guidelines and verify:
- [ ] If you've added code that should be tested, please add tests.
- [ ] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).
#13081)
Fixes#13080
This was basically just wrong - we need stuff from `browser` package
there, so we can't really build the final CDN bundle from the
feedback-internal package.
I moved this over and also adjusted tests to actually test this with
pluggable CDN integrations as well.
Also changes the `findDefaultSdkInitFile` function as the
backend-related file is located and named differently than the client
config file (`sentry.client.config.ts` and
`public/instrument.server.mjs`).
closes#13097
@Lms24
Lms24force-pushed the prepare-release/8.21.0 branch from 2a4eff1 to 67b978dCompareJuly 30, 2024 11:30
@Lms24
Lms24 changed the base branch from develop to masterJuly 30, 2024 12:06
@Lms24
Lms24 requested review from a team as code ownersJuly 30, 2024 12:06
@Lms24
Lms24 merged commit f609d05 into masterJul 30, 2024
@Lms24
Lms24 deleted the prepare-release/8.21.0 branch July 30, 2024 12:06
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.

7 participants

@Lms24@mydea@AbhiPrasad@s1gr1d@onurtemizkan@chargome@joemmalatesta
, '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: Update CHANGELOG for 8.21.0 - #13100

Merged
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0
Jul 30, 2024
Merged

meta: Update CHANGELOG for 8.21.0#13100
Lms24 merged 24 commits into
masterfrom
prepare-release/8.21.0

Conversation

@Lms24

Copy link
Copy Markdown
Member

No description provided.

AbhiPrasadand others added 24 commits July 24, 2024 09:24
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Svelte SDK tests to do so.
ref #11084
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our server tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
I was also getting some ts errors in the tests, so addressed those as
well.
Reverts #12980
We no longer need to pin to Node 22.4 now that Node 22.5.1 has been
released.
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V22.md#22.5.1
…Hub Action (#13037)
Extending the "how to" with information about the new GitHub action.
As per https://vitest.dev/config/#globals
> By default, vitest does not provide global APIs for explicitness
I think we should follow vitest defaults here and explicitly import in
the APIs that we need. This refactors our Replay SDK tests to do so.
This change also removes `environment: 'jsdom'` from the vite config in
favour of explicitly adding jsdom environment via the
`@vitest-environment` pragma to the specific test file that needs it.
This should means that our non-browser tests are not polluted with jsdom
globals, and that future writers have to explicitly opt-in to the
behaviour.
[Gitflow] Merge master into develop
…2983)
Co-authored-by: Francesco Novy <francesco.novy@sentry.io>
Changes wording to lead people sharing a reproduction example.
Adding the Vue BrowserTracing instrumentation to get parametrized
routes.
Figured having this written down might prove useful in the future :)
- [x] If you've added code that should be tested, please add tests.
- [x] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).fe
This addition adds an intuitive way to resize screenshots in the user
feedback widget. The draggable area is bound by the canvas box (so it
won't overflow) and is only draggable when cropped (when confirm/cancel
buttons present)
https://github.com/user-attachments/assets/7ddff991-a791-4d41-a2ad-b278e1ab4950
#13022)
Fixes#12849.
This is a bit tricky because `beforeSendTransaction` can return a
promise, so in order to avoid dealing with this I put the # of spans on
the sdk metadata, and then compare that afterwards.
When using the SDK without tracing, the span processor is not required -
we should reflect this in our validation logic.
While at it, I also improved the warning for not using the
SentrySampler.
Before reviewing this patch, I recommend reading through a writeup I did:
#13007
This PR adds `withSentry`, a method that wraps your cloudflare worker
handler to add Sentry instrumentation. The writeup above explains why we
need to do this over just a regular `Sentry.init` call.
The implementation of `withSentry` is fairly straightforward, wrapping
the fetch handler in the cloudflare worker with:
1. `withIsolationScope` to isolate it from other concurrent requests
2. helpers to update scope with relevant contexts/request
3. `continueTrace` to continue distributed tracing
4. `startSpan` to track spans
Usage looks something like so:
```ts
import * as Sentry from '@sentry/cloudflare';
export default withSentry(
(env) => ({
dsn: env.SENTRY_DSN,
tracesSampleRate: 1.0,
}),
{
async fetch(request, env, ctx) {
return new Response('Hello World!');
},
} satisfies ExportedHandler<Env>,
);
```
Next step here is to add more robust e2e tests, and then release an
initial version!
Explicitly add a changelog entry for cloudflare so it's ready to go
whenever the team decides to do a release.
Get `@sentry/cloudflare` ready for release.
Before submitting a pull request, please take a look at our
[Contributing](https://github.com/getsentry/sentry-javascript/blob/master/CONTRIBUTING.md)
guidelines and verify:
- [ ] If you've added code that should be tested, please add tests.
- [ ] Ensure your code lints and the test suite passes (`yarn lint`) &
(`yarn test`).
#13081)
Fixes#13080
This was basically just wrong - we need stuff from `browser` package
there, so we can't really build the final CDN bundle from the
feedback-internal package.
I moved this over and also adjusted tests to actually test this with
pluggable CDN integrations as well.
Also changes the `findDefaultSdkInitFile` function as the
backend-related file is located and named differently than the client
config file (`sentry.client.config.ts` and
`public/instrument.server.mjs`).
closes#13097
@Lms24
Lms24force-pushed the prepare-release/8.21.0 branch from 2a4eff1 to 67b978dCompareJuly 30, 2024 11:30
@Lms24
Lms24 changed the base branch from develop to masterJuly 30, 2024 12:06
@Lms24
Lms24 requested review from a team as code ownersJuly 30, 2024 12:06
@Lms24
Lms24 merged commit f609d05 into masterJul 30, 2024
@Lms24
Lms24 deleted the prepare-release/8.21.0 branch July 30, 2024 12:06
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.

7 participants

@Lms24@mydea@AbhiPrasad@s1gr1d@onurtemizkan@chargome@joemmalatesta