|
4 | 4 |
|
5 | 5 | - "You miss 100 percent of the chances you don't take. — Wayne Gretzky" — Michael Scott
|
6 | 6 |
|
| 7 | +## 8.0.0 |
| 8 | + |
| 9 | +The Sentry JS SDK team is proud to announce the release of version `8.0.0` of Sentry's JavaScript SDKs - it's been a |
| 10 | +long time coming! Thanks to everyone for your patience and a special shout out to the brave souls testing preview builds |
| 11 | +and reporting issues - we appreciate your support! |
| 12 | + |
| 13 | +--- |
| 14 | + |
| 15 | +### How to Upgrade to Version 8: |
| 16 | + |
| 17 | +We recommend reading the |
| 18 | +[migration guide docs](https://docs.sentry.io/platforms/javascript/migration/v7-to-v8/#migration-codemod) to find out |
| 19 | +how to address any breaking changes in your code for your specific platform or framework. |
| 20 | + |
| 21 | +To automate upgrading to v8 as much as possible, use our migration codemod `@sentry/migr8`: |
| 22 | + |
| 23 | +```sh |
| 24 | +npx @sentry/migr8@latest |
| 25 | +``` |
| 26 | + |
| 27 | +All deprecations from the v7 cycle, with the exception of `getCurrentHub()`, have been removed and can no longer be used |
| 28 | +in v8. If you have an advanced Sentry SDK setup, we additionally recommend reading the |
| 29 | +[in-depth migration guide](./MIGRATION.md) in our repo which highlights all changes with additional details and |
| 30 | +information. |
| 31 | + |
| 32 | +The rest of this changelog highlights the most important (breaking) changes and links to more detailed information. |
| 33 | + |
| 34 | +### Version Support |
| 35 | + |
| 36 | +With v8, we dropped support for several old runtimes and browsers |
| 37 | + |
| 38 | +**Node SDKs:** The Sentry JavaScript SDK v8 now supports **Node.js 14.8.0 or higher**. This applies to `@sentry/node` |
| 39 | +and all of our node-based server-side sdks (`@sentry/nextjs`, `@sentry/remix`, etc.). Furthermore, version 8 now ships |
| 40 | +with full support for ESM-based node apps using **Node.js 18.19.0 or higher**. |
| 41 | + |
| 42 | +**Browser SDKs:** The browser SDKs now require |
| 43 | +[**ES2018+**](https://caniuse.com/?feats=mdn-javascript_builtins_regexp_dotall,js-regexp-lookbehind,mdn-javascript_builtins_regexp_named_capture_groups,mdn-javascript_builtins_regexp_property_escapes,mdn-javascript_builtins_symbol_asynciterator,mdn-javascript_functions_method_definitions_async_generator_methods,mdn-javascript_grammar_template_literals_template_literal_revision,mdn-javascript_operators_destructuring_rest_in_objects,mdn-javascript_operators_destructuring_rest_in_arrays,promise-finally) |
| 44 | +compatible browsers. New minimum browser versions: |
| 45 | + |
| 46 | +- Chrome 63 |
| 47 | +- Edge 79 |
| 48 | +- Safari/iOS Safari 12 |
| 49 | +- Firefox 58 |
| 50 | +- Opera 50 |
| 51 | +- Samsung Internet 8.2 |
| 52 | + |
| 53 | +For more details, please see the |
| 54 | +[version support section in our migration guide](./MIGRATION.md#1-version-support-changes). |
| 55 | + |
| 56 | +### Initializing Server-side SDKs (Node, Bun, Deno, Serverless): |
| 57 | + |
| 58 | +In v8, we support a lot more node-based packages than before. In order to ensure auto-instrumentation works, the SDK now |
| 59 | +needs to be imported and initialized before any other import in your code. |
| 60 | + |
| 61 | +We recommend creating a new file (e.g. `instrumentation.js`) to import and initialize the SDK. Then, import the file on |
| 62 | +top of your entry file or detailed instructions, check our updated SDK setup docs |
| 63 | +[initializing the SDK in v8](https://docs.sentry.io/platforms/javascript/guides/node/). |
| 64 | + |
| 65 | +### Performance Monitoring Changes |
| 66 | + |
| 67 | +The API around performance monitoring and tracing has been streamlined, and we've added support for more integrations |
| 68 | +out of the box. |
| 69 | + |
| 70 | +- [Performance Monitoring API](./MIGRATION.md#performance-monitoring-api) |
| 71 | +- [Performance Monitoring Integrations](./MIGRATION.md#performance-monitoring-integrations) |
| 72 | + |
| 73 | +### Functional Integrations |
| 74 | + |
| 75 | +Integrations are now simple functions instead of classes. Class-based integrations |
| 76 | +[have been removed](./MIGRATION.md#removal-of-class-based-integrations): |
| 77 | + |
| 78 | +```javascript |
| 79 | +// old (v7) |
| 80 | +Sentry.init({ |
| 81 | + integrations: [new Sentry.BrowserTracing()], |
| 82 | +}); |
| 83 | + |
| 84 | +// new (v8) |
| 85 | +Sentry.init({ |
| 86 | + integrations: [Sentry.browserTracingIntegration()], |
| 87 | +}); |
| 88 | +``` |
| 89 | + |
| 90 | +### Package removal |
| 91 | + |
| 92 | +The following packages have been removed or replaced and will no longer be published: |
| 93 | + |
| 94 | +- [`@sentry/hub`](./MIGRATION.md#sentryhub) |
| 95 | +- [`@sentry/tracing`](./MIGRATION.md#sentrytracing) |
| 96 | +- [`@sentry/integrations`](./MIGRATION.md#sentryintegrations) |
| 97 | +- [`@sentry/serverless`](./MIGRATION.md#sentryserverless) |
| 98 | +- [`@sentry/replay`](./MIGRATION.md#sentryreplay) |
| 99 | + |
| 100 | +### Changes since `8.0.0-rc.3` |
| 101 | + |
| 102 | +- **feat(nextjs): Remove `transpileClientSDK` (#11978)** |
| 103 | + |
| 104 | + As we are dropping support for Internet Explorer 11 and other other older browser versions wih version `8.0.0`, we are |
| 105 | + also removing the `transpileClientSDK` option from the Next.js SDK. If you need to support these browser versions, |
| 106 | + please configure Webpack and Next.js to down-compile the SDK. |
| 107 | + |
| 108 | +- **feat(serverless): Do not include performance integrations by default (#11998)** |
| 109 | + |
| 110 | + To keep Lambda bundle size reasonable, the SDK no longer ships with all performance (database) integrations by |
| 111 | + default. Add the Sentry integrations of the databases and other tools you're using manually to your `Sentry.init` call |
| 112 | + by following |
| 113 | + [this guide](https://docs.sentry.io/platforms/javascript/configuration/integrations/#modifying-default-integrations). |
| 114 | + Note that this change does not apply if you use the SDK with the Sentry AWS Lambda layer. |
| 115 | + |
| 116 | +- feat(feedback): Simplify public css configuration for feedback (#11985) |
| 117 | +- fix(feedback): Check for empty user (#11993) |
| 118 | +- fix(replay): Fix type for `replayCanvasIntegration` (#11995) |
| 119 | +- fix(replay): Fix user activity not being updated in `start()` (#12001) |
| 120 | + |
7 | 121 | ## 8.0.0-rc.3
|
8 | 122 |
|
9 | 123 | ### Important Changes
|
@@ -304,7 +418,7 @@ The following packages will no longer be published
|
304 | 418 |
|
305 | 419 | ### Initializing Server-side SDKs (Node, Bun, Next.js, SvelteKit, Astro, Remix):
|
306 | 420 |
|
307 |
| -Initializing the SDKs on the server-side has been simplified. See more details in our migration docs about |
| 421 | +Initializing the SDKs on the server-side has been simplified. More details in our migration docs about |
308 | 422 | [initializing the SDK in v8](./MIGRATION.md/#initializing-the-node-sdk).
|
309 | 423 |
|
310 | 424 | ### Performance Monitoring Changes
|
|
0 commit comments