- Add warning when an environment has duplicate top-level keys #615
- Add support for
fn::validatebuilt-in function that validates an input against a json schema. #618
- Added support for
fn::splitbuilt-in function to split strings into arrays. #281 - Add native support for OIDC token exchange when logging into Pulumi Cloud. Run
esc login --helpfor more information. #607
- Added deletion protection for environments:
- Use
esc env settings set [<org-name>/][<project-name>/]<environment-name> deletion-protected trueto enable deletion protection - Use
esc env settings get [<org-name>/][<project-name>/]<environment-name> [deletion-protected]to check the current status - When enabled, environments cannot be deleted until protection is disabled
- Deletion protection is disabled by default for new environments
- Use
- Environment declarations are now returned even in the face of syntax errors.
- Added support for Open Approvals #592
- Added support for
fn::concatbuilt-in function to concatenate arrays. #582
- Move
--draftout of preview forenv edit,env set,env version rollback,env runandenv open. #566 - Internal improvements #569
- Fix broken change request URL that links to web console when using
--draftwithenv set,env editandenv version rollback. #571
- Update a draft via
--draft=<change-request-id>forenv edit,env set, andenv version rollback. Warning: this feature is in preview, limited to specific orgs, and subject to change. #565 - Open a draft via
--draft=<change-request-id>forenv runandenv open. Warning: this feature is in preview, limited to specific orgs, and subject to change. #565
esc env setnow supports --file parameter to read content from a file or stdin #556--draftflag foresc env set,esc env edit,esc env versions rollbackto create a change request rather than updating directly. Warning: this feature is in preview, limited to specific orgs, and subject to change. #552
- Fix decryption error with keys with dashes #559
esc runexpects environment to be passed before--#545esc env setuses a more readable YAML format when setting a key in an empty map #548
- Fix
esc version#541
- handle nil in MakeSecret #518
- Updated to go 1.23
- cmd/esc/cli/env.go: Modified the writeYAMLEnvironmentDiagnostics function to instantiate hcl.NewDiagnosticTextWriter with a width of 0 initially, and then conditionally reinstantiate it with the specified width if it is greater than 0, addressing gosec G115. #494
- No longer error when decrypting invalid secrets outside of values top-level key #491
- Make CLI prefer environment variable
PULUMI_BACKEND_URLover account backend URL #477 - Adding cascading secrets into
NewSecretmethod #488
- Add
--stringflag toenv setto treat the given value as a string. #467 - Add proper return code to list environments when organization doesn't exist #484
- It is now a syntax error to call a builtin function incorrectly. 449
- Fix diagnostic messages when updating environment with invalid definition #422
- Introduce support for rotating static credentials via
fn::rotateproviders 432 - Add the
rotateCLI command #433 - Add ability to pass specific paths to rotate with the
rotateCLI command #440 - Introduce inline environment reference syntax #443
- Introduce rotateOnly inputs #444
- Release rotate environment CLI command #459
- Add
--definitionflag toesc env getto output definition #416
-
Improve evaluation performance and memory footprint. #392
-
Improve login error message when credentials file is missing or invalid. #404
- Fix panic when object keys are not strings. #406
schema:ObjectBuilder.PropertiesandRecordnow take aMapBuilderin order to avoid copies. #392
-
Add commands to manage environment tags. #345
-
Coerce non-string scalars passed to
esc env set --secretto strings #353 -
esc env get --show-secretsnow shows secrets from imported environments. #355 -
Add support for projects. #369
-
Add deprecation warning for legacy environment name format (/ or ) in favor of / or //. #375
-
Add clone environment command. #376
-
Add project filter flag to env ls command. #382
- Fix a panic in fetching current credentials when the access key had expired. #368
- The minimum Go version supported is now 1.21. #379
-
Add a command to retract a specific revision of an environment. #330
-
Move the
rollbackcommand under theversioncommand for consistency. #331
- Buffer output to the system pager in paged commands. #327
-
Add support for getting or opening environments at specific revisions/tags. #275
-
Add support for listing the revisions to an environment. #277
-
Add support for managing version tags. #283
-
Add support for displaying changed between environment revisions. #295
-
Finalize command tree for version management. #304
-
Add support to
esc env editfor reading the edited environment definition from a file. #308 -
Add support for rolling back to a specific version of an environment. #305
-
Add a new ESC SDK for Go and Typescript #271
-
Add revision field to GetEnvironment and UpdateEnvironment client functions #313
- Ensure that redacted output is flushed in
esc run#280
- Propagate current and root env name to providers. #264
- Specify pulumi access token per command run. #263
- Document the CLI's REST API client. #257
-
Handle anonymous environments when injecting it to the context #250
-
Export context schema for editor autocompletion #252
-
Allow evaluation of environments with parse errors. #222
-
Return a properly-merged root schema from environment evaluation. #229
-
Improve property accessor diagnostics. #230
-
Populate source positions for property accessors in single-line flow scalars. #231
-
Provide more accurate accessor diagnostic positions. #238
-
Add support for execution context interpolation. #239
- Fix merging of already-merged values. #213
- Add support for yaml format as output from
esc open. #204
-
Fix a nil pointer dereference in Syntax.NodeError. #180
-
Mark nested structures as secret if the JSON string is secret. #191
-
Include paths in diagnostics. #157
-
Support secret elision in definitions via encryption and decryption #155
-
Support
--show-secretsinesc env getto display secrets in plaintext. #163
- Add two new builtins,
fn::fromBase64andfn::fromJSON. The former decodes a base64-encoded string into a binary string and the latter decodes a JSON string into a value. #117 - Add support for temporary file projection in run and open commands. #141 #151
- Support null, boolean, and number values in environment variables. #151
- Do not panic when
env setis passed an empty value. #110 - Fix behavior for
esc loginwhen no existing credentials are present #111
- Fix behavior for
esc loginwhen no backend is provided #105
- Add a
-fflag toesc env initthat allows the specification of the initial definition for an environment. #95
- Fix panics that could occur when no credentials are available or credentials were invalid. #93