Repository navigation
Releases
v5.0.0-preview.5
What's Changed
- ci: require manual approval before CLI publication by sarah (@satvu) in #5743
- Bump dotnet-sdk from 10.0.401 to 10.0.402 by Dependabot (@dependabot)[bot] in #5746
- Ensure CLI help metadata has descriptions by pdthummar in #5734
- Rename rendering option from --output to --format by pdthummar in #5735
- Update host and worker workloads to host release 4.1054.200 by sarah (@satvu) in #5769
- Add .NET 11 function-app support to vnext by sarah (@satvu) in #5770
- Update built-in profiles to current host and worker versions by sarah (@satvu) in #5775
- Fix npm networking issues by Daniel Castro (@castrodd) in #5771
- Bump dotnet-sdk from 10.0.402 to 10.0.403 by Dependabot (@dependabot)[bot] in #5780
- CLI Profiles Release Design by sarah (@satvu) in #5608
- [v5] Add support for Python 3.15 and win-arm64 by hallvictoria in #5696
- Fix Java, PowerShell, and Go workload setup by sarah (@satvu) in #5801
- Verify workload publisher trust before archive extraction by pdthummar in #5759
- Prepare CLI 5.0.0-preview.5 and .NET templates 1.0.2 releases by sarah (@satvu) in #5817
Full Changelog: v5.0.0-preview.4...v5.0.0-preview.5
v5.0.0-preview.4
Azure Functions CLI
What's changed since preview.3
- Fix func new accepting incompatible extension bundles in #5580
- Guard dashboard input with target console capabilities in #5582
- Fix prompt capability checks for redirected consoles in #5581
- Remove unsupported runtimes from SKU built-in profiles in #5507
- refactor: extract focused setup services in #5594
- fix: preserve setup automation and lifecycle contracts in #5604
- Fix RID-specific Host workload package layout in #5614
- Fix v5 installer CDN artifact selection in #5622
- feat(templates): project template parameters with func host metadata in #5665
- feat(templates): list installed templates as func-owned catalog entries in #5667
- feat(update): report updater progress in #5610
- feat(templates): validate raw constraint declarations in #5692
- feat(templates): evaluate validated func constraint requirements in #5698
- feat(init): add metadata-only IProjectStack and installed stack catalog in #5707
- feat(update): add installer-authored installation metadata contract in #5700
- feat(install): emit installation metadata in #5701
- feat(update): wire metadata-gated update command in #5702
New to v5?
This is a preview of the v5 CLI rebuild. See the v5.0.0-preview.1 release notes for the full overview, or jump in below.
⚠️ Preview. Not production-ready, not at v4 feature parity.
Install
PowerShell (Windows, macOS, Linux):
iex "& { $(irm https://aka.ms/func-cli/install.ps1) } -Prerelease"Bash (macOS, Linux):
curl -sSL https://aka.ms/func-cli/install.sh | bash -s -- --prereleaseYou maybe need to run with
-Force(pwsh) |--force(bash) if you are upgrading.
Getting started
The CLI ships with just the core commands. Before you can create or run a Functions app, you need to install the workloads for your stack. The easiest way to do that is func setup.
1. Set up your machine
Run func setup on its own to get an interactive multi-select prompt for the stacks you want:
func setupPrefer non-interactive? Pass the stack directly with --features:
func setup --features dotnet # .NET
func setup --features node # Node.js
func setup --features python # Python
func setup --features go # Go2. Create a project
func quickstart # complete sample app
# or
func init # initalize an empty projectAdd individual Function templates via
func new
3. Run it locally
func runFeedback
File issues at https://github.com/Azure/azure-functions-core-tools/issues and tag with v5.
4.16.0
Azure Functions CLI 4.16.0
Host Version
- Host Runtime Version: 4.1054.250
- In-Proc CLI:
- CLI Version: 4.9.0
- Host Runtime Version: 4.52.200 (includes 4.852.200, 4.652.200)
Changes
- The Go runtime is now generally available on Flex Consumption, with preview support on Elastic Premium and Dedicated Linux plans. Windows and Linux Consumption plans are not supported.
- Add explicit .NET 11 C# isolated initialization with updated templates. The default remains .NET 10; .NET 11 F# scaffolding and Docker support are not yet available.
- Support worker-indexed .NET isolated build and publish outputs in
func pack, including--no-build, without requiring a separatefunctions.metadatafile. - Fixed
func kubernetes deployfailing withInvalid property identifier character: {for dotnet-isolated projects with more than one function. Theprint-functions.shscript previously used asedcommand that only captured the last function name and produced malformed JSON; replaced withawkto correctly key each function object by itsnamefield. (#3585)
4.15.2
Azure Functions CLI 4.15.2
Host Version
- Host Runtime Version: 4.1053.200
- In-Proc CLI:
- CLI Version: 4.8.0
- Host Runtime Version: 4.52.100 (includes 4.852.100, 4.652.100)
Changes
- Add Dockerfile generation (
func init --docker/--docker-only) for .NET 11 isolated projects using the chiseledmcr.microsoft.com/azure-functions/dotnet-isolated:4-dotnet-isolated11.0-chiseledbase image. (#5599) - Require explicit confirmation before
func bundles download --forcerecursively deletes an existing extension bundle directory. (#5666)
4.15.1
Azure Functions CLI 4.15.1
Host Version
- Host Runtime Version: 4.1053.200
- In-Proc CLI:
- CLI Version: 4.8.0
- Host Runtime Version: 4.52.100 (includes 4.852.100, 4.652.100)
Changes
4.15.0
Azure Functions CLI 4.15.0
Host Version
- Host Runtime Version: 4.1053.200
- In-Proc CLI:
- CLI Version: 4.8.0
- Host Runtime Version: 4.52.100 (includes 4.852.100, 4.652.100)
Changes
- Add explicit .NET 11 C# isolated initialization with updated templates. The default remains .NET 10; .NET 11 F# scaffolding and Docker support are not yet available.
- Support worker-indexed .NET isolated build and publish outputs in
func pack, including--no-build, without requiring a separatefunctions.metadatafile. - Fixed Python native dependency builds to inherit authenticated pip indexes in Docker containers (#5574)
- Make host.json optional across func publish, and pack (#5488)
- Fixed
func kubernetes deployfailing withInvalid property identifier character: {for dotnet-isolated projects with more than one function. Theprint-functions.shscript previously used asedcommand that only captured the last function name and produced malformed JSON; replaced withawkto correctly key each function object by itsnamefield. (#3585)
4.14.0
Azure Functions CLI 4.14.0
Host Version
- Host Runtime Version: 4.1052.200
- In-Proc CLI:
- CLI Version: 4.7.0
- Host Runtime Version: 4.51.100 (includes 4.851.100, 4.651.100)
Changes
- Added
durable-functionsdependency topackage.jsonwhen creating Node.js durable function templates (#5495) - Changed
func startto bind to the IPv4 loopback address (127.0.0.1) by default instead of0.0.0.0, and added an opt-in--addressflag (andHost.LocalHttpAddresssetting inlocal.settings.json) to override the bind address (#5484)- Potential breaking change: the host now binds to
127.0.0.1by default, so it is only reachable from the local machine. Setups that relied on binding to0.0.0.0— for example reaching the host from outside a Docker container via a published port — will no longer connect. Workaround: start the host withfunc start --address 0.0.0.0(or set"LocalHttpAddress": "0.0.0.0"underHostinlocal.settings.json) to restore the previous behavior.
- Potential breaking change: the host now binds to
4.13.0
Azure Functions CLI 4.13.0
Host Version
- Host Runtime Version: 4.1051.300
- In-Proc CLI:
- CLI Version: 4.7.0
- Host Runtime Version: 4.51.100 (includes 4.851.100, 4.651.100)
Changes
- Removed warning log for remote build with Python 3.14 Flex apps, as remote build is now supported (#5375)
- Fixed npm postinstall silently swallowing extraction errors (#5281)
- Added lazy first-use install for npm RFC #868 compatibility (#5291)
- Added warning when key vault references fail to resolve (#5373)
- Replaced deprecated
url.parsein npm installer (#5371) - Enhanced func CLI static gitignore and streamlined Azurite entries (#5084)
- Bumped dotnet templates version to 4.0.5590 (#5271)
- Bumped https-proxy-agent dependency (#5335)
- Updated target framework to .NET 10 (#4850)
- Fix Flex Health Check to use
defaultHostNameinstead ofenabledHostNames(#5462) - Added
durable-functionsdependency topackage.jsonwhen creating Node.js durable function templates (#5495) - Changed
func startto bind to the IPv4 loopback address (127.0.0.1) by default instead of0.0.0.0, and added an opt-in--addressflag (andHost.LocalHttpAddresssetting inlocal.settings.json) to override the bind address (#5484)- Potential breaking change: the host now binds to
127.0.0.1by default, so it is only reachable from the local machine. Setups that relied on binding to0.0.0.0— for example reaching the host from outside a Docker container via a published port — will no longer connect. Workaround: start the host withfunc start --address 0.0.0.0(or set"LocalHttpAddress": "0.0.0.0"underHostinlocal.settings.json) to restore the previous behavior.
- Potential breaking change: the host now binds to
4.12.1
Azure Functions CLI 4.12.1
Host Version
- Host Runtime Version: 4.1048.200
- In-Proc CLI:
- CLI Version: 4.6.0
- Host Runtime Version: 4.49.100 (includes 4.849.100, 4.649.100)
Changes
- No changes to core CLI, in-proc CLI updated to 4.6.0 with host version 4.49.100
v5.0.0-preview.2
Azure Functions CLI
What's changed since preview.1
- Fix func run failing to resolve installed prerelease worker workloads against built-in profile ranges (e.g. node [3.13.0] now accepts 3.13.0-preview.1). (#5286)
New to v5?
This is a preview of the v5 CLI rebuild. See the v5.0.0-preview.1 release notes for the full overview, or jump in below.
⚠️ Preview. Not production-ready, not at v4 feature parity.
Install
PowerShell (Windows, macOS, Linux):
iex "& { $(irm https://aka.ms/func-cli/install.ps1) } -Prerelease"Bash (macOS, Linux):
curl -sSL https://aka.ms/func-cli/install.sh | bash -s -- --prereleaseYou maybe need to run with
-Force(pwsh) |--force(bash) if you are upgrading.
Getting started
The CLI ships with just the core commands. Before you can create or run a Functions app, you need to install the workloads for your stack. The easiest way to do that is func setup.
1. Set up your machine
Run func setup on its own to get an interactive multi-select prompt for the stacks you want:
func setupPrefer non-interactive? Pass the stack directly with --features:
func setup --features dotnet # .NET
func setup --features node # Node.js
func setup --features python # Python
func setup --features go # Go2. Create a project
func quickstart # complete sample app
# or
func init # initalize an empty projectAdd individual Function templates via
func new
3. Run it locally
func runFeedback
File issues at https://github.com/Azure/azure-functions-core-tools/issues and tag with v5.