Releases: temporalio/cli
v0.13.0-rc.1
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 ontemporal 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
- Resurrect install.sh by @josh-berry in #540
- Tweak server start text by @dandavison in #554
- New flag:
workflow show --event-details
by @dandavison in #555 - Fix panic when started without a stdout by @mjameswh in #549
- Specify go compiler minor version by @dandavison in #563
- get-free-port: prevent duplicate ports on Linux by @mjameswh in #564
- Use server's timestamp.ParseDuration for all durations by @dnr in #572
- Add test to verify that Schedule memo can be updated by @antlai-temporal in #569
- Update the docker-builds repo when releases are published by @tdeebswihart in #570
- Setting host level mutable state cache size to 8k by @prathyushpv in #574
- Use "uses" instead of curl by @tdeebswihart in #575
- Fix setting env name with a property by @antlai-temporal in #568
- Revert "Use "uses" instead of curl (#575)" by @tdeebswihart in #576
- Fail on unknown environments by @Sushisource in #578
- Print encoding of workflow results by @Sushisource in #579
- Normalize semantic of --data args by @mjameswh in #583
- Normalize --name and --type flags on workflow commands by @cretz in #580
- Prepare dependencies and tests for CLI 0.13-rc.1 release (server v1.24.1) by @josh-berry in #584
New Contributors
Full Changelog: v0.12.0...v0.13.0-rc.1
v0.12.0
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 anAuthorization
header withBearer
prefixed token--tls-cert
and--tls-key
data now accepted in addition to just filesserver 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 JSONworkflow execute
now streams event table instead of waiting on completionworkflow execute
properly shows non-zero exit code on failureworkflow 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 presentserver start-dev
no longer supportsfatal
as a--log-level
because it shares the level now with the rest of the CLIworkflow
and its subcommands no longer support--memo-file
workflow execute
does not dump history by default when JSON is enabledworkflow execute
when using--event-details
(née--fields long
) shows full JSON attributes instead of wrapped partial tableworkflow execute
no longer succeeds if workflow exists, but--allow-existing
is presentworkflow reset-batch
removed in favor ofworkflow 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 presentworkflow trace
removed while being repaired (inadvertently broken in last release)
What's Changed
- Initial CLI rewrite by @cretz in #412
- CLI Refresh:
workflow signal
command by @cretz in #432 - Implement
workflow terminate
command by @tdeebswihart in #436 - CLI Refresh: Output improvements on start-dev by @cretz in #441
- Change log-level from "off" to "never" and show enums in options help by @cretz in #442
- Implement
workflow cancel
command by @tdeebswihart in #435 - Implement activity commands by @dandavison in #445
- Override SDK-set headers for client name and others by @cretz in #450
- Workflow start delay on CLI refresh by @cretz in #452
- More env tests by @cretz in #454
- Embed tzdata on CLI refresh by @cretz in #453
- Add query command by @Sushisource in #455
- CLI Refresh: Implement
workflow reset
by @tdeebswihart in #443 - Don't run tests in verbose mode in CI by @tdeebswihart in #444
- CLI Refresh:
workflow update
command by @pdoerner in #462 - Add
workflow stack
command by @Sushisource in #457 - Add operator cluster commands by @Quinn-With-Two-Ns in #460
- Add goreleaser and Dockerfile by @cretz in #463
- Implement
workflow show
by @Sushisource in #458 - Exit nonzero on unknown commands by @Sushisource in #466
- Enhance Task Queue Describe by @Sushisource in #467
- Add more operator cluster commands by @Quinn-With-Two-Ns in #465
- Add operator search-attribute commands by @yiminc in #470
- Add more tests by @Sushisource in #472
- [CLI Refresh] Add build id commands by @antlai-temporal in #469
- CLI Refresh:
batch
commands by @stephanos in #464 - Add support for batch resets. by @ast2023 in #473
- Log env vars which override the env file by @Sushisource in #483
- TLS Data flags by @Sushisource in #484
- Log metrics port by @Sushisource in #482
- fix
batch terminate
test by @stephanos in #488 - JSONL support by @cretz in #487
- Adding namespace commands to cli by @prathyushpv in #476
- Adding task-queue list-partition command by @prathyushpv in #491
- CLI Refresh:
workflow delete
command by @carlydf in #496 - Add --api-key and update dependencies by @cretz in #500
- Add ARM targets for CI by @Quinn-With-Two-Ns in #497
- Add
temporal workflow fix-history-json
subcommand. by @chronos-tachyon in #504 - Implement
schedule
commands by @dnr in #459 - Do not use payload shorthand on workflow show by @cretz in #505
- Implement workflow count, temporarily remove workflow trace by @cretz in #506
- Replace release workflow with goreleaser from main by @cretz in #510
- Fixes typos in the commands Markdown source by @fairlydurable in #512
- Make argument and flag use consistent across commands by @josh-berry in #511
- Allow insecure CSRF cookies by @josh-berry in #515
- Add update-id option by @Quinn-With-Two-Ns in #517
- Fix racy batch test by @josh-berry in #516
- Exit zero if help/version is explicitly requested by @josh-berry in #525
- Add workflow trace by @sebneira in #520
- Update server and UI server by @cretz in #536
- Dev server compat issues in CLI rewrite by @cretz in #535
Full Changelog: v0.11.0...v0.12.0
v0.12.0-rc.3
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
- Fixes typos in the commands Markdown source by @fairlydurable in #512
- Make argument and flag use consistent across commands by @josh-berry in #511
- Allow insecure CSRF cookies by @josh-berry in #515
- Add update-id option by @Quinn-With-Two-Ns in #517
- Fix racy batch test by @josh-berry in #516
- Exit zero if help/version is explicitly requested by @josh-berry in #525
- Add workflow trace by @sebneira in #520
- Update server and UI server by @cretz in #536
- Dev server compat issues in CLI rewrite by @cretz in #535
Full Changelog: v0.12.0-rc.2...v0.12.0-rc.3
v0.12.0-rc.2
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.
Known Improvements
- Any flag and command name can be in any order
--output json
now makes sure to only output JSON to stdout--output jsonl
now exists which disables indention/newline and, in some commands, streams lines of JSON--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
now available to set anAuthorization
header withBearer
prefixed token--tls-
cert/key data now accepted in addition to just filesserver start-dev
now uses common log framework so log level can be customized easier and logs go to stderr instead of stdoutserver start-dev
has reduced output noise (with more reduction to come)workflow describe
now has a text form instead of always JSONworkflow execute
now streams event table instead of waiting on completionworkflow execute
properly shows non-zero exit code on failureworkflow execute
follows continue-as-new by default
💥 Known Incompatibilities
All Commands
- Outputs in both JSON and plain text have been changed across most commands including JSON keys becoming 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
Specific Commands
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 presentworkflow
and its subcommands no longer support--memo-file
workflow execute
does not dump history by default when JSON is enabledworkflow execute
when using--event-details
(née--fields long
) shows full JSON attributes instead of wrapped partial tableworkflow execute
no longer succeeds if workflow exists, but--allow-existing
is presentworkflow reset-batch
removed in favor ofworkflow 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 presentworkflow trace
removed while being repaired (inadvertently broken in last release)
What's Changed
- Initial CLI rewrite by @cretz in #412
- CLI Refresh:
workflow signal
command by @cretz in #432 - Implement
workflow terminate
command by @tdeebswihart in #436 - CLI Refresh: Output improvements on start-dev by @cretz in #441
- Change log-level from "off" to "never" and show enums in options help by @cretz in #442
- Implement
workflow cancel
command by @tdeebswihart in #435 - Implement activity commands by @dandavison in #445
- Override SDK-set headers for client name and others by @cretz in #450
- Workflow start delay on CLI refresh by @cretz in #452
- More env tests by @cretz in #454
- Embed tzdata on CLI refresh by @cretz in #453
- Add query command by @Sushisource in #455
- CLI Refresh: Implement
workflow reset
by @tdeebswihart in #443 - Don't run tests in verbose mode in CI by @tdeebswihart in #444
- CLI Refresh:
workflow update
command by @pdoerner in #462 - Add
workflow stack
command by @Sushisource in #457 - Add operator cluster commands by @Quinn-With-Two-Ns in #460
- Add goreleaser and Dockerfile by @cretz in #463
- Implement
workflow show
by @Sushisource in #458 - Exit nonzero on unknown commands by @Sushisource in #466
- Enhance Task Queue Describe by @Sushisource in #467
- Add more operator cluster commands by @Quinn-With-Two-Ns in #465
- Add operator search-attribute commands by @yiminc in #470
- Add more tests by @Sushisource in #472
- [CLI Refresh] Add build id commands by @antlai-temporal in #469
- CLI Refresh:
batch
commands by @stephanos in #464 - Add support for batch resets. by @ast2023 in #473
- Log env vars which override the env file by @Sushisource in #483
- TLS Data flags by @Sushisource in #484
- Log metrics port by @Sushisource in #482
- fix
batch terminate
test by @stephanos in #488 - JSONL support by @cretz in #487
- Adding namespace commands to cli by @prathyushpv in #476
- Adding task-queue list-partition command by @prathyushpv in #491
- CLI Refresh:
workflow delete
command by @carlydf in #496 - Add --api-key and update dependencies by @cretz in #500
- Add ARM targets for CI by @Quinn-With-Two-Ns in #497
- Add
temporal workflow fix-history-json
subcommand. by @chronos-tachyon in #504 - Implement
schedule
commands by @dnr in #459 - Do not use payload shorthand on workflow show by @cretz in #505
- Implement workflow count, temporarily remove workflow trace by @cretz in #506
Full Changelog: v0.11.0...v0.12.0-rc.2
v0.11.0
What's Changed
- Bump go.temporal.io/api from 1.25.0 to 1.26.0 by @dependabot in #394
- Enhance task-queue describe by @dnr in #399
- Add start delay to workflow start by @Sushisource in #402
- When adding search attributes, do not remove already existing ones by @rodrigozhou in #401
- Add summary to worklow watch by @sebneira in #251
- Insecure CSRF cookie by @ndtretyak in #408
- Embed fallback tzdata by @dnr in #415
- Remote codec-endpoint cherry-pick (#420) by @dandavison in #421
- Bump go.temporal.io/server from 1.22.2 to 1.22.4 by @dependabot in #413
- Properly-parse inputs for commands that take a single
--input
only by @josh-berry in #423 - Fix the "delete namespace" prompt by @josh-berry in #406
New Contributors
- @ndtretyak made their first contribution in #408
Full Changelog: v0.10.7...v0.11.0
v0.10.7
Highlights
- This release includes Temporal Server v1.22.2 and UI server v2.21.3.
What's Changed
- Update CONTRIBUTING.md with what I learned from doing a release by @josh-berry in #348
- Bump Go version to 1.20 by @rodrigozhou in #356
- Remove double setting of caller-type header by @pdoerner in #355
- Allow passing multiple
--input-file
s to workflow commands [#351] by @josh-berry in #361 - Fix sources of test instability by @josh-berry in #368
- style: Cleanups to #361 - use more idiomatic Go by @josh-berry in #364
- When dynamic config is mis-specified say what key is incorrect by @tdeebswihart in #371
- Batch operation rate limit by @stephanos in #366
- Print
NamespaceInfo.Data
when describing a namespace by @josh-berry in #372 - Revert "Batch operation rate limit" by @stephanos in #378
- Remove OpenAPI config by @Alex-Tideman in #379
- Bump github.com/temporalio/ui-server/v2 from 2.18.2 to 2.21.3 by @dependabot in #382
- Bump go.temporal.io/server from 1.22.0 to 1.22.2 by @dependabot in #385
- Bump go.uber.org/zap from 1.25.0 to 1.26.0 by @dependabot in #340
- Bump github.com/mattn/go-isatty from 0.0.19 to 0.0.20 by @dependabot in #376
- Bump github.com/fatih/color from 1.15.0 to 1.16.0 by @dependabot in #388
- Bump github.com/gorilla/websocket from 1.5.0 to 1.5.1 by @dependabot in #390
- Delete .github/workflows/semgrep.yml by @jackdawm in #391
New Contributors
- @tdeebswihart made their first contribution in #371
- @stephanos made their first contribution in #366
- @Alex-Tideman made their first contribution in #379
Full Changelog: v0.10.6...v0.10.7
v0.10.6
Highlights
- This release uses Temporal Server v1.22 and UI server v2.18.2.
temporal server start-dev
now includes the experimental Timeline view shown during Replay—turn on Labs to try it out!
What's Changed
- Pin 3rd party actions to a full-length commit SHA. by @jackdawm in #300
- Bump go.temporal.io/sdk from 1.23.1 to 1.24.0 by @dependabot in #298
- Bump go.uber.org/zap from 1.24.0 to 1.25.0 by @dependabot in #299
- Bump github.com/temporalio/ui-server/v2 from 2.17.0 to 2.17.1 by @dependabot in #301
- Update help text by @lorensr in #304
- Bump golang.org/x/sys from 0.10.0 to 0.11.0 by @dependabot in #308
- Bump github.com/temporalio/ui-server/v2 from 2.17.1 to 2.17.2 by @dependabot in #310
- Allow obtaining the "env" via the TEMPORAL_ENV env var by @bergundy in #319
- Fix batch describe help typo, closes #326 by @lorensr in #327
- Do not print set IDs when updating build IDs by @bergundy in #329
- Fix examples in the usage text of namespace create by @erwinvaneyk in #323
- Bump ui-server. by @robholland in #335
- Update server to 1.22 and add HTTP port option by @cretz in #321
- README and dev doc updates by @josh-berry in #339
- Print groups of count group by response by @rodrigozhou in #322
- Bump github.com/temporalio/ui-server/v2 from 2.18.1 to 2.18.2 by @dependabot in #344
New Contributors
- @erwinvaneyk made their first contribution in #323
- @cretz made their first contribution in #321
- @josh-berry made their first contribution in #339
Full Changelog: v0.10.5...v0.10.6