Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: getsentry/sentry-javascript
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 8.14.0
Choose a base ref
...
head repository: getsentry/sentry-javascript
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 8.15.0
Choose a head ref

Commits on Jul 4, 2024

  1. test: Fix e2e test race condition by buffering events (#12739)

    Co-authored-by: Francesco Novy <francesco.novy@sentry.io>
    lforst and mydea authored Jul 4, 2024
    Copy the full SHA
    993acd4 View commit details
  2. test(remix): Update remix E2E tests to avoid sending to Sentry (#12750)

    Part of #11910
    
    These are the last (non-optional) tests we have that still sent data to
    Sentry! After that, E2E tests should be completely independent.
    
    This also blocks
    #12743
    mydea authored Jul 4, 2024
    Copy the full SHA
    77ce28a View commit details
  3. Merge branch 'release/8.14.0'

    getsentry-bot committed Jul 4, 2024
    Copy the full SHA
    0ab48f0 View commit details
  4. Merge pull request #12753 from getsentry/master

    [Gitflow] Merge master into develop
    github-actions[bot] authored Jul 4, 2024
    Copy the full SHA
    ddb539c View commit details
  5. feat(core): allow unregistering callback through on (#11710)

    This commit updates the return signature of the client's `on` function
    to be a void function,
    which, when executed, unregisters a callback. This adjustment is
    necessary for managing instances
    where objects are created and destroyed, ensuring that callbacks are
    properly unregistered to
    prevent self-referencing in callback closures and facilitate proper
    garbage collection.
    
    Typically, changing a type from `void` to `() => void` (or
    `VoidFunction`) shouldn't be considered
    a breaking change because `void` signifies the absence of a return
    value, implying that the return
    value of the `on` function should never be used by consumers.
    
    Opting for the `on` approach, which returns a cleanup function, "seems"
    simpler because having another
    function called `off` requires saving the callback reference for later
    removal. With our pattern,
    we encapsulate both the registration and removal of event listeners
    within a single function call.
    
    ---------
    
    Co-authored-by: Francesco Novy <francesco.novy@sentry.io>
    arturovt and mydea authored Jul 4, 2024
    Copy the full SHA
    506e6ca View commit details
  6. fix(tracing): Report dropped spans for transactions (#12751)

    We already report a client report for dropped standalone spans. However,
    so far we did not report any for spans dropped for transactions.
    
    This PR also emits a client report when `beforeSendSpan` is used to
    filter a span of a transaction, as well as when the whole transaction is
    dropped in `beforeSendTransaction`.
    
    For now, we _do not_ emit this if users manually drop single spans in
    e.g. `beforeSendTransaction`, which I'd say is OK for now.
    
    Closes #12727
    mydea authored Jul 4, 2024
    Copy the full SHA
    ef7e5b6 View commit details
  7. test(ember): Update ember tests to use E2E structure (#11827)

    This gets rid of the Ember canary tests that are always failing,
    probably due to ember-try (which we use there) not playing nicely with
    the monorepo etc.
    
    Instead, this now uses the proper E2E setup. I added two tests, for
    classic ember and modern embroider-based ember. While doing this I also
    noticed two bugs I fixed along the way :O
    
    This also removed the ember canary tests, IMHO the e2e tests are good
    enough for us there now.
    mydea authored Jul 4, 2024
    Copy the full SHA
    dc2659c View commit details
  8. test(e2e): Do not require DSN to run E2E tests (#12743)

    First, this means it is easier to run this locally. 
    
    Secondly, we do not even need to send data to Sentry anymore, so we can
    adjust the proxy server to stop doing this.
    
    Lastly, this means that we can also safely run E2E tests for external
    contributors.
    
    Closes #11910
    mydea authored Jul 4, 2024
    Copy the full SHA
    8c0631a View commit details
  9. fix(hapi): Specify error channel to filter boom errors (#12725)

    If errors are handled with Boom inside `onPreResponse`, the error should
    not be reported to Sentry.
    
    fixes #12702
    s1gr1d authored Jul 4, 2024
    Copy the full SHA
    4018f80 View commit details
  10. ref(scope): Delete unused public getStack() (#12737)

    `getStack()` is a leftover from the Hub API and was removed with v8. The
    method does not need to be public anymore and therefore deleted.
    s1gr1d authored Jul 4, 2024
    Copy the full SHA
    e0adb41 View commit details
  11. Copy the full SHA
    f8f3c98 View commit details
  12. Copy the full SHA
    41d946e View commit details
  13. feat(otel): Export & use spanTimeInputToSeconds for otel span expor…

    …ter (#12699)
    
    Adds support for cases where the time from OTEL is just a number in
    milliseconds instead of tuples.
    onurtemizkan authored Jul 4, 2024
    Copy the full SHA
    b4d6469 View commit details
  14. Copy the full SHA
    eedd7c0 View commit details

Commits on Jul 5, 2024

  1. fix(deno): Publish from build directory (#12773)

    In #12700 I adjusted
    the prepack script to bring back the build directory, but I forgot to
    adjust `npm pack X` to make sure we pack the tarball from the `build`
    directory. This patch fixes that.
    AbhiPrasad authored Jul 5, 2024
    Copy the full SHA
    0bad43b View commit details
  2. build: Ensure we use pnpm 9.4.0 everywhere on CI (#12772)

    Just to align stuff properly everywhere!
    mydea authored Jul 5, 2024
    Copy the full SHA
    0951036 View commit details
  3. fix(core): Pass origin as referrer for lazyLoadIntegration (#12766)

    In our case the referrer is not passed
    to the feedback script and thus results in a 403 (because we set allowed
    domains in our project settings). Consequently also the modal doesn't
    open and it's a bit disappointing for us since we would like to use the
    feature.
    jaulz authored Jul 5, 2024
    Copy the full SHA
    1845bf4 View commit details
  4. fix(react): Revert back to jsxRuntime: 'classic' to prevent breakin…

    …g react 17 (#12775)
    
    Undoes some of the changes in
    #12204 and
    #12740 to fix
    #12608.
    andreiborza authored Jul 5, 2024
    Copy the full SHA
    69b6531 View commit details
  5. Copy the full SHA
    1af7d0a View commit details
  6. Merge pull request #12777 from getsentry/prepare-release/8.15.0

    meta(changelog): Update changelog for 8.15.0
    andreiborza authored Jul 5, 2024
    Copy the full SHA
    7c15dfa View commit details
  7. release: 8.15.0

    getsentry-bot committed Jul 5, 2024
    Copy the full SHA
    b1e0598 View commit details
Showing with 4,376 additions and 2,286 deletions.
  1. +25 −18 .github/workflows/build.yml
  2. +7 −49 .github/workflows/canary.yml
  3. +0 −2 .github/workflows/external-contributors.yml
  4. +14 −0 CHANGELOG.md
  5. +2 −2 dev-packages/browser-integration-tests/package.json
  6. +1 −1 dev-packages/bundle-analyzer-scenarios/package.json
  7. +6 −2 dev-packages/e2e-tests/README.md
  8. +0 −33 dev-packages/e2e-tests/lib/validate.ts
  9. +1 −1 dev-packages/e2e-tests/package.json
  10. +0 −5 dev-packages/e2e-tests/prepare.ts
  11. +15 −8 dev-packages/e2e-tests/run.ts
  12. +1 −1 dev-packages/e2e-tests/test-applications/aws-lambda-layer-cjs/package.json
  13. +0 −1 dev-packages/e2e-tests/test-applications/aws-lambda-layer-cjs/start-event-proxy.mjs
  14. +0 −5 dev-packages/e2e-tests/test-applications/create-next-app/tests/server-transactions.test.ts
  15. +0 −15 dev-packages/e2e-tests/test-applications/create-remix-app-express-legacy/app/entry.client.tsx
  16. +1 −2 dev-packages/e2e-tests/test-applications/create-remix-app-express-legacy/app/routes/_index.tsx
  17. +1 −1 dev-packages/e2e-tests/test-applications/create-remix-app-express-legacy/server.mjs
  18. +0 −192 ...ckages/e2e-tests/test-applications/create-remix-app-express-legacy/tests/behaviour-client.test.ts
  19. +29 −0 dev-packages/e2e-tests/test-applications/create-remix-app-express-legacy/tests/client-errors.test.ts
  20. +57 −0 ...ges/e2e-tests/test-applications/create-remix-app-express-legacy/tests/client-transactions.test.ts
  21. +14 −0 dev-packages/e2e-tests/test-applications/create-remix-app-express-legacy/tests/server-errors.test.ts
  22. +6 −34 ...ns/create-remix-app-express-legacy/tests/{behaviour-server.test.ts → server-transactions.test.ts}
  23. +0 −15 dev-packages/e2e-tests/test-applications/create-remix-app-express-vite-dev/app/entry.client.tsx
  24. +1 −2 dev-packages/e2e-tests/test-applications/create-remix-app-express-vite-dev/app/routes/_index.tsx
  25. +1 −1 dev-packages/e2e-tests/test-applications/create-remix-app-express-vite-dev/server.mjs
  26. +0 −168 ...ages/e2e-tests/test-applications/create-remix-app-express-vite-dev/tests/behaviour-client.test.ts
  27. +29 −0 ...ackages/e2e-tests/test-applications/create-remix-app-express-vite-dev/tests/client-errors.test.ts
  28. +57 −0 ...s/e2e-tests/test-applications/create-remix-app-express-vite-dev/tests/client-transactions.test.ts
  29. +3 −11 .../create-remix-app-express-vite-dev/tests/{behaviour-server.test.ts → server-transactions.test.ts}
  30. +0 −15 dev-packages/e2e-tests/test-applications/create-remix-app-express/app/entry.client.tsx
  31. +1 −2 dev-packages/e2e-tests/test-applications/create-remix-app-express/app/routes/_index.tsx
  32. +1 −1 dev-packages/e2e-tests/test-applications/create-remix-app-express/server.mjs
  33. +0 −192 dev-packages/e2e-tests/test-applications/create-remix-app-express/tests/behaviour-client.test.ts
  34. +29 −0 dev-packages/e2e-tests/test-applications/create-remix-app-express/tests/client-errors.test.ts
  35. +57 −0 dev-packages/e2e-tests/test-applications/create-remix-app-express/tests/client-transactions.test.ts
  36. +14 −0 dev-packages/e2e-tests/test-applications/create-remix-app-express/tests/server-errors.test.ts
  37. +6 −33 ...lications/create-remix-app-express/tests/{behaviour-server.test.ts → server-transactions.test.ts}
  38. +0 −15 dev-packages/e2e-tests/test-applications/create-remix-app-legacy/app/entry.client.tsx
  39. +1 −2 dev-packages/e2e-tests/test-applications/create-remix-app-legacy/app/routes/_index.tsx
  40. +4 −2 dev-packages/e2e-tests/test-applications/create-remix-app-legacy/package.json
  41. +0 −192 dev-packages/e2e-tests/test-applications/create-remix-app-legacy/tests/behaviour-client.test.ts
  42. +29 −0 dev-packages/e2e-tests/test-applications/create-remix-app-legacy/tests/client-errors.test.ts
  43. +57 −0 dev-packages/e2e-tests/test-applications/create-remix-app-legacy/tests/client-transactions.test.ts
  44. +2 −10 ...plications/create-remix-app-legacy/tests/{behaviour-server.test.ts → server-transactions.test.ts}
  45. +0 −15 dev-packages/e2e-tests/test-applications/create-remix-app-v2-legacy/app/entry.client.tsx
  46. +1 −2 dev-packages/e2e-tests/test-applications/create-remix-app-v2-legacy/app/routes/_index.tsx
  47. +0 −192 dev-packages/e2e-tests/test-applications/create-remix-app-v2-legacy/tests/behaviour-client.test.ts
  48. +29 −0 dev-packages/e2e-tests/test-applications/create-remix-app-v2-legacy/tests/client-errors.test.ts
  49. +57 −0 ...packages/e2e-tests/test-applications/create-remix-app-v2-legacy/tests/client-transactions.test.ts
  50. +2 −10 ...cations/create-remix-app-v2-legacy/tests/{behaviour-server.test.ts → server-transactions.test.ts}
  51. +0 −15 dev-packages/e2e-tests/test-applications/create-remix-app-v2/app/entry.client.tsx
  52. +1 −2 dev-packages/e2e-tests/test-applications/create-remix-app-v2/app/routes/_index.tsx
  53. +0 −192 dev-packages/e2e-tests/test-applications/create-remix-app-v2/tests/behaviour-client.test.ts
  54. +29 −0 dev-packages/e2e-tests/test-applications/create-remix-app-v2/tests/client-errors.test.ts
  55. +57 −0 dev-packages/e2e-tests/test-applications/create-remix-app-v2/tests/client-transactions.test.ts
  56. +2 −10 ...t-applications/create-remix-app-v2/tests/{behaviour-server.test.ts → server-transactions.test.ts}
  57. +0 −15 dev-packages/e2e-tests/test-applications/create-remix-app/app/entry.client.tsx
  58. +1 −2 dev-packages/e2e-tests/test-applications/create-remix-app/app/routes/_index.tsx
  59. +4 −2 dev-packages/e2e-tests/test-applications/create-remix-app/package.json
  60. +0 −192 dev-packages/e2e-tests/test-applications/create-remix-app/tests/behaviour-client.test.ts
  61. +29 −0 dev-packages/e2e-tests/test-applications/create-remix-app/tests/client-errors.test.ts
  62. +57 −0 dev-packages/e2e-tests/test-applications/create-remix-app/tests/client-transactions.test.ts
  63. +2 −10 ...test-applications/create-remix-app/tests/{behaviour-server.test.ts → server-transactions.test.ts}
  64. +19 −0 dev-packages/e2e-tests/test-applications/ember-classic/.editorconfig
  65. +15 −0 dev-packages/e2e-tests/test-applications/ember-classic/.ember-cli
  66. +32 −0 dev-packages/e2e-tests/test-applications/ember-classic/.gitignore
  67. +2 −0 dev-packages/e2e-tests/test-applications/ember-classic/.npmrc
  68. +3 −0 dev-packages/e2e-tests/test-applications/ember-classic/.watchmanconfig
  69. +56 −0 dev-packages/e2e-tests/test-applications/ember-classic/README.md
  70. +20 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/app.ts
  71. +3 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/components/link.hbs
  72. +33 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/components/link.ts
  73. +4 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/components/slow-loading-gc-list.ts
  74. +25 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/components/slow-loading-list.ts
  75. +6 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/components/test-section.ts
  76. +17 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/config/environment.d.ts
  77. +63 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/controllers/index.ts
  78. +13 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/controllers/slow-loading-route.ts
  79. +5 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/controllers/slow-loading-route/index.ts
  80. +13 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/controllers/tracing.ts
  81. +3 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/helpers/utils.ts
  82. +24 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/index.html
  83. +13 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/initializers/deprecation.ts
  84. +18 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/router.ts
  85. +13 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/routes/replay.ts
  86. +26 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/routes/slow-loading-route.ts
  87. +26 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/routes/slow-loading-route/index.ts
  88. +197 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/styles/app.css
  89. +22 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/templates/application.hbs
  90. +10 −0 ...kages/e2e-tests/test-applications/ember-classic/app/templates/components/slow-loading-gc-list.hbs
  91. +10 −0 ...packages/e2e-tests/test-applications/ember-classic/app/templates/components/slow-loading-list.hbs
  92. +6 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/templates/components/test-section.hbs
  93. +11 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/templates/index.hbs
  94. +1 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/templates/replay.hbs
  95. +11 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/templates/slow-loading-route.hbs
  96. +5 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/templates/slow-loading-route/index.hbs
  97. +2 −0 dev-packages/e2e-tests/test-applications/ember-classic/app/templates/tracing.hbs
  98. +18 −0 dev-packages/e2e-tests/test-applications/ember-classic/config/ember-cli-update.json
  99. +64 −0 dev-packages/e2e-tests/test-applications/ember-classic/config/environment.js
  100. +6 −0 dev-packages/e2e-tests/test-applications/ember-classic/config/optional-features.json
  101. +7 −0 dev-packages/e2e-tests/test-applications/ember-classic/config/targets.js
  102. +24 −0 dev-packages/e2e-tests/test-applications/ember-classic/ember-cli-build.js
  103. +83 −0 dev-packages/e2e-tests/test-applications/ember-classic/package.json
  104. +73 −0 dev-packages/e2e-tests/test-applications/ember-classic/playwright.config.ts
  105. +1 −0 dev-packages/e2e-tests/test-applications/ember-classic/public/assets/images/sentry-logo.svg
  106. BIN ...ges/e2e-tests/test-applications/ember-classic/public/assets/images/sentry-pattern-transparent.png
  107. +3 −0 dev-packages/e2e-tests/test-applications/ember-classic/public/robots.txt
  108. +6 −0 dev-packages/e2e-tests/test-applications/ember-classic/start-event-proxy.ts
  109. +66 −0 dev-packages/e2e-tests/test-applications/ember-classic/tests/errors.test.ts
  110. +279 −0 dev-packages/e2e-tests/test-applications/ember-classic/tests/performance.test.ts
  111. +32 −0 dev-packages/e2e-tests/test-applications/ember-classic/tsconfig.app.json
  112. +11 −0 dev-packages/e2e-tests/test-applications/ember-classic/tsconfig.json
  113. +11 −0 dev-packages/e2e-tests/test-applications/ember-classic/tsconfig.node.json
  114. +11 −0 dev-packages/e2e-tests/test-applications/ember-classic/types/ember-classic/index.d.ts
  115. +7 −0 dev-packages/e2e-tests/test-applications/ember-classic/types/global.d.ts
  116. 0 dev-packages/e2e-tests/test-applications/ember-classic/vendor/.gitkeep
  117. +19 −0 dev-packages/e2e-tests/test-applications/ember-embroider/.editorconfig
  118. +15 −0 dev-packages/e2e-tests/test-applications/ember-embroider/.ember-cli
  119. +32 −0 dev-packages/e2e-tests/test-applications/ember-embroider/.gitignore
  120. +2 −0 dev-packages/e2e-tests/test-applications/ember-embroider/.npmrc
  121. +3 −0 dev-packages/e2e-tests/test-applications/ember-embroider/.watchmanconfig
  122. +56 −0 dev-packages/e2e-tests/test-applications/ember-embroider/README.md
  123. +18 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/app.ts
  124. +6 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/components/error-button.hbs
  125. +10 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/components/error-button.ts
  126. +17 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/config/environment.d.ts
  127. +24 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/index.html
  128. +18 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/router.ts
  129. +3 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/routes/index.ts
  130. +30 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/routes/slow-loading-route.ts
  131. +30 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/routes/slow-loading-route/index.ts
  132. +3 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/routes/tracing.ts
  133. +197 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/styles/app.css
  134. +21 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/templates/application.hbs
  135. +4 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/templates/index.hbs
  136. +1 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/templates/slow-loading-route.hbs
  137. +5 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/templates/slow-loading-route/index.hbs
  138. +1 −0 ...packages/e2e-tests/test-applications/ember-embroider/app/templates/slow-loading-route/loading.hbs
  139. +7 −0 dev-packages/e2e-tests/test-applications/ember-embroider/app/templates/tracing.hbs
  140. +64 −0 dev-packages/e2e-tests/test-applications/ember-embroider/config/environment.js
  141. +7 −0 dev-packages/e2e-tests/test-applications/ember-embroider/config/optional-features.json
  142. +7 −0 dev-packages/e2e-tests/test-applications/ember-embroider/config/targets.js
  143. +19 −0 dev-packages/e2e-tests/test-applications/ember-embroider/ember-cli-build.js
  144. +72 −0 dev-packages/e2e-tests/test-applications/ember-embroider/package.json
  145. +73 −0 dev-packages/e2e-tests/test-applications/ember-embroider/playwright.config.ts
  146. +1 −0 dev-packages/e2e-tests/test-applications/ember-embroider/public/assets/images/sentry-logo.svg
  147. BIN ...s/e2e-tests/test-applications/ember-embroider/public/assets/images/sentry-pattern-transparent.png
  148. +3 −0 dev-packages/e2e-tests/test-applications/ember-embroider/public/robots.txt
  149. +6 −0 dev-packages/e2e-tests/test-applications/ember-embroider/start-event-proxy.ts
  150. +66 −0 dev-packages/e2e-tests/test-applications/ember-embroider/tests/errors.test.ts
  151. +279 −0 dev-packages/e2e-tests/test-applications/ember-embroider/tests/performance.test.ts
  152. +32 −0 dev-packages/e2e-tests/test-applications/ember-embroider/tsconfig.app.json
  153. +11 −0 dev-packages/e2e-tests/test-applications/ember-embroider/tsconfig.json
  154. +11 −0 dev-packages/e2e-tests/test-applications/ember-embroider/tsconfig.node.json
  155. +11 −0 dev-packages/e2e-tests/test-applications/ember-embroider/types/ember-embroider/index.d.ts
  156. +7 −0 dev-packages/e2e-tests/test-applications/ember-embroider/types/global.d.ts
  157. 0 dev-packages/e2e-tests/test-applications/ember-embroider/vendor/.gitkeep
  158. +10 −0 dev-packages/e2e-tests/test-applications/nestjs/src/app.controller.ts
  159. +20 −0 dev-packages/e2e-tests/test-applications/nestjs/src/app.service.ts
  160. +74 −0 dev-packages/e2e-tests/test-applications/nestjs/tests/span-decorator.test.ts
  161. +0 −5 dev-packages/e2e-tests/test-applications/node-connect/tests/transactions.test.ts
  162. +2 −1 dev-packages/e2e-tests/test-applications/node-hapi/package.json
  163. +50 −0 dev-packages/e2e-tests/test-applications/node-hapi/src/app.js
  164. +94 −0 dev-packages/e2e-tests/test-applications/node-hapi/tests/errors.test.ts
  165. +19 −0 dev-packages/e2e-tests/test-applications/node-hapi/tests/transactions.test.ts
  166. +1 −3 dev-packages/e2e-tests/test-applications/react-19/src/index.tsx
  167. +0 −21 dev-packages/e2e-tests/test-applications/react-router-6-use-routes/src/index.tsx
  168. +1 −1 dev-packages/external-contributor-gh-action/package.json
  169. +4 −4 dev-packages/node-integration-tests/package.json
  170. +1 −1 dev-packages/overhead-metrics/package.json
  171. +2 −2 dev-packages/rollup-utils/npmHelpers.mjs
  172. +1 −1 dev-packages/rollup-utils/package.json
  173. +0 −15 dev-packages/rollup-utils/plugins/make-esm-plugin.mjs
  174. +1 −1 dev-packages/size-limit-gh-action/package.json
  175. +3 −3 dev-packages/test-utils/package.json
  176. +144 −83 dev-packages/test-utils/src/event-proxy-server.ts
  177. +1 −1 lerna.json
  178. +5 −5 packages/angular/package.json
  179. +6 −6 packages/astro/package.json
  180. +5 −5 packages/aws-serverless/package.json
  181. +4 −4 packages/browser-utils/package.json
  182. +9 −9 packages/browser/package.json
  183. +1 −0 packages/browser/src/utils/lazyLoadIntegration.ts
  184. +6 −6 packages/bun/package.json
  185. +3 −3 packages/core/package.json
  186. +4 −10 packages/core/src/asyncContext/stackStrategy.ts
  187. +46 −16 packages/core/src/baseclient.ts
  188. +1 −0 packages/core/src/index.ts
  189. +1 −1 packages/core/src/utils/spanUtils.ts
  190. +52 −0 packages/core/test/lib/base.test.ts
  191. +6 −6 packages/deno/package.json
  192. +18 −2 packages/deno/scripts/prepack.js
  193. +5 −5 packages/ember/package.json
  194. +3 −3 packages/eslint-config-sdk/package.json
  195. +1 −1 packages/eslint-plugin-sdk/package.json
  196. +4 −4 packages/feedback/package.json
  197. +5 −5 packages/gatsby/package.json
  198. +5 −5 packages/google-cloud-serverless/package.json
  199. +4 −4 packages/integration-shims/package.json
  200. +18 −0 packages/nestjs/README.md
  201. +3 −3 packages/nestjs/package.json
  202. +2 −0 packages/nestjs/src/index.ts
  203. +25 −0 packages/nestjs/src/span-decorator.ts
  204. +8 −8 packages/nextjs/package.json
  205. +5 −5 packages/node/package.json
  206. +1 −1 packages/node/src/integrations/tracing/hapi/index.ts
  207. +8 −8 packages/nuxt/package.json
  208. +4 −4 packages/opentelemetry/package.json
  209. +6 −6 packages/opentelemetry/src/spanExporter.ts
  210. +0 −4 packages/opentelemetry/src/utils/convertOtelTimeToSeconds.ts
  211. +0 −9 packages/opentelemetry/test/utils/convertOtelTimeToSeconds.test.ts
  212. +5 −5 packages/profiling-node/package.json
  213. +5 −5 packages/react/package.json
  214. +3 −1 packages/react/rollup.npm.config.mjs
  215. +7 −7 packages/remix/package.json
  216. +3 −1 packages/remix/rollup.npm.config.mjs
  217. +5 −5 packages/replay-canvas/package.json
  218. +6 −6 packages/replay-internal/package.json
  219. +1 −1 packages/replay-worker/package.json
  220. +5 −5 packages/solid/package.json
  221. +7 −7 packages/solidstart/package.json
  222. +5 −5 packages/svelte/package.json
  223. +7 −7 packages/sveltekit/package.json
  224. +1 −1 packages/types/package.json
  225. +29 −14 packages/types/src/client.ts
  226. +1 −1 packages/typescript/package.json
  227. +2 −2 packages/utils/package.json
  228. +1 −1 packages/utils/src/version.ts
  229. +4 −4 packages/vercel-edge/package.json
  230. +5 −5 packages/vue/package.json
  231. +5 −5 packages/wasm/package.json
  232. +204 −216 yarn.lock
43 changes: 25 additions & 18 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -100,6 +100,7 @@ jobs:
- 'packages/rollup-utils/**'
- 'packages/utils/**'
- 'packages/types/**'
- 'dev-packages/test-utils/**'
browser: &browser
- *shared
- 'packages/browser/**'
@@ -970,22 +971,19 @@ jobs:

job_e2e_tests:
name: E2E ${{ matrix.label || matrix.test-application }} Test
# We only run E2E tests for non-fork PRs because the E2E tests require secrets to work and they can't be accessed from forks
# We need to add the `always()` check here because the previous step has this as well :(
# See: https://github.com/actions/runner/issues/2205
if:
always() && needs.job_e2e_prepare.result == 'success' &&
(github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository)
if: always() && needs.job_e2e_prepare.result == 'success'
needs: [job_get_metadata, job_build, job_e2e_prepare]
runs-on: ubuntu-20.04
timeout-minutes: 10
env:
E2E_TEST_AUTH_TOKEN: ${{ secrets.E2E_TEST_AUTH_TOKEN }}
E2E_TEST_DSN: ${{ secrets.E2E_TEST_DSN }}
# We just use a dummy DSN here, only send to the tunnel anyhow
E2E_TEST_DSN: 'https://username@domain/123'
# Needed because some apps expect a certain prefix
NEXT_PUBLIC_E2E_TEST_DSN: ${{ secrets.E2E_TEST_DSN }}
PUBLIC_E2E_TEST_DSN: ${{ secrets.E2E_TEST_DSN }}
REACT_APP_E2E_TEST_DSN: ${{ secrets.E2E_TEST_DSN }}
NEXT_PUBLIC_E2E_TEST_DSN: 'https://username@domain/123'
PUBLIC_E2E_TEST_DSN: 'https://username@domain/123'
REACT_APP_E2E_TEST_DSN: 'https://username@domain/123'
E2E_TEST_SENTRY_ORG_SLUG: 'sentry-javascript-sdks'
E2E_TEST_SENTRY_PROJECT: 'sentry-javascript-e2e-tests'
strategy:
@@ -1014,6 +1012,8 @@ jobs:
'node-express-esm-without-loader',
'node-express-cjs-preload',
'node-otel-sdk-node',
'ember-classic',
'ember-embroider',
'nextjs-app-dir',
'nextjs-14',
'nextjs-15',
@@ -1069,7 +1069,7 @@ jobs:
ref: ${{ env.HEAD_COMMIT }}
- uses: pnpm/action-setup@v4
with:
version: 8.3.1
version: 9.4.0
- name: Set up Node
uses: actions/setup-node@v4
with:
@@ -1106,12 +1106,12 @@ jobs:
- name: Build E2E app
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
timeout-minutes: 5
run: yarn ${{ matrix.build-command || 'test:build' }}
run: pnpm ${{ matrix.build-command || 'test:build' }}

- name: Run E2E test
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
timeout-minutes: 5
run: yarn test:assert
run: pnpm test:assert

- name: Deploy Astro to Cloudflare
uses: cloudflare/pages-action@v1
@@ -1146,8 +1146,6 @@ jobs:
strategy:
fail-fast: false
matrix:
is_dependabot:
- ${{ github.actor == 'dependabot[bot]' }}
test-application:
[
'react-send-to-sentry',
@@ -1156,8 +1154,17 @@ jobs:
]
build-command:
- false
assert-command:
- false
label:
- false
include:
- test-application: 'create-remix-app'
assert-command: 'test:assert-sourcemaps'
label: 'create-remix-app (sourcemaps)'
- test-application: 'create-remix-app-legacy'
assert-command: 'test:assert-sourcemaps'
label: 'create-remix-app-legacy (sourcemaps)'

steps:
- name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }})
@@ -1166,7 +1173,7 @@ jobs:
ref: ${{ env.HEAD_COMMIT }}
- uses: pnpm/action-setup@v4
with:
version: 8.3.1
version: 9.4.0
- name: Set up Node
uses: actions/setup-node@v4
with:
@@ -1200,12 +1207,12 @@ jobs:
- name: Build E2E app
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
timeout-minutes: 5
run: yarn ${{ matrix.build-command || 'test:build' }}
run: pnpm ${{ matrix.build-command || 'test:build' }}

- name: Run E2E test
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
timeout-minutes: 5
run: yarn test:assert
run: pnpm ${{ matrix.assert-command || 'test:assert' }}

job_profiling_e2e_tests:
name: E2E ${{ matrix.label || matrix.test-application }} Test
@@ -1245,7 +1252,7 @@ jobs:
ref: ${{ env.HEAD_COMMIT }}
- uses: pnpm/action-setup@v4
with:
version: 8.3.1
version: 9.4.0
- name: Set up Node
uses: actions/setup-node@v4
with:
56 changes: 7 additions & 49 deletions .github/workflows/canary.yml
Original file line number Diff line number Diff line change
@@ -56,12 +56,12 @@ jobs:
runs-on: ubuntu-20.04
timeout-minutes: 20
env:
E2E_TEST_AUTH_TOKEN: ${{ secrets.E2E_TEST_AUTH_TOKEN }}
E2E_TEST_DSN: ${{ secrets.E2E_TEST_DSN }}
# Needed because certain apps expect a certain prefix
NEXT_PUBLIC_E2E_TEST_DSN: ${{ secrets.E2E_TEST_DSN }}
PUBLIC_E2E_TEST_DSN: ${{ secrets.E2E_TEST_DSN }}
REACT_APP_E2E_TEST_DSN: ${{ secrets.E2E_TEST_DSN }}
# We just use a dummy DSN here, only send to the tunnel anyhow
E2E_TEST_DSN: 'https://username@domain/123'
# Needed because some apps expect a certain prefix
NEXT_PUBLIC_E2E_TEST_DSN: 'https://username@domain/123'
PUBLIC_E2E_TEST_DSN: 'https://username@domain/123'
REACT_APP_E2E_TEST_DSN: 'https://username@domain/123'
E2E_TEST_SENTRY_ORG_SLUG: 'sentry-javascript-sdks'
E2E_TEST_SENTRY_PROJECT: 'sentry-javascript-e2e-tests'
strategy:
@@ -103,7 +103,7 @@ jobs:
ref: ${{ env.HEAD_COMMIT }}
- uses: pnpm/action-setup@v4
with:
version: 8.3.1
version: 9.4.0

- name: Set up Node
uses: actions/setup-node@v4
@@ -151,45 +151,3 @@ jobs:
with:
filename: .github/CANARY_FAILURE_TEMPLATE.md
update_existing: true

job_ember_canary_test:
name: Ember Canary Tests
runs-on: ubuntu-20.04
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
# scenario: [ember-release, embroider-optimized, ember-4.0]
scenario: [ember-4.0]
steps:
- name: 'Check out current commit'
uses: actions/checkout@v4
with:
ref: ${{ env.HEAD_COMMIT }}
- name: Set up Node
uses: actions/setup-node@v4
with:
node-version-file: 'package.json'
- name: Install dependencies
run: yarn install --ignore-engines --frozen-lockfile

- name: Build dependencies
run: |
yarn lerna run build:types --scope=@sentry/ember --include-dependencies
yarn lerna run build:transpile --scope=@sentry/ember --include-dependencies
- name: Run Ember tests
run: |
cd packages/ember
yarn ember try:one ${{ matrix.scenario }} --skip-cleanup=true
- name: Create Issue
if: failure() && github.event_name == 'schedule'
uses: JasonEtco/create-an-issue@1b14a70e4d8dc185e5cc76d3bec9eab20257b2c5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
RUN_LINK: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
TITLE: Ember Canary ${{ matrix.scenario }} Test Failed
with:
filename: .github/CANARY_FAILURE_TEMPLATE.md
update_existing: true
2 changes: 0 additions & 2 deletions .github/workflows/external-contributors.yml
Original file line number Diff line number Diff line change
@@ -17,8 +17,6 @@ jobs:
&& github.actor != 'dependabot[bot]'
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
- name: Set up Node
uses: actions/setup-node@v4
with:
14 changes: 14 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -8,6 +8,20 @@

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

## 8.15.0

- feat(core): allow unregistering callback through `on` (#11710)
- feat(nestjs): Add function-level span decorator to nestjs (#12721)
- feat(otel): Export & use `spanTimeInputToSeconds` for otel span exporter (#12699)
- fix(core): Pass origin as referrer for `lazyLoadIntegration` (#12766)
- fix(deno): Publish from build directory (#12773)
- fix(hapi): Specify error channel to filter boom errors (#12725)
- fix(react): Revert back to `jsxRuntime: 'classic'` to prevent breaking react 17 (#12775)
- fix(tracing): Report dropped spans for transactions (#12751)
- ref(scope): Delete unused public `getStack()` (#12737)

Work in this release was contributed by @arturovt and @jaulz. Thank you for your contributions!

## 8.14.0

### Important Changes
4 changes: 2 additions & 2 deletions dev-packages/browser-integration-tests/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@sentry-internal/browser-integration-tests",
"version": "8.14.0",
"version": "8.15.0",
"main": "index.js",
"license": "MIT",
"engines": {
@@ -43,7 +43,7 @@
"@babel/preset-typescript": "^7.16.7",
"@playwright/test": "^1.44.1",
"@sentry-internal/rrweb": "2.11.0",
"@sentry/browser": "8.14.0",
"@sentry/browser": "8.15.0",
"axios": "1.6.7",
"babel-loader": "^8.2.2",
"html-webpack-plugin": "^5.5.0",
2 changes: 1 addition & 1 deletion dev-packages/bundle-analyzer-scenarios/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@sentry-internal/bundle-analyzer-scenarios",
"version": "8.14.0",
"version": "8.15.0",
"description": "Scenarios to test bundle analysis with",
"repository": "git://github.com/getsentry/sentry-javascript.git",
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/dev-packages/bundle-analyzer-scenarios",
8 changes: 6 additions & 2 deletions dev-packages/e2e-tests/README.md
Original file line number Diff line number Diff line change
@@ -8,8 +8,10 @@ current state.
Prerequisites: Docker

- Copy `.env.example` to `.env`
- Fill in auth information in `.env` for an example Sentry project
- Run `yarn build:tarball` in the root of the repository
- OPTIONAL: Fill in auth information in `.env` for an example Sentry project - you only need this to run E2E tests that
send data to Sentry.
- Run `yarn build:tarball` in the root of the repository (needs to be rerun after every update in /packages for the
changes to have effect on the tests).

To finally run all of the tests:

@@ -90,6 +92,8 @@ test apps enables us to reuse the same test suite over a number of different fra

### Standardized Frontend Test Apps

TODO: This is not up to date.

A standardized frontend test application has the following features:

- Just for the sake of consistency we prefix the standardized frontend tests with `standard-frontend-`. For example
33 changes: 0 additions & 33 deletions dev-packages/e2e-tests/lib/validate.ts

This file was deleted.

2 changes: 1 addition & 1 deletion dev-packages/e2e-tests/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@sentry-internal/e2e-tests",
"version": "8.14.0",
"version": "8.15.0",
"license": "MIT",
"private": true,
"scripts": {
5 changes: 0 additions & 5 deletions dev-packages/e2e-tests/prepare.ts
Original file line number Diff line number Diff line change
@@ -1,17 +1,12 @@
/* eslint-disable no-console */
import * as dotenv from 'dotenv';

import { validate } from './lib/validate';
import { registrySetup } from './registrySetup';

async function run(): Promise<void> {
// Load environment variables from .env file locally
dotenv.config();

if (!validate()) {
process.exit(1);
}

try {
registrySetup();
} catch (error) {
23 changes: 15 additions & 8 deletions dev-packages/e2e-tests/run.ts
Original file line number Diff line number Diff line change
@@ -4,9 +4,12 @@ import { resolve } from 'path';
import * as dotenv from 'dotenv';
import { sync as globSync } from 'glob';

import { validate } from './lib/validate';
import { registrySetup } from './registrySetup';

const DEFAULT_DSN = 'https://username@domain/123';
const DEFAULT_SENTRY_ORG_SLUG = 'sentry-javascript-sdks';
const DEFAULT_SENTRY_PROJECT = 'sentry-javascript-e2e-tests';

function asyncExec(command: string, options: { env: Record<string, string | undefined>; cwd: string }): Promise<void> {
return new Promise((resolve, reject) => {
const process = spawn(command, { ...options, shell: true });
@@ -39,17 +42,21 @@ async function run(): Promise<void> {
// Allow to run a single app only via `yarn test:run <app-name>`
const appName = process.argv[2];

if (!validate()) {
process.exit(1);
}
const dsn = process.env.E2E_TEST_DSN || DEFAULT_DSN;

const envVarsToInject = {
NEXT_PUBLIC_E2E_TEST_DSN: process.env.E2E_TEST_DSN,
PUBLIC_E2E_TEST_DSN: process.env.E2E_TEST_DSN,
REACT_APP_E2E_TEST_DSN: process.env.E2E_TEST_DSN,
E2E_TEST_DSN: dsn,
NEXT_PUBLIC_E2E_TEST_DSN: dsn,
PUBLIC_E2E_TEST_DSN: dsn,
REACT_APP_E2E_TEST_DSN: dsn,
E2E_TEST_SENTRY_ORG_SLUG: process.env.E2E_TEST_SENTRY_ORG_SLUG || DEFAULT_SENTRY_ORG_SLUG,
E2E_TEST_SENTRY_PROJECT: process.env.E2E_TEST_SENTRY_PROJECT || DEFAULT_SENTRY_PROJECT,
};

const env = { ...process.env, ...envVarsToInject };
const env = {
...process.env,
...envVarsToInject,
};

try {
console.log('Cleaning test-applications...');
Original file line number Diff line number Diff line change
@@ -14,7 +14,7 @@
},
"devDependencies": {
"@sentry-internal/test-utils": "link:../../../test-utils",
"@playwright/test": "^1.41.1",
"@playwright/test": "^1.44.1",
"wait-port": "1.0.4"
},
"volta": {
Original file line number Diff line number Diff line change
@@ -3,5 +3,4 @@ import { startEventProxyServer } from '@sentry-internal/test-utils';
startEventProxyServer({
port: 3031,
proxyServerName: 'aws-serverless-lambda-layer-cjs',
forwardToSentry: false,
});
Loading