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