Releases: getsentry/cli
Releases · getsentry/cli
0.35.0
Immutable
release. Only release title and notes can be modified.
New Features ✨
Local
- Render OTel semantic attributes in transaction output by @BYK in #1015
- Add local dev server for capturing SDK events by @MathurAditya724 in #888
Other
- (cli) Add
sentry cli importfor .sentryclirc migration by @BYK in #987 - (init) Show AI-generated feature blurbs in setup summary by @betegon in #982
- (project) Fall back to org-scoped endpoint for member project creation by @betegon in #1030
- Build macOS binaries natively for V8 code cache by @BYK in #1014
Bug Fixes 🐛
Ci
- Replace deprecated macos-13 runner with ubuntu-latest for darwin-x64 by @BYK in #1039
- Use correct Apple signing secret names by @BYK in #1006
Dashboard
- Escape author field in revision table by @MathurAditya724 in #1001
- Align revision schema with actual API response by @sentry-junior in #1000
Init
- Fall back to no-platform on 400 invalid platform from registry by @betegon in #1036
- Recover run-level stale resume errors by @betegon in #1025
- Tag wizard.outcome on all early-exit paths by @betegon in #1005
- Match formatError priority order for WizardError message by @betegon in #981
- Surface wizard exit code and command stderr in Sentry events (CLI-1JA) by @betegon in #980
- Replace confusing classifyArgs errors with specific ValidationError messages by @betegon in #979
- Add --app flag and actionable errors for non-interactive monorepo runs by @betegon in #977
- Improve multi-org error message for agentic use by @betegon in #974
- Enrich 401 Unauthorized errors with actionable guidance by @betegon in #971
Issue
- Add JSON fields schema to issue view command by @BYK in #1029
- Conditionally collapse lifetime to preserve count/userCount/firstSeen/lastSeen by @BYK in #985
Other
- (auth) Surface .sentryclirc source in self-hosted login errors by @betegon in #976
- (build) Run hole-punch before signing to preserve code signature by @BYK in #1037
- (explore) Use tracemetrics dataset instead of metricsEnhanced by @MathurAditya724 in #995
- (sdk) Apply Stricli flag defaults in SDK invoke path by @BYK in #1027
- Improve Sentry issue grouping to eliminate duplicate issues by @BYK in #1028
- Use file-local createRequire for relative lazy requires in src/ by @betegon in #1008
- Address low-priority review items from Bun→Node migration by @BYK in #991
- Address review comments from Bun→Node migration PRs by @BYK in #989
Documentation 📚
- Fix stale Bun references and add systemic doc drift checks by @BYK in #1024
- Add esbuild bundling rules for require() in AGENTS.md by @BYK in #1011
- Migrate to @sentry/starlight-theme by @sentry-junior in #996
Internal Changes 🔧
- (init) Regression test for only-Tracing blurb bug by @betegon in #983
- Update fossilize to 0.8.1 (fix cross-compile strip crash) by @BYK in #1038
- Update fossilize to 0.7.0 (built-in strip) by @BYK in #1021
- Strip debug symbols from Node binaries (-17 MiB) by @BYK in #1019
- Use Node 24 LTS for binary builds + explicit tree shaking by @BYK in #1018
- Defer heavy imports for ~6x faster shell completions by @BYK in #1017
- Add deeper smoke tests for binary and npm bundle by @BYK in #1013
- Update fossilize to 0.6.0 (V8 code cache support) by @BYK in #1012
- Replace Bun.build with fossilize for Node SEA binaries by @BYK in #1003
- Remove Bun artifacts and convert remaining Bun APIs by @BYK in #1002
- Replace bun run with tsx/pnpm across scripts and CI by @BYK in #999
- Migrate test runner from bun:test to vitest by @BYK in #997
- Replace remaining Bun APIs (zstd, mmap, CryptoHasher, file writer) by @BYK in #986
- Replace Bun APIs with Node.js equivalents by @BYK in #984
- Add SQLite adapter to decouple from bun:sqlite by @BYK in #970
- Switch package manager from bun to pnpm by @BYK in #967
- Regenerate docs by @github-actions[bot] in 419373cf
0.34.0
Immutable
release. Only release title and notes can be modified.
New Features ✨
Init
- Tag wizard.outcome:context_error for non-interactive failures by @betegon in #959
- Tag wizard.outcome on cli.command span by @betegon in #948
Other
- (docs) Add Plausible analytics by @sergical in #964
- (explore) Add --metric flag for auto-resolving tracemetrics format by @MathurAditya724 in #927
- (seer) Send referrer 'api.cli' on autofix API calls by @sentry-junior in #965
- Migrate autofix to agent-based (explorer) endpoint by @MathurAditya724 in #962
- Show upgrade nudge when command fails and newer version exists by @MathurAditya724 in #957
Bug Fixes 🐛
Init
- Recover gracefully when org listing returns 403 by @betegon in #963
- Recover from stale-step resume when workflow already advanced by @betegon in #949
- Recover from member project-creation restriction by @betegon in #960
- Thread existing project platform as detect-platform hint by @betegon in #945
- Correct step display order in progress checklist by @betegon in #944
Plan
- Surface context when Seer produces no solution by @MathurAditya724 in #953
- Only show progress from current step by @MathurAditya724 in #954
Other
- (telemetry) Use startSpan instead of startSpanManual for root span by @MathurAditya724 in #955
- (tls) Apply custom CA certificates to all fetch call sites (CLI-1KW) by @BYK in #966
Internal Changes 🔧
- Regenerate docs by @github-actions[bot] in e9f3a7aa
0.33.0
Immutable
release. Only release title and notes can be modified.
New Features ✨
- (dashboard) Add revision history and restore commands by @MathurAditya724 in #936
Bug Fixes 🐛
Init
- Simplify LoggingUI output for non-TTY consumers by @MathurAditya724 in #941
- Enable interactive Ink UI for npx/Node via ESM sidecar by @MathurAditya724 in #938
Internal Changes 🔧
- Remove dead isBunRuntime() export by @MathurAditya724 in #943
- Regenerate docs by @github-actions[bot] in a4da8bd1
0.32.0
Immutable
release. Only release title and notes can be modified.
New Features ✨
Replay
- Paginate replay segment downloads by @dcramer in #910
- Add first-class replay querying and inspection by @dcramer in #904
Other
- (event) Support multi-event view with newline-separated IDs (CLI-1HT) by @BYK in #903
- (init) Replace OpenTUI with Ink for the wizard UI by @MathurAditya724 in #885
- (log) Show custom attributes in log view by @betegon in #914
- Update @sentry/api to 0.133.0 and adopt pagination improvements by @MathurAditya724 in #915
- Show org identity for sntrys_ tokens in whoami (CLI-1KG) by @BYK in #905
Bug Fixes 🐛
Init
- Restore ?bridge=1 cache-bust for dev mode by @MathurAditya724 in #934
- Tighten feedback banner copy by @betegon in #933
- Extend workflow API timeout by @betegon in #932
- Pre-bundle Ink sidecar so it loads from $bunfs by @MathurAditya724 in #929
- Suppress ASCII banner for agent-driven invocations by @MathurAditya724 in #894
Other
- (archive) Accept 'forever' as a valid --until value by @BYK in #918
- (auth) Bake public OAuth client ID as fallback in getClientId() by @BYK in #916
- (dsn) Detect framework-prefixed DSN env vars in .env files and process.env by @cursor in #852
- (feedback) Prompt interactively when message is missing in TTY by @MathurAditya724 in #923
- (install) Pass through no-agent-skills flag by @elucid in #919
- (issue) Accept 1 positional + --into as valid merge (CLI-1AE) by @BYK in #920
Internal Changes 🔧
- Update @sentry/api to ^0.141.0 by @MathurAditya724 in #924
- Add warden.toml to enable Warden analysis on PRs by @MathurAditya724 in #926
- Add stderr.write lint rule and document repo standards gaps by @BYK in #906
- Regenerate docs by @github-actions[bot] in c450b3e3
0.31.0
Immutable
release. Only release title and notes can be modified.
New Features ✨
Issue
- Replace individual archive flags with unified --until by @BYK in #898
- Add archive command for ignoring/archiving issues by @BYK in #891
Other
- (sourcemap) Add parity flags and sourceMappingURL following by @BYK in #890
- (telemetry) Normalize agent tag into structured agent/version/role fields by @BYK in #896
Bug Fixes 🐛
Api
- Centralize 403 Forbidden enrichment with actionable hints (CLI-1JG) by @BYK in #892
- Cap per_page at 100 and fill open-ended date ranges by @BYK in #884
Dashboard
- Add URL auto-recovery and 404 suggestions (CLI-1K0) by @BYK in #895
- Enrich 400 errors on create to surface plan-limit messages (CLI-1J8) by @BYK in #893
Other
- (db) Handle null row in getInstanceId re-fetch (CLI-1J0) by @BYK in #900
- (init) Preserve scope/path separators in project slugs by @MathurAditya724 in #886
- (telemetry) Strip small IDs and org/project paths in ResolutionError grouping by @BYK in #902
- (test) Prevent detect-agent property test flake by @BYK in #899
- (time-range) Use UTC date methods for 90-day backfill calculation by @BYK in #897
- (tls) Support custom CA certificates for corporate proxies (CLI-1K6) by @BYK in #901
Internal Changes 🔧
0.30.0
Immutable
release. Only release title and notes can be modified.
Security 🔒
New Features ✨
- (docs) Auto-generate driftable doc sections (supersedes #851) by @BYK in #873
- (explore) Auto-paginate queryEvents to support --limit > 100 by @BYK in #874
- (help) Add common flags section and cache-age hints (#785) by @BYK in #859
- (telemetry) Compress outgoing Sentry envelopes with zstd by @BYK in #843
- Standardize exit codes across all CLI commands by @BYK in #882
- Add
sentry explorecommand for aggregate event queries by @BYK in #857 - Add hidden --org/--project global flags for LLM compatibility by @BYK in #856
Bug Fixes 🐛
Api
- Throw ValidationError for user-input failures in api command (CLI-1GC) by @BYK in #855
- Guard listOrganizations against non-array SDK responses (CLI-1CQ) by @BYK in #854
Other
- (arg-parsing) Handle colon-separated issue identifiers (CLI-PH) by @BYK in #868
- (auth) Short-circuit whoami for org auth tokens (CLI-1AZ) by @BYK in #841
- (completions) Handle permission errors gracefully in installCompletions (CLI-1A5) by @BYK in #867
- (init) Suppress raw ANSI escape sequences when output is piped by @BYK in #879
- (log) Add ID column, --fields in human mode, and swapped-arg recovery by @BYK in #871
- (search-query) Make normalizeQuery quote-aware to prevent corrupting quoted values by @BYK in #881
- (sourcemap) Error on zero pairs + restore docs sourcemap emission by @BYK in #846
- (span-list) Query all projects in trace mode for cross-project traces by @BYK in #878
- (telemetry) Skip os.cpus() in NodeContext to prevent crash on restricted systems (CLI-1ED) by @BYK in #876
- (test) Isolate repositories test to prevent response cache bleed by @BYK in #864
- Auto-repair malformed search queries and fix telemetry object serialization (CLI-FA) by @BYK in #872
- Use human-readable byte sizes in upgrade verbose output by @BYK in #866
- Replace dead-end @latest selector error hint with actionable alternative (CLI-1ET) by @BYK in #865
Internal Changes 🔧
- (api) Migrate dashboards.ts CRUD to SDK functions by @MathurAditya724 in #863
- (auth) Memoize hasStoredAuthCredentials to avoid per-request SQL read by @BYK in #869
- (search-query) Generic normalizeQuery pipeline for pre-parse query repair (CLI-FA) by @BYK in #880
- (sourcemap-upload) Skip ZIP-level DEFLATE when wire codec compresses (62% CPU, 5.9% wire) by @BYK in #849
- Cache resolved project info after create and init by @BYK in #877
- Generalize resolveOrgProjectTarget to support org-all mode by @BYK in #875
- Collapse test/isolated/ into test/lib and test/commands by @BYK in #840
- Adopt bun test --isolate --parallel for ~2.9x CI speedup by @BYK in #839
- Regenerate docs by @github-actions[bot] in c0693387
0.29.1
Immutable
release. Only release title and notes can be modified.
0.29.0
Immutable
release. Only release title and notes can be modified.
Security 🔒
New Features ✨
- (auth) Hint when env token is shadowed by stored OAuth (#785) by @BYK in #790
- (cache) Scope response cache per active identity (#785) by @BYK in #788
- (help) Add Environment Variables section to branded help (#785) by @BYK in #786
- (issue) Add resolve, unresolve (reopen), and merge commands by @BYK in #778
- (scan) Pure-TS ripgrep-compatible scanner + DSN migration + perf overhaul by @BYK in #791
- (sourcemap-upload) Add zstd compression support by @BYK in #823
Bug Fixes 🐛
Dashboard
- Auto-default --limit for grouped widgets (CLI-WW) by @BYK in #799
- Accept dataset aliases (errors, transactions, metrics) (CLI-JG) by @BYK in #800
Init
- Restore /dev/tty workaround on macOS only by @BYK in #836
- Add force-exit safety net for Bun fresh+readline hang by @BYK in #833
- Release stdin handle to unblock event loop on wizard exit by @BYK in #831
- Cancel in-flight Mastra requests on teardown by @BYK in #825
- Harden /dev/tty teardown and adopt Symbol.dispose by @BYK in #824
- Release /dev/tty handle on all exit paths by @betegon in #802
- Send dirListing/fileCache/existingSentry via initialState by @betegon in #796
- Force process exit after wizard completes by @betegon in #782
Other
- (api) Clone request body per retry + classify timeouts (CLI-1D6) by @BYK in #829
- (arg-parsing) Throw ValidationError (not raw Error) for format errors by @BYK in #793
- (dsn) Skip non-regular env files during detection by @elucid in #806
- (error-reporting) Fall back to message prefix for ValidationError without field by @BYK in #776
- (errors) Surface real API errors and granular scopes in 403s (#785) by @BYK in #789
- (hex-id) Auto-recover malformed hex IDs in view commands (CLI-16G) by @BYK in #777
- (upgrade) Verify downloaded binary exists before spawn (CLI-1D3) by @BYK in #827
- (ux) Rate-limit update banner and silence /api/0/ auto-fix (#785) by @BYK in #787
Documentation 📚
- Fix auth token precedence, update stale architecture tree, and documentation audit report by @cursor in #783
Internal Changes 🔧
Deps
- Bump @sentry/node-core to 10.50.0 by @BYK in #834
- Drop Node 20 support, pin CI Node 24 for docs build by @BYK in #817
- Upgrade @sentry/api 0.94.0 -> 0.113.0 + type cleanup by @BYK in #803
Init
- Remove /dev/tty forwarding workaround and force-exit safety net by @BYK in #835
- Tighten list-dir hot loop + emit POSIX paths by @BYK in #815
- Migrate grep/glob tools to src/lib/scan/ by @BYK in #797
- Trim deprecated --features help entries by @MathurAditya724 in #781
Scan
- Transport grep worker line pool as bytes by @BYK in #826
- Fast-path known-binary extensions in classifyByExtension by @BYK in #822
- Dual-path walker — parallel bulk, serial early-exit by @BYK in #821
- Parallel grep via worker pool with binary-transferable matches by @BYK in #807
- Rewrite walker hot path with sync I/O + manual string ops by @BYK in #805
- Literal prefilter + lazy line counting in readAndGrep by @BYK in #804
Other
- (api) Pass ?collapse=organization on project detail fetches by @BYK in #818
- (auth) Memoize getAuthToken and refreshToken row read (CLI-13V) by @BYK in #828
- (cache) Centralize mutation invalidation at the HTTP layer (#792) by @BYK in #801
- (fs) Add safeReadFile helper for FIFO-safe config reads by @BYK in #819
- (issue) Skip redundant API lookups via project+issue-org caches by @BYK in #794
- (scan,dsn) Trim session cruft from comment-heavy files by @BYK in #810
- (sentry-client) Scope fetch mocks to a per-test URL marker by @BYK in #832
- (sourcemap) Migrate discoverFilePairs to walkFiles by @BYK in #811
- Skip docs preview deploy on fork PRs by @BYK in #814
- Unblock fork PRs (SENTRY_CLIENT_ID fallback + fork-safe checkout) by @BYK in #813
- Disable Bun autoload of .env and bunfig.toml in compiled CLI by @BYK in #808
- Regenerate docs by @github-actions[bot] in 58a84035
0.28.1
Immutable
release. Only release title and notes can be modified.
Bug Fixes 🐛
Init
- Use isatty(0) for TTY detection and add diagnostic probe by @BYK in #767
- Reuse detected existing project data by @betegon in #766
- Ensure project reuse and spinner states by @MathurAditya724 in #763
Other
- (arg-parsing) Accept underscores in Sentry slugs (#770) by @BYK in #771
- (ci) Scope build-binary and build-docs to production environment by @BYK in #773
- (dsn) Limit concurrent stat() calls in project root detection (CLI-19A) by @BYK in #768
- (project-create) Preserve ApiError type so 4xx errors are silenced by @BYK in #775
- (resolve-target) Reference original input in fuzzy-recovery warnings (#772) by @BYK in #774
- (telemetry) Reduce Sentry issue fragmentation with stable fingerprinting by @BYK in #769
Internal Changes 🔧
- Regenerate docs by @github-actions[bot] in e02799c1
0.28.0
Immutable
release. Only release title and notes can be modified.
New Features ✨
- (build) Add musl binaries for Alpine Linux support by @BYK in #762
- (custom-headers) Add SENTRY_CUSTOM_HEADERS for self-hosted proxy auth by @BYK in #761
- (init) Pre-supply existingSentry to eliminate roundtrip by @betegon in #755
Bug Fixes 🐛
- (arg-parsing) Normalize spaces in slugs and trim whitespace in issue IDs (CLI-14M, CLI-16M) by @BYK in #757
- (ci) Install libstdc++/libgcc for Alpine smoke test and add musl to PR matrix by @BYK in #765
- (search) Rewrite OR queries to in-list syntax across all --query commands (CLI-16J) by @BYK in #758
- (upgrade) Retry spawn on EBUSY for Windows Defender file locking (CLI-16E) by @BYK in #756