Releases: heroku/cli
v11.2.0
- 73e4990 test: use Sinon stubs; parallel slug checksums (#3650)
- 8c4f8c3 fix: flaky apps:diff tests (#3649)
- 1d27c09 feat: include a --no-wrap flag for table displays (#3613)
- 0df7705 deps: bump the dev-patch-minor-dependencies group with 4 updates (#3644)
- 150e74a fix: improve telemetry worker stderr cleanup (#3648)
- ede6655 feat: update color usage, telemetry activation logic, and command/util dependencies (#3646)
- b9b8fed feat: adding --start-cmd flag to heroku local when no Procfile is present (#3638)
- f1f19ca deps: bump lodash from 4.17.23 to 4.18.1 (#3643)
- c13074d refactor: unify telemetry architecture and use background workers for all telemetry (#3642)
- 32920f9 test: this fixes the mocking difference causing flappy tests and adds chore to PR release title (#3640)
- aae3751 fix: procfile comment parsing (#3641)
v11.1.1
v11.1.0
- 74bbdfb feat: add isTTY context to telemetry and filter SIGINT from Sentry (#3632)
- 47b97e8 deps: bump the dev-patch-minor-dependencies group across 1 directory with 9 updates (#3629)
- b22638b deps: bump path-to-regexp from 8.3.0 to 8.4.0 (#3628)
- 65575a0 perf: optimize telemetry initialization and reduce startup overhead (#3620)
- bde5a5c deps: replace psl with tldts to fix punycode deprecation warning (#3627)
v11.0.2
v11.0.1
- 3eff3dc fix: separate TERM=dumb run status lines (#3617)
- 2d55453 deps: bump @heroku-cli/command to 12.2.2 (#3616)
- 6fcb3a4 fix: show correct error message for Essential-tier (W-21653472) (#3614)
- 85c2224 perf: improve Windows CLI performance (#3610)
- 84eb648 fix: resolve addons across data maintenances commands (#3609)
- 7e96152 fix: address UI issues with confirmation prompts on multiple commands (W-21649376) (#3602)
v11.0.0
Summary
This is a major release with extensive changes. The primary changes are:
- Upgrade to oclif v4 from v2
- Conversion to ECMAScript Modules (ESM) throughout the entire codebase
- Removal of the monorepo structure - consolidated to single package
- Migration from yarn to npm for package management and workflows
- Introduction of a new semantic color system with the ansis library replacing chalk
- Ships with Node.js 22 (maintains Node 20 compatibility)
- New Commands -
data:pg:*(NGPG),data:maintenance:*,heroku search - Repl and Prompt changes interface changes to how repl and prompt mode work
Breaking Changes / Code Refactoring
-
BREAKING: Conversion to ECMAScript Modules (ESM), adding
"type": "module"to package.json -
BREAKING: All commands, libraries, and tests converted from CommonJS to ESM syntax
-
BREAKING: The
uxmodule was significantly slimmed down in @oclif/core v4, removing built-in prompts, progress bars, and table utilities. We've implemented custom output helpers using ink-based tables and our own formatting utilities which will change the output, particularly with tables. -
BREAKING: Removal of heroku-cli-plugin-ai as a direct dependency. This plugin will now require separate installation
-
BREAKING data:maintenance commands changes
- data:maintenances commands have been migrated to the core CLI from the data-maintenance plugin
- pg:maintenance, pg:maintenance:info, pg:maintenance:window, and redis:maintenance commands have been deprecated and removed.
-
BREAKING Invoking repl has been changed from
heroku --repltoheroku repl
Features
- New color scheme: Migrated from chalk-based @heroku-cli/color to ansis-based @heroku/heroku-cli-util for semantic color functions
- If you prefer a simple ANSI8-based theme to the new default color theme, set HEROKU_THEME=simple. To turn off colors entirely, set NO_COLOR=true
- Removed strip-ansi dependency in favor of ansis built-in capabilities
- Updated all CLI output with semantic colors
- Node.js support: Ships with Node 22, continued support for Node 20
- --prompt now a GLOBAL flag --prompt will now be included in documentation and help text for commands that utilize it
- New search command: Can’t remember the command you’re thinking of? Use
heroku searchto find it - Next-Gen PostgreSQL (NGPG) commands:
- New
data:pg:*command namespace for NGPG support data:pg:attachments:create,data:pg:attachments:destroy,data:pg:attachments:indexdata:pg:quotas:index,data:pg:quotas:updatedata:pg:create,data:pg:destroy,data:pg:docs,data:pg:fork,data:pg:psql,data:pg:settings,data:pg:update- NGPG types and command utilities (W-20610475)
- New
- New diff command: Adds
apps:diffinto the CLI
oclif v2 → v4 Upgrade
The Heroku CLI now uses @oclif/core v4, a major upgrade from v2. This brings significant improvements and modernizations:
oclif v3 improvements:
- Performance: Enhanced manifest caching for faster command loading
- ESM/CJS interoperability: Better support for mixing CommonJS and ESM plugins
- Flag enhancements: Added
charAliasesfor single-character flag aliases andFlags.optionfor improved type inference - Module system: Updated bin scripts for better ESM/CJS compatibility
oclif v4 improvements:
- Full ESM support: Complete ECMAScript Module support with seamless interoperability between CommonJS and ESM plugins
- Modular architecture: Changed to granular imports (e.g.,
import run from '@oclif/core/run') - Runtime auto-transpilation: Linked ESM plugins auto-transpile with
tsx - New hooks: Added
preparsehook for pre-processing commands - Enhanced TypeScript: Enabled
exactOptionalPropertyTypesfor stricter type checking
Build System
- Move from yarn to npm (W-19730551, #3365)
- Removed
.yarnrc.yml,.yarn/directory - Added
package-lock.json - Updated all CI/CD workflows to use npm
- Updated scripts to use npm commands
- Removed
- Remove monorepo structure (#3508)
- Removed lerna configuration
- Consolidated from
packages/cli/to root-level structure - Moved all source from
packages/cli/srctosrc/ - Moved all tests from
packages/cli/testtotest/ - Flattened repository structure
- Switch to commit-and-tag-version from standard-version (#3496)
- Added
.versionrc.jsonconfiguration - Updated release scripts
- Added
- Removed Snapcraft configuration (removed
snap/directory) - Removed Dockerfile.devcenter
Tests
- Upgrade @oclif/test v2 to @oclif/test v4 (#3447)
- Converted all tests to ESM
- Added
.mocharc.jsonfor test configuration - Migrated from eslint 7 to eslint 8
- Fixed an issue with git remote being created during test execution
Continuous Integration
- Updated CI workflows to usefor npm instead of yarn
- Updated release workflows for new monorepo-less structure
- Added npm scripts for use with deployment workflows
Code Refactoring
- Comprehensive ESM migration across all commands
- The following commands have been moved into the CLI repository from the
ps-execplugin:ps:copyps:execps:forwardps:socks
Miscellaneous Chores
- Updated bundled oclif plugins to v4+ compatible versions for compatibility with @oclif/core v4
@oclif/plugin-commands, @oclif/plugin-help, @oclif/plugin-help, @oclif/plugin-not-found, @oclif/plugin-plugins, @oclif/plugin-update, @oclif/plugin-version, @oclif/plugin-warn-if-update-available, @oclif/plugin-which - Additional varkious package dependency updates
- Removal of @heroku-cli/color (replaced with @heroku/heroku-cli-util)
- Removal of @heroku/eventsource (replaced with eventsource)
- Removal of sparkline as a dependencydepndency (added directly to codebase with TypeScriptTS support)
- Updated Node.js update scripts to work with Nnode 22
- Updated
.tool-versionsfor Node 22 - Updated Husky pre-commit hook to happen during prepare
- Many linting errors and warnings fixed throughout codebase
Documentation
- Updated README.md for new repository structure
- Updated command documentation in docs/
v10.17.0
- c2ab16b chore: update PR template (#3514)
- dccc74e feat(W-15238547): add deprecation notices for the redis:maintenance and pg:maintenance commands (#3509)
- 1572aef fix: CPU ISA detection logic in standalone install script (#3501)
- db5dde5 chore(deps): bump lodash from 4.17.21 to 4.17.23 (#3477)
- 3d599c9 chore(deps): bump @modelcontextprotocol/sdk from 1.24.2 to 1.25.2 (#3451)
- 38aecbd chore(deps): bump diff from 4.0.1 to 4.0.4 (#3472)
- 424fc14 feat: adding json flag to config:get command (#3464)
- f13fed6 chore(deps): bump qs from 6.14.0 to 6.14.1 (#3444)
- 6a5869c chore(deps): bump actions/download-artifact from 6 to 7 (#3437)
- b4be8b8 chore(deps): bump actions/upload-artifact from 5 to 6 (#3438)
- 20fbfea chore: Adds .git2gus configuration (#3435)
- fdfec26 fix: ensures authentications:revoke documentation is generated (#3428)
- 217271b feat: adding conditional logic for receiving applied state of trusted ips (#3424)
v10.16.0
- 19ed38c fix(W-20270674): bump heroku-cli-util and fix resulting errors (#3426)
- 389b2d2 chore(deps): bump @modelcontextprotocol/sdk from 1.12.1 to 1.24.0 (#3423)
- 85c70ef fix: update ps-exec to 2.6.4 (#3425)
- 15fe316 feat(W-19894449): add Sentry error reporting (#3413)
- 89a95ab chore(deps): bump express from 5.1.0 to 5.2.1 (#3422)
- 10d29ef chore(deps): bump actions/checkout from 4 to 6 (#3421)
- 4268abd chore(deps): bump actions/setup-node from 4 to 6 (#3390)
- afdd944 chore(deps): bump actions/download-artifact from 4 to 6 (#3401)
- 23580fe chore(deps): bump actions/upload-artifact from 4 to 5 (#3407)
- 8479f5a chore: Resolve 3PP vulnerabilities (W-20328182) (#3419)
- 8f8b1d6 fix: using setImmediate for error handle in log displayer unit test (#3417)
- 42b3a2a fix: ensure IP restriction error handling for run:inside and logs commands (#3389)