Pulumi v3.268.0
+++++*************
Pulumi v3.268.0 adds an engine capability to negotiate OutputValues on Invoke, gated by a new accepts_outputs_in_invoke handshake capability. It adds version, whoami and install to the generated automation APIs for NodeJS, Python and Go, and sends the W3C traceparent header on Pulumi Cloud API calls when --otel-traces is set. The release also lists 14 fixes, including dynamic provider Read fallback, plugin checksum verification and parallel plugin shutdown.
What changes for platform teams
Teams using the Pulumi Automation API get version, whoami and install methods in NodeJS, Python and Go, and dynamic provider authors need to check Read handling since the engine no longer duplicates inputs into state. Teams tracing Pulumi calls get trace propagation to Pulumi Cloud when --otel-traces is set.
Changes
- [engine] Negotiate OutputValues on Invoke so SDKs can pass dependency-carrying values in args and receive them in the response, and providers can process them, gated by a new accepts_outputs_in_invoke handshake capabilityadded
- [auto] Add version to the generated automation APIs for NodeJS, Python and Goadded
- [auto] Add whoami to the generated automation APIs for NodeJS, Python and Goadded
- [auto] Add install to the generated automation APIs for NodeJS, Python and Goadded
- [backend/service] Send the W3C traceparent header on Pulumi Cloud API calls when --otel-traces is setadded
- [engine] Restore elided asset contents from prior state when a provider echoes assets back from refresh or updatefixed
- [engine] Apply resource transforms declared on an ancestor component to resources parented under a resource readfixed
- [pcl] Unify two recursive object types, or a map with an object, to the same finite type on every run instead of overflowing the stack or picking a different type each timefixed
- [sdkgen/nodejs] Link @pulumi/pulumi types in generated docs to their TypeDoc pages instead of missing anchorsfixed
- [engine] Fix snapshot integrity error when untargeted steps change dependencies in the programfixed
- [sdk/nodejs] Dynamic providers now fall back to the inputs field of a Read request when properties is empty, so Get continues to work after the engine stops duplicating inputs into statefixed
- [sdk/python] Dynamic providers now fall back to the inputs field of a Read request when properties is empty, so Get continues to work after the engine stops duplicating inputs into statefixed
7 more lines
- [cli/package] Download plugins from Git repositories whose version tags have no v prefixfixed
- [engine] Fix a language host process leak when the schema loader boots a plugin that runs in a language hostfixed
- [sdkgen] Reject schemas that define a resource named provider in the root module through moduleFormat, instead of panicking during SDK generationfixed
- [engine] Shut down plugins in parallel to avoid timeoutsfixed
- [cli/plugin] Fix plugin checksum verification rejecting valid downloads over HTTP/1.1 and ignoring data at the end of the archivefixed
- [cli/new] Fix spurious provider "exited prematurely" error from the pulumi new credentials check, which no longer has a timeoutfixed
- [auto] Fix project settings in projects that live in symlinked directoriesfixed
4 maintenance lines (dependency bumps, CI, tests, docs)
- [java] Upgrade java to v1.37.4maintenance
- [yaml] Upgrade yaml to v1.38.9maintenance
- [hcl] Upgrade hcl to v0.18.4maintenance
- [sdk/dotnet] Upgrade dotnet to v3.114.2maintenance
Full release notes ↗ · all Pulumi releases
written by claude-haiku-5-5, prompt 7cbe154, checked by publish rules