-
-
Notifications
You must be signed in to change notification settings - Fork 226
chore(deps): update CLI to v3.0.1 #4805
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
base: main
Are you sure you want to change the base?
Conversation
c0295fe to
3941d07
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #4805 +/- ##
==========================================
- Coverage 73.80% 73.79% -0.02%
==========================================
Files 483 483
Lines 17551 17551
Branches 3461 3461
==========================================
- Hits 12954 12951 -3
- Misses 3745 3747 +2
- Partials 852 853 +1 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
34aebda to
293baf3
Compare
293baf3 to
dcc7cff
Compare
Directory.Build.props
Outdated
| <!-- Set the version and local path for Sentry CLI (downloaded in the restore phase of Sentry.csproj) --> | ||
| <PropertyGroup Condition="'$(SolutionName)' != 'Sentry.Unity'"> | ||
| <SentryCLIVersion>2.58.2</SentryCLIVersion> | ||
| <SentryCLIVersion>3.0.0</SentryCLIVersion> |
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.
Bug: CLI upgrade breaks API key authentication support
The upgrade to sentry-cli 3.0.0 removes support for the --api-key flag, but src/Sentry/buildTransitive/Sentry.targets still uses this flag when SentryApiKey is set. Users who have configured SentryApiKey will experience CLI failures because sentry-cli 3.0.0 no longer recognizes --api-key. The code at line 111 in Sentry.targets needs to be removed or the property needs to be deprecated with appropriate migration guidance.
dcc7cff to
874594e
Compare
874594e to
54294a4
Compare
| <!-- Set the version and local path for Sentry CLI (downloaded in the restore phase of Sentry.csproj) --> | ||
| <PropertyGroup Condition="'$(SolutionName)' != 'Sentry.Unity'"> | ||
| <SentryCLIVersion>2.58.2</SentryCLIVersion> | ||
| <SentryCLIVersion>3.0.1</SentryCLIVersion> |
This comment was marked as outdated.
This comment was marked as outdated.
Sorry, something went wrong.
54294a4 to
520dab0
Compare
| <!-- Set the version and local path for Sentry CLI (downloaded in the restore phase of Sentry.csproj) --> | ||
| <PropertyGroup Condition="'$(SolutionName)' != 'Sentry.Unity'"> | ||
| <SentryCLIVersion>2.58.2</SentryCLIVersion> | ||
| <SentryCLIVersion>3.0.1</SentryCLIVersion> |
This comment was marked as outdated.
This comment was marked as outdated.
Sorry, something went wrong.
520dab0 to
3eaeccc
Compare
| <!-- Set the version and local path for Sentry CLI (downloaded in the restore phase of Sentry.csproj) --> | ||
| <PropertyGroup Condition="'$(SolutionName)' != 'Sentry.Unity'"> | ||
| <SentryCLIVersion>2.58.2</SentryCLIVersion> | ||
| <SentryCLIVersion>3.0.1</SentryCLIVersion> |
This comment was marked as outdated.
This comment was marked as outdated.
Sorry, something went wrong.
3eaeccc to
c20d553
Compare
| <!-- Set the version and local path for Sentry CLI (downloaded in the restore phase of Sentry.csproj) --> | ||
| <PropertyGroup Condition="'$(SolutionName)' != 'Sentry.Unity'"> | ||
| <SentryCLIVersion>2.58.2</SentryCLIVersion> | ||
| <SentryCLIVersion>3.0.1</SentryCLIVersion> |
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.
Bug: The sentry-cli upgrade to v3.0.1 is incompatible with the MSBuild targets file, which still uses the removed --api-key flag, causing build failures for some users.
Severity: CRITICAL | Confidence: High
🔍 Detailed Analysis
The pull request upgrades sentry-cli to version 3.0.1. This version of sentry-cli no longer supports the --api-key flag, which was removed in version 3.0.0. However, the MSBuild targets file (Sentry.targets) was not updated and still attempts to use --api-key if the SentryApiKey property is configured by a user. This will cause the CLI to receive an unknown flag and fail, breaking any build that triggers Sentry integration (e.g., for symbol uploads). This is a breaking change for users relying on the SentryApiKey property.
💡 Suggested Fix
Update the src/Sentry/buildTransitive/Sentry.targets file to remove the line that adds the --api-key flag. The new authentication method uses --auth-token with the SentryAuthToken property, which is already supported in a separate line.
🤖 Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent.
Verify if this is a real issue. If it is, propose a fix; if not, explain why it's not
valid.
Location: Directory.Build.props#L102
Potential issue: The pull request upgrades `sentry-cli` to version 3.0.1. This version
of `sentry-cli` no longer supports the `--api-key` flag, which was removed in version
3.0.0. However, the MSBuild targets file (`Sentry.targets`) was not updated and still
attempts to use `--api-key` if the `SentryApiKey` property is configured by a user. This
will cause the CLI to receive an unknown flag and fail, breaking any build that triggers
Sentry integration (e.g., for symbol uploads). This is a breaking change for users
relying on the `SentryApiKey` property.
Did we get this right? 👍 / 👎 to inform future reviews.
Reference ID: 8122391
Bumps scripts/update-cli.ps1 from 2.58.2 to 3.0.1.
Auto-generated by a dependency updater.
Changelog
3.0.1
Performance Improvements
sentry build upload) in preparation for this week's beta release! (#3038)3.0.0
New Sentry Support Policy
sentry-cli3.0.0 and above only officially supports Sentry SaaS and Sentry self-hosted versions 25.11.1 and higher. While many Sentry CLI features may, in practice, continue working with some older Sentry versions, continued support for Sentry versions older than 25.11.1 is not guaranteed. Changes which break support for Sentry versions below 25.11.1 may occur in minor or patch releases.New Versioning Policy
Sentry CLI now defines a semantic versioning policy. We did not explicitly define a versioning policy before, but the new versioning policy contains some notable changes versus the previous implicit policy we had been following. The main change is that dropping support for self-hosted Sentry versions now only requires a minor version bump, although such changes will be clearly communicated in the changelog.
Important
Self-hosted users: We strongly recommend pinning your Sentry CLI version, since Sentry CLI may drop support for your self-hosted Sentry version in any future minor release. Always check the changelog before upgrading Sentry CLI.
Breaking Changes
sentry-cli files ...andsentry-cli releases files ...subcommands (#2956). These commands provided functionality for managing release files, a feature that has been deprecated in Sentry. Users still usingsentry-cli files uploadto upload source maps should migrate tosentry-cli sourcemaps upload.sentry-cli sourcemaps explaincommand (#2947). The command had been deprecated for some time, since Sentry now has a better in-product debugging flow for source map problems via the "Unminify Code" button, which is displayed on any JavaScript issues which could not be unminified.sentry-cli send-metric ...subcommands (#3006). These commands have been deprecated, and the data they send is no longer accepted by Sentry.--api-keyCLI flagSENTRY_API_KEYenvironment variableapi_keyconfiguration file fieldapiKeyoption in the JavaScript APIupload-proguardsubcommand's--app-id,--version,--version-code,--android-manifest, and--platformarguments (#2876, #2940, #2948). Users using these arguments should stop using them, as they are unnecessary. The information passed to these arguments is no longer visible in Sentry.--startedargument from thesentry-cli releases finalizecommand (#2972). This argument is a no-op, so any users using it should simply stop using it.--use-artifact-bundleflag fromsentry-cli sourcemaps upload(#3002). The flag was a no-op that only emitted a deprecation warning.Node.js Wrapper Breakages
The following changes only apply when using
sentry-clivia the npm packagesentry/cli:The
SentryCli.executemethod'sliveparameter now only takes boolean values (#2971). Settinglivetotruenow behaves like'rejectOnError'did previously, with a zero exit status resolving the returned promise with"success (live mode)"and a non-zero status rejecting the promise with an error message.The
optionparameter toReleases.uploadSourceMapsno longer takes aliveproperty (#2971). We now always execute the command withliveset totrue.Removed the
apiKeyoption fromSentryCliOptions(#2935). If you are usingapiKey, you need to generate and use an Auth Token via theauthTokenoption, instead.Removed the
useArtifactBundleoption fromSentryCliUploadSourceMapsOptions(#3002). This deprecated option was a no-op that users should simply stop passing.Drop support for Node.js <18. The minimum required Node.js version is now 18.0.0 (#2985).
The type export
SentryCliReleaseshas been removed.The JavaScript wrapper now uses named exports instead of default exports (#2989). You need to update your imports:
For ESM imports:
Improvements
sentry-cli upload-proguardcommand now uses chunked uploading by default (#2918). Users who previously set theSENTRY_EXPERIMENTAL_PROGUARD_CHUNK_UPLOADenvironment variable to opt into this behavior no longer need to set the variable.debugIdfield, per the TC39 Debug ID proposal (#3005). This change affects thesentry-cli sourcemaps injectcommand and, unless--no-rewriteis passed, thesentry-cli sourcemaps uploadcommand. Sentry CLI can still read thedebug_idfield, but whenever the CLI writes or rewrites a source map, we always usedebugId.sentry-cli build uploadcommand now automatically tracks Sentry plugin versions from theSENTRY_PIPELINEenvironment variable (#2994). WhenSENTRY_PIPELINEcontains a recognized Sentry plugin (e.g.,sentry-gradle-plugin/4.12.0orsentry-fastlane-plugin/1.2.3), the plugin version is written to the.sentry-cli-metadata.txtfile in uploaded build archives, enabling the backend to store metadata for size analysis and build distribution tracking.Fixes
2.58.4
Fixes
npm run(#3030). This change ensures the postinstall script remains compatible with package managers other thannpm.2.58.3
Improvements
sentry-cli build uploadcommand, we now only auto-detect Git metadata when we detect we are running in a CI environment, unless the user manually overrides this behavior (#2974). This change prevents local development builds from triggiering GitHub status checks for size analysis.--force-git-metadataand--no-git-metadata, which force-enable and force-disable automatic Git data collection, respectively, overriding the default behavior.sentry-cli build uploadcommand now automatically detects the correct branch or tag reference in non-PR GitHub Actions workflows (#2976). Previously,--head-refwas only auto-detected for pull request workflows. Now it works for push, release, and other workflow types by using theGITHUB_REF_NAMEenvironment variable.Fixes
sentry-cli sourcemaps injectcommand could inject JavaScript code into certain incorrectly formatted source map files, corrupting their JSON structure (#3003).Internal changes
Full CHANGELOG.md diff