Releases: getsentry/cli
Releases · getsentry/cli
0.21.0
Immutable
release. Only release title and notes can be modified.
New Features ✨
Dashboard
- Add pagination and glob filtering to dashboard list by @BYK in #560
- Add a full chart rendering engine for
sentry dashboard viewthat transforms widget data into rich terminal visualizations. by @BYK in #555
Init
- Propagate sentry-trace headers to wizard API calls by @betegon in #567
- Treat bare slug as new project name when not found by @BYK in #554
Other
- (formatters) Colorize SQL in DB span descriptions by @BYK in #546
- (output) Add Zod schema registration to OutputConfig for self-documenting JSON fields by @BYK in #582
- (telemetry) Report unknown commands to Sentry by @BYK in #563
- Expose CLI as a programmatic library by @BYK in #565
- Bidirectional cursor pagination (-c next / -c prev) by @BYK in #564
- Add
sentry sourcemap injectandsentry sourcemap uploadcommands by @BYK in #547 - Native debug ID injection and sourcemap upload by @BYK in #543
Bug Fixes 🐛
Dashboard
- Fix table widget rendering and timeseries bar chart width by @BYK in #584
- Validate display types against all datasets by @betegon in #577
- Auto-clamp widget limit instead of erroring by @BYK in #573
- Default issue dataset table columns to ["issue"] by @betegon in #570
- Scale timeseries bar width to fill chart area by @BYK in #562
- Resolve dashboard by ID/slug in addition to title by @BYK in #559
Event
- Detect SHORT-ID/EVENT-ID format in event view by @BYK in #574
- Auto-fallback to org-wide search when event 404s in project by @BYK in #575
Other
- (api) Show meaningful message for network errors instead of '0 Unknown' by @BYK in #572
- (event-view) Auto-redirect issue short IDs in two-arg form (CLI-MP) by @BYK in #558
- (help) Show help when user passes
helpas positional arg by @BYK in #561 - (issue) Auto-redirect bare org slug to org-all mode in issue list by @BYK in #576
- (log) Use 30d default period and show newest logs first by @sergical in #568
- Reject @-selectors in parseOrgProjectArg with helpful redirect by @BYK in #557
Documentation 📚
Internal Changes 🔧
Coverage
- Use informational-patch input instead of sed hack by @BYK in #544
- Make checks informational on release branches by @BYK in #541
Event
- Replace "latest" magic string with @latest sentinel constant by @BYK in #583
- Deduplicate span tree building into shared helper by @BYK in #581
Other
- (api) Collapse stats on issue detail endpoints to save 100-300ms by @BYK in #551
- (ci) Upgrade GitHub Actions to Node 24 runtime by @BYK in #542
- (db) DRY up database layer with shared helpers and lint enforcement by @BYK in #550
- (docs) Polish sidebar, header, focus, and code block UX by @sergical in #580
- (issue-list) Use collapse parameter to skip unused Snuba queries by @BYK in #545
- Bump Bun from 1.3.9 to 1.3.11 by @BYK in #552
- Regenerate skill files by @github-actions[bot] in ec1ffe28
0.20.0
Immutable
release. Only release title and notes can be modified.
New Features ✨
Bug Fixes 🐛
Event
- Detect org/ISSUE-SHORT-ID in event view single-arg path (CLI-9K) by @BYK in #529
- Auto-redirect issue short IDs in event view (CLI-JR) by @BYK in #524
Other
- (api) Strip api/0/ prefix and exclude NodeSystemError integration (CLI-K1) by @BYK in #523
- (dashboard) Add missing datasets to agent guidance by @betegon in #522
- (docs) Overscroll popup — curl command + click-to-copy by @betegon in #531
- (init) Resolve numeric org ID from DSN and prompt when Sentry already configured by @betegon in #532
- (polling) Move spinner from stderr to stdout to prevent consola collision by @BYK in #533
- (telemetry) Set sentry.org tag in issue explain and plan commands by @BYK in #534
- Handle invalid URLs gracefully in response cache (CLI-GC) by @BYK in #528
- Avoid double-prefixing in buildCommandHint for slashed args (CLI-8C) by @BYK in #527
- Handle full short IDs and numeric IDs in multi-slash issue args (CLI-KC, CLI-B6) by @BYK in #526
- Auto-recovery for wrong entity types across commands (CLI-G6, CLI-K6, CLI-JR) by @BYK in #525
Documentation 📚
Internal Changes 🔧
0.19.0
Immutable
release. Only release title and notes can be modified.
New Features ✨
Dashboard
- Add layout guidance and widget type reference for agents by @betegon in #521
- Add widget add, edit, and delete commands by @betegon in #407
Telemetry
- Include user email in Sentry telemetry context by @BYK in #513
- Track TTY vs non-TTY invocations via metric by @betegon in #482
Other
- (help) Fuzzy "Did you mean?" suggestions for command typos by @BYK in #516
- (upgrade) Add progress spinners for version check and download phases by @BYK in #515
- External sourcemap upload for compiled binaries by @BYK in #518
- Dynamic cache-backed shell completions with fuzzy matching by @BYK in #465
Bug Fixes 🐛
- (completions) Populate project cache from listProjects by @betegon in #517
- (help) Hide ASCII banner when stdout is not a TTY by @betegon in #501
- (json) Flatten view command JSON output for --fields filtering by @BYK in #495
- (polling) Throw TimeoutError instead of bare Error on timeout by @BYK in #503
- (project) Fallback to org listing when bare slug matches an organization by @betegon in #475
- (setup) Auto-configure zsh fpath for shell completions by @betegon in #509
- (skill) Include widget subcommands in generated skill files by @betegon in #519
- Isolate multiregion 403 tests from env-var auth tokens by @BYK in #514
- Only mention token scopes in 403 errors for env-var tokens by @BYK in #512
- Suggest similar projects on project-search miss (CLI-A4) by @BYK in #511
- Preserve ApiError type in Seer handler + suggest trial start command (CLI-N, CLI-1D/BW/98) by @BYK in #510
- Add 403 scope guidance to issue list error handling (CLI-97) by @BYK in #508
- Propagate 403 from multi-region fan-out instead of returning empty list (CLI-89) by @BYK in #507
- Lowercase project slug in URL-parsed issue short IDs (CLI-C8 follow-up) by @BYK in #506
- Handle EIO stream errors gracefully in bin.ts by @BYK in #505
- Use fuzzyMatch for similar project suggestions and add tests (CLI-C0) by @BYK in #504
- Use resolved org in numeric issue ID 404 hint (CLI-BT) by @BYK in #502
- Include API endpoint in error messages for better diagnostics (CLI-BS) by @BYK in #500
- Enrich 403 on org listing with token scope guidance (CLI-89) by @BYK in #498
- Add 400 suggestions to org-all issue list path (CLI-BY) by @BYK in #497
- Lowercase project slug in issue arg parsing (CLI-C8) by @BYK in #496
- Enrich short ID 404 with org context and suggestions (CLI-A1) by @BYK in #494
- Suggest similar projects when project not found in org (CLI-C0) by @BYK in #493
- Event 404 hint should suggest different project, not repeat failing command by @BYK in #492
- Enrich event 404 errors with retention and format suggestions (CLI-6F) by @BYK in #491
- Add actionable suggestions for 400 Bad Request on issue list (CLI-BM, CLI-7B) by @BYK in #489
- Detect issue short IDs passed to issue list (CLI-C3) by @BYK in #488
- Add Glob.match() polyfill + improve auto-detect diagnostics (CLI-7T) by @BYK in #487
- Add org-slug pre-check to dispatchOrgScopedList (CLI-9A) by @BYK in #485
Documentation 📚
Internal Changes 🔧
- (init) Run org detection in background during preamble by @MathurAditya724 in #443
- (issue) Skip getProject round-trip in project-search resolution by @betegon in #473
- (resolve) Carry project data through resolution to eliminate redundant getProject calls by @BYK in #486
- (telemetry) Convert is_tty metric to span tag by @betegon in #499
- HTTP latency optimizations — diagnostics, cache warming, concurrency limits by @BYK in #490
- Switch from @sentry/bun to @sentry/node-core/light (~170ms startup savings) by @BYK in #474
- Regenerate skill files by @github-actions[bot] in b7b240ec
0.18.1
Immutable
release. Only release title and notes can be modified.
0.18.0
Immutable
release. Only release title and notes can be modified.
New Features ✨
- (span) Make span list dual-mode and add --period flag by @BYK in #461
- Refactor SKILL.md into modular reference files by @BYK in #458
Bug Fixes 🐛
- (constants) Normalize bare hostnames in SENTRY_HOST/SENTRY_URL by @BYK in #467
- (dsn) Treat EISDIR and ENOTDIR as ignorable file errors by @BYK in #464
- (test) Use os.tmpdir() for test temp directories by @BYK in #457
- Make piped output human-readable instead of raw CommonMark by @BYK in #462
- Clean up upgrade output and hide empty table headers by @BYK in #459
- Improve error messages — fix ContextError/ResolutionError misuse by @BYK in #456
Documentation 📚
Internal Changes 🔧
0.17.0
Immutable
release. Only release title and notes can be modified.
New Features ✨
- (dashboard) Add dashboard list, view, and create commands by @betegon in #406
- (upgrade) Add --offline flag and automatic offline fallback by @BYK in #450
- Add distributed tracing for Sentry backend by @BYK in #455
- Add project delete command by @MathurAditya724 in #397
- Add
sentry schemacommand for API introspection by @BYK in #437
Bug Fixes 🐛
- (dsn) Prevent hang during DSN auto-detection in repos with test fixtures by @BYK in #445
- (formatters) Pad priority labels for consistent TRIAGE column alignment by @MathurAditya724 in #449
- (upgrade) Remove hard chain depth cap for nightly delta upgrades by @BYK in #444
- Improve CLI output for auth login and upgrade flows by @BYK in #454
Internal Changes 🔧
0.16.0
Immutable
release. Only release title and notes can be modified.
New Features ✨
Init
- Support org/project positional to pin org and project name by @MathurAditya724 in #428
- Show feedback hint after successful setup by @betegon in #430
- Add --team flag to relay team selection to project creation by @MathurAditya724 in #403
- Enforce canonical feature display order by @betegon in #388
- Accept multiple delimiter formats for --features flag by @betegon in #386
- Add git safety checks before wizard modifies files by @betegon in #379
- Add experimental warning before wizard runs by @betegon in #378
- Add init command for guided Sentry project setup by @betegon in #283
Issue List
- Auto-compact when table exceeds terminal height by @BYK in #395
- Redesign table to match Sentry web UI by @BYK in #372
Other
- (auth) Allow re-authentication without manual logout by @BYK in #417
- (trial) Auto-prompt for Seer trial + sentry trial list/start commands by @BYK in #399
- Add --json flag to help command for agent introspection by @BYK in #432
- Add
sentry span listandsentry span viewcommands by @betegon in #393 - Support SENTRY_HOST as alias for SENTRY_URL by @betegon in #409
- Add --dry-run flag to mutating commands by @BYK in #387
- Return-based output with OutputConfig on buildCommand by @BYK in #380
- Add --fields flag for context-window-friendly JSON output by @BYK in #373
- Magic
@selectors (@latest,@most_frequent) for issue commands by @BYK in #371 - Input hardening against agent hallucinations by @BYK in #370
- Add response caching for read-only API calls by @BYK in #330
Bug Fixes 🐛
Dsn
- Make code scanner monorepo-aware and extend --fresh to bypass DSN cache by @betegon in #420
- Prevent silent exit during uncached DSN auto-detection (#411) by @BYK in #414
Init
- Align multiselect hint lines with clack's visual frame by @MathurAditya724 in #435
- Make URLs clickable with OSC 8 terminal hyperlinks by @MathurAditya724 in #423
- Remove implementation detail from help text by @betegon in #385
- Truncate uncommitted file list to first 5 entries by @MathurAditya724 in #381
Other
- (api) Convert --data to query params for GET requests by @BYK in #383
- (docs) Remove double borders and fix column alignment on landing page tables by @betegon in #369
- (help) Hide plural aliases from help output by @betegon in #441
- (trace) Show span IDs in trace view and fix event_id mapping by @betegon in #400
- Show human-friendly names in trial list and surface plan trials by @BYK in #412
- Add trace ID validation to trace view + UUID dash-stripping by @BYK in #375
Documentation 📚
- (commands) Add alias info to subcommand help output by @betegon in #442
- Update AGENTS.md with patterns from span commands work by @BYK in #433
- Update credential storage docs and remove stale config.json references by @betegon in #408
Internal Changes 🔧
Init
Tests
- Consolidate unit tests subsumed by property tests by @BYK in #422
- Remove redundant and low-value tests by @BYK in #418
Other
- (lint) Enforce command output conventions via Biome plugins by @BYK in #439
- (log/list) Convert non-follow paths to return CommandOutput by @BYK in #410
- Unified trace-target parsing and resolution by @BYK in #438
- Centralize slug normalization warning in parseOrgProjectArg by @BYK in #436
- Unify commands as generators with HumanRenderer factory, remove stdout plumbing by @BYK in #416
- Convert list command handlers to return data instead of writing stdout by @BYK in #404
- Split api-client.ts into focused domain modules by @BYK in #405
- Migrate non-streaming commands to CommandOutput with markdown rendering by @BYK in #398
- Convert Tier 2-3 commands to return-based output and consola by @BYK in #394
- Convert remaining Tier 1 commands to return-based output by @BYK in #382
- Converge Tier 1 commands to writeOutput helper by @BYK in #376
Other
- Minify JSON on read and pretty-print on write in init local ops by @MathurAditya724 in #396
0.15.0
Immutable
release. Only release title and notes can be modified.
0.14.0
Immutable
release. Only release title and notes can be modified.
New Features ✨
Trace
- Add cursor pagination to
trace listby @BYK in #324 - Add
sentry trace logssubcommand (#247) by @BYK in #311
Other
- (api) Add --data/-d flag and auto-detect JSON body in fields by @BYK in #320
- (formatters) Render all terminal output as markdown by @BYK in #297
- (install) Add Sentry error telemetry to install script by @BYK in #334
- (issue-list) Global limit with fair distribution, compound cursor, and richer progress by @BYK in #306
- (log-list) Add --trace flag to filter logs by trace ID by @BYK in #329
- (logger) Add consola-based structured logging with Sentry integration by @BYK in #338
- (project) Add
project createcommand by @betegon in #237 - (upgrade) Add binary delta patching via TRDIFF10/bsdiff by @BYK in #327
- Support SENTRY_AUTH_TOKEN and SENTRY_TOKEN env vars for headless auth by @BYK in #356
- Improve markdown rendering styles by @BYK in #342
Bug Fixes 🐛
Api
- Use numeric project ID to avoid "not actively selected" error by @betegon in #312
- Use limit param for issues endpoint page size by @BYK in #309
- Auto-correct ':' to '=' in --field values with a warning by @BYK in #302
Formatters
- Expand streaming table to fill terminal width by @betegon in #314
- Fix HTML entities and escaped underscores in table output by @betegon in #313
Setup
- Suppress agent skills and welcome messages on upgrade by @BYK in #328
- Suppress shell completion messages on upgrade by @BYK in #326
Upgrade
- Detect downgrades and skip delta attempt by @BYK in #358
- Check GHCR for nightly version existence instead of GitHub Releases by @BYK in #352
- Replace Bun.mmap with arrayBuffer on all platforms by @BYK in #343
- Replace Bun.mmap with arrayBuffer on macOS to prevent SIGKILL by @BYK in #340
- Use MAP_PRIVATE mmap to prevent macOS SIGKILL during delta upgrade by @BYK in #339
Other
- (ci) Generate JUnit XML to silence codecov-action warnings by @BYK in #300
- (install) Fix nightly digest extraction on macOS by @BYK in #331
- (logger) Inject --verbose and --log-level as proper Stricli flags by @BYK in #353
- (nightly) Push to GHCR from artifacts dir so layer titles are bare filenames by @BYK in #301
- (project create) Auto-correct dot-separated platform to hyphens by @BYK in #336
- (region) Resolve DSN org prefix at resolution layer by @BYK in #316
- (test) Handle 0/-0 in getComparator anti-symmetry property test by @BYK in #308
- (trace-logs) Timestamp_precise is a number, not a string by @BYK in #323
Documentation 📚
Internal Changes 🔧
Api
- Upgrade @sentry/api to 0.21.0, remove raw HTTP pagination workarounds by @BYK in #321
- Wire listIssuesPaginated through @sentry/api SDK for type safety by @BYK in #310
Other
- (craft) Add sentry-release-registry target by @BYK in #325
- (errors) Return Result type from withAuthGuard, expand auto-login to expired tokens by @BYK in #359
- (project create) Migrate human output to markdown rendering system by @BYK in #341
- (telemetry) Add child spans to delta upgrade for bottleneck identification by @BYK in #355
- (upgrade) Use copy-then-mmap for zero JS heap during delta patching by @BYK in #344
0.13.0
Immutable
release. Only release title and notes can be modified.
New Features ✨
- (issue-list) Add --period flag, pagination progress, and count abbreviation by @BYK in #289
- (nightly) Distribute via GHCR instead of GitHub Releases by @BYK in #298
- (upgrade) Add nightly release channel by @BYK in #292
Bug Fixes 🐛
- (brew) Handle root-owned config dir from sudo installs by @BYK in #288
- (ci) Use github context for compressed artifact upload condition by @BYK in #299
- (errors) Add ResolutionError for not-found/ambiguous resolution failures by @BYK in #293
- (issue) Improve numeric issue ID resolution with org context and region routing by @BYK in #294
- (setup) Show actual shell name instead of "unknown" for unsupported shells by @BYK in #287
- Optimized the docs images by @MathurAditya724 in #291
Internal Changes 🔧
- Correct nightly artifact path in publish-nightly job by @BYK in #295
- Only showing status about changed files in codecov by @MathurAditya724 in #286