All notable changes to the "azurefunctions" extension will be documented in this file.
- Improved startup and installation performance
- Improved reliability of Python projects
- Leverages ptvsd module shipped with Python extension for VS Code instead of installing ptvsd in your virtual environment
- Removed terminal specific separators from debug config
- Allow deployment to dedicated App Service plans
- Added retry logic to handle momentary issues while deploying
- Added
azureFunctions.advancedCreation
setting. When set to true, this allows you to manually select several properties (i.e. OS and runtime) when creating a function app - App setting values are hidden by default
- Java projects now leverage common settings for deploy. See our wiki for more info
- Projects will no longer run
mvn clean package
unlessazureFunctions.preDeployTask
is set - Projects will no longer deploy a subpath of the workspace unless
azureFunctions.deploySubpath
is set
- Projects will no longer run
- Provide option to "Deploy Anyway" if pre-deploy task fails
- If "azureFunctions.preDeployTask" is not set, do not run any task
- Deployments node for Function Apps that are connected to a GitHub or LocalGit repository
- View deployment logs
- Redeploy previous deployments
- Preview support for deployment slots (feature flag
azureFunctions.enableSlots
must be set totrue
)- Deploy
- Stream logs
- Start/stop/restart
- Create/delete/swap
- Feature flag no longer required for creating Python projects
- Bumped minimum version of "ps-tree" due to event-stream#116
- Improved debugging
- Functions host will be stopped after you detach
- Terminal (where Http Triggers are listed) will be the default view rather than Debug Console
- Improved Python projects
- Deploying will automatically sync triggers
- Users will be warned if deploying to Windows
- pylint will be added to the local virtual environment by default
- "pip install" will be run before debugging
- Added Cosmos DB trigger to "Verified" category for C#
- JavaScript and Python projects will hide 'obj' and 'bin' folder by default (used for Functions extensions). NOTE: extensions.csproj will not be hidden and should still be checked in to source control
- Local debugging for Python projects may fail with "python.exe -m ptvsd: error: the following arguments are required: --host.". Can be resolved by changing the
"languageWorkers__python__arguments"
setting in the.vscode/tasks.json
to"-m ptvsd --host 127.0.0.1 --port 9091"
- Preview support for creating and debugging Python projects. To enable, set
azureFunctions.enablePython
to true. IMPORTANT: Python support in Azure is still in private preview. - Added several more templates to the "verified" category, including Cosmos DB and Service Bus.
- Newly created function apps will default to "Run From Package". See here for more info.
- Deprecated projectRuntime of "beta" in favor of "~2".
- "azureFunctions.deploySubpath" setting takes precedence
- "Copy Function Url" for v2 non-anonymous functions will copy an invalid url #567
- Functions cannot be listed for Linux Consumption apps azure-functions-host#3502
- Debugging C# functions after fixing a build break fails with error "Failed to stop previous running Functions host..." #534
- Improved Java templates
- More templates are available
- Templates will be automatically updated going forward
- JavaScript projects run
func extensions install
before debug and deploy
- "Copy Function Url" for v2 non-anonymous functions will copy an invalid url (that returns a 401 Unauthorized error) due to recent breaking changes in the runtime #567
- Improved C# templates
- More templates are available
- Templates will be automatically updated going forward
- Templates are installed only with the scope of VS Code and no longer affect machine-wide .NET CLI templates
- Added support for deploying to App Service Environments
- Debug config for JavaScript functions has changed. See https://aka.ms/AA1vrxa for more info
- New C# projects will deploy the result of a 'dotnet publish' rather than deploying the build output
- Azure Function Apps created through VS Code will automatically match the runtime from your local machine rather than always using v1
- Users will not be prompted to install the latest version of the func cli if high priority issues are discovered
- For example, the latest version of the func cli (2.0.1-beta.26) breaks JavaScript debugging
- Improved warning when Azure Functions Core Tools is out of date
- In some cases, an 'Update' option is provided that will automatically run the necessary commmands
- Warning now displays for all users, regardless of how they installed the func cli
- Function templates are now versioned and can be controlled with the "azureFunctions.templateVersion" setting
- Select open behavior after creating a new project ("Add to workspace", "Open in current window", or "Open in new window")
- Moved Azure Functions Explorer to new Azure view container instead of file explorer
- Deployment fail when deploying to function app with a custom domain
- Upload and download application settings
- Prompt to automatically install the Azure Functions Core Tools when possible
- "Report an issue" button on error dialogs that links to the GitHub repo
- Subscription filter button next to Subscription nodes in the explorer
- Deploy to Function App context menu action for Function Apps
- JavaScript projects will default to runtime "beta" instead of "~1" on Mac/Linux. See here for more information.
- Automatically detect projects created outside of VS Code and prompt to initialize
- View/Delete Proxies
- Remote Debug Java Function Apps (experimental)
- Add backup templates in case there is no internet or in case the functions portal api changes
- Stream logs from your remote Function Apps
- Support projects in multi-root workspaces
- Link to deployment tutorial
- Show warning if your Azure Functions Core Tools version is out-of-date
- Update Microsoft.Net.Sdk.Functions version so that C# functions work on Mac/Linux
- C# local debugging
- Fixed "Cannot access the file because it is being used by another process." error by automatically restarting the functions host
- Fixed project being built twice for every F5
- Improved performance of 'azureFunctions.pickProcess' on Windows
- Create, Debug, and Deploy a C# class library project
- User settings for language/runtime/templateFilter now apply when creating a new project
- Set these once and never select a language, runtime, or filter again
- Set the language to something other than "JavaScript", "C#", or "Java" for preview support of other languages (for example, "C#Script")
- The Functions host must be stopped after making changes and before rebuilding to C# functions #185
- C# class library functions fail to run on Mac #164
- C# script functions fail to attach on Windows #180
- Copy HTTP Trigger Url
- Change Deployment Source (Zip Deploy vs. Local Git Deploy)
- Settings to control project language and runtime
- JavaScript 'Verified' templates not displayed
- Java templates not displayed
- Java support
- Create new project
- Create new function
- Deploy project
- Azure Functions Explorer
- View and delete functions
- View, add, edit, and delete Application Settings
- 'Load more' for large number of resources
- Improved 'Create new function'
- All JavaScript templates listed in the Azure portal are now supported
- The user will be prompted for function settings on creation
- Added
azureFunctions.templateFilter
setting to control which templates are displayed (Verified, Core, or All)
- Added 'Create' and 'Delete' commmands for Function Apps in Azure
- Updated icons to match the Azure portal
- Moved 'Deploy here as Zip' option from Function App nodes to the explorer menu bar
- Show warning message that zip deploy is a destructive action
- Leverage new app service zipdeploy
- Zip Deploy no longer runs 'npm install'. It expects a ready-to-run app
- Create new project
- Create new function from template
- Debug function apps locally
- View Azure Functions
- Deploy to Azure Functions
- Start, stop, and restart Azure Functions
- JSON Intellisense for
function.json
,host.json
, andproxies.json