Releases: Azure/bicep
Releases · Azure/bicep
v0.22.6
Highlights
Bicep Team:
- [Bicep CLI ONLY] Enable supplemental params validation with
build-params
command (#11975)- Use cases for supplemental params can be found here.
- Bicep CLI support only, Az CLI/Powershell support is coming soon.
- Deprecating
validate-params
command PR (#11974)- We will now be validating inline params through the build-params command
- Compile-time variable imports (#11657)
- Allow bicepparam files to reference Registry Modules (including BR, TS & JSON paths) (#11703)
- [EXPERIMENTAL] F12 Bicep Publish with Sources Part 1 (#11896)
- Must use temporary feature flag: "publishSource"
Features and Bug Fixes
Bicep Team:
- Deploy Pane: Support tenant & management group scope deployments (#11917)
- Add linter rule to recommend using modules instead of 'Microsoft.Resources/deployments' resources (#11848)
- Reword experimental feature usage error message (#11961)
- Decompile Bicepparams: Use consistent URI -> FS conversion (#11834)
- Use languageVersion 2.0 if any types are imported (#11886)
- Add implicit nullability to optional module params (#11887)
- Block calls to scope functions in
.bicepparam
files (#11903) - Block nested deployment resources with inner scoped evaluation and symbolic references to outer scope (#11884)
- Support variable imports in .bicepparam files (#11879)
- Fix nested type property decorator completions (#11972)
- Perform deep validation on assigned parameter values in
.bicepparam
files (#11985) - Added Bicep AvailableItemName to MSBuild props (#11915)
- Added support for skipping bicep build in MSBuild targets (#11916)
- Fix compiled representation of wildcard variable property references (#12048)
- Provide a declared type for imported variable accesses to enable completions (#12050)
v0.21.1
Highlights
Bicep Team:
- User-Defined Types are no longer experimental!
- Usage documentation is available here.
- Add support for defining and emitting user defined discriminated object union types. (#11222)
- Support variables in .bicepparam files (#11438)
- Added
validate-params
command to .bicepparams (#11476) - [EXPERIMENTAL] Compile-time type imports (#11298)
- [EXPERIMENTAL] Test Framework:
Features and Bug Fixes
Bicep Team:
- Support for user-defined types and inline type declarations in user defined functions (#11571)
- Fix bicepparam decompiler date handling (#11675)
- Symbolic names: Generate dependsOn for "existing" resources (#11478)
- Fix 10427 trigger next module completions (#11573)
- Fix pretty-printing for safe dereference operators (#11575)
- Allow param assignments to use
null
values (#11532) - Catch case-insensitive clashes of type property names (#11457)
- Bicep lint command (#10819)
- Fixed typos in class names in BannedSymbols.txt (#11473)
- Update
grammar.md
: double-colon is used for nested resource access (#11468)
v0.20.4
v0.19.5
Highlights
Bicep Team:
- Formatter v2 including:
- User defined types property completions for bicepparam files (#11032)
Bug Fixes and Features
Bicep Team:
- Fix deploy bicep file vs code action bug (#11099)
- Surface diagnostics from union type narrowing (#10938)
- Handle duplicate properties in object type definition with a diagnostics, not an exception (#10983)
- Collapse target union types before narrowing (#10987)
- Support instance functions on resource-typed params (#11031)
- Expand leading
~
inRootConfiguration.CacheRootDirectory
(#11047) - Add description/documentation to public module completions (#10997)
- Obsolete metadata.json, convert on generate (#11087)
- Fix intellisense for maxAgeInDays (11040) (#11093)
- Ignore property storageAccountSubscriptionId for use-resource-id-func… (#11094)
v0.18.4
Highlights
Bicep team:
- Support for
.bicepparam
parameters files (bicep-style parameters file). This includes support for:- support for expressions using any functions in the
sys
namespace (i.e.uniqueString()
) - supported natively by Az CLI and Azure PowerShell (i.e.
az deployment group create -f ./main.bicep -p params.bicepparam ...
) - CLI command to generate bicepparam file from given Bicep file (#10595)
- Buildparams command vscode extension (#10738)
- LoadEnvironmentVariable to enable using env variables in .bicepparam files (#10726)
- Support bicepparam files for VS Code deploy bicep file action (#10593)
- Bicepparam decompiler (#10785)
- Bicep param decompile vscode action (#10921)
- support for expressions using any functions in the
- Provide help text when consuming modules from ACR (#10747)
- Bicep build command linter provides a structured output (#10672)
Bug fixes and features
Bicep team:
- Mark overload matches as PotentialMatches if any argument is of type 'any' (#10659)
- Provide completions for unknown keys on dictionaries (#10927)
- Fix CLI restore --force (9580) (#10817 and #10829)
- Remove metadata from symbol resolution logic (#10626)
- Derive operation return type from operands (#10545)
- [Bicep Public Registry] Allow specifying metadata in bicep in addition to metadata.json (#10860)
- Add intellisense support for param and output values (#10680)
- MAINT: Run tests in parallel to speed up CI by 0.5x (#10716)
- Mark overload matches as PotentialMatches if any argument is of type 'any' (#10659)
- Provide completions for unknown keys on dictionaries (#10927)
- Fix CLI restore --force (9580) (#10817)
- Fixes to BRM README Generation (#10471)
v0.17.1
Highlights
Bicep team:
- Experimental support for user defined functions (#10465). (Requires the experimental feature flag "userDefinedFunctions" to enable).
- Added new CIDR network calculation functions (#10125). (We are working on official docs. For now, here's a link to function signatures and a sample: https://gist.github.com/majastrz/bdd776addfa72c0719334996c0aa78f5)
- Add support for Custom Kubernetes Resources (#10598)
- Add MaxAgeInDays config to use-recent-api-versions rule (#10344)
- Bump az types version (#10603)
- remove "experimental" from bicep.containerRegistryCompletions.useAllAccessible setting (#10457)
- Add new Bicep File Function: loadYamlContent (#10415)
- New parameter
--force
on Publish command (#9745)
Breaking changes
- Name resolution & scoping behavior for variables declared in lambdas & for loops is now consistent with variables declared at the global scope. This means that previously, the following would have been permitted, whereas now it is blocked:
See #10657 for more detail.
var foo = [for resourceGroup in []: { bar: resourceGroup('test') }]
Features and bug fixes
Bicep team:
- Attempt to fix e2e test failing. (#10389)
- Improve compiler detection of invalid runtime value usages. (#10250)
- Semantic highlighting for comma was missing within a string (#10472)
- Resource Type parameters should generate BCP120 (#10401)
- Fix for decompiler to support templatespec (#10329)
v0.16.2
v0.16.1
Highlights
- Remove the block on Bicep parameters files (#10191)
- You can now enable support for
.bicepparam
files using theexperimentalFeaturesEnabled.paramsFiles
setting inbicepconfig.json
- You can now enable support for
- Allow all type syntax in
output
declarations (#10052) - Removal experimental flag for public module completions (#10261)
Features and bug fixes
Bicep team:
- Bicep CLI binaries for Mac are now signed.
- use-resource-symbol-reference - fix for unhandled exception (#10246)
- Support scope & parent properly on child resources (#10254)
- Warn instead of error for resource name discriminator mismatch (#10256)
- Expressions in Bicep parameters files (#10248)
- Refinement types (#9870)
- Refine return types for built-in functions (#10102)
- Prioritize resource/module completions for 'resource.dependsOn' array item completions (#10043)
- Enable array item completions for single line arrays. (#10193)
- Fine-tune priorities for module completions (#10262)
- Bump az types (#10310)
- Emit error diagnostic on negative array index (#10187)
- Increment nested deployment API version to 2022-09-01 (#10128)
- Inline Resource Type Parameters (#10053)
- Fix 9958 (#10096)
v0.15.31
Highlights
- Add implementation for use-resource-symbol-reference linter rule (#9742)
- Nullable types (#9454) - must have
experimentalFeaturesEnabled.userDefinedTypes
set to true - Remove experimental flag for Paste as Bicep (#9905)
- Add view type definition support for MCR modules (#9709)
- Support module registry reference completions (#9913)
- Bumping Types version (#9986)
Bug fixes and features
Bicep team:
- Add a fix for a known cause of issue 1931 (#9711)
- Add issue redirect link (#9731)
- Fix issue 9467 (#9858)
- Fix for issue 9855 (#9859)
- Remove coalesce from list of functions (#9914)
- Fix for issue 7952 (#9910)
- VSCode: Show less obtrusive and more granular loading indicator (#9920)
- Emit a warning rather than an error for inappropriately nullable function arguments (#9721)
- Warn (don't error) on nullables throughout (#9730)
- Replace loop-local variable references on the
scope
of descendent resources (#9651) - Update join signature (#9954)
- Prevent stack overflow in use-stable-resource-identifiers linter (#10001)
- Fixed restore from ACR with anonymous pull enabled when az or PS are not logged in (#9922)
- Fix language server starup issue in visual studio (#9739)
- Update devcontainer.json to latest schema (#9849)
- Add linter rule to simplify json('null') to null (#9744)