sentry-javascript icon indicating copy to clipboard operation
sentry-javascript copied to clipboard

v8 Release Plan

Open mydea opened this issue 2 years ago • 11 comments

This issue collects concrete things we know we want to include/do in v8 for sure. We have a lot of things captured already in various places, but not all of these things will necessarily happen in v8. The goal of this issue is to have a proper overview.

For feedback please reach out via GH discussions.

Main user facing changes

The biggest changes, from an SDK user perspective, are the changes to performance APIs:

  • https://github.com/getsentry/sentry-javascript/issues/9956
  • https://github.com/getsentry/sentry-javascript/issues/9842
  • https://github.com/getsentry/sentry-javascript/issues/11023

All Changes

### Version support
- [ ] https://github.com/getsentry/sentry-javascript/issues/9827
- [ ] https://github.com/getsentry/sentry-javascript/issues/9828
- [ ] https://github.com/getsentry/sentry-javascript/issues/9829
- [ ] https://github.com/getsentry/sentry-javascript/issues/9831
- [ ] https://github.com/getsentry/sentry-javascript/issues/9830
- [ ] https://github.com/getsentry/sentry-javascript/issues/9835
- [ ] https://github.com/getsentry/sentry-javascript/issues/9836
- [ ] https://github.com/getsentry/sentry-javascript/issues/9838
- [ ] https://github.com/getsentry/sentry-javascript/issues/9837
### Update meta SDKs to use OpenTelemetry
- [ ] https://github.com/getsentry/sentry-javascript/issues/11042
- [ ] https://github.com/getsentry/sentry-javascript/issues/11039
- [ ] https://github.com/getsentry/sentry-javascript/issues/11040
- [ ] https://github.com/getsentry/sentry-javascript/issues/11041
- [ ] Ensure serverless packages use OpenTelemetry
### Package changes
- [ ] https://github.com/getsentry/sentry-javascript/issues/5665
- [ ] https://github.com/getsentry/sentry-javascript/issues/8796
- [ ] https://github.com/getsentry/sentry-javascript/issues/9833
- [ ] https://github.com/getsentry/sentry-javascript/issues/9885
- [ ] https://github.com/getsentry/sentry-javascript/issues/9832
- [ ] https://github.com/getsentry/sentry-javascript/issues/9834
- [ ] https://github.com/getsentry/sentry-javascript/issues/9843
- [ ] https://github.com/getsentry/sentry-javascript/issues/9886
- [ ] [v8] Move `@sentry/wasm` into `@sentry/browser`
### Integrations
- [ ] https://github.com/getsentry/sentry-javascript/issues/4790
- [ ] https://github.com/getsentry/sentry-javascript/issues/8844
- [ ] https://github.com/getsentry/sentry-javascript/issues/8838
- [ ] https://github.com/getsentry/sentry-javascript/issues/6423
- [ ] https://github.com/getsentry/sentry-javascript/pull/9456
- [ ] https://github.com/getsentry/sentry-javascript/pull/11294
- [ ] https://github.com/getsentry/sentry-javascript/issues/10387
- [ ] https://github.com/getsentry/sentry-javascript/pull/11343
### General changes
- [ ] https://github.com/getsentry/sentry-javascript/issues/9841
- [ ] https://github.com/getsentry/sentry-javascript/issues/9842
- [ ] https://github.com/getsentry/sentry-javascript/issues/9925
- [ ] https://github.com/getsentry/sentry-javascript/issues/9956
- [ ] https://github.com/getsentry/sentry-javascript/issues/10046
- [ ] https://github.com/getsentry/sentry-javascript/issues/10945
- [ ] https://github.com/getsentry/sentry-javascript/issues/10976
- [ ] https://github.com/getsentry/sentry-javascript/issues/11320
- [ ] https://github.com/getsentry/sentry-javascript/issues/11482
### Remove deprecated code
- [ ] https://github.com/getsentry/sentry-javascript/issues/6230
- [ ] https://github.com/getsentry/sentry-javascript/issues/8897
- [ ] https://github.com/getsentry/sentry-javascript/issues/8887
- [ ] https://github.com/getsentry/sentry-javascript/issues/6958
- [ ] https://github.com/getsentry/sentry-javascript/issues/5842
- [ ] https://github.com/getsentry/sentry-javascript/issues/10100
- [ ] https://github.com/getsentry/sentry-wizard/issues/519
### Docs
- [ ] https://github.com/getsentry/sentry-javascript/issues/11064
### Other / open for discussion
- [x] Remove `withSentry` in favor of `withSentryAPI`
- [ ] https://github.com/getsentry/sentry-javascript/issues/6958
- [ ] https://github.com/getsentry/sentry-javascript/issues/5927
- [ ] https://github.com/getsentry/sentry-javascript/issues/5523
- [x] Remove Gatsby Plugin configuration in favour of only using `sentry.config.ts`/`sentry.config.js`
- [ ] https://github.com/getsentry/sentry-javascript/issues/9254
- [ ] https://github.com/getsentry/sentry-javascript/issues/5745
- [ ] https://github.com/getsentry/sentry-javascript/issues/1661
- [ ] https://github.com/getsentry/sentry-javascript/issues/10772
- [ ] https://github.com/getsentry/sentry-javascript/issues/11070
- [ ] https://github.com/getsentry/sentry-migr8/issues/1
- [ ] https://github.com/getsentry/sentry-javascript/issues/8843
- [ ] Avoid the loader from using v8

Testing

### Check all SDKs for feature regression
- [ ] Browser JavaScript
- [ ] Angular
- [ ] Astro
- [ ] Bun
- [ ] Capacitor
- [ ] Cordova
- [ ] Deno
- [ ] Electron
- [ ] Ember
- [ ] Gatsby
- [ ] Next.js
- [ ] React
- [ ] Remix
- [ ] Solid
- [ ] Svelte
- [ ] SvelteKit
- [ ] Vue
- [ ] Wasm
- [ ] Node.js
- [ ] AWS Lambda
- [ ] Azure Functions
- [ ] Connect
- [ ] Express
- [ ] Google Cloud Functions
- [ ] Koa
- [ ] Hapi (v8 only)
- [ ] Fastify (v8 only)
- [ ] Nest.js (v8 only)

ref https://github.com/getsentry/sentry-javascript/issues/5194 ref https://github.com/getsentry/sentry-javascript/discussions/9802

mydea avatar Nov 09 '23 13:11 mydea

Will the team try to reduce the bundle size in v8?

m1heng avatar Nov 18 '23 15:11 m1heng

@m1heng by removing deprecated parts of the SDK, we'll be able to reduce some size. Maybe also by the proposed hub/scope changes. However, at this time, we haven't planned a big bundle size reduction intiative as in v7. We recently reduced Session Replay bundle size by a lot. Also, you might want to look into advanced tree shaking configuration for saving a few extra bytes.

Lms24 avatar Nov 20 '23 09:11 Lms24

Task list to remove internal usage of deprecated APIs: https://github.com/getsentry/sentry-javascript/issues/10100

lforst avatar Jan 08 '24 14:01 lforst

Could you please pay more attention to updating documentation: https://github.com/getsentry/sentry-docs/issues/8953

mahnunchik avatar Mar 08 '24 18:03 mahnunchik

Docs issues tracked with: https://github.com/getsentry/sentry-javascript/issues/11064

AbhiPrasad avatar Mar 12 '24 17:03 AbhiPrasad

I removed Remove SyncPromise from the list.

Tried it in v7, no dice. I guess v8 isn't it yet either 😢.

One day!!

AbhiPrasad avatar Mar 27 '24 15:03 AbhiPrasad

First beta version is out! https://github.com/getsentry/sentry-javascript/releases/tag/8.0.0-beta.1

AbhiPrasad avatar Apr 16 '24 13:04 AbhiPrasad

@AbhiPrasad Hi! Excited about v8 beta! Could you please take a look at pr for updating @sentry/nextjs to v8-beta in my project. Faced few issues while updating. I left questions about them in pr.

https://github.com/r34son/profile/pull/422

r34son avatar Apr 16 '24 18:04 r34son

We've released our 4th beta, https://github.com/getsentry/sentry-javascript/releases/tag/8.0.0-beta.4, and with it we now have detailed migration guides for every SDK!

  • Browser JS: https://docs.sentry.io/platforms/javascript/migration/v7-to-v8/
  • Node: https://docs.sentry.io/platforms/javascript/guides/node/migration/v7-to-v8/

Browser

  • Angular: https://docs.sentry.io/platforms/javascript/guides/angular/migration/v7-to-v8/
  • Ember: https://docs.sentry.io/platforms/javascript/guides/ember/migration/v7-to-v8/
  • React: https://docs.sentry.io/platforms/javascript/guides/react/migration/v7-to-v8/
  • Svelte: https://docs.sentry.io/platforms/javascript/guides/svelte/migration/v7-to-v8/
  • Vue: https://docs.sentry.io/platforms/javascript/guides/vue/migration/v7-to-v8/
  • Gatsby: https://docs.sentry.io/platforms/javascript/guides/gatsby/migration/v7-to-v8/

JS frameworks

  • Next.js: https://docs.sentry.io/platforms/javascript/guides/nextjs/migration/v7-to-v8/
  • Remix: https://docs.sentry.io/platforms/javascript/guides/remix/migration/v7-to-v8/
  • SvelteKit: https://docs.sentry.io/platforms/javascript/guides/sveltekit/migration/v7-to-v8/

Node

  • Connect: https://docs.sentry.io/platforms/javascript/guides/connect/migration/v7-to-v8/
  • Express: https://docs.sentry.io/platforms/javascript/guides/express/migration/v7-to-v8/
  • Koa: https://docs.sentry.io/platforms/javascript/guides/koa/migration/v7-to-v8/

Alternate JS Runtimes

  • Bun: https://docs.sentry.io/platforms/javascript/guides/bun/migration/v7-to-v8/
  • Deno: https://docs.sentry.io/platforms/javascript/guides/deno/migration/v7-to-v8/

Serverless

  • AWS Lambda: https://docs.sentry.io/platforms/javascript/guides/aws-lambda/migration/v7-to-v8/
  • Azure Functions: https://docs.sentry.io/platforms/javascript/guides/angular/migration/v7-to-v8/
  • Google Cloud Functions: https://docs.sentry.io/platforms/javascript/guides/gcp-functions/migration/v7-to-v8/

AbhiPrasad avatar Apr 26 '24 21:04 AbhiPrasad

Is there an ETA for v8 integration in Sentry.io (whether it is beta or not)? I'm thinking of using Sentry, but I'm still deciding whether I should wait for v8, or adopt for v7 now

mwskwong avatar May 02 '24 02:05 mwskwong

Is there an ETA for v8 integration in Sentry.io (whether it is beta or not)? I'm thinking of using Sentry, but I'm still deciding whether I should wait for v8, or adopt for v7 now

v8 is almost ready, unless any issues pop up in the beta (which we don't forsee right now) we expect to do a stable release next week!

mydea avatar May 02 '24 08:05 mydea

Since we shipped this, I am closing this - we can keep track of other stuff elsewhere! 🎉

mydea avatar May 15 '24 12:05 mydea