Skip to content

Releases: temporalio/cli

v1.1.0

16 Sep 20:42
e398811
Compare
Choose a tag to compare

💥 Breaking Changes

  • temporal workflow update has been renamed to temporal workflow update execute, to allow for the creation of new workflow update sub-commands. All flags and behavior remain the same.

Highlights

  • The temporal nexus suite of commands has been added to support Nexus, a new feature designed to connect durable executions across team, namespace, region, and cloud boundaries. It promotes a more modular architecture for sharing a subset of your team’s capabilities via well-defined service API contracts for other teams to use, that abstract underlying Temporal primitives, like Workflows, or execute arbitrary code. Learn more at: https://temporal.io/nexus
  • The new temporal workflow update start command starts an Update asynchronously. Callers can wait for such an Update to complete by running an update execute or update result command against the same --workflow-id and --update-id.
  • The new temporal workflow update result command waits for an Update to complete and fetches the result.
  • The new temporal workflow update describe command reports the status of a running or recently-completed Update. Unlike update result and update execute, update describe does NOT wait for the update to complete, but returns status immediately.
  • The temporal task-queue describe command now returns improved backlog stats including backlog count, age, and growth rate.
  • Temporal Server has been updated to v1.25.0, and UI Server has been updated to v2.30.3.

What's Changed

New Contributors

Full Changelog: v1.0.0...v1.1.0

v1.0.0

06 Aug 14:44
fd68f38
Compare
Choose a tag to compare

Temporal CLI Reaches 1.0

Temporal CLI is now considered featureful enough to be v1.0! 🎉 It continues to be production-quality.

Future releases will maintain the same commands, flags, behaviors, and JSON output to the extent possible (except for experimental features, which will be clearly marked as such in --help output). Text output is still subject to change.

Release Highlights (since v0.13.0)

  • The experimental Worker Versioning feature was added in v0.13.1, making it easier to manage multiple worker versions running on the same task queue. (Commands associated with this feature are subject to change.)
  • Search attributes can now be created during dev-server startup using the new --search-attribute flag.
  • The --help output has been rewritten top-to-bottom to be more comprehensive and informative.

Upgrading from Older Versions

If you are switching from tctl or upgrading from a CLI version older than v0.12.0, please note that many commands have changed. See the release notes for v0.12.0 for more details.

What's Changed

Full Changelog: v0.13.2...v1.0.0

v0.14.0-nexus.0

19 Jul 18:28
55aebb8
Compare
Choose a tag to compare
v0.14.0-nexus.0 Pre-release
Pre-release

⚠️ DO NOT USE IN PRODUCTION. This is a development release to make some Nexus functionality available to try out. ⚠️

What's Changed

Full Changelog: v0.13.2...v0.14.0-nexus.0

v0.13.2

08 Jul 17:48
ba831c3
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.13.1...v0.13.2

v0.13.1

19 Jun 22:31
dbf0a85
Compare
Choose a tag to compare

Highlights

This is a minor release that introduces support for worker versioning using a new API provided by Temporal Servers with version 1.24.0+.

Worker versioning is an experimental feature, currently in pre-release, which associates Build IDs to worklfows and activities using rules, and then guarantees that only workers running compatible code will process their tasks. Rules are scoped by a task queue, and can be manipulated or listed with the CLI. For example:

      temporal task-queue versioning -t my-queue get-rules

Known Incompatibilities

task-queue describe is now returning task reachability information in addition to pollers info, to safely retire old workers using worker versioning. It uses an enhanced API that is not supported by a server with version <1.24.0. To access pollers information in older servers set the --legacy-mode flag, and select the task queue type using the --task-queue-type-legacy argument (if different from workflow).

What's Changed

Full Changelog: v0.13.0...v0.13.1

v0.13.0

12 Jun 19:54
f5013ad
Compare
Choose a tag to compare

Highlights

This release upgrades Temporal Server to version 1.24.1. It builds on the CLI refresh work of 0.12.0, which introduced many changes, please read the 0.12.0 release notes if upgrading from 0.11.X or older.

Known Incompatibilities

The --data option on temporal operator namespace create now provides multiple key-value pairs by repeating the --data flag. The former syntax of a single --data option with key-value pairs separated by commas is no longer supported. See #583 for details.

What's Changed

New Contributors

Full Changelog: v0.12.0...v0.13.0

v0.13.0-rc.2

11 Jun 00:04
05d5c04
Compare
Choose a tag to compare
v0.13.0-rc.2 Pre-release
Pre-release

This release fixes some CI issues blocking the publishing of docker images. It also adds support for excluding some event types in workflow reset.

What's Changed

Full Changelog: v0.13.0-rc.1...v0.13.0-rc.2

v0.13.0-rc.1

10 Jun 17:50
da1e0aa
Compare
Choose a tag to compare
v0.13.0-rc.1 Pre-release
Pre-release

Highlights

This release upgrades Temporal Server to version 1.24.1. It builds on the CLI refresh work of 0.12.0, which introduced many changes, please read the 0.12.0 release notes if upgrading from 0.11.X or older.

Known Incompatibilities

  • The --data option on temporal operator namespace create now provides multiple key-value pairs by repeating the --data flag. The former syntax of a single --data option with key-value pairs separated by commas is no longer supported. See #583 for details.

What's Changed

New Contributors

Full Changelog: v0.12.0...v0.13.0-rc.1

v0.12.0

29 Apr 15:51
1a24106
Compare
Choose a tag to compare

CLI Refresh

Temporal CLI has had its internals rewritten to be more consistent and more maintainable. This includes many improvements, but also some known backwards incompatibilities from the previous 0.11.0 release.

💥 WARNING: There are known compatibility breaks with this release, see the sections below 💥

Known Improvements

  • The position of flags is no longer significant; flags can be placed anywhere in the command invocation
  • --output json now makes sure to only output JSON to stdout (instances of invalid JSON output have been fixed)
  • --output jsonl now exists which disables indention/newline and, in some commands, streams lines of JSON instead of producing a single array
  • --input-meta is now supported so different encodings can be specified (e.g. Protobuf JSON)
  • Log level customization added
  • env file path can be customized
  • Payload shorthand support added, meaning most JSON base64 payloads are decoded to just show their contents
  • Exit codes are now non-zero in proper failing situations
  • --api-key can now be used to set an Authorization header with Bearer prefixed token
  • --tls-cert and --tls-key data now accepted in addition to just files
  • server start-dev now uses common log framework so log level can be more easily customized
  • Logs now go to stderr instead of stdout
  • server start-dev has reduced output noise (with more reduction to come)
  • workflow describe now has a text form instead of always JSON
  • workflow execute now streams event table instead of waiting on completion
  • workflow execute properly shows non-zero exit code on failure
  • workflow execute follows continue-as-new by default

💥 Known Incompatibilities

All Commands

  • The shell-script-based install is no longer supported
  • Outputs in both JSON and plain text have been changed across most commands—notably, JSON keys are now camelCase
  • Duration flags need trailing unit suffix (i.e. e.g. --workflow-timeout 5 becomes --workflow-timeout 5s)
  • --output table and --output card removed and merged into --output text
  • Pager removed
  • TEMPORAL_CLI_SHOW_STACKS environment variable no longer supported
  • --tls-ca-path can no longer be a URL
  • --fields command removed, commands now decide which fields should be present or not
  • --context-timeout removed (but it may get added back in a different form later)

Specific Commands

  • env commands now expect --env, -k and -v flags rather than positional arguments (positional arguments will continue to work, but are now deprecated and a warning is emitted)
  • operator namespace commands now expect a -n flag to specify the namespace rather than a positional argument (the positional argument will continue to work, but is now deprecated and a warning is emitted)
  • operator namespace update no longer supports --verbose
  • schedule create changed --workflow-type to be --type
  • server start-dev with --db-filename no longer auto-creates directory path of 0777 dirs if not present
  • server start-dev no longer supports fatal as a --log-level because it shares the level now with the rest of the CLI
  • workflow and its subcommands no longer support --memo-file
  • workflow execute does not dump history by default when JSON is enabled
  • workflow execute when using --event-details (née --fields long) shows full JSON attributes instead of wrapped partial table
  • workflow execute no longer succeeds if workflow exists, but --allow-existing is present
  • workflow reset-batch removed in favor of workflow reset --query with reset options (some previous reset types may not be supported)
  • workflow show does not allow -f as an alias for --follow
  • workflow start no longer succeeds if workflow exists, but --allow-existing is present
  • workflow trace removed while being repaired (inadvertently broken in last release)

What's Changed

Full Changelog: v0.11.0...v0.12.0

v0.12.0-rc.3

23 Apr 13:02
47d4011
Compare
Choose a tag to compare
v0.12.0-rc.3 Pre-release
Pre-release

CLI Refresh

This is another release in the 0.12.0 RC series. See release notes on v0.12.0-rc.2 for more overall 0.12.0 information.

What's Changed

Full Changelog: v0.12.0-rc.2...v0.12.0-rc.3