Stack migrate, share logs, and Neo ACP agent ship
v3.254.0
9 features12 enhancements6 fixesThis release9 featuresNew capabilities12 enhancementsImprovements to existing features6 fixesBug fixesAI-tallied from the release notes
From the original release noteView original ↗
3.254.0 (2026-07-23)
Features
- [cli] Add
pulumi logs sharecommand for sharing logs with Pulumi #22546 - [cli] Add
pulumi stack migrateto migrate a stack from another backend to the currently logged-in backend, including re-encrypting config secrets and stack state under the target secrets provider #22902 - [cli/config] Add an
--override-envflag toup,preview,destroy, andrefreshto substitute imported environments for a single run without editing the stack config #23562 - [cli] Add
pulumi neo acpto run Neo as an Agent Client Protocol agent over stdio for ACP-capable editors, with read-only and plan mode exposed as session config options #23886 - [cli/neo] Retry transient
pulumi neostream and message-send failures, and addpulumi neo resumewith chat history #23835 - [cli/neo] Make Ctrl+C clear typed text and preserve Ctrl+A/Ctrl+E line navigation in
pulumi neo#23932 - [cli/do] Add
upsertto do, allowing resources to be statefully created or updated in a stack #23813 - [sdk/python] Add
pulumi.runfor natively awaited Python program entrypoints that can return stack outputs #23945 - [cli/do] Allow expressions for number inputs #23954
- [cli/do] Allow expressions for boolean inputs #23967
- [cli/policy] Add
--runtime-optionstopulumi policy new#23992 - [cli/do] Add support for stateful create #23996
- [cli/do] Add support for stateful delete #24000
Bug Fixes
- [sdkgen/go] Fix Go codegen for plain properties nested inside non-plain objects #22524
- [cli/neo] Keep
pulumi neoconnected during quiet periods when the event stream only receives keep-alive heartbeats #23935 - [engine] Validate snippets before persisting them #23920
- [backend] Fix dangling ReplaceWith references in the journal replayer #23927
- [cli/do] Fix the converter plugin not being called if just attributes needed converting #23948
- [programgen/go] Generate compilable Go for programs that use discriminated union members as array/list elements #23980
Improvements
- [cli] Align commands with the CLI naming guidelines, adding
ls,rm,delete,mv,update,modify,createandsetupaliases to list/remove/move/edit/new commands and makingstate removeandpackage removethe canonical names withdeletekept as an alias #23903 - [cli] Suggest closely-matching commands from the whole command tree when an unknown command is entered #23848
- [cli] Print help but exit with a non-zero code when
pulumiis run without a command, matching the behavior of other group commands #23848 - [programgen] Support
onErrorresource hooks in generated Go, NodeJS, and Python programs and in the PCL runtime, retrying the failed operation when the hook command exits successfully #23839 - [protobuf] Add parent and properties fields to ResourceImport so state converters can express resource hierarchy and property filters #23929
- [protobuf] Allow state converters to declare explicit providers as resources in ConvertState responses and attach imported resources to them via the new provider field #23975
- [cli] Redact secrets in property values in logs #23931
- [cli] Make
-v<n> --logflowno longer produce separate log files for plugins #23938 - [protobuf] Pass a schema loader target to state converters in ConvertStateRequest #23944
- [cli/import] Allow explicit providers to be declared in the resources section of an import file and referenced by name #23972
- [cli] Remove the template count from
pulumi new --help, which required a slow template listing before help could display #23973 - [cli/import] Support inputs and outputs on resources in import files, importing supplied state directly and skipping the provider read when outputs are given #23984
Miscellaneous
Fetched July 23, 2026


