Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -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 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
Expand Down
37 changes: 30 additions & 7 deletions src/commands/upload_proguard.rs
Original file line number Diff line number Diff line change
Expand Up @@ -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 \
deobfuscation. 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 \
deobfuscation. 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 \
deobfuscation. This flag is scheduled for removal in \
Sentry CLI 3.0.0.",
),
)
.arg(
Expand Down Expand Up @@ -267,6 +283,13 @@ pub fn execute(matches: &ArgMatches) -> Result<()> {

// if values are given associate
if let Some(app_id) = matches.get_one::<String>("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 deobfuscation, 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::<String>("version").unwrap().to_owned();
let build: Option<String> = matches.get_one::<String>("version_code").cloned();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,43 +9,31 @@ Arguments:
[PATH]... The path to the mapping files.

Options:
-o, --org <ORG> The organization ID or slug.
--header <KEY:VALUE> Custom headers that should be attached to all requests
in key:value format.
-p, --project <PROJECT> The project ID or slug.
--auth-token <AUTH_TOKEN> Use the given Sentry auth token.
--version <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 <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 <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 <LOG_LEVEL> Set the log output verbosity. [possible values: trace, debug,
info, warn, error]
--platform <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 <PATH> 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 <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 <ORG> The organization ID or slug.
--header <KEY:VALUE> Custom headers that should be attached to all requests
in key:value format.
-p, --project <PROJECT> The project ID or slug.
--auth-token <AUTH_TOKEN> Use the given Sentry auth token.
--log-level <LOG_LEVEL> Set the log output verbosity. [possible values: trace, debug, info,
warn, error]
--platform <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 <PATH> 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 <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

```