Skip to content

Commit 546b07d

Browse files
authored
Merge branch 'develop' into onur/hapi-integration
2 parents c5c9d9c + eb2d726 commit 546b07d

File tree

252 files changed

+3661
-2787
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

252 files changed

+3661
-2787
lines changed

.github/ISSUE_TEMPLATE/bug.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ body:
3535
- '@sentry/angular'
3636
- '@sentry/angular-ivy'
3737
- '@sentry/bun'
38+
- '@sentry/deno'
3839
- '@sentry/ember'
3940
- '@sentry/gatsby'
4041
- '@sentry/nextjs'

CHANGELOG.md

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,69 @@
44

55
- "You miss 100 percent of the chances you don't take. — Wayne Gretzky" — Michael Scott
66

7+
## 7.81.1
8+
9+
- fix(astro): Remove method from span op (#9603)
10+
- fix(deno): Make sure files get published (#9611)
11+
- fix(nextjs): Use `globalThis` instead of `global` in edge runtime (#9612)
12+
- fix(node): Improve error handling and shutdown handling for ANR (#9548)
13+
- fix(tracing-internal): Fix case when originalURL contain query params (#9531)
14+
15+
Work in this release contributed by @powerfulyang, @LubomirIgonda1, @joshkel, and @alexgleason. Thank you for your contributions!
16+
17+
## 7.81.0
18+
19+
### Important Changes
20+
21+
**- feat(nextjs): Add instrumentation utility for server actions (#9553)**
22+
23+
This release adds a utility function `withServerActionInstrumentation` to the `@sentry/nextjs` SDK for instrumenting your Next.js server actions with error and performance monitoring.
24+
25+
You can optionally pass form data and headers to record them, and configure the wrapper to record the Server Action responses:
26+
27+
```tsx
28+
import * as Sentry from "@sentry/nextjs";
29+
import { headers } from "next/headers";
30+
31+
export default function ServerComponent() {
32+
async function myServerAction(formData: FormData) {
33+
"use server";
34+
return await Sentry.withServerActionInstrumentation(
35+
"myServerAction", // The name you want to associate this Server Action with in Sentry
36+
{
37+
formData, // Optionally pass in the form data
38+
headers: headers(), // Optionally pass in headers
39+
recordResponse: true, // Optionally record the server action response
40+
},
41+
async () => {
42+
// ... Your Server Action code
43+
44+
return { name: "John Doe" };
45+
}
46+
);
47+
}
48+
49+
return (
50+
<form action={myServerAction}>
51+
<input type="text" name="some-input-value" />
52+
<button type="submit">Run Action</button>
53+
</form>
54+
);
55+
}
56+
```
57+
58+
### Other Changes
59+
60+
- docs(feedback): Example docs on `sendFeedback` (#9560)
61+
- feat(feedback): Add `level` and remove breadcrumbs from feedback event (#9533)
62+
- feat(vercel-edge): Add fetch instrumentation (#9504)
63+
- feat(vue): Support Vue 3 lifecycle hooks in mixin options (#9578)
64+
- fix(nextjs): Download CLI binary if it can't be found (#9584)
65+
- ref: Deprecate `extractTraceParentData` from `@sentry/core` & downstream packages (#9158)
66+
- ref(replay): Add further logging to network body parsing (#9566)
67+
68+
Work in this release contributed by @snoozbuster. Thank you for your contribution!
69+
770
## 7.80.1
871

972
- fix(astro): Adjust Vite plugin config to upload server source maps (#9541)

lerna.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
22
"$schema": "node_modules/lerna/schemas/lerna-schema.json",
3-
"version": "7.80.1",
3+
"version": "7.81.1",
44
"npmClient": "yarn"
55
}

packages/angular-ivy/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@sentry/angular-ivy",
3-
"version": "7.80.1",
3+
"version": "7.81.1",
44
"description": "Official Sentry SDK for Angular with full Ivy Support",
55
"repository": "git://github.com/getsentry/sentry-javascript.git",
66
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/angular-ivy",
@@ -21,9 +21,9 @@
2121
"rxjs": "^6.5.5 || ^7.x"
2222
},
2323
"dependencies": {
24-
"@sentry/browser": "7.80.1",
25-
"@sentry/types": "7.80.1",
26-
"@sentry/utils": "7.80.1",
24+
"@sentry/browser": "7.81.1",
25+
"@sentry/types": "7.81.1",
26+
"@sentry/utils": "7.81.1",
2727
"tslib": "^2.4.1"
2828
},
2929
"devDependencies": {

packages/angular/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@sentry/angular",
3-
"version": "7.80.1",
3+
"version": "7.81.1",
44
"description": "Official Sentry SDK for Angular",
55
"repository": "git://github.com/getsentry/sentry-javascript.git",
66
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/angular",
@@ -21,9 +21,9 @@
2121
"rxjs": "^6.5.5 || ^7.x"
2222
},
2323
"dependencies": {
24-
"@sentry/browser": "7.80.1",
25-
"@sentry/types": "7.80.1",
26-
"@sentry/utils": "7.80.1",
24+
"@sentry/browser": "7.81.1",
25+
"@sentry/types": "7.81.1",
26+
"@sentry/utils": "7.81.1",
2727
"tslib": "^2.4.1"
2828
},
2929
"devDependencies": {

packages/angular/src/errorhandler.ts

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ import { HttpErrorResponse } from '@angular/common/http';
22
import type { ErrorHandler as AngularErrorHandler } from '@angular/core';
33
import { Inject, Injectable } from '@angular/core';
44
import * as Sentry from '@sentry/browser';
5-
import type { Event, Scope } from '@sentry/types';
6-
import { addExceptionMechanism, isString } from '@sentry/utils';
5+
import type { Event } from '@sentry/types';
6+
import { isString } from '@sentry/utils';
77

88
import { runOutsideAngular } from './zone';
99

@@ -102,17 +102,8 @@ class SentryErrorHandler implements AngularErrorHandler {
102102

103103
// Capture handled exception and send it to Sentry.
104104
const eventId = runOutsideAngular(() =>
105-
Sentry.captureException(extractedError, (scope: Scope) => {
106-
scope.addEventProcessor(event => {
107-
addExceptionMechanism(event, {
108-
type: 'angular',
109-
handled: false,
110-
});
111-
112-
return event;
113-
});
114-
115-
return scope;
105+
Sentry.captureException(extractedError, {
106+
mechanism: { type: 'angular', handled: false },
116107
}),
117108
);
118109

@@ -124,7 +115,7 @@ class SentryErrorHandler implements AngularErrorHandler {
124115

125116
// Optionally show user dialog to provide details on what happened.
126117
if (this._options.showDialog) {
127-
const client = Sentry.getCurrentHub().getClient();
118+
const client = Sentry.getClient();
128119

129120
if (client && client.on && !this._registeredAfterSendEventHandler) {
130121
client.on('afterSendEvent', (event: Event) => {

0 commit comments

Comments
 (0)