NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #1488 most downloaded on PyPI
Pulumi's Python SDK
Last release 2 days ago
02 Oct 2026
Ships on a steady schedule
a new release about every 8 days
Nearly every release is documented
notes for 59 of the last 60 stable releases
7 versions withdrawn
withdrawn after publishing
8 years old
4961 releases · first in 2018
[cli] Support for writing v4 checkpoints/deployments #20159
[cli] Support for writing v4 checkpoints/deployments #20159
[cli] Add support for qualified registry template names in pulumi new
#20138
[cli/import] Enable pulumi import to always --generate-resources when converting --from state files
#20178
[yaml] Allow config values to be parsed with type object
#20132
[auto/python] Allow for on_error callbacks in commands to capture stderr incrementally
#20019
[sdk/nodejs] Add option of Bun as a package manager #18412
[sdk/nodejs] Copy getRootDirectory to the pulumi module
#20173
[sdk/python] Copy get_root_directory to the pulumi module
#20172
[cli] Fix un-taring registry-backed templates which come in .tar.gz format #20135
[cli] Stop passing Accept: application/x-tar to registry template download URLs to avoid signature mismatch #20133
[engine] Fix a panic with up --refresh --run-program and resource replacements
#20147
[engine] Untargeted resources in destroy now correctly register as same steps
#20061
[cli/engine] Fix hang when waiting for program that would never complete #20153
[sdk/nodejs] Fix delete hooks in inline automation API programs #20143
[sdk/python] Set features inside construct #20141
One column per quarter.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
[engine] Send Cancel message to language runtime plugins on engine shutdown #20007
[engine] Send Cancel message to language runtime plugins on engine shutdown
#20007
[engine] Pass stack tags to policy plugins on startup #20084
[yaml] Expose object as a possible config type in preparation for pulumi-yaml support
#20129
[cli/engine] --exclude and --exclude-protected flags now work together correctly for destroy commands
#20120
[engine] Fix a datarace in the engine event system #20105
[engine] Fix a panic in the engine when running up --refresh --run-program and finding a deleted resource
[sdk/nodejs] Avoid "Cannot convert object to primitive value" error when running into type errors #20092
[sdk/nodejs] Don’t use automatic ESM mode when —import or —require is set
#20091
[sdk/nodejs] Fix callback server hang & delete hooks in Node.js #20109
[sdk/nodejs] Don’t report leaked promises when we exit abnormally #20128
[cli/package] Force new style Go modules to be written out when using package add
#20011
[sdk/python] Run uv sync on uv command #20117
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
[cli/{install,package}] Allow using pulumi package add with registry identifiers #19928
pulumi package add with registry identifiers
#19928Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
[sdk/go] Allow setting resource hooks in transforms #20058
[sdk/go] Allow setting resource hooks in transforms #20058
[sdk/nodejs] Allow setting resource hooks in transforms #20057
[auto/go] Fix refresh/destroy with inline programs and --run-program flag
[cli/package] Fix package add command when using uv 0.8.0 or later
#20075
[sdk/nodejs] Fix before exit handler
[programgen/python] Fix imports of packages and modules with multiple name parts, such as "devOps" #20053
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
[cli] Support reading v4 checkpoints/deployments #20046
[cli] Support reading v4 checkpoints/deployments #20046
[cli] Allow transforms to set resource hooks #20051
[protobuf] Add hooks to TransformResourceOptions #20050
[auto/{go,nodejs,python}] Support --run-program for inline programs in refresh and destroy operations #19912
[cli/new] Reflect templates published with pulumi template publish in the results of pulumi new
#19940
[sdk/nodejs] Automatic ESM configuration #19980
[sdk/python] Allow setting resource hooks in transforms #20052
[cli] Fix a panic in the console command when a non-existant stack was passed as a --stack argument
#20043
[sdk/nodejs] Try to normalize component names when auto-inferring them #20048
[sdk/python/automation] Fix wrong name after stack rename #20028
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
[engine] Implement ResourceHooks in the engine #19874
[engine] Implement ResourceHooks in the engine #19874
[engine] Prevent destroy without running the program if any resource have delete hooks #19933
[engine] Send Cancel message to analyzer plugins on engine shutdown
#20015
[sdk/go] Implement ResourceHooks in the Go SDK #20002
[sdk/nodejs] Implement ResourceHooks in the Node.js SDK #19946
[sdk/python] Implement ResourceHooks in the Python SDK #19876
[cli] Fix stack select when local default-org differs from the service setting for default-org
#20010
[cli/new] Fix the AI prompt flow of pulumi new command #19998
[engine] Fix an issue where the engine would not issue creates and deletes in the correct order for delete before create replacements where dependencies had changed #19945
[engine] Handle cancellation during construct #19976
[engine] Run after delete hooks for component resources #20025
[sdk/{go,nodejs,python}] Pass resource hooks through to construct #20016
[sdkgen/go] Fix panic in SDK go generator for a map[string]map[string]union type #19731
[sdk/python] Log safely in Python in the presence of PULUMI_ERROR_OUTPUT_STRING
#18903
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
[auto/nodejs] Add previewRefresh to allow dry-runs of refresh commands #19948
[auto/nodejs] Add previewRefresh to allow dry-runs of refresh commands
#19948
[auto] Support providing runProgram to preview and up in auto sdk
#19729
[cli] Warn more aggressively for very old CLI versions #19894
[cli] Add pulumi template publish experimental command to publish templates to the Pulumi Registry
#19864
[cli/plugin] Allow plugin run to run local binary plugins
#19903
[auto/python] Add preview_refresh to allow dry-runs of refresh commands
#19900
[auto/python] Add preview_destroy to allow dry-runs of destroy commands
#19947
[engine] Add SignalAndWaitForShutdown RPC call
#19837
[engine] Add lifecycle protobuf definitions #19746
[engine] Restore asset and archive hash values after transforms #19960
[cli] Make it possible for inline automation programs to be used with refresh/destroy #19916
[cli] Do not assume that package sources without file path prefixes (./, ../) are file paths
#19930
[engine] Fix untargeted resources not always being sent to stack analysis #19943 #19926
[engine] Fix a panic when mixing --target, --refresh, and provider upgrades #19935
[engine] Fix transforms holding onto engine locks during execution, instead of just during collection #19950
[engine] Synthesize delete steps for views during preview #19952
[sdk/nodejs] Fix the use of parameterised packages and mocks #19917
Nothing published for this version
[auto] Support providing runProgram to preview and up in auto sdk #19729
[auto] Support providing runProgram to preview and up in auto sdk
#19729
[cli] Warn more aggressively for very old CLI versions #19894
[cli] Add pulumi template publish experimental command to publish templates to the Pulumi Registry
#19864
[cli/plugin] Allow plugin run to run local binary plugins
#19903
[auto/python] Add preview_refresh to allow dry-runs of refresh commands
#19900
[auto/python] Add preview_destroy to allow dry-runs of destroy commands
#19947
[engine] Add SignalAndWaitForShutdown RPC call
#19837
[engine] Add lifecycle protobuf definitions #19746
[cli] Make it possible for inline automation programs to be used with refresh/destroy #19916
[cli] Do not assume that package sources without file path prefixes (./, ../) are file paths
#19930
[engine] Fix untargeted resources not always being sent to stack analysis #19943 #19926
[engine] Fix a panic when mixing --target, --refresh, and provider upgrades #19935
[engine] Fix transforms holding onto engine locks during execution, instead of just during collection #19950
[engine] Synthesize delete steps for views during preview #19952
[sdk/nodejs] Fix the use of parameterised packages and mocks #19917
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →