Highlights
-
New
no-unused-typeslinter rule to warn on unused type declarations (#20035)
Example:type usedType = { name: string } type unusedType = string // Warning: Type "unusedType" is declared but never used. param person usedType output personName string = person.name
-
[Experimental] Runtime values in tags and sku (#20059)
A new experimental feature that allows runtime values to be used in
tagsandskuproperties — useful for preserving existing values during redeployment.Example usage:
resource example 'Microsoft...' = { name: 'example' location: resourceGroup().location sku: { name: this.existingResource().?sku.name ?? 'Standard' } tags: this.existingResource().?tags ?? {} }
Features and Bug fixes
- Restore YAML alias and anchor handling behavior (#20070)
- Fix concurrency issue in RPC Client (#20071)
- Fix brm startup crash caused by verbose option alias parsing (#20069)
- Fix external inputs breaking base parameter spreads (#20062)
- Validate deployment-context functions in parameter file imports (#20063)
- Only return list-prefixed functions in Az types (#20106)
- Harden webview not-found pages against HTML injection (#20108)
- Use public JSONRPC client for e2e tests (#20080)
- Bump System.Security.Cryptography.Xml (#20101)
- Harden webview not-found pages against HTML injection (#20108)
Community contributions
- Revise grpcurl and grpcui installation methods (#20061) - Thanks @samirbanjanovic!