Skip to content

meta(changelog): Update changelog for v8.0.0-beta.6 #11883

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 27 commits into from
May 3, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
5faa33a
test(browser): Add test for captureConsole (#11831)
mydea Apr 30, 2024
740f9c5
Merge pull request #11852 from getsentry/master
github-actions[bot] Apr 30, 2024
064c5ae
feat(ember): Update ember dependencies (#11753)
mydea Apr 30, 2024
7fef87e
ref: Add geo location types (#11847)
HazAT Apr 30, 2024
944cd9d
ci: Skip cloudflare-astro E2E tests for dependabot (#11853)
mydea Apr 30, 2024
ffcdc5c
feat(feedback): Have screenshot by default (#11839)
c298lee Apr 30, 2024
3c95ac9
feat(fedback): Convert CDN bundles to use async feedback for lower bu…
ryan953 Apr 30, 2024
7e6c23e
fix(feedback): Be consistent about whether screenshot should and can …
ryan953 May 1, 2024
eadcac5
feat(integrations): Add zod integration (#11144)
scttcper May 2, 2024
a3cac7b
fix(react): Fix react router v4/v5 instrumentation (#11855)
mydea May 2, 2024
ae17054
test(react): Improve react router v6 E2E tests (#11866)
mydea May 2, 2024
85da8cf
feat(nextjs): Add transaction name to scope of server component (#11850)
s1gr1d May 2, 2024
ac59e7e
feat(ioredis): Add integration for `ioredis` (#11856)
s1gr1d May 2, 2024
08a3b7c
feat(nextjs): Set transaction names on scope for route handlers and g…
s1gr1d May 2, 2024
1c4e776
feat: Add `tunnel` support to multiplexed transport (#11806)
timfish May 2, 2024
dc7b1f5
fix(node): Fix nest.js error handler (#11874)
mydea May 2, 2024
53cb600
ci: Put CODEOWNERS in the correct folder (#11861)
ryan953 May 2, 2024
a6915fc
build(yarn): Update lockfile (#11873)
s1gr1d May 2, 2024
3355a05
feat(node): Support Node 22 (#11871)
s1gr1d May 2, 2024
85c754a
docs: Clarify Node.js specific imports in Next.js register hook migra…
May 3, 2024
56197af
feat(feedback): Add `captureFeedback` method (#11428)
mydea May 3, 2024
fd10a2b
fix(nestjs): Ensure Nest.js interceptor works with non-http context (…
mydea May 3, 2024
6f44e8a
fix(angular): Run tracing calls outside Angular (#11748)
arturovt May 3, 2024
d2b7df4
feat(browser): Disable standalone `http.client` spans (#11879)
mydea May 3, 2024
d06e290
feat: Export `spanToBaggageHeader` utility (#11881)
mydea May 3, 2024
5102de0
feat(nextjs): Be smarter in warning about old ways of init configurat…
May 3, 2024
cce2404
meta(changelog): Update changelog for v8.0.0-beta.6
mydea May 3, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1 +1,5 @@

packages/replay-internal @getsentry/replay-sdk-web
packages/replay-worker @getsentry/replay-sdk-web
packages/replay-canvas @getsentry/replay-sdk-web
packages/feedback @getsentry/feedback-sdk
dev-packages/browser-integration-tests/suites/replay @getsentry/replay-sdk-web
44 changes: 35 additions & 9 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -509,7 +509,7 @@ jobs:
strategy:
fail-fast: false
matrix:
node: [14, 16, 18, 20, 21]
node: [14, 16, 18, 20, 22]
steps:
- name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }})
uses: actions/checkout@v4
Expand Down Expand Up @@ -569,7 +569,7 @@ jobs:
strategy:
fail-fast: false
matrix:
node: [14, 16, 18, 20, 21]
node: [14, 16, 18, 20, 22]
steps:
- name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }})
uses: actions/checkout@v4
Expand Down Expand Up @@ -832,12 +832,12 @@ jobs:
strategy:
fail-fast: false
matrix:
node: [14, 16, 18, 20, 21]
node: [14, 16, 18, 20, 22]
typescript:
- false
include:
# Only check typescript for latest version (to streamline CI)
- node: 20
- node: 22
typescript: '3.8'
steps:
- name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }})
Expand Down Expand Up @@ -874,7 +874,7 @@ jobs:
strategy:
fail-fast: false
matrix:
node: [18, 20, 21]
node: [18, 20, 22]
remix: [1, 2]
# Remix v2 only supports Node 18+, so run Node 14, 16 tests separately
include:
Expand Down Expand Up @@ -989,6 +989,8 @@ jobs:
strategy:
fail-fast: false
matrix:
is_dependabot:
- ${{ github.actor == 'dependabot[bot]' }}
test-application:
[
'angular-17',
Expand All @@ -1006,6 +1008,7 @@ jobs:
'nextjs-14',
'react-create-hash-router',
'react-router-6-use-routes',
'react-router-5',
'standard-frontend-react',
'svelte-5',
'sveltekit',
Expand Down Expand Up @@ -1042,6 +1045,10 @@ jobs:
- test-application: 'nextjs-app-dir'
build-command: 'test:build-13'
label: 'nextjs-app-dir (next@13)'
exclude:
- is_dependabot: true
test-application: 'cloudflare-astro'

steps:
- name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }})
uses: actions/checkout@v4
Expand Down Expand Up @@ -1287,6 +1294,8 @@ jobs:
node: 18
- os: ubuntu-20.04
node: 20
- os: ubuntu-20.04
node: 22

# x64 musl
- os: ubuntu-20.04
Expand All @@ -1298,6 +1307,9 @@ jobs:
- os: ubuntu-20.04
container: node:20-alpine3.17
node: 20
- os: ubuntu-20.04
container: node:22-alpine3.18
node: 22

# arm64 glibc
- os: ubuntu-20.04
Expand All @@ -1309,6 +1321,9 @@ jobs:
- os: ubuntu-20.04
arch: arm64
node: 20
- os: ubuntu-20.04
arch: arm64
node: 22

# arm64 musl
- os: ubuntu-20.04
Expand All @@ -1323,6 +1338,10 @@ jobs:
arch: arm64
container: node:20-alpine3.17
node: 20
- os: ubuntu-20.04
arch: arm64
container: node:22-alpine3.18
node: 22

# macos x64
- os: macos-11
Expand All @@ -1334,35 +1353,42 @@ jobs:
- os: macos-11
node: 20
arch: x64
- os: macos-11
node: 22
arch: x64

# macos arm64
- os: macos-12
arch: arm64
node: 16
target_platform: darwin

- os: macos-12
arch: arm64
node: 18
target_platform: darwin

- os: macos-12
arch: arm64
node: 20
target_platform: darwin
- os: macos-12
arch: arm64
node: 22
target_platform: darwin

# windows x64
- os: windows-2022
node: 16
arch: x64

- os: windows-2022
node: 18
arch: x64

- os: windows-2022
node: 20
arch: x64
- os: windows-2022
node: 22
arch: x64

steps:
- name: Setup (alpine)
if: contains(matrix.container, 'alpine')
Expand Down
24 changes: 24 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,30 @@

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

## 8.0.0-beta.6

This beta release contains various bugfixes and improvements for the v8 beta cycle.

- feat: Add `tunnel` support to multiplexed transport (#11806)
- feat: Export `spanToBaggageHeader` utility (#11881)
- feat(browser): Disable standalone `http.client` spans (#11879)
- feat(ember): Update ember dependencies (#11753)
- feat(fedback): Convert CDN bundles to use async feedback for lower bundle sizes (#11791)
- feat(feedback): Add `captureFeedback` method (#11428)
- feat(feedback): Have screenshot by default (#11839)
- feat(integrations): Add zod integration (#11144)
- feat(ioredis): Add integration for `ioredis` (#11856)
- feat(nextjs): Add transaction name to scope of server component (#11850)
- feat(nextjs): Be smarter in warning about old ways of init configuration (#11882)
- feat(nextjs): Set transaction names on scope for route handlers and generation functions (#11869)
- feat(node): Support Node 22 (#11871)
- fix(angular): Run tracing calls outside Angular (#11748)
- fix(feedback): Be consistent about whether screenshot should and can render (#11859)
- fix(nestjs): Ensure Nest.js interceptor works with non-http context (#11880)
- fix(node): Fix nest.js error handler (#11874)
- fix(react): Fix react router v4/v5 instrumentation (#11855)
- ref: Add geo location types (#11847)

## 8.0.0-beta.5

This beta release contains various bugfixes and improvements for the v8 beta cycle.
Expand Down
5 changes: 0 additions & 5 deletions CODEOWNERS

This file was deleted.

30 changes: 29 additions & 1 deletion MIGRATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -351,6 +351,7 @@ We now support the following integrations out of the box without extra configura
- `mongooseIntegration`: Automatically instruments Mongoose
- `mysqlIntegration`: Automatically instruments MySQL
- `mysql2Integration`: Automatically instruments MySQL2
- `redisIntegration`: Automatically instruments Redis (supported clients: ioredis)
- `nestIntegration`: Automatically instruments Nest.js
- `postgresIntegration`: Automatically instruments PostgreSQL
- `prismaIntegration`: Automatically instruments Prisma
Expand Down Expand Up @@ -832,6 +833,24 @@ The following is an example of how to initialize the serverside SDK in a Next.js
}
```

If you need to import a Node.js specific integration (like for example `@sentry/profiling-node`), you will have to
import the package using a dynamic import to prevent Next.js from bundling Node.js APIs into bundles for other
runtime environments (like the Browser or the Edge runtime). You can do so as follows:

```ts
import * as Sentry from '@sentry/nextjs';

export async function register() {
if (process.env.NEXT_RUNTIME === 'nodejs') {
const { nodeProfilingIntegration } = await import('@sentry/profiling-node');
Sentry.init({
dsn: 'YOUR_DSN',
integrations: [nodeProfilingIntegration()],
});
}
}
```

Note that you can initialize the SDK differently depending on which server runtime is being used.

If you are using a
Expand Down Expand Up @@ -959,12 +978,21 @@ replacement API.
Removed top-level exports: `InitSentryForEmber`, `StartTransactionFunction`

- [Removal of `InitSentryForEmber` export](./MIGRATION.md#removal-of-initsentryforember-export)
- [Updated Ember Dependencies](./MIGRATION.md#updated-ember-dependencies)

#### Removal of `InitSentryForEmber` export

The `InitSentryForEmber` export has been removed. Instead, you should use the `Sentry.init` method to initialize the
SDK.

#### Updated Ember Dependencies

The following dependencies that the SDK uses have been bumped to a more recent version:

- `ember-auto-import` is bumped to `^2.4.3`
- `ember-cli-babel` is bumped to `^8.2.0`
- `ember-cli-typescript` is bumped to `^5.3.0`

### Svelte SDK

Removed top-level exports: `componentTrackingPreprocessor`
Expand Down Expand Up @@ -1693,7 +1721,7 @@ In v8, the Span class is heavily reworked. The following properties & methods ar
- `span.traceId`: Use `span.spanContext().traceId` instead.
- `span.name`: Use `spanToJSON(span).description` instead.
- `span.description`: Use `spanToJSON(span).description` instead.
- `span.getDynamicSamplingContext`: Use `getDynamicSamplingContextFromSpan` utility function instead.
- `span.getDynamicSamplingContext`: Use `spanToBaggageHeader(span)` utility function instead.
- `span.tags`: Set tags on the surrounding scope instead, or use attributes.
- `span.data`: Use `spanToJSON(span).data` instead.
- `span.setTag()`: Use `span.setAttribute()` instead or set tags on the surrounding scope.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,10 @@ sentryTest('should capture feedback', async ({ getLocalTestPath, page }) => {
source: 'widget',
url: expect.stringContaining('/dist/index.html'),
},
trace: {
trace_id: expect.stringMatching(/\w{32}/),
span_id: expect.stringMatching(/\w{16}/),
},
},
level: 'info',
timestamp: expect.any(Number),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,10 @@ sentryTest('should capture feedback', async ({ forceFlushReplay, getLocalTestPat
source: 'widget',
url: expect.stringContaining('/dist/index.html'),
},
trace: {
trace_id: expect.stringMatching(/\w{32}/),
span_id: expect.stringMatching(/\w{16}/),
},
},
level: 'info',
timestamp: expect.any(Number),
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
import * as Sentry from '@sentry/browser';
import { captureConsoleIntegration } from '@sentry/browser';

window.Sentry = Sentry;

Sentry.init({
dsn: 'https://[email protected]/1337',
integrations: [captureConsoleIntegration()],
autoSessionTracking: false,
});
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
console.log('console log');
console.warn('console warn');
console.error('console error');
console.info('console info');
console.trace('console trace');

console.error(new Error('console error with error object'));
console.trace(new Error('console trace with error object'));
Loading