From 7a3f4aabebcf7c1e77c4f90d889503874efda3b9 Mon Sep 17 00:00:00 2001 From: Daniel Szoke Date: Wed, 15 Oct 2025 15:20:43 +0200 Subject: [PATCH 1/4] chore(proguard): Deprecate release association flags Proguard Release Association is a thing of the past. Here, we deprecate the flags for setting the relationship. --- src/commands/upload_proguard.rs | 37 ++++++++++++++++++++++++++------- 1 file changed, 30 insertions(+), 7 deletions(-) diff --git a/src/commands/upload_proguard.rs b/src/commands/upload_proguard.rs index b3709dbf67..e71b7d903a 100644 --- a/src/commands/upload_proguard.rs +++ b/src/commands/upload_proguard.rs @@ -35,36 +35,52 @@ pub fn make_command(command: Command) -> Command { ) .arg( Arg::new("version") + .hide(true) .long("version") .value_name("VERSION") .requires("app_id") .help( - "Optionally associate the mapping files with a human \ - readable version.{n}This helps you understand which \ - ProGuard files go with which version of your app.", + "[DEPRECATED] Optionally associate the mapping files \ + with a human readable version.{n}This helps you \ + understand which ProGuard files go with which version \ + of your app.\n\ + Sentry SaaS and self-hosted version 25.9.0 and later no \ + longer display this association, as it has no effect on \ + symbol resolution. This flag is scheduled for removal in \ + Sentry CLI 3.0.0.", ), ) .arg( Arg::new("version_code") + .hide(true) .long("version-code") .value_name("VERSION_CODE") .requires("app_id") .requires("version") .help( - "Optionally associate the mapping files with a version \ + "[DEPRECATED] Optionally associate the mapping files with a version \ code.{n}This helps you understand which ProGuard files \ - go with which version of your app.", + go with which version of your app.\n\ + Sentry SaaS and self-hosted version 25.9.0 and later no \ + longer display this association, as it has no effect on \ + symbol resolution. This flag is scheduled for removal in \ + Sentry CLI 3.0.0.", ), ) .arg( Arg::new("app_id") + .hide(true) .long("app-id") .value_name("APP_ID") .requires("version") .help( - "Optionally associate the mapping files with an application \ + "[DEPRECATED] Optionally associate the mapping files with an application \ ID.{n}If you have multiple apps in one sentry project, you can \ - then easily tell them apart.", + then easily tell them apart.\n\ + Sentry SaaS and self-hosted version 25.9.0 and later no \ + longer display this association, as it has no effect on \ + symbol resolution. This flag is scheduled for removal in \ + Sentry CLI 3.0.0.", ), ) .arg( @@ -267,6 +283,13 @@ pub fn execute(matches: &ArgMatches) -> Result<()> { // if values are given associate if let Some(app_id) = matches.get_one::("app_id") { + log::warn!( + "[DEPRECATION NOTICE] The --app-id, --version, and --version-code flags are deprecated. \ + and scheduled for removal in Sentry CLI 3.0.0. \ + These values have no effect on symbol resolution, and are no longer displayed anywhere \ + in the Sentry UI (neither in SaaS nor in self-hosted versions 25.9.0 and later)." + ); + #[expect(clippy::unwrap_used, reason = "legacy code")] let version = matches.get_one::("version").unwrap().to_owned(); let build: Option = matches.get_one::("version_code").cloned(); From 838ac9acceb50d139c5af44f76d1541585c10173 Mon Sep 17 00:00:00 2001 From: Daniel Szoke Date: Wed, 15 Oct 2025 15:29:38 +0200 Subject: [PATCH 2/4] added changelog entry --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index a5c08b5cd7..7eef56a776 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ ### Deprecations +- Deprecated the `upload-proguard` subcommand's `--app-id`, `--version`, and `--version-code` flags ([#2852](https://github.com/getsentry/sentry-cli/pull/2852)), as we plan to remove these flags in Sentry CLI 3.x. Users should simply stop using the flags; the values specified there have never had an effect on symbol resolution, and are no longer visible in Sentry. - Added a deprecation notice for release bundle uploads, a legacy method for uploading sourcemaps ([#2844](https://github.com/getsentry/sentry-cli/pull/2844)). Release bundle uploads will be removed in Sentry CLI 3.x in favor of artifact bundles, the newer sourcemap upload method [introduced in Sentry version 23.6.2](https://github.com/getsentry/sentry/commit/f90f764fda09575f3f94caf32d04589098384616). **Self-hosted users**: You must upgrade to Sentry 23.6.2 or later before upgrading to Sentry CLI 3.x. ## 2.56.1 From b5bbaa7d2b85d872abc39aec12b91c013907320b Mon Sep 17 00:00:00 2001 From: Daniel Szoke Date: Wed, 15 Oct 2025 16:08:20 +0200 Subject: [PATCH 3/4] fix tests --- .../upload_proguard-help.trycmd | 64 ++++++++----------- 1 file changed, 26 insertions(+), 38 deletions(-) diff --git a/tests/integration/_cases/upload_proguard/upload_proguard-help.trycmd b/tests/integration/_cases/upload_proguard/upload_proguard-help.trycmd index 2646e5f84b..63e24850a9 100644 --- a/tests/integration/_cases/upload_proguard/upload_proguard-help.trycmd +++ b/tests/integration/_cases/upload_proguard/upload_proguard-help.trycmd @@ -9,43 +9,31 @@ Arguments: [PATH]... The path to the mapping files. Options: - -o, --org The organization ID or slug. - --header Custom headers that should be attached to all requests - in key:value format. - -p, --project The project ID or slug. - --auth-token Use the given Sentry auth token. - --version Optionally associate the mapping files with a human readable - version. - This helps you understand which ProGuard files go with which - version of your app. - --version-code Optionally associate the mapping files with a version code. - This helps you understand which ProGuard files go with which - version of your app. - --app-id Optionally associate the mapping files with an application ID. - If you have multiple apps in one sentry project, you can then - easily tell them apart. - --log-level Set the log output verbosity. [possible values: trace, debug, - info, warn, error] - --platform Optionally defines the platform for the app association. - [defaults to 'android'] - --quiet Do not print any output while preserving correct exit code. - This flag is currently implemented only for selected - subcommands. [aliases: --silent] - --no-upload Disable the actual upload. - This runs all steps for the processing but does not trigger the - upload. This is useful if you just want to verify the mapping - files and write the proguard UUIDs into a properties file. - --write-properties Write the UUIDs for the processed mapping files into the given - properties file. - --require-one Requires at least one file to upload or the command will error. - -u, --uuid Explicitly override the UUID of the mapping file with another - one. - This should be used with caution as it means that you can - upload multiple mapping files if you don't take care. This - however can be useful if you have a build process in which you - need to know the UUID of the proguard file before it was - created. If you upload a file with a forced UUID you can only - upload a single proguard file. - -h, --help Print help + -o, --org The organization ID or slug. + --header Custom headers that should be attached to all requests + in key:value format. + -p, --project The project ID or slug. + --auth-token Use the given Sentry auth token. + --log-level Set the log output verbosity. [possible values: trace, debug, info, + warn, error] + --platform Optionally defines the platform for the app association. [defaults + to 'android'] + --quiet Do not print any output while preserving correct exit code. This + flag is currently implemented only for selected subcommands. + [aliases: --silent] + --no-upload Disable the actual upload. + This runs all steps for the processing but does not trigger the + upload. This is useful if you just want to verify the mapping + files and write the proguard UUIDs into a properties file. + --write-properties Write the UUIDs for the processed mapping files into the given + properties file. + --require-one Requires at least one file to upload or the command will error. + -u, --uuid Explicitly override the UUID of the mapping file with another one. + This should be used with caution as it means that you can upload + multiple mapping files if you don't take care. This however can be + useful if you have a build process in which you need to know the + UUID of the proguard file before it was created. If you upload a + file with a forced UUID you can only upload a single proguard file. + -h, --help Print help ``` From dc64a97d070fd0f3097d071acfcb616b01cd77d7 Mon Sep 17 00:00:00 2001 From: Daniel Szoke Date: Wed, 15 Oct 2025 16:18:58 +0200 Subject: [PATCH 4/4] =?UTF-8?q?"symbol=20resolution"=20=E2=86=92=20"deobfu?= =?UTF-8?q?scation"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 2 +- src/commands/upload_proguard.rs | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7eef56a776..607dfa01bf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,7 +6,7 @@ ### Deprecations -- Deprecated the `upload-proguard` subcommand's `--app-id`, `--version`, and `--version-code` flags ([#2852](https://github.com/getsentry/sentry-cli/pull/2852)), as we plan to remove these flags in Sentry CLI 3.x. Users should simply stop using the flags; the values specified there have never had an effect on symbol resolution, and are no longer visible in Sentry. +- Deprecated the `upload-proguard` subcommand's `--app-id`, `--version`, and `--version-code` flags ([#2852](https://github.com/getsentry/sentry-cli/pull/2852)), as we plan to remove these flags in Sentry CLI 3.x. Users should simply stop using the flags; the values specified there have never had an effect on deobfuscation, and are no longer visible in Sentry. - Added a deprecation notice for release bundle uploads, a legacy method for uploading sourcemaps ([#2844](https://github.com/getsentry/sentry-cli/pull/2844)). Release bundle uploads will be removed in Sentry CLI 3.x in favor of artifact bundles, the newer sourcemap upload method [introduced in Sentry version 23.6.2](https://github.com/getsentry/sentry/commit/f90f764fda09575f3f94caf32d04589098384616). **Self-hosted users**: You must upgrade to Sentry 23.6.2 or later before upgrading to Sentry CLI 3.x. ## 2.56.1 diff --git a/src/commands/upload_proguard.rs b/src/commands/upload_proguard.rs index e71b7d903a..39d9ee9169 100644 --- a/src/commands/upload_proguard.rs +++ b/src/commands/upload_proguard.rs @@ -46,7 +46,7 @@ pub fn make_command(command: Command) -> Command { of your app.\n\ Sentry SaaS and self-hosted version 25.9.0 and later no \ longer display this association, as it has no effect on \ - symbol resolution. This flag is scheduled for removal in \ + deobfuscation. This flag is scheduled for removal in \ Sentry CLI 3.0.0.", ), ) @@ -63,7 +63,7 @@ pub fn make_command(command: Command) -> Command { go with which version of your app.\n\ Sentry SaaS and self-hosted version 25.9.0 and later no \ longer display this association, as it has no effect on \ - symbol resolution. This flag is scheduled for removal in \ + deobfuscation. This flag is scheduled for removal in \ Sentry CLI 3.0.0.", ), ) @@ -79,7 +79,7 @@ pub fn make_command(command: Command) -> Command { then easily tell them apart.\n\ Sentry SaaS and self-hosted version 25.9.0 and later no \ longer display this association, as it has no effect on \ - symbol resolution. This flag is scheduled for removal in \ + deobfuscation. This flag is scheduled for removal in \ Sentry CLI 3.0.0.", ), ) @@ -286,7 +286,7 @@ pub fn execute(matches: &ArgMatches) -> Result<()> { log::warn!( "[DEPRECATION NOTICE] The --app-id, --version, and --version-code flags are deprecated. \ and scheduled for removal in Sentry CLI 3.0.0. \ - These values have no effect on symbol resolution, and are no longer displayed anywhere \ + These values have no effect on deobfuscation, and are no longer displayed anywhere \ in the Sentry UI (neither in SaaS nor in self-hosted versions 25.9.0 and later)." );