Releases: Azure/bicep
Releases · Azure/bicep
v0.4.613
Highlights
Bicep team:
- Implement goto for resource and variable property accesses, module paths, params and outputs (#3690)
- UX improvements for Bicep visualizer: added icons, themes, etc. (#3736)
- Ability to build a bicep file from VSCode file context menu (#3708)
- Fixed some significant perf issues for bicep projects with many modules
Bug fixes and features
Bicep team:
- Improve performance of
no-hardcoded-env-urls
linter rule (#3833) - Various perf fixes to minimize linter CPU impact (#3852)
- No more warnings when assigning value of "any" type to a discriminator property (#3805)
- Block property loops inside operators or function calls (#3799)
- Remove empty line in required-properties snippet insertion (#3721)
- Suppress function placement validation on a module that couldn't be read. (#3832)
Docs, examples, snippet updates
Bicep team:
- fixes a couple of bugs in aks samples (#3912)
- Update homebrew to v0.4.451 (#3887)
- Updated link to Bicep PS module repo in README (#3892)
v0.4.451
Highlights
Hotfix to remove the build summary that was added in v0.4.412 (#3686). We emitted this to the stderr stream which was causing CI/CD scenarios to stop working.
Docs, Examples, and Snippets
Bicep team:
- Update docs for list* functions (#3641)
@emilguden
- Created resourceGroup-snippet (#3637)
- Update homebrew to v0.4.412 (#3687)
v0.4.412
Highlights
Bicep team:
- Add list method call on Azure resource references (#3430)
- instead of
listKeys(stg.id, stg.apiVersion)
, can now dostg.listKeys()
- intellisense for these functions is not yet available, but will be addressed with #667 at a later date.
- instead of
- Add support for JSON literal string conversion (#3510)
- provides type awareness/intellisense for json strings. Try
json(loadTextContent('stuff.json'))
.
- provides type awareness/intellisense for json strings. Try
- More complete & accurate Azure resource types (#3591)
- should no longer see cryptic type names. May notice more type warnings that were not caught earlier.
- Add support for using local json templates as modules (#3367)
- Add support for object body completion snippets (#3254)
- the
required-properties
completion shows up in more places.
- the
- Functions to include file's content as string or entire file as base64 (#2501)
- Known top-level properties does not block compilation if not defined in the resource schema (#3519)
Bug fixes and features
Bicep team:
- Expand validation for extra '/' characters in resource names (#3025)
- Fix for decompiler module handling overwriting contents (#3268)
- Decompiler should place param description first (#3143)
- Support snippet tab stop syntax (#3534)
- Update homebrew to v0.4.63 (#3079)
- Use Multicore JIT (#3112)
Docs, examples, and snippet updates
Bicep team:
- Update contribution guidelines for examples (#3123)
@emilguden
- expressRouteCircuitSnippet (#3004)
- Applied name change, wvd became avd (#3198)
- Fixed spelling errors for Issue 3369 (#3370)
- New snippets for Azure Policy resources (#2942)
- Suggesting addition of Shared Image Gallery and Azure Image Builder modules for WVD Backplane Example (#3002)
- Multiple Bug fixes + rename of WVD Backplane Example 201 to new AVD convention (#3286)
- remove some redundant params (#3105)
- fix broken link in no-hardcoded-env-urls.md (#3056)
- Update loops.md (#3141)
- created definition with parent because it depends (#3164)
v0.4.63
Highlights
- Fixed a critical perf issue on macOS (#3044)
Bug fixes and features
Bicep team:
- Fix Bicep playground (#2991)
- Fix span calculation in ValidateSnippetCompletionAfterPlaceholderReplacements (#3021)
- Put param/var names in linter messages where "Unused" (#2899)
- Make DTC error messages more informative (#2941)
- Block completions at positions where nodes should not be inserted (Part II) (#2995)
- Port arm tools snippets - part 6 (#2782)
Docs, examples, and snippet updates
Bicep team:
- edits for ttk use (#2989)
- Additional samples for the 000 level syntax examples (#2896)
- Update homebrew to v0.4.1 (#2971)
- Remove duplicate 'get' from keyvault snippet (v2) (#2967)
- improves sql-database-with-management example (#2970)
- 301-log-analytics-with-datasources-solutions (#2932)
v0.4.1
Highlights
Bicep team:
- Linter MVP (#2341)
- Strip out deprecated parameter modifier syntax (#2870)
- this removes support for the already deprecated
param foo string { minLength: 3 }
modifier syntax - new syntax (i.e.
@minLength(3)
) is documented here
- this removes support for the already deprecated
- More snippets
- More bug fixes
Other features and bug fixes
Bicep team:
- Bump types nuget -> 0.1.157 (#2898)
- Improved handling of array access base expression union types (#2696)
- Removed static analysis false positive (#2867)
- Blocked non-object assignment to module
params
(#2875) - improved union type normalization (#2886)
- Fix a regression in nested resource completion (#2727)
- Handle more (if not all) corner cases in DTC validation (#2769)
- Intellisense for bicepconfig.json within vscode (#2874)
- Initial changes to add telemetry (#2774)
- Fixed Key Vault Secret Reference usage with looped resource (#2872)
- managementGroup in module scope now generate as unqualified instead of tenantResourceId (#2719)
- Auto-close multi-line comments (#2843)
Docs, snippets, and examples
Bicep team:
@emilguden
- Api Management Instance Snippet (#2758)
- Update Homebrew to v0.3.539 (#2836)
- WVDcreate hostpool (#2770)
v0.3.539
Highlights
- Bicep visualizer (#2357)
- Scaffold required resource snippet based on the resourceType & apiVersion (#2172)
- also works for modules! (#2658)
- More snippets
- Two part resource type completion (#2485)
- This cleans up the completions list for resource types
- Lots of bug fixes
Features and bug fixes
Bicep team:
- Support type checking on intermediary variables (#2444)
- Generate correct resourceIds for 3rd generation resource with non-parent-property parent (#2273)
- Support 'outer' scopes for decompilation (plus other minor fixes) (#2338)
- Decompiler - format output with the 'parent' property where possible (#2363)
- Decompile variable copy loops (#2370)
- Decompile reference() functions with resource name references (#2381)
- block any() in scope, parent and dependsOn (#2359)
- slash validation for loops (#2387)
- added cross scoping for tenant resources (#2386)
- Added invariant properties warning & fixed duplicate error in loops (#2465)
- include colon in property name completions (#2482)
- removed "parent" property from syntactically nested resources (#2603)
- Removed the colon character from commit chars on property name completions. (#2661)
- Fix scope for conditional resources (#2250)
- Support decompiling templates with extensions that are not .json (#2201)
- Block referencing location of existing resources (#2261)
- Improve deploy-time constant checking (#2345)
- Deploy time constant and direct resource/module collection reference fixes (#2461)
- Fix issue #2484 (#2503)
- Fix syntax highlighting for expressions in string interpolations (#2554)
- Provide completions immediately after '{' in string expressions (#2596)
- Block runtime property refs in runtime functions, fix a stack overflow (#2623)
- Improve error recovery for expressions (#2640)
- Block completions in locations where inserting nodes makes no sense (Part I) (#2670)
- Support the same 'Options' on bicep decompile as with bicep build (#2460)
- Simplified Homebrew installation flow (#2208)
Docs, snippets, and examples
Bicep team:
- added docs for the msbuild task (#2191)
- Updated "known limitations" (#2492)
- added template spec deploy example (#2499)
- fix example to use parent syntax (#2550)
- completions for the "existing" keyword (#2253)
- decompile loops with conditions (#2259)
- Update AKS cluster snippet (#2244)
- Add snippets contribution guide (#2240)
- Remove diagnostics.json, add main.combined.bicep (#2257)
- Update snippets to latest api-versions (#2277)
- Snippet standards and naming conventions (#2307)
- Add
az bicep version
to bug report template (#2282)
- fix resource-scopes broken link missing
.md
(#2388)
- Fix param description (#2459)
- Contributed 3 new snippets for WVD resources (#2256)
- New Code Snippet example for Template Specs (#2298)
- New Snippet example for Shared Image Gallery (#2310)
- Corrected applicationGroupType Values (#2390)
- New example for a DINE policy Azure Monitor Agent and Data Collection Rule (DCR) association (#2142)
- fix issue #2311 - add location to firewall resource in examples/101/azurefirewall-create-with-zones (#2312)
- docs: add variable loops to spec (#2342)
- added private endpoint for file storage account (#1651)
- Update Homebrew to 0.3.255 (#2202)
- Added examples for Modular API Management (101) and Importing API to APIM (301) (#2223)
- Example: Add SQL Database with managemnet solution example (#2348)
- Added empty properties object to res-recovery-service-vault snippet (#2353)
- Added Virtual WAN Snippet (#2354)
- Minor formatting fixes for CONTRIBUTING.md (#2352)
- Updated all docs examples with higlighting (#2443)
- fixed parameter in loop example (#2480)
- Added VNet Peering snippet (#2383)
- Minor README.md fixes (#2570)
- Example - ARM Template Create a Private AKS Cluster (#2155)
- typo fix. Fixed listKey to listKeys. (#2206)
- updating cicd documentation s/files/file (#2657)
- Update readme.md (#2249)
- Update README.md (#2133)
- fixed invalid example (#2132)
- Example Improvements related to issue #2135 (KeyVault secretsObject) (#2139)
- Fix reference to the parent resource (#2309)
v0.3.255
Highlights
var
loops (#2077)- i.e.
var foo = [for i in range(0,10): 'value${i}']
- i.e.
- Add type descriptions to completions and hovers, support method hovers. (#1915)
- Initial support for resource snippets for specific resource types
- Eventually this will be at parity with the snippets in ARM Tools
- Add support for name discriminators on resource types (#1950)
- allows us to properly validate resources like
microsoft.keyVault/vaults/accessPolicies
andmicrosoft.web/sites/config
- allows us to properly validate resources like
- Add textmate grammar (#2069)
- this will power syntax highlighting in GitHub and Azure DevOps very soon
- msbuild task and cli nugets (#1992)
- this is to support converting our internal ARM Template usage to Bicep, but is available externally as well (docs available with #2191)
Features and bug fixes
Bicep team:
- Bump types package (#2200)
- Fix for issue 1985 (#1989)
- Flow dependsOn detection through 'existing' resource definitions (#1991)
- Fix bad string escaping in ARM template generation (#2006)
- Correct providers() return type (again...) (#2018)
- Added return types to signature help (#2089)
- no property value completions before the colon (#2121)
- Implement special handling for allowed array values (#2169)
- Update top level param with option to use @secure syntax (#2019)
- Update deprecated snippet for parameter types- secureObject, secureString (#2038)
- Update deprecated param snippet and move snippets to template files (#2130)
Docs and examples
Bicep Team:
- added unicode doc (#2094)
- Add badges for Good First Issue and Needs Feedback (#2083)
- Adding section for GetHelp, Report an Issue (#2035)
- Update to readme to include to common questions in FAQ (#1954)
- Update 05-loops-conditions-existing.md (#2102)
- Added Hello World syntax sample (#2011)
- Updates to example for deployifnotexists-policy-with-initiative-and-assignment (#1953)
- Corrections for operator descriptions (#2016)
- bad link (#1947)
- updated outputs link (#1998)
- Using Bicep CLI directly without installing binaries (#1903)
- Added missing colon to array output loop (#1948)
- Example - ARM Template Deployment Script development environment (#1961)
- Update nic.bicep (#1577)
v0.3.126
Highlights
- Improvements to child resource declarations
- Loop enhancements spec
- Parameter modifier syntax is now marked as deprecated in favor of decorators
- Support for the old syntax will be removed in v0.4
Features and bug fixes
Bicep Team:
- Avoid unhandled exception for duplicate properties (#1771)
- Correct codegen for module name reference (#1733)
- Fix for issue 1817 (#1825)
- Fixes for nested resource and scope interop issues (#1827)
- Add decompiler support for templateLink.relativePath (#1850)
- Add type definitions for providers() (#1877)
- Add rewriter to simplify loop statements generated by the decompiler (#1873)
- Add test framework to evaluate a template containing expressions (#1875)
- Avoid showing completions inside strings (#1933)
- Display custom warning for resource type with /providers/ (#1943)
- Upgrade types libraries to 0.1.94 (#1940)
- Negative integer literals are compile-time constants (#1836)
- fixed misc. scope issues (#1834)
- Snippet for resource/module conditions (#1856)
- Fixed property value context with partially typed identifiers (#1907)
- Fix stack overflow when formatting large templates (#1668)
- Fix issue #1627 (#1901)
- Ensure minLength and maxLength take non-negative values (#1902)
- Add a job to build Bicep CLI for linux-musl-x64 (#1752)
- Ban duplicate decorators (#1854)
- Return "custom" in bicep's version when AssemblyInfromationalVersion does not have commit hash. (#1721)
- Using ApiVersionComparer to sort Resource Types (#1784)
- Improved error message on existing resource properties (#1881)
Doc updates
Bicep Team:
- Add documentation on updating baselines via GH Action (#1878)
- Update examples to use decorators (#1685)
- Mark parameter modifiers as deprecated and update spec (#1693)
- Fix typos in docs, test names and comments (#1751)
- Changed 'name' parameter to avoid deployment errors while following the tutorial (#1861)
- fixed 'via Az CLI' link (#1678)
- curl download file extension added (#1896)
- fix sample code typo. without quote and extra comma. (#1666)
- Update 06-creating-modules.md (#1747)
- Update 05-loops-conditions-existing.md (#1844)
Examples
- Added example app-service-regional-vnet-integration (#1744)
- add DeployIfNotExists policy bicep example (#1763)
- Fixed comments (#1775)
- Add vm-copy-managed-disks example (#1700)
- Added example for looping outputs (#1681)
v0.3.1
Highlights
- Support for loops (#1469, #1521, #1628, #1647)
- Support for
existing
keyword (#1339) - New "decorators"-style parameter modifier syntax (#1324)
- Support for multi-line strings (#1542)
- Allow output names to overlap with symbols (#1623)
Feature work and bug fixes
Bicep team:
- Include API version for generated reference() function calls on 'existing' resources (#1466)
- Block runtime properties for resource/module 'scope' (#1467)
- Fix for duplicate semantic tokens (#1503)
- Fix erroneous environment() type definition (#1528)
- Allow decompilation of and() & or() with >2 params (#1526)
- Add --outdir, --outfile params to build command (#1519)
- Block cross-scope resource deployment without modules (#1559)
- Added basic unicode support (#1370)
- module file path completions (#1236)
- Added ResourceGroup and SubscriptionId fields to nested deployment resource (#1433)
- Added generated metadata info (#1533)
- Fixed interpolated StringSyntax used in object's property name (#1375)
- ARM Integer type is now long instead int (#1334)
- Permitted resourceGroup -> subscription (self and named) and subscription -> resourceGroup in named subscription deployments. (#1420)
- Added single qoute as completion trigger character (#1377)
- Replacing coalesce function with double question mark
??
operator (#1489)
- Updated Bicep Playground Favicon (#1543)
Doc updates
- Fix typos in creating modules tutorial (#1654)
- Update Readme 'life better' section (#1481)
- Add new community contribution to README.md (#1419)
Examples
- New exmaple: Vnet with Subnet and USer Defined Route (#1459)
- added automation account with logging (#1381)
- Fix default HTTPS port number in Front Door examples (#1397)
- Add example for HTTP-triggered function (#1437)
- Add sample for adding storage static website (with deployment script) (#1442)
- Add example to deploy app + data + identity + monitoring (#1395)
- Added example for custom policy definition with assignment (#1394)
- Add traffic-manager-webapp example (#1414)
- Azure Portal Dashboard sample (#1486)