-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
fix(nuxt): Add Nitro Rollup plugin to inject Sentry server config #15710
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice, this looks very clean!
@s1gr1d Thanks for fixing! :) Is this part of the dynamic import method? To benefit from this, will we need to migrate from the --import method? |
No, it's not related :) The rollup plugin I added for this fix, only adds the server config to the build output (which was happening before already). The rollup plugin for the dynamic import is a different one and this was not changed: https://github.com/getsentry/sentry-javascript/blob/develop/packages/nuxt/src/vite/addServerConfig.ts#L204 |
Adding tests for the [nightly channel](https://nuxt.com/docs/guide/going-further/nightly-release-channel) of Nuxt. Right now, they are failing - will merge this PR once they are not failing anymore. See issue: #15628 This PR adds fixes to the tests should not fail anymore: #15710
thank you @s1gr1d ❤️ |
Due to PR #15710 the Sentry server config is only processed inside the Nitro-part of Nuxt and the server config file is emitted through the Rollup plugin. It is not needed anymore to copy-paste the file manually (this has been the case before as the file was added to the `.nuxt` folder - as it was processed by Nuxt, not Nitro-only). This fixes the "no such file" error [posted in this comment](#13330 (comment)). closes #13330
![snyk-io[bot]](https://badgen.net/badge/icon/snyk-io%5Bbot%5D/green?label=)  [<img width="16" alt="Powered by Pull Request Badge" src="https://user-images.githubusercontent.com/1393946/111216524-d2bb8e00-85d4-11eb-821b-ed4c00989c02.png">](https://pullrequestbadge.com/?utm_medium=github&utm_source=reisene&utm_campaign=badge_info)<!-- PR-BADGE: PLEASE DO NOT REMOVE THIS COMMENT -->  <h3>Snyk has created this PR to upgrade @sentry/browser from 9.5.0 to 9.6.1.</h3> :information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project. <hr/> - The recommended version is **3 versions** ahead of your current version. - The recommended version was released **22 days ago**. <details> <summary><b>Release notes</b></summary> <br/> <details> <summary>Package name: <b>@sentry/browser</b></summary> <ul> <li> <b>9.6.1</b> - <a href="https://redirect.github.com/getsentry/sentry-javascript/releases/tag/9.6.1">2025-03-19</a></br><ul> <li>feat(deps): bump @ prisma/instrumentation from 6.4.1 to 6.5.0 (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/15714" data-hovercard-type="pull_request" data-hovercard-url="/getsentry/sentry-javascript/pull/15714/hovercard">#15714</a>)</li> <li>feat(deps): bump @ sentry/cli from 2.42.2 to 2.42.3 (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/15711" data-hovercard-type="pull_request" data-hovercard-url="/getsentry/sentry-javascript/pull/15711/hovercard">#15711</a>)</li> <li>fix(nextjs): Re-patch router if it is overridden by Next.js (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/15721" data-hovercard-type="pull_request" data-hovercard-url="/getsentry/sentry-javascript/pull/15721/hovercard">#15721</a>)</li> <li>fix(nuxt): Add Nitro Rollup plugin to inject Sentry server config (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/15710" data-hovercard-type="pull_request" data-hovercard-url="/getsentry/sentry-javascript/pull/15710/hovercard">#15710</a>)</li> <li>chore(deps): Bump rollup to 4.35.0 (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/15651" data-hovercard-type="pull_request" data-hovercard-url="/getsentry/sentry-javascript/pull/15651/hovercard">#15651</a>)</li> </ul> <h2>Bundle size 📦</h2> <table> <thead> <tr> <th>Path</th> <th>Size</th> </tr> </thead> <tbody> <tr> <td>@ sentry/browser</td> <td>23.15 KB</td> </tr> <tr> <td>@ sentry/browser - with treeshaking flags</td> <td>22.94 KB</td> </tr> <tr> <td>@ sentry/browser (incl. Tracing)</td> <td>36.21 KB</td> </tr> <tr> <td>@ sentry/browser (incl. Tracing, Replay)</td> <td>73.39 KB</td> </tr> <tr> <td>@ sentry/browser (incl. Tracing, Replay) - with treeshaking flags</td> <td>66.81 KB</td> </tr> <tr> <td>@ sentry/browser (incl. Tracing, Replay with Canvas)</td> <td>78.01 KB</td> </tr> <tr> <td>@ sentry/browser (incl. Tracing, Replay, Feedback)</td> <td>90.57 KB</td> </tr> <tr> <td>@ sentry/browser (incl. Feedback)</td> <td>40.3 KB</td> </tr> <tr> <td>@ sentry/browser (incl. sendFeedback)</td> <td>27.79 KB</td> </tr> <tr> <td>@ sentry/browser (incl. FeedbackAsync)</td> <td>32.58 KB</td> </tr> <tr> <td>@ sentry/react</td> <td>24.97 KB</td> </tr> <tr> <td>@ sentry/react (incl. Tracing)</td> <td>38.1 KB</td> </tr> <tr> <td>@ sentry/vue</td> <td>27.4 KB</td> </tr> <tr> <td>@ sentry/vue (incl. Tracing)</td> <td>37.9 KB</td> </tr> <tr> <td>@ sentry/svelte</td> <td>23.18 KB</td> </tr> <tr> <td>CDN Bundle</td> <td>24.36 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing)</td> <td>36.26 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing, Replay)</td> <td>71.27 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing, Replay, Feedback)</td> <td>76.45 KB</td> </tr> <tr> <td>CDN Bundle - uncompressed</td> <td>71.19 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing) - uncompressed</td> <td>107.57 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing, Replay) - uncompressed</td> <td>218.83 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed</td> <td>231.39 KB</td> </tr> <tr> <td>@ sentry/nextjs (client)</td> <td>39.38 KB</td> </tr> <tr> <td>@ sentry/sveltekit (client)</td> <td>36.63 KB</td> </tr> <tr> <td>@ sentry/node</td> <td>142.29 KB</td> </tr> <tr> <td>@ sentry/node - without tracing</td> <td>95.71 KB</td> </tr> <tr> <td>@ sentry/aws-serverless</td> <td>120.06 KB</td> </tr> </tbody> </table> </li> <li> <b>9.6.0</b> - <a href="https://redirect.github.com/getsentry/sentry-javascript/releases/tag/9.6.0">2025-03-17</a></br><h3>Important Changes</h3> <ul> <li> <p><strong>feat(tanstackstart): Add <code>@ sentry/tanstackstart-react</code> package and make <code>@ sentry/tanstackstart</code> package a utility package (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/15629" data-hovercard-type="pull_request" data-hovercard-url="/getsentry/sentry-javascript/pull/15629/hovercard">#15629</a>)</strong></p> <p>Since TanStack Start is supposed to be a generic framework that supports libraries like React and Solid, the <code>@ sentry/tanstackstart</code> SDK package was renamed to <code>@ sentry/tanstackstart-react</code> to reflect that the SDK is specifically intended to be used for React TanStack Start applications.<br> Note that the TanStack Start SDK is still in alpha status and may be subject to breaking changes in non-major package updates.</p> </li> </ul> <h3>Other Changes</h3> <ul> <li>feat(astro): Accept all vite-plugin options (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/15638" data-hovercard-type="pull_request" data-hovercard-url="/getsentry/sentry-javascript/pull/15638/hovercard">#15638</a>)</li> <li>feat(deps): bump @ sentry/webpack-plugin from 3.2.1 to 3.2.2 (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/15627" data-hovercard-type="pull_request" data-hovercard-url="/getsentry/sentry-javascript/pull/15627/hovercard">#15627</a>)</li> <li>feat(tanstackstart): Refine initial API (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/15574" data-hovercard-type="pull_request" data-hovercard-url="/getsentry/sentry-javascript/pull/15574/hovercard">#15574</a>)</li> <li>fix(core): Ensure <code>fill</code> only patches functions (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/15632" data-hovercard-type="pull_request" data-hovercard-url="/getsentry/sentry-javascript/pull/15632/hovercard">#15632</a>)</li> <li>fix(nextjs): Consider <code>pageExtensions</code> when looking for instrumentation file (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/15701" data-hovercard-type="pull_request" data-hovercard-url="/getsentry/sentry-javascript/pull/15701/hovercard">#15701</a>)</li> <li>fix(remix): Null-check <code>options</code> (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/15610" data-hovercard-type="pull_request" data-hovercard-url="/getsentry/sentry-javascript/pull/15610/hovercard">#15610</a>)</li> <li>fix(sveltekit): Correctly parse angle bracket type assertions for auto instrumentation (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/15578" data-hovercard-type="pull_request" data-hovercard-url="/getsentry/sentry-javascript/pull/15578/hovercard">#15578</a>)</li> <li>fix(sveltekit): Guard process variable (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/15605" data-hovercard-type="pull_request" data-hovercard-url="/getsentry/sentry-javascript/pull/15605/hovercard">#15605</a>)</li> </ul> <p>Work in this release was contributed by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/angelikatyborska/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://redirect.github.com/angelikatyborska">@ angelikatyborska</a> and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/nwalters512/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://redirect.github.com/nwalters512">@ nwalters512</a>. Thank you for your contributions!</p> <h2>Bundle size 📦</h2> <table> <thead> <tr> <th>Path</th> <th>Size</th> </tr> </thead> <tbody> <tr> <td>@ sentry/browser</td> <td>23.15 KB</td> </tr> <tr> <td>@ sentry/browser - with treeshaking flags</td> <td>22.94 KB</td> </tr> <tr> <td>@ sentry/browser (incl. Tracing)</td> <td>36.21 KB</td> </tr> <tr> <td>@ sentry/browser (incl. Tracing, Replay)</td> <td>73.39 KB</td> </tr> <tr> <td>@ sentry/browser (incl. Tracing, Replay) - with treeshaking flags</td> <td>66.8 KB</td> </tr> <tr> <td>@ sentry/browser (incl. Tracing, Replay with Canvas)</td> <td>78.01 KB</td> </tr> <tr> <td>@ sentry/browser (incl. Tracing, Replay, Feedback)</td> <td>90.57 KB</td> </tr> <tr> <td>@ sentry/browser (incl. Feedback)</td> <td>40.3 KB</td> </tr> <tr> <td>@ sentry/browser (incl. sendFeedback)</td> <td>27.79 KB</td> </tr> <tr> <td>@ sentry/browser (incl. FeedbackAsync)</td> <td>32.58 KB</td> </tr> <tr> <td>@ sentry/react</td> <td>24.97 KB</td> </tr> <tr> <td>@ sentry/react (incl. Tracing)</td> <td>38.1 KB</td> </tr> <tr> <td>@ sentry/vue</td> <td>27.4 KB</td> </tr> <tr> <td>@ sentry/vue (incl. Tracing)</td> <td>37.9 KB</td> </tr> <tr> <td>@ sentry/svelte</td> <td>23.18 KB</td> </tr> <tr> <td>CDN Bundle</td> <td>24.36 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing)</td> <td>36.26 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing, Replay)</td> <td>71.27 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing, Replay, Feedback)</td> <td>76.45 KB</td> </tr> <tr> <td>CDN Bundle - uncompressed</td> <td>71.19 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing) - uncompressed</td> <td>107.57 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing, Replay) - uncompressed</td> <td>218.84 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed</td> <td>231.4 KB</td> </tr> <tr> <td>@ sentry/nextjs (client)</td> <td>39.27 KB</td> </tr> <tr> <td>@ sentry/sveltekit (client)</td> <td>36.63 KB</td> </tr> <tr> <td>@ sentry/node</td> <td>142.15 KB</td> </tr> <tr> <td>@ sentry/node - without tracing</td> <td>95.58 KB</td> </tr> <tr> <td>@ sentry/aws-serverless</td> <td>119.92 KB</td> </tr> </tbody> </table> </li> <li> <b>9.6.0-alpha.0</b> - 2025-03-06 </li> <li> <b>9.5.0</b> - 2025-03-06 </li> </ul> from <a href="https://redirect.github.com/getsentry/sentry-javascript/releases">@sentry/browser GitHub release notes</a> </details> </details> --- > [!IMPORTANT] > > - Check the changes in this PR to ensure they won't cause issues with your project. > - This PR was automatically created by Snyk using the credentials of a real user. --- **Note:** _You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs._ **For more information:** <img src="https://api.segment.io/v1/pixel/track?data=eyJ3cml0ZUtleSI6InJyWmxZcEdHY2RyTHZsb0lYd0dUcVg4WkFRTnNCOUEwIiwiYW5vbnltb3VzSWQiOiJhYjgwMDgxOS1lZTdkLTRiNzMtOGU2MS03ZWM1MWRlZDEwOWUiLCJldmVudCI6IlBSIHZpZXdlZCIsInByb3BlcnRpZXMiOnsicHJJZCI6ImFiODAwODE5LWVlN2QtNGI3My04ZTYxLTdlYzUxZGVkMTA5ZSJ9fQ==" width="0" height="0"/> > - 🧐 [View latest project report](https://app.snyk.io/org/reisene/project/55e114f8-489e-4f14-b900-20574b041e59?utm_source=github-cloud-app&utm_medium=referral&page=upgrade-pr) > - 📜 [Customise PR templates](https://docs.snyk.io/scan-using-snyk/pull-requests/snyk-fix-pull-or-merge-requests/customize-pr-templates?utm_source=&utm_content=fix-pr-template) > - 🛠 [Adjust upgrade PR settings](https://app.snyk.io/org/reisene/project/55e114f8-489e-4f14-b900-20574b041e59/settings/integration?utm_source=github-cloud-app&utm_medium=referral&page=upgrade-pr) > - 🔕 [Ignore this dependency or unsubscribe from future upgrade PRs](https://app.snyk.io/org/reisene/project/55e114f8-489e-4f14-b900-20574b041e59/settings/integration?pkg=@sentry/browser&utm_source=github-cloud-app&utm_medium=referral&page=upgrade-pr#auto-dep-upgrades) [//]: # 'snyk:metadata:{"customTemplate":{"variablesUsed":[],"fieldsUsed":[]},"dependencies":[{"name":"@sentry/browser","from":"9.5.0","to":"9.6.1"}],"env":"prod","hasFixes":false,"isBreakingChange":false,"isMajorUpgrade":false,"issuesToFix":[],"prId":"ab800819-ee7d-4b73-8e61-7ec51ded109e","prPublicId":"ab800819-ee7d-4b73-8e61-7ec51ded109e","packageManager":"npm","priorityScoreList":[],"projectPublicId":"55e114f8-489e-4f14-b900-20574b041e59","projectUrl":"https://app.snyk.io/org/reisene/project/55e114f8-489e-4f14-b900-20574b041e59?utm_source=github-cloud-app&utm_medium=referral&page=upgrade-pr","prType":"upgrade","templateFieldSources":{"branchName":"default","commitMessage":"default","description":"default","title":"default"},"templateVariants":[],"type":"auto","upgrade":[],"upgradeInfo":{"versionsDiff":3,"publishedDate":"2025-03-19T10:03:32.247Z"},"vulns":[]}' ## Podsumowanie od Sourcery Ulepszenia: - Aktualizacja pakietu Sentry dla przeglądarki do najnowszej wersji minor <details> <summary>Original summary in English</summary> ## Summary by Sourcery Enhancements: - Update Sentry browser package to the latest minor version </details>
Previously, the Sentry server config was added by adding another entry point in the rollup options of Vite. Since Nuxt changed
preserveModules
totrue
, this did not work anymore. The aim of this change in Nuxt is to avoid duplicating what the Nitro build would do.This means, that we now don't change the Rollup options in Vite anymore (affects Nuxt as a whole) but only the Rollup options during the Nitro build.
The added plugin will emit a new file and returns the Sentry config code there.
fixes #15628